Subject: [bug#61775] [PATCH 1/2] gnu: Add zsh-history-substring-search

From: Timo Wilken <[email-masked]>
Date: Sat, 25 Feb 2023 00:05:23 +0100

* gnu/packages/shellutils.scm (zsh-history-substring-search): New variable.
---
 gnu/packages/shellutils.scm | 29 +++++++++++++++++++++++++++++
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 64cc818d65..3553eaa4ed 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -15,6 +15,7 @@
 ;;; Copyright © 2021 Foo Chuan Wei <[email-masked]>
 ;;; Copyright © 2021 Wiktor Żelazny <[email-masked]>
 ;;; Copyright © 2022 Jose G Perez Taveras <[email-masked]>
+;;; Copyright © 2023 Timo Wilken <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -221,6 +222,34 @@ (define-public zsh-autosuggestions
 as you type.")
     (license license:expat)))
 
+(define-public zsh-history-substring-search
+  (package
+    (name "zsh-history-substring-search")
+    (version "1.0.2")
+    (home-page "https://github.com/zsh-users/zsh-history-substring-search")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url home-page)
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0y8va5kc2ram38hbk2cibkk64ffrabfv1sh4xm7pjspsba9n5p1y"))))
+    (build-system copy-build-system)
+    (arguments
+     '(#:install-plan '(("zsh-history-substring-search.plugin.zsh"
+                         "share/zsh/plugins/zsh-history-substring-search/")
+                        ("zsh-history-substring-search.zsh"
+                         "share/zsh/plugins/zsh-history-substring-search/")
+                        ("README.md" "share/doc/zsh-history-substring-search/"))))
+    (synopsis "ZSH port of Fish history search (up arrow)")
+    (description
+     "This is a clean-room implementation of the Fish shell's history search
+feature, where you can type in any part of any command from history and then
+press chosen keys, such as the UP and DOWN arrows, to cycle through matches.")
+    (license license:bsd-3)))
+
 (define-public zsh-syntax-highlighting
   (package
     (name "zsh-syntax-highlighting")
-- 
2.39.1