about summary refs log tree commit diff
path: root/pkgs
diff options
context:
space:
mode:
authorMaximilian Bosch <maximilian@mbosch.me>2018-09-23 19:36:22 +0200
committerMaximilian Bosch <maximilian@mbosch.me>2018-09-23 19:36:22 +0200
commit4bf1a7d97545f957e18d2fb9f00ddcb7e545f792 (patch)
tree512e71217d66f3e44841b8f8dc09b2c895d7c645 /pkgs
parent9fee74d61694184b41ad1a3aed6cf7a791ed77e8 (diff)
downloadnixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.tar
nixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.tar.gz
nixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.tar.bz2
nixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.tar.lz
nixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.tar.xz
nixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.tar.zst
nixlib-4bf1a7d97545f957e18d2fb9f00ddcb7e545f792.zip
tig: fix zsh completion
The ZSH completion script of `tig` basically imports the bash completion
script and uses it as completion approach. Unfortunately the script
takes several assumptions about the directory structure using
`$funcsourcetrace`[1] that don't apply on NixOS.

The easiest workaround is t opatch the completion script and import the
bash completion script from `$out`.

[1] http://zsh.sourceforge.net/Doc/Release/Zsh-Modules.html#index-funcsourcetrace
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/applications/version-management/git-and-tools/tig/default.nix4
1 files changed, 4 insertions, 0 deletions
diff --git a/pkgs/applications/version-management/git-and-tools/tig/default.nix b/pkgs/applications/version-management/git-and-tools/tig/default.nix
index 6d2753e45437..a407f6e7ab12 100644
--- a/pkgs/applications/version-management/git-and-tools/tig/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/tig/default.nix
@@ -31,6 +31,10 @@ stdenv.mkDerivation rec {
   installPhase = ''
     make install
     make install-doc
+
+    substituteInPlace contrib/tig-completion.zsh \
+      --replace 'e=$(dirname ''${funcsourcetrace[1]%:*})/tig-completion.bash' "e=$out/etc/bash_completion.d/tig-completion.bash"
+
     install -D contrib/tig-completion.bash $out/etc/bash_completion.d/tig-completion.bash
     install -D contrib/tig-completion.zsh $out/share/zsh/site-functions/_tig
     cp contrib/vim.tigrc $out/etc/