[bug#78869] gnu: Add zsh-vi-mode.

Message ID b524dc56de7cc69915dd18f2d16a4fd90ef8ebf5.1750660160.git.stellarskylark@posteo.net
State New
Headers
Series [bug#78869] gnu: Add zsh-vi-mode. |

Commit Message

Skylar Hill June 23, 2025, 6:29 a.m. UTC
* gnu/packages/shellutils.scm (zsh-vi-mode): New variable.
---
 gnu/packages/shellutils.scm | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)


base-commit: 56344729cd07c76d5133047f2866237bbb08dced
prerequisite-patch-id: 3fec04fa2a12083bb04816507fd9c714478c44bd
prerequisite-patch-id: 3f9fb0f28f0c6784a17c268364446ef507188d84
  

Patch

diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 33336e6694..07afa10250 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -21,6 +21,7 @@ 
 ;;; Copyright © 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
 ;;; Copyright © 2024 Brian Kubisiak <brian@kubisiak.com>
 ;;; Copyright © 2024 Jordan Moore <lockbox@struct.foo>
+;;; Copyright © 2025 Skylar Hill <stellarskylark@posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -347,6 +348,30 @@  (define-public zsh-syntax-highlighting
 particularly in catching syntax errors.")
     (license license:bsd-3)))
 
+(define-public zsh-vi-mode
+  (package
+    (name "zsh-vi-mode")
+    (version "0.11.0")
+    (home-page "https://github.com/jeffreytse/zsh-vi-mode")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/jeffreytse/zsh-vi-mode")
+             (commit (string-append "v" version))))
+       (sha256
+        "0bs5p6p5846hcgf3rb234yzq87rfjs18gfha9w0y0nf5jif23dy5")))
+    (build-system copy-build-system)
+    (arguments
+     (list
+      #:install-plan
+      #~'(("zsh-vi-mode.zsh" "share/zsh/plugins/zsh-vi-mode/")
+          ("zsh-vi-mode.plugin.zsh" "share/zsh/plugins/zsh-vi-mode/"))))
+    (synopsis "Plugin to improve vi keybindings in zsh")
+    (description "zsh vimkey plugin with more features, which more closely
+matches the standard behavior of vim.")
+    (license license:expat)))
+
 (define-public grml-zsh-config
   (package
     (name "grml-zsh-config")