From: Alexandr Vityazev <avityazev@posteo.org>
To: 50709@debbugs.gnu.org
Subject: [bug#50709] [PATCH] gnu: Add zsh-syntax-highlighting.
Date: Mon, 20 Sep 2021 23:03:29 +0000 [thread overview]
Message-ID: <87sfxy4zpa.fsf@posteo.org> (raw)
* gnu/packages/shellutils.scm (zsh-syntax-highlighting): New variable.
---
gnu/packages/shellutils.scm | 55 +++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 94b5536df7..69e1d0d069 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -138,6 +138,61 @@ text.")
as you type.")
(license license:expat)))
+(define-public zsh-syntax-highlighting
+ (package
+ (name "zsh-syntax-highlighting")
+ (version "0.7.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/zsh-users/zsh-syntax-highlighting")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "039g3n59drk818ylcyvkciv8k9mf739cv6v4vis1h9fv9whbcmwl"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("zsh" ,zsh)))
+ (arguments
+ ;; FIXME: Tests fail when running test regexp
+ ;; there is no pcre module in the Guix zsh package
+ `(#:tests? #f
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'build 'add-all-md
+ (lambda _
+ (copy-file "docs/highlighters.md" "docs/all.md")
+ (make-file-writable "docs/all.md")
+ #t))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "make" "test")
+ (invoke "make" "perf"))
+ #t))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (zsh-plugins
+ (string-append out "/share/zsh/plugins/zsh-syntax-highlighting"))
+ (highlighters-dir (string-append zsh-plugins "/highlighters")))
+ (invoke "make" "all")
+ (install-file "zsh-syntax-highlighting.zsh" zsh-plugins)
+ (install-file ".version" zsh-plugins)
+ (install-file ".revision-hash" zsh-plugins)
+ (copy-recursively "highlighters" highlighters-dir)
+ #t))))))
+ (home-page "https://github.com/zsh-users/zsh-syntax-highlighting")
+ (synopsis "Fish shell-like syntax highlighting for zsh")
+ (description
+ "This package provides syntax highlighting for the shell zsh.
+It enables highlighting of commands whilst they are typed at a zsh
+prompt into an interactive terminal. This helps in reviewing commands
+before running them, particularly in catching syntax errors.")
+ (license license:expat)))
+
(define-public sh-z
(package
(name "sh-z")
--
2.33.0
--
Alexandr Vityazev
next reply other threads:[~2021-09-20 23:11 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-20 23:03 Alexandr Vityazev [this message]
2021-09-20 23:25 ` [bug#50709] [PATCH] gnu: shellutils: Add copyright Alexandr Vityazev
2021-09-26 10:12 ` [bug#50709] [PATCH] gnu: Add zsh-syntax-highlighting Xinglu Chen
2021-09-27 14:09 ` Alexandr Vityazev
2021-10-02 15:18 ` Ludovic Courtès
2021-10-02 18:54 ` Alexandr Vityazev
2021-10-02 18:52 ` [bug#50709] [PATCH] v2 " Alexandr Vityazev
2021-10-13 8:40 ` bug#50709: [PATCH] " Ludovic Courtès
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87sfxy4zpa.fsf@posteo.org \
--to=avityazev@posteo.org \
--cc=50709@debbugs.gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.