--- Begin Message ---
Subject: |
[PATCH 2/5] gnu: Add emacs-citre. |
Date: |
Wed, 4 Jan 2023 20:46:44 +0800 |
From: Feng Shu <tumashu@163.com>
* gnu/packages/emacs-xyz.scm (emacs-citre): New variable.
---
gnu/packages/emacs-xyz.scm | 57 ++++++++++++++++++++++++++++++++++++++
1 file changed, 57 insertions(+)
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index d4f0dc82a0..507ba3be61 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -34104,6 +34104,63 @@ (define-public emacs-global-tags
project.el and xref.el.")
(license license:gpl3+))))
+(define-public emacs-citre
+ (package
+ (name "emacs-citre")
+ (version "0.3.1")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/universal-ctags/citre/")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32 "168z6yidh2nxkmdlx9cqdzzb7achxdipnbk5pj9787m9bp1sdpkd"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'patch-citre-ctags-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (emacs-substitute-sexps "citre-ctags.el"
+ ("defcustom citre-ctags-program"
+ (string-append (assoc-ref inputs "universal-ctags")
+ "/bin/ctags")))))
+ (add-after 'unpack 'patch-citre-readtags-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (emacs-substitute-sexps "citre-readtags.el"
+ ("defcustom citre-readtags-program"
+ (string-append (assoc-ref inputs "universal-ctags")
+ "/bin/readtags")))))
+ (add-after 'unpack 'patch-citre-gtags-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (emacs-substitute-sexps "citre-global.el"
+ ("defcustom citre-gtags-program"
+ (string-append (assoc-ref inputs "global")
+ "/bin/gtags")))))
+ (add-after 'unpack 'patch-citre-global-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (emacs-substitute-sexps "citre-global.el"
+ ("defcustom citre-global-program"
+ (string-append (assoc-ref inputs "global")
+ "/bin/global"))))))))
+ (inputs (list global universal-ctags))
+ (home-page "https://github.com/universal-ctags/citre")
+ (synopsis "Ctags IDE on the True Editor")
+ (description
+ "Citre is an advanced Ctags (or actually, readtags) frontend for
+Emacs. It offers:
+
+@itemize
+@item completion-at-point, xref and imenu integration.
+@item citre-jump: A completing-read UI for jumping to definition.
+@item citre-peek: A powerful code reading tool that lets you go down the
+rabbit hole without leaving current buffer.
+@end itemize\n")
+ (license license:gpl3+)))
+
(define-public emacs-seq
(package
(name "emacs-seq")
--
2.38.1
--- End Message ---
--- Begin Message ---
Subject: |
Re: [bug#60549] [PATCH 2/5] gnu: Add emacs-citre. |
Date: |
Sat, 07 Jan 2023 01:00:51 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) |
Hello,
tumashu@163.com writes:
> * gnu/packages/emacs-xyz.scm (emacs-citre): New variable.
Applied, with the changes detailed below. Thank you.
> + #~(modify-phases %standard-phases
> + (add-after 'unpack 'patch-citre-ctags-program
> + (lambda* (#:key inputs #:allow-other-keys)
> + (emacs-substitute-sexps "citre-ctags.el"
> + ("defcustom citre-ctags-program"
> + (string-append (assoc-ref inputs "universal-ctags")
> + "/bin/ctags")))))
> + (add-after 'unpack 'patch-citre-readtags-program
> + (lambda* (#:key inputs #:allow-other-keys)
> + (emacs-substitute-sexps "citre-readtags.el"
> + ("defcustom citre-readtags-program"
> + (string-append (assoc-ref inputs "universal-ctags")
> + "/bin/readtags")))))
> + (add-after 'unpack 'patch-citre-gtags-program
> + (lambda* (#:key inputs #:allow-other-keys)
> + (emacs-substitute-sexps "citre-global.el"
> + ("defcustom citre-gtags-program"
> + (string-append (assoc-ref inputs "global")
> + "/bin/gtags")))))
> + (add-after 'unpack 'patch-citre-global-program
> + (lambda* (#:key inputs #:allow-other-keys)
> + (emacs-substitute-sexps "citre-global.el"
> + ("defcustom citre-global-program"
> + (string-append (assoc-ref inputs "global")
> + "/bin/global"))))))))
I merged everything into a single phase and used more specific
`emacs-substitute-variables' instead of `emacs-substitute-sexps'.
> + (inputs (list global universal-ctags))
> + (home-page "https://github.com/universal-ctags/citre")
> + (synopsis "Ctags IDE on the True Editor")
> + (description
> + "Citre is an advanced Ctags (or actually, readtags) frontend for
> +Emacs. It offers:
> +
> +@itemize
> +@item completion-at-point, xref and imenu integration.
> +@item citre-jump: A completing-read UI for jumping to definition.
> +@item citre-peek: A powerful code reading tool that lets you go down the
> +rabbit hole without leaving current buffer.
> +@end itemize\n")
I reworded the description.
Regards,
--
Nicolas Goaziou
--- End Message ---