summaryrefslogtreecommitdiff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm125
1 files changed, 78 insertions, 47 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index eab31278a5..2ac7e010e7 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -733,7 +733,15 @@ programs.")
version "/flycheck-" version ".tar"))
(sha256
(base32
- "01rnwan16m7cyyrfca3c5c60mbj2r3knkpzbhji2fczsf0wns240"))))
+ "01rnwan16m7cyyrfca3c5c60mbj2r3knkpzbhji2fczsf0wns240"))
+ (modules '((guix build utils)))
+ (snippet `(begin
+ ;; Change 'flycheck-version' so that it does not
+ ;; attempt to get its version from pkg-info.el.
+ (substitute* "flycheck.el"
+ (("\\(pkg-info-version-info 'flycheck\\)")
+ (string-append "\"" ,version "\"")))
+ #t))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)))
@@ -8701,32 +8709,6 @@ region instead.")
schema validation.")
(license license:gpl3+)))
-(define-public emacs-load-relative
- (let ((commit "738896e3da491b35399178ed2c6bc92cc728d119")
- (revision "1"))
- (package
- (name "emacs-load-relative")
- (version (string-append "0.0.1" "-" revision "."
- (string-take commit 7)))
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/rocky/emacs-load-relative")
- (commit commit)))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1rpy5mfncncl6gqgg53d3g25g1700g4b9bivd4c0cfcv5dbxhp73"))))
- (build-system emacs-build-system)
- (home-page "https://github.com/rocky/emacs-load-relative")
- (synopsis "Relative loads for Emacs Lisp files")
- (description "@code{load-relative} allows to write small Emacs
-functions or modules in a larger multi-file Emacs package and
-facilitate running from the source tree without having to install the
-code or fiddle with evil @code{load-path}.")
- (license license:gpl3+))))
-
(define-public emacs-rainbow-blocks
(let ((commit "dd435d7bb34ff6f162a5f315df308b90b7e9f842"))
(package
@@ -9645,26 +9627,6 @@ buffer.")
downloading manager for Emacs.")
(license license:gpl3+))))
-(define-public emacs-csv-mode
- (package
- (name "emacs-csv-mode")
- (version "1.7")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "http://elpa.gnu.org/packages/csv-mode-"
- version ".el"))
- (sha256
- (base32
- "0r4bip0w3h55i8h6sxh06czf294mrhavybz0zypzrjw91m1bi7z6"))))
- (build-system emacs-build-system)
- (home-page "http://elpa.gnu.org/packages/csv-mode.html")
- (synopsis "Major mode for editing comma or char separated values")
- (description
- "This package provides an Emacs CSV mode, a major mode for editing
-records in a generalized CSV (character-separated values) format.")
- (license license:gpl3+)))
-
(define-public emacs-helpful
(package
(name "emacs-helpful")
@@ -11611,3 +11573,72 @@ value. For directories where the user doesn't have read permission, the
recursive size is not obtained. Once this mode is enabled, every new Dired
buffer displays recursive dir sizes.")
(license license:gpl3+)))
+
+(define-public emacs-pcre2el
+ ;; Last release is very old so we get the latest commit.
+ (let ((commit "0b5b2a2c173aab3fd14aac6cf5e90ad3bf58fa7d"))
+ (package
+ (name "emacs-pcre2el")
+ (version (git-version "1.8" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/joddie/pcre2el")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "14br6ad138qx1z822wqssswqiihxiynz1k69p6mcdisr2q8yyi1z"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/joddie/pcre2el")
+ (synopsis "Convert between PCRE, Emacs and rx regexp syntax")
+ (description "@code{pcre2el} or @code{rxt} (RegeXp Translator or RegeXp
+Tools) is a utility for working with regular expressions in Emacs, based on a
+recursive-descent parser for regexp syntax. In addition to converting (a
+subset of) PCRE syntax into its Emacs equivalent, it can do the following:
+
+@itemize
+@item convert Emacs syntax to PCRE
+@item convert either syntax to @code{rx}, an S-expression based regexp syntax
+@item untangle complex regexps by showing the parse tree in @code{rx} form and
+highlighting the corresponding chunks of code
+@item show the complete list of strings (productions) matching a regexp,
+provided the list is finite
+@item provide live font-locking of regexp syntax (so far only for Elisp
+buffers – other modes on the TODO list).
+@end itemize\n")
+ (license license:gpl3))))
+
+(define-public emacs-magit-todos
+ ;; TODO: <1.1 is broken with Guix. Switch to 1.1 when out.
+ (let ((commit "966642762788d335dc2d3667d230a36ede65972e"))
+ (package
+ (name "emacs-magit-todos")
+ (version (git-version "1.0.4" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alphapapa/magit-todos")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0nxarip8sf0446xfgrcfsjm4vbsg50klxjbr4i6h09a3lri03gyp"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-async" ,emacs-async)
+ ("emacs-dash" ,emacs-dash)
+ ("emacs-f" ,emacs-f)
+ ("emacs-hl-todo" ,emacs-hl-todo)
+ ("magit" ,magit)
+ ("emacs-pcre2el" ,emacs-pcre2el)
+ ("emacs-s" ,emacs-s)))
+ (home-page "https://github.com/alphapapa/magit-todos")
+ (synopsis "Show source files' TODOs (and FIXMEs, etc) in Magit status buffer")
+ (description "This package displays keyword entries from source code
+comments and Org files in the Magit status buffer. Activating an item jumps
+to it in its file. By default, it uses keywords from @code{hl-todo}, minus a
+few (like NOTE).")
+ (license license:gpl3))))