diff options
Diffstat (limited to 'gnu/packages/emacs-xyz.scm')
-rw-r--r-- | gnu/packages/emacs-xyz.scm | 721 |
1 files changed, 508 insertions, 213 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 3205f6de9f..9309ceab4f 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> -;;; Copyright © 2015-2023 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015-2024 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018, 2019 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2015, 2016, 2018, 2020 Christine Lemmer-Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com> @@ -136,6 +136,7 @@ ;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net> ;;; Copyright © 2023 Thanos Apollo <public@thanosapollo.com> ;;; Copyright © 2023 Ian Eure <ian@retrospec.tv> +;;; Copyright © 2024 Suhail Singh <suhail@bayesians.ca> ;;; ;;; This file is part of GNU Guix. ;;; @@ -167,6 +168,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system copy) #:use-module (guix build-system emacs) + #:use-module (guix build-system perl) #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages admin) @@ -271,6 +273,7 @@ #:use-module (gnu packages erlang) #:use-module (gnu packages statistics) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages texinfo) #:use-module (gnu packages virtualization) #:use-module (gnu packages web-browsers) #:use-module (gnu packages wget) @@ -482,7 +485,7 @@ e.g. emacs-geiser-guile for Guile.") (define-public emacs-gptel (package (name "emacs-gptel") - (version "0.5.5") + (version "0.6.0") (source (origin (method git-fetch) (uri (git-reference @@ -491,7 +494,7 @@ e.g. emacs-geiser-guile for Guile.") (file-name (git-file-name name version)) (sha256 (base32 - "1vqs03plivb1dmal53j53y4r567ggx4781n2mqyjk6s6wfvyvn93")))) + "0x98s4r2mrbwbsam317dbdq34mcgzfzdmxz3gyq4v2v8x427b3qa")))) (build-system emacs-build-system) (arguments (list @@ -507,7 +510,7 @@ e.g. emacs-geiser-guile for Guile.") (emacs-substitute-variables "gptel.el" ("gptel-use-curl" 't))))))) (inputs (list curl)) - (propagated-inputs (list emacs-map)) + (propagated-inputs (list emacs-compat emacs-map)) (home-page "https://github.com/karthink/gptel") (synopsis "GPTel is a simple ChatGPT client for Emacs") (description @@ -1374,6 +1377,30 @@ some utility functions, and commands using that infrastructure.") its mode line.") (license license:gpl3+)))) +(define-public emacs-golden-ratio + (let ((commit "375c9f287dfad68829582c1e0a67d0c18119dab9") + (revision "0")) + (package + (name "emacs-golden-ratio") + (version (git-version "1.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/roman/golden-ratio.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0a635a3h6jx0clgwmhwc48i14y3xy5q29y37lp2sjnbxx1hlmkli")))) + (build-system emacs-build-system) + (home-page "https://github.com/roman/golden-ratio.el") + (synopsis "Automatic resizing of Emacs windows to the golden ratio") + (description "This package provides an Emacs mode for automatically +resizing the window that has main focus to be more convenient for editing, +while the ones that are not being actively edited will be reduced to a smaller +size.") + (license license:expat)))) + (define-public emacs-git-modes (package (name "emacs-git-modes") @@ -2018,19 +2045,18 @@ theme but now takes more inspiration from the Nano theme.") (license license:gpl3+))) (define-public emacs-adwaita-dark-theme - ;; Version 1.1.1 isn't tagged upstream. (package (name "emacs-adwaita-dark-theme") - (version "1.1.1") + (version "1.3.0") (source (origin (method git-fetch) (uri (git-reference (url "https://gitlab.com/jessieh/adwaita-dark-theme") - (commit "057c39313341907b35c68d2179226886a0c276fd"))) + (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "1g7hyg2hfvn24gaw4lca4g8lw10q2wg9nfrgl7pfdggz202m027c")))) + "10hm8anw78n37pl9rz3dnjphrnsxf3fy00d008gayn70jfjl1433")))) (build-system emacs-build-system) (home-page "https://gitlab.com/jessieh/adwaita-dark-theme") (synopsis "Adwaita-inspired dark color scheme for Emacs") @@ -2543,6 +2569,28 @@ programs.") supports type hints, definition-jumping, completion, and more.") (license license:gpl3+))) +(define-public emacs-flexoki-themes + (let ((commit "1b871e57e989d58a793cbfef7b4996a6bd47ba9f")) ;version bump + (package + (name "emacs-flexoki-themes") + (version "0.20") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/crmsnbleyd/flexoki-emacs-theme") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0npl45h1l8jhrd5dcaaql5in4pj7c3wxnqsp8di668pz2s4i9pfh")))) + (build-system emacs-build-system) + (home-page "https://github.com/crmsnbleyd/flexoki-emacs-theme") + (synopsis "Inky colour scheme for prose and code") + (description + "Flexoki themes is a pair of light and dark themes for GNU Emacs based +on the Flexoki colour scheme by Steph Ango.") + (license license:gpl3+)))) + (define-public emacs-flycheck (package (name "emacs-flycheck") @@ -3368,14 +3416,14 @@ podcasts) in Emacs.") (define emacs-emms-print-metadata (package (name "emacs-emms-print-metadata") - (version "17") + (version "18") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "emms-" version ".tar")) (sha256 - (base32 "103gqlmda24izhb5xrh14k0bwhijr98vnlnmdr9a9xxfla9n5xw0")))) + (base32 "1jslk37kx7yzvwy4hq1a6b71kp4a3bgfzzp8bpplv7z6vcmwrmgq")))) (build-system gnu-build-system) (arguments (list @@ -3927,6 +3975,30 @@ customizability and asynchronous upgrading.") listing type errors via Flycheck, as well as REPL support for Carp.") (license license:asl2.0)))) +(define-public emacs-coterm + (package + (name "emacs-coterm") + (version "1.6") + (source + (origin + (method url-fetch) + (uri (string-append "https://elpa.gnu.org/packages/coterm-" + version ".tar")) + (sha256 + (base32 "0ikfm1acdsckflv1hcy9lmssyac2099x2yybhvb6vkghcgy99p00")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-compat)) + (home-page "https://repo.or.cz/emacs-coterm.git") + (synopsis "Terminal emulation for comint") + (description + "This package provides terminal emulation for comint. If the global +@code{coterm-mode} is enabled, proper terminal emulation will be supported for +all newly spawned comint processes. This allows you to use more complex +console programs such as @code{less} and @code{mpv} and full-screen TUI +programs such as @code{vi}, @code{top}, @code{htop} or even @code{emacs +-nw}.") + (license license:gpl3+))) + (define-public emacs-counsel-bbdb (package (name "emacs-counsel-bbdb") @@ -4241,14 +4313,14 @@ as a library for other Emacs packages.") (define-public emacs-auctex (package (name "emacs-auctex") - (version "13.2.3") + (version "13.3.0") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "auctex-" version ".tar")) (sha256 - (base32 "1590g2yd8q88xgxc449fxbxwgrbjh2cbcalcs7jk50lhzy3y8mc8")))) + (base32 "09yc9242xya2by8z72899li7zc9g23bb8j8m30kbvivynmdfhzkf")))) (build-system emacs-build-system) ;; We use 'emacs' because AUCTeX requires dbus at compile time ;; ('emacs-minimal' does not provide dbus). @@ -4795,52 +4867,59 @@ that the binary uses instead of the actual binary contents.") (define-public emacs-org-fc (package - (name "emacs-org-fc") - (version "0.3.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://git.sr.ht/~l3kn/org-fc") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "17cdn4sdyb9fs9w725l155lb74inzdn86m8y62m6hn4dgb5l4spm")))) - (build-system emacs-build-system) - (arguments - (list - #:include #~(cons* "\\.awk$" "\\.org$" %default-include) - #:exclude #~(cons "^tests/" %default-exclude) - #:tests? #t - #:test-command #~(list "emacs" "--batch" - "-L" "." - "-L" "tests/" - "-l" "tests/org-fc-filter-test.el" - "-l" "tests/org-fc-indexer-test.el" - "-l" "tests/org-fc-review-data-test.el" - "-f" "ert-run-tests-batch-and-exit") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'qualify-paths - (lambda* (#:key inputs #:allow-other-keys) - (let ((find (search-input-file inputs "/bin/find")) - (gawk (search-input-file inputs "/bin/gawk")) - (xargs (search-input-file inputs "/bin/xargs"))) - (substitute* "org-fc-awk.el" - (("\"find ") (string-append "\"" find " ")) - (("\"gawk ") (string-append "\"" gawk " ")) - (("\"xargs ") (string-append "\"" xargs " "))))))))) - (inputs (list findutils gawk)) - (propagated-inputs (list emacs-hydra)) - (home-page "https://www.leonrische.me/fc/index.html") - (synopsis "Spaced repetition system for Emacs Org mode") - (description - "Org-fc is a spaced-repetition system for Emacs' Org mode. + (name "emacs-org-fc") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.sr.ht/~l3kn/org-fc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09s493p2ccvc1zd297kldwinhn6imnmyik98qc56ndb7dp0dwa0x")))) + (build-system emacs-build-system) + (arguments + (list + #:include #~(cons* "\\.awk$" "\\.org$" %default-include) + #:exclude #~(cons "^tests/" %default-exclude) + #:tests? #t + #:test-command #~(list "emacs" "--batch" + "-L" "." + "-L" "tests/" + "-l" "tests/org-fc-card-test.el" + "-l" "tests/org-fc-filter-test.el" + "-l" "tests/org-fc-indexer-test.el" + "-l" "tests/org-fc-review-data-test.el" + "-f" "ert-run-tests-batch-and-exit") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'qualify-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((find (search-input-file inputs "/bin/find")) + (gawk (search-input-file inputs "/bin/gawk")) + (xargs (search-input-file inputs "/bin/xargs"))) + (substitute* "org-fc-awk.el" + (("\"find ") (string-append "\"" find " ")) + (("\"gawk ") (string-append "\"" gawk " ")) + (("\"xargs ") (string-append "\"" xargs " ")))))) + (add-after 'unpack 'require-eieio + (lambda _ + (substitute* "org-fc-core.el" + (("\\(require 'cl-lib\\)" line) + (string-append line "\n(require 'eieio)")))))))) + (native-inputs (list emacs-el-mock)) + (inputs (list findutils gawk)) + (propagated-inputs (list emacs-hydra)) + (home-page "https://www.leonrische.me/fc/index.html") + (synopsis "Spaced repetition system for Emacs Org mode") + (description + "Org-fc is a spaced-repetition system for Emacs' Org mode. It allows you to mark headlines in a file as flashcards, turning pieces of knowledge you want to learn into a question-answer test. These cards are reviewed at regular interval. After each review, the next review interval is calculated based on how well you remembered the contents of the card.") - (license license:gpl3+))) + (license license:gpl3+))) (define-public emacs-font-lock+ (let ((commit "aa1c82d05c9222b09099a0ccd7468e955497940c") @@ -6631,26 +6710,28 @@ and code formatting.") (license license:gpl3+))) (define-public emacs-el-mock - (package - (name "emacs-el-mock") - (version "1.25.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/rejeep/el-mock.el") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "13mv1rhgkwiww2wh5w926jz7idppp492wir1vdl245c5x50dh4f7")))) - (build-system emacs-build-system) - (home-page "https://github.com/rejeep/el-mock.el") - (synopsis "Tiny mock and stub framework in Emacs Lisp") - (description - "Emacs Lisp Mock is a library for mocking and stubbing using readable + (let ((commit "6cfbc9de8f1927295dca6864907fe4156bd71910") + (revision "1")) + (package + (name "emacs-el-mock") + (version (git-version "1.25.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rejeep/el-mock.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09c3a1771v6kliwj0bn953pxxyjlk6q9kp31cxcr0nraik7d0mhk")))) + (build-system emacs-build-system) + (home-page "https://github.com/rejeep/el-mock.el") + (synopsis "Tiny mock and stub framework in Emacs Lisp") + (description + "Emacs Lisp Mock is a library for mocking and stubbing using readable syntax. Most commonly Emacs Lisp Mock is used in conjunction with Emacs Lisp Expectations, but it can be used in other contexts.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-ecukes (package @@ -7999,6 +8080,27 @@ Also included are keybindings for spec files and Dired buffers, as well as snippets for yasnippet.") (license license:gpl3+)))) +(define-public emacs-vhdl-mode + (package + (name "emacs-vhdl-mode") + (version "3.39.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://iis-people.ee.ethz.ch/~zimmi/emacs/vhdl-mode-" + version ".tar.gz")) + (sha256 + (base32 + "1yvh4gyig8hgf5pahajjgsgp4jpzwgmlprwzsfybqxrcfza6f3yq")))) + (build-system emacs-build-system) + (home-page "https://iis-people.ee.ethz.ch/~zimmi/emacs/vhdl-mode.html") + (synopsis "Major mode for VHDL programming language") + (description + "This Emacs package provides a mode for the VHDL programming language. +It tracks the latest version of the same @code{vhdl-mode} package included +with Emacs.") + (license license:gpl3+))) + (define-public emacs-mode-line-bell (package (name "emacs-mode-line-bell") @@ -8273,7 +8375,10 @@ the speedbar window.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "1wkqnc5n8if8fsh7f3bdr5nzn6dbj1nzdxlmnz8nflmx4g32fp6v")))) + (base32 + "1wkqnc5n8if8fsh7f3bdr5nzn6dbj1nzdxlmnz8nflmx4g32fp6v")) + (patches + (search-patches "emacs-shx-byte-compilation-test.patch")))) (build-system emacs-build-system) (arguments (list @@ -8646,7 +8751,7 @@ files which are intended to be packages.") (define-public emacs-elisp-demos (package (name "emacs-elisp-demos") - (version "2020.02.19") + (version "2024.01.16") (source (origin (method git-fetch) @@ -8656,12 +8761,13 @@ files which are intended to be packages.") (file-name (git-file-name name version)) (sha256 (base32 - "0mckgaz92v3y2vlkggx9kd51fd1mahylw39c42l51dyv8wscm7sc")))) + "1pgg5z3z2pf0vps86lrkxfr36v4c24mpgvj551gixdlrm2s55p0l")))) (build-system emacs-build-system) (arguments - `(#:include '("\\.el$" "\\.org$") - #:tests? #t - #:test-command '("make" "test"))) + (list + #:include #~(cons* "\\.org$" %default-include) + #:tests? #t + #:test-command #~(list "make" "test"))) (home-page "https://github.com/xuchunyang/elisp-demos/") (synopsis "Enhance @code{*Help*} buffers with additional examples") (description @@ -8902,14 +9008,14 @@ by a query, so both a link can refer to several mails.") (define-public emacs-debbugs (package (name "emacs-debbugs") - (version "0.37") + (version "0.38") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/debbugs-" version ".tar")) (sha256 - (base32 "0xj0sv5d3y88fsbm7yhm0v59mzj1srxayng1hr418v89ky43rxpr")))) + (base32 "0cl6vcnlyanrl3qzhd31pw9qvij6g88cgifl3mwgw54bbagl9hh6")))) (build-system emacs-build-system) (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$"))) (propagated-inputs @@ -12334,6 +12440,90 @@ moving to the next or previous keyword and to invoke @code{occur} with a regexp that matches all known keywords.") (license license:gpl3+))) +(define-public emacs-pde + (package + (name "emacs-pde") + (version "0.2.17") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/Y/YE/YEWENBIN/Emacs-PDE-v" + version ".tar.gz")) + (modules '((guix build utils))) + (snippet '(begin + ;; Delete pre-generated Texinfo and HTML documentation. + (for-each delete-file '("lisp/doc/pde.info" + "lisp/doc/pde.html")) + (delete-file-recursively "lisp/doc/pde"))) + (sha256 + (base32 "1i82isha839c8lx73kgp43v7gxr2adsr1yfw1glyxvi62w5ab9qz")))) + (build-system perl-build-system) + (arguments + (list + #:imported-modules `(,@%emacs-build-system-modules + ,@%perl-build-system-modules) + #:modules '((guix build perl-build-system) + (guix build emacs-utils) + (guix build utils)) + #:module-build-flags + #~(list (string-append "--elispdir=" #$output + "/share/emacs/site-lisp/pde") + "--verbose") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-commands + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "lisp" + (for-each make-file-writable + '("pde-vars.el" "perlcritic.el" "perldoc.el" + "perltidy.el")) + (emacs-substitute-variables "pde-vars.el" + ("pde-perl-program" + (search-input-file inputs "bin/perl")) + ("pde-perl-version" + #$(package-version (this-package-input "perl"))) + ("pde-perldoc-program" + (search-input-file inputs "bin/perldoc")) + ("pde-find-program" + (search-input-file inputs "bin/find"))) + (emacs-substitute-variables "perlcritic.el" + ("perlcritic-program" + (search-input-file inputs "bin/perlcritic"))) + (emacs-substitute-variables "perldoc.el" + ("perldoc-cache-el" + "(expand-file-name \"~/.cache/perldoc-cache.el\"") + ("perldoc-pod2man" + (search-input-file inputs "bin/pod2man"))) + (emacs-substitute-variables "perltidy.el" + ("perltidy-program" + (search-input-file inputs "bin/perltidy"))) + (substitute* "tools/perldoc-cache.pl" + (("`perldoc") + (string-append + "`" (search-input-file inputs "bin/perldoc"))))))) + (add-after 'build 'generate-doc + (lambda _ + (invoke "./Build" "info"))) + (add-after 'install 'move-doc + (lambda _ + (let ((info (string-append #$output "/share/info/pde.info"))) + (mkdir-p (dirname info)) + (rename-file (string-append + #$output + "/share/emacs/site-lisp/pde/doc/pde.info") + info))))))) + (native-inputs (list emacs-minimal perl-module-build texinfo)) + (inputs (list findutils perl perl-critic)) + (home-page "https://metacpan.org/release/Emacs-PDE") + (synopsis "Perl Development Environment for Emacs") + (description "Emacs::PDE is a collection of Emacs Lisp extensions to +facilitate Perl programming. CPerl Mode has provided an excellent environment +for coding; Emacs::PDE provides other common tools such as creating files +using templates, smart compiling, @command{perldoc}, @command{perltidy}, +debugger, tags tree view and so on. PDE also provides an easy configuration +for Perl programing, and a tutorial for novices to start using Emacs.") + (license license:perl-license))) + (define-public emacs-perspective (package (name "emacs-perspective") @@ -13342,7 +13532,7 @@ Clojure projects from templates.") (define-public emacs-clj-refactor (package (name "emacs-clj-refactor") - (version "3.11.2") + (version "3.11.3") (source (origin (method git-fetch) @@ -13351,7 +13541,7 @@ Clojure projects from templates.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1y8xphmmd2ciwnrr7lbiwq0v5c7chq60wssxng9mw0fiz2i3ix22")))) + (base32 "17c9lrykbfp0ab7lmi4jh34q6ir7i46acn313xw5342d2q5ql6sk")))) (build-system emacs-build-system) (propagated-inputs (list emacs-cider @@ -13823,7 +14013,7 @@ mode with the package emacs-julia-mode.") (define-public emacs-julia-snail (package (name "emacs-julia-snail") - (version "1.2.3") + (version "1.3.1") (source (origin (method git-fetch) (uri (git-reference @@ -13832,7 +14022,7 @@ mode with the package emacs-julia-mode.") (file-name (git-file-name name version)) (sha256 (base32 - "07dj788hdfskn2k400q2fcfh18w7gflfrc5zqg8bqflhv755m30k")))) + "0h5lwc2hsk4rc82idhf9qj9553v7x76wmy9x2z1h60pdd93ilcyr")))) (build-system emacs-build-system) (arguments (list @@ -14093,7 +14283,7 @@ in Emacs.") (define-public emacs-edit-indirect (package (name "emacs-edit-indirect") - (version "0.1.10") + (version "0.1.11") (source (origin (method git-fetch) @@ -14102,7 +14292,7 @@ in Emacs.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "13v0fvzh3nv3bm4c3ld7pknw2g76cjkx81hsrmbrd1irlv4s4b00")))) + (base32 "0w30lc8ikrxgbxgmhdxvnzs1b12fvbrg6qf3f9ybyq8v3n7lzi9y")))) (build-system emacs-build-system) (home-page "https://github.com/Fanael/edit-indirect") (synopsis "Edit regions in separate buffers") @@ -15218,7 +15408,7 @@ ack, ag, helm and pt.") (define-public emacs-helm (package (name "emacs-helm") - (version "3.9.6") + (version "3.9.7") (source (origin (method git-fetch) @@ -15227,7 +15417,7 @@ ack, ag, helm and pt.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "01b2608gsly557927wdkp71mbakk7h23icjnxq097r12zra4agc7")))) + (base32 "0f7vwrvxg83gril2y5qm4469nzhy51dg49zn643pni6cmhz7r9mx")))) (build-system emacs-build-system) (propagated-inputs (list emacs-async emacs-popup)) @@ -15435,11 +15625,11 @@ Makefile targets.") (license license:gpl3+)))) (define-public emacs-helm-make - (let ((commit "feae8df22bc4b20705ea08ac9adfc2b43bb348d0") - (revision "1")) + (let ((commit "ebd71e85046d59b37f6a96535e01993b6962c559") + (revision "0")) (package (name "emacs-helm-make") - (version (string-append "0.1.0-" revision "." (string-take commit 7))) + (version (git-version "0.2.0" revision commit)) (source (origin (method git-fetch) @@ -15449,10 +15639,10 @@ Makefile targets.") (file-name (git-file-name name version)) (sha256 (base32 - "1y2v77mmd1bfkkz51cnk1l0dg3lvvxc39wlamnm7wjns66dbvlam")))) + "14jvhhw4chl94dgfwbyy7yirwchvcz5zrsgr9w6qy4z0fhqba41a")))) (build-system emacs-build-system) (propagated-inputs - (list emacs-helm emacs-projectile)) + (list emacs-helm emacs-ivy emacs-projectile)) (home-page "https://github.com/abo-abo/helm-make") (synopsis "Select a Makefile target with helm") (description "@code{helm-make} or @code{helm-make-projectile} will give @@ -15514,7 +15704,7 @@ implementation.") (define-public emacs-cider (package (name "emacs-cider") - (version "1.12.0") + (version "1.13.0") (source (origin (method git-fetch) @@ -15523,7 +15713,7 @@ implementation.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "11bibkbv3x0z4ilxra3p91nh8klgg3mg3h4f63pxnnp8fjhqpsph")))) + (base32 "177dkd2q5fnn1n36d2vvgp6n1hh6rgcglhz63r58nkvb0y3d4kn9")))) (build-system emacs-build-system) (arguments '(#:include (cons* "^lein\\.sh$" "^clojure\\.sh$" %default-include) @@ -16535,14 +16725,14 @@ to be a more complete implementation.") (define-public emacs-orgalist (package (name "emacs-orgalist") - (version "1.13") + (version "1.14") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" - "orgalist-" version ".el")) + "orgalist-" version ".tar")) (sha256 - (base32 "1wkxc5kcy1g4lx6pd78pa8znncjyl9zyhsvz7wpp56qmhq4hlav3")))) + (base32 "08gx8aqi7ph75vhhss2xl1lfypzy8a3zmj7w8flcrvz1nk0z738s")))) (build-system emacs-build-system) (home-page "https://elpa.gnu.org/packages/orgalist.html") (synopsis "Manage Org-like lists in non-Org buffers") @@ -16598,7 +16788,7 @@ passive voice.") (define-public emacs-org (package (name "emacs-org") - (version "9.6.14") + (version "9.6.17") (source (origin (method git-fetch) @@ -16607,7 +16797,7 @@ passive voice.") (commit (string-append "release_" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0g59nfx8gqzkqidqvyvh83yd7mahjm9khhr1ccwqj3r4phwpciqx")))) + (base32 "1szahr3cn8nkr6ncrf6k8l8fqvxg5ya594kj92grkl13qqmr97mb")))) (build-system emacs-build-system) (arguments (list @@ -17174,7 +17364,7 @@ provides functions to convert hash tables from and to alists and plists.") (define-public emacs-log4e (package (name "emacs-log4e") - (version "0.3.3") + (version "0.4.0") (source (origin (method git-fetch) @@ -17183,7 +17373,7 @@ provides functions to convert hash tables from and to alists and plists.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0dbnks76v05allzkhx9zmyqpn6sk5376n8k2rbpnaw6gmz1ib2fv")))) + (base32 "01nq8im693w7h7pwayd9snz1nhv2k6s969hvgyqn2qh337ly8rwy")))) (build-system emacs-build-system) (arguments `(#:phases @@ -17729,39 +17919,40 @@ the Emacs TempEl package.") (license license:gpl3+)))) (define-public emacs-yasnippet - (package - (name "emacs-yasnippet") - (version "0.14.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/joaotavora/yasnippet") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0via9dzw8m5lzymg1h78xkwjssh39zr3g6ccyamlf1rjzjsyxknv")) - (patches - (search-patches "emacs-yasnippet-fix-empty-snippet-next.patch" - "emacs-yasnippet-fix-tests.patch")))) - (build-system emacs-build-system) - (arguments - `(#:tests? #t - #:test-command '("emacs" "--batch" - "-l" "yasnippet-tests.el" - "-f" "ert-run-tests-batch-and-exit") - #:phases - (modify-phases %standard-phases - ;; Set HOME, otherwise test-rebindings fails. - (add-before 'check 'set-home - (lambda _ - (setenv "HOME" (getcwd)) - #t))))) - (home-page "https://github.com/joaotavora/yasnippet") - (synopsis "Yet another snippet extension for Emacs") - (description "YASnippet is a template system for Emacs. It allows you to + ;; The latest release is more than 5 years old, has test problems. + (let ((revision "0") + (commit "297546f0853a6a51f5b05e954d0c6aea8caa5ec2")) + (package + (name "emacs-yasnippet") + (version (git-version "0.14.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/joaotavora/yasnippet") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0b1fdigwjshfim6zyzkn2wa6k8xd4qlafrf7zgj5bsx6alrzac8v")) + (patches + (search-patches "emacs-yasnippet-fix-empty-snippet-next.patch")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("emacs" "--batch" + "-l" "yasnippet-tests.el" + "-f" "ert-run-tests-batch-and-exit") + #:phases + (modify-phases %standard-phases + ;; Set HOME, otherwise test-rebindings fails. + (add-before 'check 'set-home + (lambda _ + (setenv "HOME" (getcwd))))))) + (home-page "https://github.com/joaotavora/yasnippet") + (synopsis "Yet another snippet extension for Emacs") + (description "YASnippet is a template system for Emacs. It allows you to type an abbreviation and automatically expand it into function templates.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-yasnippet-snippets (package @@ -18176,15 +18367,16 @@ highlights quasi-quoted expressions.") (define-public emacspeak (package (name "emacspeak") - (version "53.0") + (version "59.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/tvraman/emacspeak/releases/download/" - version "/emacspeak-" version ".tar.bz2")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/tvraman/emacspeak") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "0lasj4ggsh93ingf46n16wxfx5zzxvr1igikbmdqlz3i99j331gs")))) + (base32 "010c8hy8nmffaqn1h8n8hmyxvn7gx6ygx4pxgdfp1vl8bb1bz54y")))) (build-system gnu-build-system) (arguments (list @@ -18614,7 +18806,7 @@ configuration of Chinese fonts.") (define-public emacs-boon (package (name "emacs-boon") - (version "1.2") + (version "1.3") (source (origin (method git-fetch) @@ -18623,7 +18815,7 @@ configuration of Chinese fonts.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "18il2licf8pgfcrpx2bk55gpf8f537kb9cxqz83jldkhiyry74il")))) + (base32 "0jmmxav45sbch9prdxipd04rdmyh5ca1r9lpdlj61b5c4vlm4282")))) (build-system emacs-build-system) (propagated-inputs (list emacs-dash emacs-expand-region emacs-multiple-cursors @@ -20464,7 +20656,7 @@ multiplexer.") (define-public emacs-plz (package (name "emacs-plz") - (version "0.7.1") + (version "0.7.2") (source (origin (method git-fetch) @@ -20473,7 +20665,7 @@ multiplexer.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0x2yhkdagwdqzjkaq54l095m3zvn49dg8y47wg27qdb5m2cjnswr")))) + (base32 "0bbc8jr6xivzc7r701lnxmhcs7v56av780avyycaz1hpcmggl726")))) (build-system emacs-build-system) (inputs (list curl)) (arguments @@ -21438,14 +21630,14 @@ let users kill or mark things easily.") (define-public emacs-csv-mode (package (name "emacs-csv-mode") - (version "1.22") + (version "1.23") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "csv-mode-" version ".tar")) (sha256 - (base32 "1f9pny1hkhdfmkmfpsk6ayjmb9p5hdpxpnmcprf51nfbvmi7ssig")))) + (base32 "0bdx56bn5aw0xjqgqhx2ccrrns3si04zy9ya755jz7n1djqn3mcz")))) (build-system emacs-build-system) (home-page "https://elpa.gnu.org/packages/csv-mode.html") (synopsis "Major mode for editing comma/char separated values") @@ -21738,10 +21930,28 @@ emulates Vim features and provides Vim-like key bindings.") (propagated-inputs (list emacs-evil)) (arguments - `(#:tests? #t - #:test-command '("emacs" "--batch" - "-l" "evil-quickscope-tests.el" - "-f" "ert-run-tests-batch-and-exit"))) + (list + #:tests? #t + #:test-command #~'("emacs" "--batch" + "-l" "evil-quickscope-tests.el" + "-f" "ert-run-tests-batch-and-exit") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'disable-failing-tests + (lambda _ + (let-syntax + ((disable-tests + (syntax-rules () + ((_ file ()) + (syntax-error "test names list must not be empty")) + ((_ file (test-name ...)) + (substitute* file + (((string-append "^\\(ert-deftest " test-name ".*") + all) + (string-append all "(skip-unless nil)\n")) ...))))) + (disable-tests + "evil-quickscope-tests.el" + ("evil-quickscope-update-overlays-directional-test")))))))) (home-page "https://github.com/blorbx/evil-quickscope") (synopsis "Target highlighting for emacs evil-mode f,F,t and T commands") (description "@code{emacs-evil-quickscope} highlights targets for Evil @@ -22513,7 +22723,7 @@ match and total match information in the mode-line in various search modes.") (define-public emacs-pg (package (name "emacs-pg") - (version "0.24") + (version "0.27") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/emarsden/pg-el") @@ -22521,7 +22731,7 @@ match and total match information in the mode-line in various search modes.") (file-name (git-file-name name version)) (sha256 (base32 - "0228yig42g3x79gj1yakgmsj119v0agzvyn888nq6qgcd04i1w0d")))) + "1dad9irnv3sppl3yfl5swdsf4f1z2fds7r1li3f1kphm37v6jn5g")))) (build-system emacs-build-system) (home-page "https://github.com/emarsden/pg-el") (synopsis "Emacs Lisp interface for PostgreSQL") @@ -22858,29 +23068,25 @@ outline-mode), so there is no such thing like an outshine mode, only (license license:gpl3+))) (define-public emacs-frecency - (let ((commit "31ef9ff4af1a4fed3dcc24ea74037feea8795c87") - (version "0.1-pre") - (revision "1")) - (package - (name "emacs-frecency") - (version (git-version version revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/alphapapa/frecency.el") - (commit commit))) - (sha256 - (base32 - "051aihjdg3x22svaxhwylpi8i6s2x9j8syvsj1jgilgjjdy15l6j")) - (file-name (git-file-name name version)))) - (build-system emacs-build-system) - (propagated-inputs - (list emacs-a emacs-dash)) - (home-page "https://github.com/alphapapa/frecency.el") - (synopsis "Sort items by frequency and recency of access") - (description "This package provides a way of sorting items via + (package + (name "emacs-frecency") + (version "1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alphapapa/frecency.el") + (commit (string-append "v" version)))) + (sha256 + (base32 + "1n1ghl3jr4wmzc4f5xhkx5mfg3vfqs0kjzbra6k5drcnyh2iixkc")) + (file-name (git-file-name name version)))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-a emacs-dash)) + (home-page "https://github.com/alphapapa/frecency.el") + (synopsis "Sort items by frequency and recency of access") + (description "This package provides a way of sorting items via a heuristic based on frequency and recency.") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-org-recent-headings (let ((commit "97418d581ea030f0718794e50b005e9bae44582e") @@ -23235,7 +23441,7 @@ interactive commands and functions, such as @code{completing-read}.") (define-public emacs-org-ql (package (name "emacs-org-ql") - (version "0.8") + (version "0.8.4") (source (origin (method git-fetch) (uri (git-reference @@ -23243,7 +23449,7 @@ interactive commands and functions, such as @code{completing-read}.") (commit (string-append "v" version)))) (sha256 (base32 - "0l403n75xyjf14pbk7hfdzajv393mk5m0xp9csv8dl805rgzrdkr")) + "07r9bx0bh7wyj5pbkhnrn8amzz3ynri94cxcxgcn1r3ypdhk6y85")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (arguments @@ -23430,6 +23636,7 @@ automatically fetched from well-curated sources, and formatted as BibTeX.") (build-system emacs-build-system) (arguments (list + #:emacs emacs-no-x #:tests? #true #:test-command #~(list "emacs" "--batch" "-L" "." "-l" "test/citar-test.el" @@ -23439,10 +23646,7 @@ automatically fetched from well-curated sources, and formatted as BibTeX.") #:phases #~(modify-phases %standard-phases (add-before 'build 'set-home (lambda _ - (setenv "HOME" "/tmp"))) - ;; XXX: The following phase reports bogus errors. Suppress - ;; it for now. - (delete 'validate-compiled-autoloads)))) + (setenv "HOME" "/tmp")))))) (propagated-inputs (list emacs-auctex emacs-citeproc-el emacs-embark @@ -24237,14 +24441,14 @@ or expressions with SVG rounded box labels that are fully customizable.") (define-public emacs-kind-icon (package (name "emacs-kind-icon") - (version "0.2.1") + (version "0.2.2") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/kind-icon-" version ".tar")) (sha256 - (base32 "0ri5k2bgr9cf0qsdznsil70b4zs4z00fs4k35c3dj7kxx9nlncfi")))) + (base32 "1jpc4izbi5ajqqrvvfp5yqfmljaw2mq06ym36d4p2cxkz95vcmi7")))) (build-system emacs-build-system) (propagated-inputs (list emacs-svg-lib)) (home-page "https://github.com/jdtsmith/kind-icon") @@ -24866,7 +25070,7 @@ powerful Org contents.") (define-public emacs-org-re-reveal (package (name "emacs-org-re-reveal") - (version "3.25.0") + (version "3.25.1") (source (origin (method git-fetch) @@ -24875,7 +25079,7 @@ powerful Org contents.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "13q45c2a4y6pkaiixf931j4rq6sfpklxx854xwadik4a3mm06ipi")))) + (base32 "0ayiaqci969d8q3nc0aq0a9djl84lckj2sc5nndbb1bvvhz49xq1")))) (build-system emacs-build-system) (propagated-inputs (list emacs-htmlize emacs-org)) @@ -28116,7 +28320,7 @@ files) are provided.") (define-public emacs-hackernews (package (name "emacs-hackernews") - (version "0.6.1") + (version "0.7.0") (source (origin (method git-fetch) @@ -28126,7 +28330,7 @@ files) are provided.") (file-name (git-file-name name version)) (sha256 (base32 - "17lkjcka6ydd6khhz5jbjlybfpx05153z0d8s1rxaxcwl7z2y6cf")))) + "100aa0vs1gjwpkfdc7avwv5v3sicj2npqfr1y3dsib3pimp21l6w")))) (build-system emacs-build-system) (home-page "https://github.com/clarete/hackernews.el") (synopsis "Hacker News client for Emacs") @@ -28320,7 +28524,7 @@ and comments.") (define-public emacs-yeetube (package (name "emacs-yeetube") - (version "2.0.7") + (version "2.0.9") (source (origin (method git-fetch) @@ -28329,7 +28533,7 @@ and comments.") (commit version))) (sha256 (base32 - "05w33431dfr1ldcg3yq01qvz0alpv8q88r0dsb278qbwszw9cfz6")) + "17475zkvhj7yc3sxv0snmvxf84mkl30l78s28gzzm3j15p806cbd")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (arguments @@ -28343,8 +28547,11 @@ and comments.") (search-input-file inputs "/bin/yt-dlp"))) (emacs-substitute-variables "yeetube-mpv.el" ("yeetube-mpv-path" - (search-input-file inputs "/bin/mpv")))))))) + (search-input-file inputs "/bin/mpv"))) + (substitute* "yeetube-mpv.el" + (("\\(yeetube-mpv-check\\)") ""))))))) (inputs (list mpv yt-dlp)) + (propagated-inputs (list emacs-compat)) (home-page "https://thanosapollo.com/blog/yeetube/") (synopsis "Youtube and Invidious front-end for Emacs") (description @@ -29885,7 +30092,7 @@ interface to attach and interact with the processes.") (define-public emacs-dtrt-indent (package (name "emacs-dtrt-indent") - (version "1.15") + (version "1.16") (source (origin (method git-fetch) (uri (git-reference @@ -29894,7 +30101,7 @@ interface to attach and interact with the processes.") (file-name (git-file-name name version)) (sha256 (base32 - "1vddrpplc7887gcfg7d52fv1nxv6sgn3w310gr06c6nfk3lwas9y")))) + "01jrnzbqgj8pimvrb8335vjly04r0bx67gvq7dvprnf72n49r4i7")))) (build-system emacs-build-system) (home-page "https://github.com/jscheid/dtrt-indent") (synopsis "Minor mode that guesses the indentation offset") @@ -31864,40 +32071,44 @@ current subtree. The cards are inserted under a new ``Cards'' heading in the current tree.") (license license:gpl3+)))) -(define-public emacs-org-dynamic-agenda +(define-public emacs-org-agenda-files-track (package - (name "emacs-org-dynamic-agenda") - (version "0.3.1") + (name "emacs-org-agenda-files-track") + (version "0.4.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://git.sr.ht/~ngraves/org-dynamic-agenda") + (url "https://git.sr.ht/~ngraves/org-agenda-files-track") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0g59ckcrc9qd0h78qwq4qm3kn97nvnc2a0yj4g3fh74wr1mg80ad")))) + (base32 "0d7fhsinm2cj8vd7s54x5r6jhq3l36b7x6s8cy5r6y005h8kac50")))) (build-system emacs-build-system) (arguments (list #:include - #~(list "org-dynamic-agenda\\.el" "README\\.org"))) - (home-page "https://git.sr.ht/~ngraves/org-dynamic-agenda") - (synopsis "Dynamically generate org-agenda-files") + #~(list "org-agenda-files-track\\.el" "README\\.org"))) + (home-page "https://git.sr.ht/~ngraves/org-agenda-files-track") + (synopsis "Fine-track org-agenda-files") (description - "This package dynamically generates org-agenda-files.") + "This package tracks org-agenda-files precisely to speed-up org-agenda.") (license license:gpl3+))) -(define-public emacs-org-dynamic-agenda-ql +(define-deprecated emacs-org-dynamic-agenda emacs-org-agenda-files-track) + +(define-public emacs-org-agenda-files-track-ql (package - (inherit emacs-org-dynamic-agenda) - (name "emacs-org-dynamic-agenda-ql") + (inherit emacs-org-agenda-files-track) + (name "emacs-org-agenda-files-track-ql") (arguments (list #:include - #~(list "org-dynamic-agenda-ql\\.el" "README\\.org"))) + #~(list "org-agenda-files-track-ql\\.el" "README\\.org"))) (propagated-inputs (list emacs-org-ql)) (description - "This package dynamically generates org-agenda-files, and take advantage -of the org-ql cache."))) + "This package tracks org-agenda-files precisely to speed-up org-agenda, +and takes advantage of the org-ql cache."))) + +(define-deprecated emacs-org-dynamic-agenda-ql emacs-org-agenda-files-track-ql) (define-public emacs-dash-docs (let ((commit "dafc8fc9f1ddb2e4e39e0b8d066c42d5d7ce8d06") @@ -33281,6 +33492,30 @@ With org-reveal, you can create beautiful presentations with 3D effects from simple but powerful Org contents.") (license license:gpl3+)))) +(define-public emacs-ox-tufte + (package + (name "emacs-ox-tufte") + (version "4.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ox-tufte/ox-tufte") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1v8jr1k8wfpzwry073rrgkxfpwylxmk7xqabxzp49z40rc7hp26s")))) + (build-system emacs-build-system) + (propagated-inputs (list emacs-org)) + (arguments '(#:include (cons "^src/" %default-include))) + (home-page "https://github.com/ox-tufte/ox-tufte") + (synopsis "Tufte HTML Org mode export backend") + (description + "This is an export backend for Org mode that exports buffers to HTML that +is compatible with Tufte +CSS (@url{https://edwardtufte.github.io/tufte-css/}).") + (license license:gpl3+))) + (define-public emacs-ox-rss ;; XXX: Upstream provides no version nor tags whatsoever. (let ((commit "83dc898fa5493925b01716e5dd495d5e07c3d41a") @@ -33388,15 +33623,16 @@ federated microblogging social network.") (define-public emacs-ebdb (package (name "emacs-ebdb") - (version "0.8.20") + (version "0.8.22") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "ebdb-" version ".tar")) (sha256 - (base32 "1kcygkfw7r3ixbb2dgsf3rl2662xls24992y2j1w32fdh9gqk03s")))) + (base32 "12sydb2lm571096gpb8r0jpg19wiqpl52rcnrhkvzlhzxgg18pg5")))) (build-system emacs-build-system) + (inputs (list emacs-org-roam)) (home-page "https://github.com/girzel/ebdb") (synopsis "EIEIO port of BBDB, Emacs's contact-management package") (description @@ -35738,14 +35974,14 @@ detected language.") (define-public emacs-persist (package (name "emacs-persist") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "persist-" version ".tar")) (sha256 - (base32 "090n4479zs82by7a3vb551gyjvv8lpfcylk43ywr2lfyssc9xiq0")))) + (base32 "0n68dshbbyrs713989bllmm1vypch8766hc8b4y989nmyclixjwp")))) (build-system emacs-build-system) (home-page "https://elpa.gnu.org/packages/persist.html") (synopsis "Persist variables between Emacs sessions") @@ -35928,7 +36164,27 @@ Files} (@url{http://tools.ietf.org/html/rfc4180}).") #:test-command #~(list "emacs" "-Q" "--batch" "-L" "." "-l" "tests/org-journal-test" - "-f" "ert-run-tests-batch-and-exit"))) + "-f" "ert-run-tests-batch-and-exit") + #:phases + #~(modify-phases %standard-phases + (add-before 'check 'disable-failing-tests + (lambda _ + (let-syntax + ((disable-tests + (syntax-rules () + ((_ file ()) + (syntax-error "test names list must not be empty")) + ((_ file (test-name ...)) + (substitute* file + (((string-append "^\\(ert-deftest " test-name ".*") all) + (string-append all "(skip-unless nil)\n")) ...))))) + ;; These tests fail for unknown reasons (see: + ;; https://github.com/bastibe/org-journal/issues/427). + (disable-tests + "tests/org-journal-test.el" + ("org-journal-carryover-delete-empty-journal-test" + "org-journal-carryover-items-test" + "org-journal-scheduled-weekly-test")))))))) (home-page "https://github.com/bastibe/org-journal") (synopsis "Simple Org mode journaling mode") (description @@ -36278,6 +36534,45 @@ opening Org Ref's @code{cite:} links.") org-mode templates.") (license license:gpl3+))) +(define-public emacs-org-glossary + (let ((commit "1b9b7fd3d1e6c214c34463e568daaba6df00ec27") + (revision "0")) + (package + (name "emacs-org-glossary") + (version (git-version "0.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.tecosaur.net/tec/org-glossary") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09mg8aqxamnxx8kpdyk074wf2wkm4rx62z7q66azw70hjr1ggwa3")))) + (build-system emacs-build-system) + (arguments + (list + #:phases + #~(modify-phases %standard-phases + (add-after 'install 'makeinfo + (lambda _ + (invoke "emacs" + "--batch" + "--eval=(require 'ox-texinfo)" + "--eval=(find-file \"org-glossary.org\")" + "--eval=(org-texinfo-export-to-info)") + (install-file "org-glossary.info" + (string-append #$output "/share/info"))))))) + (native-inputs (list texinfo)) + (home-page "https://git.tecosaur.net/tec/org-glossary") + (synopsis "Interact with glossary-like structures in Org documents") + (description + "Org Glossary defines a flexible model for working with glossary-like +constructs (glossaries, acronyms, indices, etc.) within Org documents, with +support for in-buffer highlighting of defined terms and high-quality exports +across all Org export back-ends.") + (license license:gpl3+)))) + (define-public emacs-uml-mode ;; Package has no release. Version is extracted from "Version:" keyword in ;; main file. @@ -38216,7 +38511,7 @@ Fennel code within Emacs.") (define-public emacs-org-modern (package (name "emacs-org-modern") - (version "0.10") + (version "1.1") (source (origin (method git-fetch) @@ -38224,7 +38519,7 @@ Fennel code within Emacs.") (url "https://github.com/minad/org-modern") (commit version))) (sha256 - (base32 "0fpc6pf1chjs9bb4m9hzacny3cdxvnpvwsf0vrbbz3vy9sf1a30c")) + (base32 "1nanv3rnrjldr2gd55hn2w8j4zcm6b9jq1qica3m7iyq187ygbdg")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (propagated-inputs (list emacs-compat)) |