DEV Community


Posted on • Updated on

⚙️ ❮ ZI + Diff-so-Fancy ❯ | Git


ZI + Diff-so-Fancy | GitHub | Twitter | Join the team


The project so-fancy/diff-so-fancy integration with ZI.

With this ZI plugin, you simply add two lines to .zshrc:

zi ice as"program" pick"bin/git-dsf"
zi light z-shell/zsh-diff-so-fancy

This will install diff-so-fancy on every account where you use Zshell, and automatically equip git with subcommand dsf. No need to use system package manager and to configure git. Of course, if you have the following standard line in your .gitconfig, it will still work normally:

pager = diff-so-fancy | less -FXRi

(because this plugin adds diff-so-fancy to $PATH).

Think about Puppet or Chef, i.e. about declarative approach to system configuration.

In this case .zshrc is like a declarative setup guarding you will have diff-so-fancy
on your accounts.

A Few Details

so-fancy/diff-so-fancy is cloned from
Github as submodule. The plugin has bin/git-dsf script which adds subcommand dsf
to git.

That's basically everything needed: convenient way of installing (single Zsh
plugin manager invocation), updating (Zsh plugin managers can easily update) and
integrating with git.

Other plugin managers


zplug "z-shell/zsh-diff-so-fancy", as:command, use:"bin/"


zgen load z-shell/zsh-diff-so-fancy

Without as"program"-like functionality the .plugin.zsh file picks up setup and simulates adding a command to system, so Zgen and other can work.


Top comments (0)