summary refs log tree commit diff
path: root/pkgs/applications/editors/vim/vimacs.nix
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2020-04-10 18:13:24 +0000
committerAlyssa Ross <hi@alyssa.is>2020-04-10 18:13:24 +0000
commit1b980d7c7aef13cd25b1dd346e407ad9706c2155 (patch)
treeba3631781f11995641a97516777dbb20b821011f /pkgs/applications/editors/vim/vimacs.nix
parentb77a9aeec19a22702ae234c2c3c7d27aae469de6 (diff)
parent168a045e259743970bc18a9f9243da0ae51331e7 (diff)
downloadnixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.tar
nixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.tar.gz
nixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.tar.bz2
nixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.tar.lz
nixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.tar.xz
nixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.tar.zst
nixpkgs-1b980d7c7aef13cd25b1dd346e407ad9706c2155.zip
Merge remote-tracking branch 'nixpkgs/master' into master
Diffstat (limited to 'pkgs/applications/editors/vim/vimacs.nix')
-rw-r--r--pkgs/applications/editors/vim/vimacs.nix34
1 files changed, 34 insertions, 0 deletions
diff --git a/pkgs/applications/editors/vim/vimacs.nix b/pkgs/applications/editors/vim/vimacs.nix
new file mode 100644
index 00000000000..d067b418121
--- /dev/null
+++ b/pkgs/applications/editors/vim/vimacs.nix
@@ -0,0 +1,34 @@
+{ stdenv, config, vim_configurable, macvim, vimPlugins
+, useMacvim ? stdenv.isDarwin && (config.vimacs.macvim or true)
+, vimacsExtraArgs ? "" }:
+
+stdenv.mkDerivation rec {
+  pname = "vimacs";
+  version = vimPackage.version;
+  vimPackage = if useMacvim then macvim else vim_configurable;
+
+  buildInputs = [ vimPackage vimPlugins.vimacs ];
+
+  buildCommand = ''
+    mkdir -p "$out"/bin
+    cp "${vimPlugins.vimacs}"/share/vim-plugins/vimacs/bin/vim $out/bin/vimacs
+    substituteInPlace "$out"/bin/vimacs \
+      --replace '-vim}' '-@bin@/bin/vim}' \
+      --replace '-gvim}' '-@bin@/bin/vim -g}' \
+      --replace '--cmd "let g:VM_Enabled = 1"' \
+                '--cmd "let g:VM_Enabled = 1" --cmd "set rtp^=@rtp@" ${vimacsExtraArgs}' \
+      --replace @rtp@ ${vimPlugins.vimacs.rtp} \
+      --replace @bin@ ${vimPackage}
+    for prog in vm gvm gvimacs vmdiff vimacsdiff
+    do
+      ln -s "$out"/bin/vimacs $out/bin/$prog
+    done
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Vim-Improved eMACS: Emacs emulation for Vim";
+    homepage = "http://algorithm.com.au/code/vimacs";
+    license = licenses.gpl2Plus;
+    maintainers = with stdenv.lib.maintainers; [ millerjason ];
+  };
+}