X-Git-Url: http://git.hcoop.net/jackhill/guix/guix.git/blobdiff_plain/178f618c3a9039ed11f54d7f88955ce326ca34a2..bdb1a3385df8b16ecdbded9142ed12c40b2a5954:/gnu/packages/emacs-xyz.scm?ds=sidebyside diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 3f03517e49..9c293b118f 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -40,7 +40,7 @@ ;;; Copyright © 2018 Pierre-Antoine Rouby ;;; Copyright © 2018 Alex Branham ;;; Copyright © 2018 Thorsten Wilms -;;; Copyright © 2018, 2019, 2020 Pierre Langlois +;;; Copyright © 2018, 2019, 2020, 2021 Pierre Langlois ;;; Copyright © 2018, 2019, 2020, 2021 Brett Gilio ;;; Copyright © 2019, 2020 Dimakakos Dimos ;;; Copyright © 2019, 2020 Brian Leung @@ -85,14 +85,18 @@ ;;; Copyright © 2020 Adam Kandur ;;; Copyright © 2020 Tim Howes ;;; Copyright © 2020 Noah Landis -;;; Copyright © 2020 Nicolò Balzarotti +;;; Copyright © 2020, 2021 Nicolò Balzarotti ;;; Copyright © 2020 André A. Gomes ;;; Copyright © 2020 Jonathan Rostran ;;; Copyright © 2020, 2021 Noah Evans ;;; Copyright © 2020 Brit Butler -;;; Copyright © 2021 Alexandr Vityazev +;;; Copyright © 2021 Alexandr Vityazev ;;; Copyright © 2021 Yurii Kholodkov ;;; Copyright © 2021 Alexey Abramov +;;; Copyright © 2021 Xinglu Chen +;;; Copyright © 2021 Stefan Reichör +;;; Copyright © 2021 Simon Tournier +;;; Copyright © 2021 Eugene Klimov ;;; ;;; This file is part of GNU Guix. ;;; @@ -137,6 +141,7 @@ #:use-module (gnu packages djvu) #:use-module (gnu packages ebook) #:use-module (gnu packages emacs) + #:use-module (gnu packages golang) #:use-module (gnu packages guile) #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) @@ -388,14 +393,13 @@ when typing parentheses directly or commenting out code line by line.") (define-public emacs-project (package (name "emacs-project") - (version "0.5.3") + (version "0.5.4") (source (origin (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/" - "project-" version ".el")) + (uri (string-append "https://elpa.gnu.org/packages/project-" version ".tar")) (sha256 - (base32 "0cpf69m41h8gfcqnq72h11925zdk35b7hw7bfy83xm83xwp12rxx")))) + (base32 "0arjvhzzcf8b80w94yvpgfdlhsjwf5jk1r7vcai5a4dg3bi9cxyb")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-xref" ,emacs-xref))) (home-page "http://elpa.gnu.org/packages/project.html") @@ -936,6 +940,29 @@ Files with the @file{.graphql} and @file{.gql} extensions are automatically opened with this mode.") (license license:gpl3+)))) +(define-public emacs-ghq + (package + (name "emacs-ghq") + (version "0.1.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rcoedo/emacs-ghq") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0rh2k93c3a0vl073a3s3a3h6gkw454v1lyd7y8l3pd24vw9hc628")))) + (build-system emacs-build-system) + (propagated-inputs + `(("ghq" ,ghq))) + (home-page "https://github.com/rcoedo/emacs-ghq") + (synopsis "Emacs interface for @code{ghq} tool") + (description + "This package provides a set of functions wrapping @code{ghq}, a tool for +organizing remote Go repository clones.") + (license license:gpl3+))) + (define-public emacs-ghub (package (name "emacs-ghub") @@ -1305,8 +1332,8 @@ provides an optional IDE-like error list.") (define-public emacs-flymake-shellcheck ;; No tag, version grabbed from source .el file. - (let ((commit "78956f0e5bb9c4d35989657a55929e8e3f5691e6") - (revision "0")) + (let ((commit "ac534e9ef15c82ac86ae65fe5004d29dbc8c92c7") + (revision "1")) (package (name "emacs-flymake-shellcheck") (version (git-version "0.1" revision commit)) @@ -1318,7 +1345,7 @@ provides an optional IDE-like error list.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "068mx5p4drwgppy4ry1rfq6qi79w6d82b4rnpl2jm37grsg94lix")))) + (base32 "04yfb4sy41spjzk9mhm4gy0h8vnjx09p2g6nm1yzgd9a5ph9sqgl")))) (build-system emacs-build-system) (home-page "https://github.com/federicotdn/flymake-shellcheck") (synopsis "Flymake backend for Bash/Sh powered by ShellCheck") @@ -1524,6 +1551,46 @@ reformat the current buffer using a command-line program, together with an optional minor mode which can apply this command automatically on save.") (license license:gpl3+))) +(define-public emacs-relative-buffers + (let ((release "0.0.1") + (revision "0") + (commit "9762fe268e9ff150dcec2e2e45d862d82d5c4008")) + (package + (name "emacs-relative-buffers") + (version (git-version release revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacsattic/relative-buffers") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0fzhwbpyndwrmxip9zlcwkrr675l5pzwcygi45hv7w1hn39w0hxp")) + (snippet + '(begin + ;; Delete the Cask test runners. + (for-each delete-file '("Cask" "test/test-helper.el")) + #t)))) + (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("ert-runner"))) + (native-inputs + `(("ert-runner" ,emacs-ert-runner))) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-f" ,emacs-f) + ("emacs-s" ,emacs-s))) + (home-page "https://github.com/emacsattic/relative-buffers") + (synopsis "Minor mode to rename buffers by project structure") + (description + "This package provides a minor mode for renaming buffers according to +project structure. For Python buffers, that will be the whole module name. +For temporary files and directories, that will be the relative path from the +project root.") + (license license:gpl3+)))) + (define-public emacs-relint (package (name "emacs-relint") @@ -1741,14 +1808,14 @@ incrementally confined in Isearch manner.") (define emacs-emms-print-metadata (package (name "emacs-emms-print-metadata") - (version "6.3") + (version "7.1") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "emms-" version ".tar")) (sha256 - (base32 "12cfq503li0gcqmm5bmqz8yjvfdif5xvz0l9vx3g5jl6ljygwgmf")))) + (base32 "1dng8dy0w0wsdvvnjnrllwv5a8wq3kj20jik994b7prdx5dn6y52")))) (build-system gnu-build-system) (arguments `(#:make-flags '("emms-print-metadata") @@ -1955,21 +2022,22 @@ mode, Rmail, Gnus, MH-E, and VM). BBDB is fully customizable.") (define-public emacs-counsel-bbdb (package - (name "emacs-counsel-bbdb") - (version "20181128.1320") - (source - (origin - (method url-fetch) - (uri (string-append "https://melpa.org/packages/counsel-bbdb-" - version ".el")) - (sha256 - (base32 - "03g3lk8hz9a17vf5r16x054bhyk8xsbnfq0div8ig13fmhqi159q")))) - (build-system emacs-build-system) - (propagated-inputs `(("emacs-ivy" ,emacs-ivy))) - (home-page "https://github.com/redguard/counsel-bbdb") - (synopsis "Ivy interface for BBDB") - (description "This Ivy extension enables the use of @code{ivy-mode} to input + (name "emacs-counsel-bbdb") + (version "0.0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/redguardtoo/counsel-bbdb") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0bki658mvlchqf3prkzxz4217a95cxm58c1qmf84yp2n8h6gd0d8")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-ivy" ,emacs-ivy))) + (home-page "https://github.com/redguardtoo/counsel-bbdb") + (synopsis "Ivy interface for BBDB") + (description "This Ivy extension enables the use of @code{ivy-mode} to input email addresses from BBDB efficiently. The main functions are: @table @code @item counsel-bbdb-complete-mail to input email addresses; @@ -1979,7 +2047,7 @@ email addresses from BBDB efficiently. The main functions are: Since @code{counsel-bbdb} is based on @code{ivy-mode}, all Ivy key bindings are supported. For example, after @samp{C-u M-x counsel-bbdb-complete-mail}, you can press @samp{C-M-n} to input multiple email addresses.") - (license license:gpl3+))) + (license license:gpl3+))) (define-public emacs-bluetooth (package @@ -2056,7 +2124,7 @@ is set.") (define-public emacs-ctrlf (package (name "emacs-ctrlf") - (version "1.2") + (version "1.3") (source (origin (method git-fetch) @@ -2065,7 +2133,7 @@ is set.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1f0k3432brc96am6az6xr1nks1vacqzixhdgwfn2xklb8if9a5xi")))) + (base32 "06wq6scqy2ax0h6aahy2r7hn3bbmkzl4w99bkrc3cqd4ij78sc8g")))) (build-system emacs-build-system) (home-page "https://github.com/raxod502/ctrlf/") (synopsis "Single-buffer text search in Emacs") @@ -2208,14 +2276,14 @@ as a library for other Emacs packages.") (define-public emacs-auctex (package (name "emacs-auctex") - (version "13.0.4") + (version "13.0.7") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "auctex-" version ".tar")) (sha256 - (base32 "1362dqb8mcaddda9849gqsj6rzlfq18xprddb74j02884xl7hq65")))) + (base32 "02jhaahdz462ncplnmzvl0zrzsmrhir4wijfwmdrm65f36iif5pc")))) (build-system emacs-build-system) ;; We use 'emacs' because AUCTeX requires dbus at compile time ;; ('emacs-minimal' does not provide dbus). @@ -2520,15 +2588,15 @@ into mode hooks and is intended to be used that way.") (define-public emacs-ggtags (package (name "emacs-ggtags") - (version "0.8.13") + (version "0.9.0") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/ggtags-" - version ".el")) + version ".tar")) (sha256 (base32 - "1qa7lcrcmf76sf6dy8sxbg4adq7rg59fm0n5848w3qxgsr0h45fg")))) + "0p79x9g94jynl83ndvqp9349vhgkzxzhnc517r8hn44iqxqf6ghg")))) (build-system emacs-build-system) (inputs `(("global" ,global))) @@ -2673,9 +2741,9 @@ using the DOT syntax, and use Graphviz to convert these files to diagrams.") (license license:gpl2+))) (define-public emacs-imenu-list - (let ((commit "46008738f8fef578a763c308cf6695e5b4d4aa77") - (revision "0") - (version "0.8")) + (let ((commit "b50222378412fbe321622a84cb2b036e084c697a") + (revision "1") + (version "0.9")) (package (name "emacs-imenu-list") (version (git-version version revision commit)) @@ -2688,7 +2756,7 @@ using the DOT syntax, and use Graphviz to convert these files to diagrams.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "14l3yw9y1nk103s7z5i1fmd6kvlb2p6ayi6sf9l1x1ydg9glrpl8")))) + (base32 "1936dd41fa05ndzf2bwhllvjz97iz0rflkazjipr7dvz5q072wj2")))) (build-system emacs-build-system) (home-page "https://github.com/bmag/imenu-list") (synopsis @@ -2908,7 +2976,7 @@ and stored in memory.") (define-public emacs-dash (package (name "emacs-dash") - (version "2.18.0") + (version "2.18.1") (source (origin (method git-fetch) (uri (git-reference @@ -2917,7 +2985,7 @@ and stored in memory.") (file-name (git-file-name name version)) (sha256 (base32 - "190v264wj5cdm109ippzx2vc64hvfzmh5nbx4f2w09hn0hwfqipm")))) + "1cvfd36vv0wqb16bnqqxh99hy2yks0j2i4l8qjkg3bxjgk7ldmva")))) (build-system emacs-build-system) (arguments `(#:tests? #t)) (home-page "https://github.com/magnars/dash.el") @@ -3533,7 +3601,7 @@ representation.") (define-public emacs-git-gutter (package (name "emacs-git-gutter") - (version "0.90") + (version "0.91") (source (origin (method git-fetch) @@ -3542,7 +3610,7 @@ representation.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1abagq0psip7cgsqbfjv72qy60ywsny0ibsfcn74ldj6a9v17mz5")))) + (base32 "0zc9f73app1d7j4yb10sy4xidh5252ncyxlvr5kh0kiqk88ck6j9")))) (build-system emacs-build-system) (home-page "https://github.com/syohex/emacs-git-gutter") (synopsis "See and manage hunks of text in a version control system") @@ -3566,7 +3634,7 @@ display and behaviour is easily customisable.") (origin (method git-fetch) (uri (git-reference - (url "https://github.com/syohex/git-gutter-fringe") + (url "https://github.com/emacsorphanage/git-gutter-fringe") (commit commit))) (file-name (git-file-name name version)) (sha256 @@ -3575,7 +3643,7 @@ display and behaviour is easily customisable.") (propagated-inputs `(("emacs-git-gutter" ,emacs-git-gutter) ("emacs-fringe-helper" ,emacs-fringe-helper))) - (home-page "https://github.com/syohex/git-gutter-fringe") + (home-page "https://github.com/emacsorphanage/git-gutter-fringe") (synopsis "See and manage hunks of text in a version control system") (description "This package extends @code{git-gutter} to use the fringe area of a @@ -3585,7 +3653,7 @@ window.") (define-public emacs-git-link (package (name "emacs-git-link") - (version "0.7.5") + (version "0.8.3") (source (origin (method git-fetch) @@ -3594,7 +3662,7 @@ window.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "04xa6lp8wkjb6zs096bf4sz124grcjj15xv1h009bmn2j95rggj6")))) + (base32 "0l7xmvmj5s93hc39wjjv75f22zbhahnmcxpmvx3dfvsbig9pmk75")))) (build-system emacs-build-system) (arguments `(#:tests? #t @@ -4637,6 +4705,32 @@ Also included are keybindings for spec files and Dired buffers, as well as snippets for yasnippet.") (license license:gpl3+)))) +(define-public emacs-mode-line-idle + ;; Package has no release. Version is extracted from "Version:" keyword in + ;; main file. + (let ((commit "02b1da6278e43cc9cc0356110cc6bfbb37eb8241") + (revision "1")) + (package + (name "emacs-mode-line-idle") + (version (git-version "0.1" revision commit)) + (source + (origin + (method git-fetch) + (file-name (git-file-name name version)) + (uri (git-reference + (url "https://gitlab.com/ideasman42/emacs-mode-line-idle") + (commit commit))) + (sha256 + (base32 "0ky330b2sfbzkbxbfp9b21hdywsjw26bllspglz08hrbni7jmry8")))) + (build-system emacs-build-system) + (home-page "https://gitlab.com/ideasman42/emacs-mode-line-idle") + (synopsis "Simple delayed text evaluation for the mode-line") + (description + "Mode Line Idle provides a convenient way to defer text evaluation +which integrates into existing mode-line without requiring a minor mode or +configuration.") + (license license:gpl3+)))) + (define-public emacs-smart-mode-line (package (name "emacs-smart-mode-line") @@ -5311,6 +5405,28 @@ view the build status of those servers' build jobs, and possibly to trigger build jobs.") (license license:gpl3+))) +(define-public emacs-tup-mode + (package + (name "emacs-tup-mode") + (version "1.3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ejmr/tup-mode") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0asd024n5v23wdsg1959sszq568wg3a1bp4jrk0cllfji1z0n78y")))) + (build-system emacs-build-system) + (home-page "https://github.com/ejmr/tup-mode") + (synopsis "Major mode for editing ``tupfiles'' used by the Tup build system") + (description + "Tup mode provides syntax highlighting for all of the elements of +tupfiles, such as rule definitions, user-defined variables, macros, flags, bin +variables, and so on. The mode also allows you to execute Tup commands.") + (license license:gpl3+))) + (define-public emacs-company (package (name "emacs-company") @@ -5780,6 +5896,33 @@ interactive searches to move multiple fake cursors.") simultaneous cursors.") (license license:gpl3+))) +(define-public emacs-multifiles + ;; There is no tag and no "Version:" keyword. Using the latest release + ;; instead. + (let ((commit "dddfe64b8e1c1cd1f9ccc1f03405477fc0d53897") + (revision "1")) + (package + (name "emacs-multifiles") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/magnars/multifiles.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "065l04ylplng1vgykkbn2vnkcs3sn1k2cikx1ha2q8wmgx6bkvai")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash))) + (home-page "https://github.com/magnars/multifiles.el") + (synopsis "Edit multiple files in a single Emacs buffer") + (description + "This package allows one to view and edit parts of multiple files in +one Emacs buffer.") + (license license:gpl3+)))) + (define-public emacs-mc-extras (let ((commit "053abc52181b8718559d7361a587bbb795faf164") (revision "1")) @@ -6598,7 +6741,7 @@ cards created in Org mode.") (sha256 (base32 "0vchyd80ybvr6317dwm50nxcgxfrpc0bz6259vnrh24p5sb8shbj")))) (build-system emacs-build-system) - (home-page "http://github.com/org-mime/org-mime") + (home-page "https://github.com/org-mime/org-mime") (synopsis "Send HTML email using Org mode HTML export") (description "This program sends HTML email using Org-mode HTML export. @@ -6607,6 +6750,32 @@ useful for sending tables, fontified source code, and inline images in email.") (license license:gpl3+))) +(define-public emacs-org-msg + ;; No git tags. The commit below corresponds to the release of version 3.3. + (let ((commit "89e746c0a864031eef940758230bc7263a6f2289")) + (package + (name "emacs-org-msg") + (version "3.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jeremy-compostella/org-msg") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "15gd5zbxvdallyra9lmpb9i1r2mmwz0j0i0ra7j9imnbfiz3ln9r")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-htmlize" ,emacs-htmlize))) + (home-page "https://github.com/jeremy-compostella/org-msg") + (synopsis "Mix Org mode and Message mode to compose emails") + (description + "OrgMsg is a GNU Emacs global minor mode mixing up Org mode and your +Mail User Agent Mode (Message, mu4e, or Notmuch) to compose and reply to +emails in a Outlook HTML friendly style.") + (license license:gpl3+)))) + (define-public emacs-org-superstar (package (name "emacs-org-superstar") @@ -7184,7 +7353,7 @@ include installing, removing or visiting the homepage.") (define-public emacs-prescient (package (name "emacs-prescient") - (version "5.0") + (version "5.1") (source (origin (method git-fetch) @@ -7193,7 +7362,7 @@ include installing, removing or visiting the homepage.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "001q4l730bhw4d508jxlpzh1z459qzpg6rbncp12jrfm5yidksix")))) + (base32 "0d6kbczkamhhcmc8bf01q6k1x0g7dwjihwllzsldgga3dclyh4ks")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-company" ,emacs-company) @@ -7258,7 +7427,7 @@ style, or as multiple word prefixes.") (define-public emacs-consult (package (name "emacs-consult") - (version "0.5") + (version "0.6") (source (origin (method git-fetch) @@ -7266,7 +7435,7 @@ style, or as multiple word prefixes.") (url "https://github.com/minad/consult") (commit version))) (sha256 - (base32 "0840hm6nk6yzz8yp8xqzdrycf7wwklxaxp10q0d30wpxwcrsw5c2")) + (base32 "09n3q3dyi83s4fk4z7csnjicbxd69ws4zp4371c1lbxcvvq2fdnd")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (propagated-inputs @@ -7275,14 +7444,14 @@ style, or as multiple word prefixes.") (home-page "https://github.com/minad/consult") (synopsis "Consulting completing-read") (description "This package provides various handy commands based on the -Emacs completion function completing-read, which allows to quickly select from a +Emacs completion function completing-read, which allows quickly selecting from a list of candidates.") (license license:gpl3+))) (define-public emacs-marginalia (package (name "emacs-marginalia") - (version "0.3") + (version "0.4") (source (origin (method git-fetch) @@ -7291,7 +7460,7 @@ list of candidates.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1qihw1vq9sysrl6ha23ggycp0n2n1dx1ajkaqfm5vmv8480al07i")))) + (base32 "0piwzxp1zmwp876kyca0xcgyxgn8bn4wh5fnn88dkvdzi8mcgmkh")))) (build-system emacs-build-system) (home-page "https://github.com/minad/marginalia") (synopsis "Marginalia in the minibuffer completions") @@ -7751,13 +7920,13 @@ hydras with one column per group of heads."))) (define-public emacs-ivy (package (name "emacs-ivy") - (version "0.13.1") + (version "0.13.4") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/ivy-" version ".tar")) (sha256 - (base32 "0n0ixhdykbdpis4krkqq6zncbby28p34742q96n0l91w0p19slcx")))) + (base32 "0qpza1c45mr8fcpnm32cck4v22fnzz1yb7kww05rzgq1k9iivx5v")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-hydra" ,emacs-hydra))) @@ -7775,14 +7944,14 @@ expression.") (define-public emacs-counsel (package (name "emacs-counsel") - (version "0.13.1") + (version "0.13.4") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" - "counsel-" version ".el")) + "counsel-" version ".tar")) (sha256 - (base32 "1y3hr3j5bh5mbyh1cqzxx04181qpvj4xyv1gym2gxcjd30nfllli")))) + (base32 "094zfapfn1l8wjf3djkipk0d9nks0g77sbk107pfsbr3skkzh031")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-swiper" ,emacs-swiper))) @@ -7808,14 +7977,13 @@ The following completions are currently available: (define-public emacs-swiper (package (name "emacs-swiper") - (version "0.13.1") + (version "0.13.4") (source (origin (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/" - "swiper-" version ".el")) + (uri (string-append "https://elpa.gnu.org/packages/swiper-" version ".tar")) (sha256 - (base32 "06ild7kck0x5ry8bf0al24nh04q01q3jhj6jjl4xz8n2s6jnn70y")))) + (base32 "197pq2cvvskib87aky907wv2am55vilr7y5dabmmm07a8vr9py0v")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-ivy" ,emacs-ivy))) @@ -7912,30 +8080,35 @@ use it, call @code{M-x ivy-yasnippet} (but make sure you have enabled @code{yas-minor-mode} first).") (license license:gpl3+)))) +;; The 0.1.6 release is incompatible with newer ivy versions, so we instead +;; pick a more recent snapshot of the repository, see +;; https://github.com/Yevgnen/ivy-rich/pull/80. (define-public emacs-ivy-rich - (package - (name "emacs-ivy-rich") - (version "0.1.6") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/Yevgnen/ivy-rich") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1ra18v6lgz3m6asm6d5b92zn1x22yiz4cwxd9b54dnvwi11121m7")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-ivy" ,emacs-ivy))) - (home-page "https://github.com/Yevgnen/ivy-rich") - (synopsis "More friendly interface for @code{ivy}") - (description - "This package extends Ivy by showing more information in the minibuffer + (let ((commit "7b9b7b20c3ead81da90232cd6707dfad3c1f1eb3") + (revision "1")) + (package + (name "emacs-ivy-rich") + (version (git-version "0.1.6" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Yevgnen/ivy-rich") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "03p13z609ighdq4axls93alqfl7pclx12g4vdd7lwpcy0r0cgyf8")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy))) + (home-page "https://github.com/Yevgnen/ivy-rich") + (synopsis "More friendly interface for @code{ivy}") + (description + "This package extends Ivy by showing more information in the minibuffer for each candidate. It adds columns showing buffer modes, file sizes, docstrings, etc. If @code{emacs-all-the-icons} is installed, it can show icons as well.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-avy (package @@ -8427,7 +8600,7 @@ builtin JavaScript mode.") (base32 "0cx2848sqnnkkr4zisvqadzxngjyhmb36mh0q3if7q19yjjhmrkb")))) (build-system emacs-build-system) - (home-page "http://www.dr-qubit.org/tags/computing-code-emacs.html") + (home-page "https://www.dr-qubit.org/emacs_data-structures.html") (synopsis "Queue data structure for Emacs") (description "This Emacs library provides queue data structure. These queues can be @@ -8615,6 +8788,69 @@ E-Prime forbids the use of the \"to be\" form to strengthen your writing.") programming language.") (license license:expat))) +(define-public emacs-julia-repl + (package + (name "emacs-julia-repl") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tpapp/julia-repl") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "11vpqqnxqj9nxh8kccj4y6h3f8lib6jxnsk6vxc2j2fqw6alnafm")))) + (build-system emacs-build-system) + (home-page "https://github.com/tpapp/julia-repl") + (synopsis "Minor mode for interacting with a Julia REPL") + (description "This package provides a minor mode for interacting with a +Julia REPL running inside Emacs. The julia process is started in an ANSI +terminal (term), which allows text formatting and colors, and interaction with +the help system and the debugger. It is recommended that you use this minor +mode with the package emacs-julia-mode.") + (license license:expat))) + +(define-public emacs-julia-snail + (package + (name "emacs-julia-snail") + (version "1.0.0rc4") ;rc5 requires CSTParser (julia package) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gcv/julia-snail") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "065ix3jycsx3wvkq7a6060i93caxisdvgxgqb1l6rq15n4qln78y")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'JuliaSnail-jl + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "JuliaSnail.jl" + (string-append out "/share/emacs/site-lisp/"))) + #t))))) + (inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s) + ("emacs-spinner" ,emacs-spinner) + ("emacs-xref" ,emacs-xref))) + (propagated-inputs + `(("libvterm" ,libvterm) + ("emacs-julia-mode" ,emacs-julia-mode) ;required by parser + ("emacs-parsec" ,emacs-parsec) ;required by parser + ("emacs-vterm" ,emacs-vterm))) + (home-page "https://github.com/gcv/julia-snail") + (synopsis "Development environment and REPL interaction package for Julia") + (description "This package provides a development environment and REPL +interaction package for Julia in the spirit of Common Lisp’s SLIME and +Clojure’s CIDER. It enables convenient and dynamic REPL-driven development.") + (license license:gpl3))) + (define-public emacs-smex (package (name "emacs-smex") @@ -8998,6 +9234,58 @@ duplicated a lot. Org-mode makes the book keeping of tags and feeds much easier.") (license license:gpl3+)))) +(define-public emacs-elfeed-protocol + (package + (name "emacs-elfeed-protocol") + (version "0.8.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fasheng/elfeed-protocol") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "07r1qlldgd0kfikd0y737y5n42ab3nkw2s5jx7frimj41yandbdp")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-elfeed" ,emacs-elfeed))) + (home-page "https://github.com/fasheng/elfeed-protocol") + (synopsis "Fever/NewsBlur/ownCloud/tt-RSS protocols for Elfeed") + (description + "Elfeed-protocol provides extra protocols to make self-hosting RSS +readers like Fever, NewsBlur, ownCloud News and Tiny TIny RSS work +with Elfeed.") + (license license:gpl3+))) + +(define-public emacs-elfeed-score + (package + (name "emacs-elfeed-score") + (version "0.7.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sp1ff/elfeed-score") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "07xid0a31ghknbfwj8dxzbqkg4sfayjhlqvp17p2bzlf1mj0zjyd")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-elfeed" ,emacs-elfeed))) + (home-page "https://github.com/sp1ff/elfeed-score") + (synopsis "Gnus-style scoring for Elfeed") + (description + "Elfeed-score is an add-on for Elfeed, an RSS reader for Emacs. It +brings Gnus-style scoring to your RSS feeds. Elfeed, by default, displays +feed entries by date. This package allows you to setup rules for assigning +numeric scores to entries, and sorting entries with higher scores ahead of +those with lower, regardless of date. The idea is to prioritize content +important to you.") + (license license:gpl3+))) + (define-public emacs-el-x (package (name "emacs-el-x") @@ -9544,7 +9832,7 @@ client/server side engines). Web mode is compatible with many template engines: PHP, JSP, ASP, Django, Twig, Jinja, Mustache, ERB, FreeMarker, Velocity, Cheetah, Smarty, CTemplate, Mustache, Blade, ErlyDTL, Go Template, Dust.js, React/JSX, Angularjs, ejs, etc.") - (home-page "http://web-mode.org/") + (home-page "https://web-mode.org/") (license license:gpl3+))) (define-public emacs-templatel @@ -9863,12 +10151,12 @@ CIDER).") (define-public emacs-sly ;; Update together with sbcl-slynk. - (let ((commit "0f46f91a9542599d62c0c332b39636b2941ea372")) + (let ((commit "fb84318c08f59bc786e047006fc81e2ace568309")) ;; Versions are not always tagged. Besides, latest master contains ;; important fixes. (package (name "emacs-sly") - (version (git-version "1.0.43" "3" commit)) + (version (git-version "1.0.43" "4" commit)) (source (origin (method git-fetch) @@ -9878,7 +10166,7 @@ CIDER).") (file-name (git-file-name name version)) (sha256 (base32 - "0p3j0zylacy6vms8ngis2hx2351xnwfzsw3zy043q6vmqd14wrf1")))) + "0z123k9ak7yjb9bxb5qx48f33ma8066rhkqh8xc14z7shk75jybj")))) (build-system emacs-build-system) (native-inputs `(("texinfo" ,texinfo))) @@ -10188,7 +10476,7 @@ Lua programming language}.") (define-public emacs-ebuild-mode (package (name "emacs-ebuild-mode") - (version "1.51") + (version "1.52") (source (origin (method url-fetch) @@ -10197,7 +10485,7 @@ Lua programming language}.") "ebuild-mode-" version ".tar.xz")) (file-name (string-append name "-" version ".tar.xz")) (sha256 - (base32 "0sfmd6ns2qdmybcynlvc4fqzkbkzmm54rn87wyirdcqnpy0x03i2")))) + (base32 "10nikbbwh612qlnms2i31963a0h3ccyg85vrxlizdpsqs4cjpg6h")))) (build-system emacs-build-system) (arguments '(#:phases @@ -10796,13 +11084,13 @@ passive voice.") (name "emacs-org") ;; emacs-org-contrib inherits from this package. Please update it as ;; well. - (version "9.4.4") + (version "9.4.5") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/org-" version ".tar")) (sha256 - (base32 "05ma8n6hr10323d85ay8ai0xrpc9q2m93n8avqh7j9fmmb3bhr0b")))) + (base32 "0h5qhrd984vf17qc227wz68191xfgbpq32dyhw0lcz2d9i0pl3xk")))) (build-system emacs-build-system) (arguments `(#:phases @@ -10823,7 +11111,7 @@ passive voice.") (doc-dir (string-append share "/doc/" ,name "-" ,version))) (install-file "org.info" info-dir) (install-file "orgguide.info" info-dir) - ;; XXX: "orgcard.pdf" is not built in Org 9.4.4. + ;; XXX: "orgcard.pdf" is not built in Org 9.4.5. ;; (install-file "orgcard.pdf" doc-dir) ) #t))))) @@ -10839,14 +11127,14 @@ programming and reproducible research.") (package (inherit emacs-org) (name "emacs-org-contrib") - (version "20201222") + (version "20210329") (source (origin (method url-fetch) (uri (string-append "https://orgmode.org/elpa/" "org-plus-contrib-" version ".tar")) (sha256 - (base32 "1pa8h5dpi5yj3j7v0aaby8sjwxvmgnbip2ilyl5pac1rlbz0jn40")) + (base32 "1l0ycz77hwmjb4sffhabb0d0hg1c9ypxbpbyv8xj5ib4nbi87f2h")) ;; ob-sclang.el is packaged separately to avoid the dependency on ;; SuperCollider and qtwebengine. (modules '((guix build utils))) @@ -12009,14 +12297,14 @@ performance-oriented and tidy.") (define-public emacs-leaf (package (name "emacs-leaf") - (version "4.3.2") + (version "4.4.4") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "leaf-" version ".tar")) (sha256 - (base32 "190sfnnii9jnj8amjkdabd8w9k2xyalhg4h488a5gzjxdzz2s6zi")))) + (base32 "1npg06zmy21kg2qsqgfm03l7vjib697i96awypcdb0hw5mvmc1a1")))) (build-system emacs-build-system) (home-page "https://github.com/conao3/leaf.el") (synopsis "Simplify your init.el configuration, extended use-package") @@ -12261,7 +12549,7 @@ using Imenu, and Compilation mode support for MSBuild, devenv and xbuild.") (define-public emacs-php-mode (package (name "emacs-php-mode") - (version "1.23.0") + (version "1.24.0") (source (origin (method git-fetch) @@ -12270,8 +12558,15 @@ using Imenu, and Compilation mode support for MSBuild, devenv and xbuild.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0wnkcxg6djy4jvxhshiy1iw6b5cf79pjwjhfd1a060cavhfm4v5c")))) + (base32 "0bs9q62bd7885c39v7x1qz3w1fhpmpdgm72xwsk2yygw0ii425nn")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source-directory + (lambda _ + (chdir "lisp")))))) + (propagated-inputs `(("emacs-projectile" ,emacs-projectile))) (home-page "https://github.com/ejmr/php-mode") (synopsis "Major mode for editing PHP code") (description @@ -12355,14 +12650,14 @@ shuangpin, wubi and cangjie.") (define-public emacs-posframe (package (name "emacs-posframe") - (version "0.8.5") + (version "1.0.1") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "posframe-" version ".tar")) (sha256 - (base32 "0rls0rsj9clx4wd0gbdi5jzwyslparlf7phib649637gq6gs90ds")))) + (base32 "17znlh5xkk57imbblnfndwvld9m02h5fkr9gys89n2skdbxw9c7r")))) (build-system emacs-build-system) ;; emacs-minimal does not include the function font-info. (arguments @@ -12875,7 +13170,8 @@ Emacs.") (base32 "1zvs144hxq2mmq1h0ynx9hy7yyccb46f3pjg9mgq8v9cw5y678vk")))) (build-system emacs-build-system) (propagated-inputs - `(("emacs-jsonrpc" ,emacs-jsonrpc) + `(("emacs-eldoc" ,emacs-eldoc) + ("emacs-jsonrpc" ,emacs-jsonrpc) ("emacs-project" ,emacs-project))) (home-page "https://github.com/joaotavora/eglot") (synopsis "Client for Language Server Protocol (LSP) servers") @@ -12886,6 +13182,30 @@ for the current file, using the major mode as a hint. It prompts you to enter one if it fails.") (license license:gpl3+))) +(define-public emacs-eldoc + (package + (name "emacs-eldoc") + (version "1.11.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/eldoc-" version ".el")) + (sha256 + (base32 "1py9l1vl7s90y5kfpglhy11jswam2gcrqap09h6wb5ldnyb8cgq2")))) + (build-system emacs-build-system) + (home-page "http://elpa.gnu.org/packages/eldoc.html") + (synopsis "Show function arglist or variable docstring in echo area") + (description + "This program was inspired by the behavior of the ``mouse documentation +window'' on many Lisp Machine systems; as you type a function's symbol name as +part of a sexp, it will print the argument list for that function. Behavior +is not identical; for example, you need not actually type the function name, +you need only move point around in a sexp that calls it. Also, if point is +over a documented variable, it will print the one-line documentation for that +variable instead, to remind you of that variable's meaning.") + (license license:gpl3+))) + ;; Tests for ert-runner have a circular dependency with ecukes, and therefore ;; cannot be run (define-public emacs-ert-runner @@ -13614,6 +13934,32 @@ query them from the comfort of your editor.") (home-page "https://github.com/hrs/engine-mode") (license license:gpl3+))) +(define-public emacs-envrc + (package + (name "emacs-envrc") + (version "0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/purcell/envrc") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ssf9i6iym2rb530k2w5aj392qa73i6p5y0vwrs5qhkv9lagqq7p")))) + (build-system emacs-build-system) + (home-page "https://github.com/purcell/envrc") + (synopsis "Support for Direnv which operates buffer-locally") + (description + "This is library which uses Direnv to set environment variables on +a per-buffer basis. This means that when you work across multiple projects +which have @file{.envrc} files, all processes launched from the buffers ``in'' +those projects will be executed with the environment variables specified in +those files. This allows different versions of linters and other tools to be +used in each project if desired.") + (license license:gpl3+))) + (define-public emacs-prop-menu (package (name "emacs-prop-menu") @@ -14040,7 +14386,7 @@ messaging service.") ;; HOME needs to exist for source compilation. (add-before 'build 'set-HOME (lambda _ (setenv "HOME" "/tmp") #t))))) - (propagated-inputs `(("emacs-slack", emacs-slack))) + (propagated-inputs `(("emacs-slack" ,emacs-slack))) (home-page "https://github.com/yuya373/helm-slack") (synopsis "Helm extension for emacs-slack") (description "This package provides an helm extension for emacs-slack @@ -14086,14 +14432,14 @@ and shell-command prompts that are based on Bash completion.") (define-public emacs-easy-kill (package (name "emacs-easy-kill") - (version "0.9.3") + (version "0.9.4") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/easy-kill-" version ".tar")) (sha256 (base32 - "17nw0mglmg877axwg1d0gs03yc0p04lzmd3pl0nsnqbh3303fnqb")))) + "1pqqv4dhfm00wqch4wy3n2illsvxlz9r6r64925cvq3i7wq4la1x")))) (build-system emacs-build-system) (home-page "https://github.com/leoliu/easy-kill") (synopsis "Kill and mark things easily in Emacs") @@ -14467,12 +14813,38 @@ navigation with the grails mode.") from @code{groovy-mode} for editing Jenkins declarative pipeline files.") (license license:gpl3+)))) -(define-public emacs-org-tree-slide - (let ((commit "036a36eec1cf712d3db155572aed325daa372eb5") - (revision "2")) +(define-public emacs-kotlin-mode + (let ((commit "0e4bafb31d1fc2a0a420a521c2723d5526646c0b") + (revision "1")) (package - (name "emacs-org-tree-slide") - (version (git-version "2.8.4" revision commit)) + (name "emacs-kotlin-mode") + (version (git-version "0.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Emacs-Kotlin-Mode-Maintainers/kotlin-mode") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09inpgwmnnqaakyn4r4xs8kax8b89dw94kvl521x6d43h9zl5i70")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("ert-runner" "-L" "." "-L" "test"))) + (native-inputs `(("emacs-ert-runner" ,emacs-ert-runner))) + (home-page "https://github.com/Emacs-Kotlin-Mode-Maintainers/kotlin-mode") + (synopsis "Major major-mode for editing Kotlin files") + (description + "This package provides a @code{kotlin-mode} for editing Kotlin files.") + (license license:gpl3+)))) + +(define-public emacs-org-tree-slide + (let ((commit "036a36eec1cf712d3db155572aed325daa372eb5") + (revision "2")) + (package + (name "emacs-org-tree-slide") + (version (git-version "2.8.4" revision commit)) (source (origin (method git-fetch) (uri (git-reference @@ -14929,39 +15301,71 @@ close, copy, cut, paste, undo, redo.") (license license:gpl3+)))) (define-public emacs-password-store + (let ((commit "918992c19231b33b3d4a3288a7288a620e608cb4") + (revision "1")) + (package + (name "emacs-password-store") + ;; The emacs package version does not match the password-store version, + ;; even though it is part of the same repository. When updating, look + ;; at the version declared in password-store.el. + (version (git-version "2.1.4" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.zx2c4.com/password-store") + (commit commit))) + (sha256 + (base32 + "0ni62f4pq96g0i0q66bch1dl9k4zqwhg7xaf746k3gbbqxcdh3vi")) + (file-name (git-file-name name version)))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'extract-el-file + (lambda _ + (copy-file "contrib/emacs/password-store.el" "password-store.el") + (delete-file-recursively "contrib") + (delete-file-recursively "man") + (delete-file-recursively "src") + (delete-file-recursively "tests")))))) + (propagated-inputs + `(("emacs-auth-source-pass" ,emacs-auth-source-pass) + ("emacs-s" ,emacs-s) + ("emacs-with-editor" ,emacs-with-editor) + ("password-store" ,password-store))) + (home-page "https://git.zx2c4.com/password-store/tree/contrib/emacs") + (synopsis "Password store (pass) support for Emacs") + (description + "This package provides functions for working with pass (\"the +standard Unix password manager\").") + (license license:gpl2+)))) + +(define-public emacs-password-store-otp (package - (name "emacs-password-store") - (version "1.7.3") - (source (origin - (method url-fetch) - (uri - (string-append "https://git.zx2c4.com/password-store/snapshot/" - "password-store-" version ".tar.xz")) - (sha256 - (base32 - "1x53k5dn3cdmvy8m4fqdld4hji5n676ksl0ql4armkmsds26av1b")))) + (name "emacs-password-store-otp") + (version "0.1.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/volrath/password-store-otp.el") + (commit version))) + (sha256 + (base32 "0gb48blvnn6ci2wl45z81p41ny7vbgl610hqy6b2hyr2171qjd60")) + (file-name (git-file-name name version)))) (build-system emacs-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'extract-el-file - (lambda _ - (copy-file "contrib/emacs/password-store.el" "password-store.el") - (delete-file-recursively "contrib") - (delete-file-recursively "man") - (delete-file-recursively "src") - (delete-file-recursively "tests")))))) (propagated-inputs - `(("emacs-f" ,emacs-f) - ("emacs-s" ,emacs-s) - ("emacs-with-editor" ,emacs-with-editor) - ("password-store" ,password-store))) - (home-page "https://git.zx2c4.com/password-store/tree/contrib/emacs") - (synopsis "Password store (pass) support for Emacs") - (description - "This package provides functions for working with pass (\"the -standard Unix password manager\").") - (license license:gpl2+))) + `(("emacs-password-store" ,emacs-password-store) + ("emacs-s" ,emacs-s))) + (home-page "https://github.com/volrath/password-store-otp.el") + (synopsis + "Interact with the @code{pass-otp} extension for @code{pass} from Emacs") + (description "This package provides Emacs functions to interact with the +@code{pass-otp} extension for @code{pass}. It includes functions to import +OTP URIs from screenshots of QR codes, and to export them back to QR codes if +needed.") + (license license:gpl3+))) (define-public emacs-auth-source-pass (let ((commit "847a1f54ed48856b4dfaaa184583ef2c84173edf") @@ -18949,7 +19353,7 @@ try completing. See @code{fish-completion-fallback-on-bash-p}.") (define-public emacs-gif-screencast (package (name "emacs-gif-screencast") - (version "1.1") + (version "1.2") (source (origin (method git-fetch) @@ -18959,7 +19363,7 @@ try completing. See @code{fish-completion-fallback-on-bash-p}.") (file-name (git-file-name name version)) (sha256 (base32 - "1g1by8lvf8c9vzm4wwsi5kp285kaj0ahsl54048ympin4pi0njw9")))) + "1yf6yipvhhna29mzaan5vb3d5qvbrkp2awr5diyf381mvxgk8akh")))) (build-system emacs-build-system) (inputs `(("scrot" ,scrot) @@ -19311,6 +19715,8 @@ image, rotate it, save modified images, and more.") (sha256 (base32 "1zifiqmpj9j14fnrm3jxapady25m1nlm514nfry0jfrhhikvj6i8")))) + (arguments + '(#:include (cons "^data/" %default-include))) (build-system emacs-build-system) (home-page "https://github.com/purcell/package-lint") (synopsis "Linting library for elisp package authors") @@ -19832,10 +20238,11 @@ source code.") license:asl2.0)))) (define-public emacs-ztree - (let ((commit "6eee81d2691009ce60b2edf7c298b227caf1b0d6")) + ;; Upstream provides no tag, but the commit below matches latest release. + (let ((commit "c9ad9136d52ca5a81475693864e255d29448f43f")) (package (name "emacs-ztree") - (version (git-version "1.0.5" "2" commit)) + (version "1.0.6") (source (origin (method git-fetch) @@ -19845,7 +20252,7 @@ source code.") (file-name (git-file-name name version)) (sha256 (base32 - "1xmimjflylssx63g1kpd5n34gdlpivgg9ih8nwplad57bxiy2yqb")))) + "03i5pa3nfdz6g0yrdk7r2qcn679w0s85cc5kcmgrwlnhdzakgr80")))) (build-system emacs-build-system) (home-page "https://github.com/fourier/ztree") (synopsis "Directory tree comparison mode for Emacs") @@ -21106,6 +21513,33 @@ DBI, and provides DB-accessing API and the simple management UI.") to open SQLite databases.") (license license:gpl3+)))) +(define-public emacs-nice-citation + (let ((commit "1013b56d9d1495a335f40a5f76203034dc5fa0ea") + (revision "0")) + (package + (name "emacs-nice-citation") + (version (git-version "0.0.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/damiencollard/nice-citation") + (commit commit))) + (sha256 + (base32 "00xqr7haca5vd0bzd043lc6x4fjb903z96frz9b8cbd7spp63z7q")) + (file-name (git-file-name name version)))) + (build-system emacs-build-system) + (home-page "https://github.com/damiencollard/nice-citation") + (synopsis "Depth-colored citations for Gnus") + (description + "This package replaces the traditional chevron citation marks @samp{>} +with a Unicode vertical bar with the same color as the text it is quoting. + +It is purely presentation: the underlying text is unchanged. In particular, +if you send a message containing a citation, it will contain the traditional +chevron marks.") + (license license:gpl3+)))) + (define-public emacs-nix-mode (package (name "emacs-nix-mode") @@ -21241,6 +21675,31 @@ stored playlists.") display a terminal in an Emacs buffer.") (license license:gpl3+)))) +(define-public emacs-vterm-toggle + ;; There have been no releases. + (let ((commit "d10239b7bb89b78dddb82f66ac2286bc0b02747b") + (revision "1")) + (package + (name "emacs-vterm-toggle") + (version (git-version "0.0.4" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jixiuf/vterm-toggle") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0r9n23wg9cfy10h5f9zqr8jpkvw34f9rylri3nxq870awjab7rqi")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-vterm" ,emacs-vterm))) + (home-page "https://github.com/jixiuf/vterm-toggle") + (synopsis "Toggle between a vterm buffer and other buffers") + (description + "This package provides a DWIM way to switch from an Emacs buffer to +a vterm buffer and back again.") + (license license:gpl3+)))) + (define-public emacs-simple-mpc ;; There have been no releases. (let ((commit "bee8520e81292b4c7353e45b193f9a13b482f5b2") @@ -22087,48 +22546,46 @@ as Emacs Lisp.") (license license:gpl3+))) (define-public emacs-transient - (let ((revision "1") - (commit "a6e4cced303b3febd59412b24a97eaf1e855e6d7")) - (package - (name "emacs-transient") - (version (git-version "0.2.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/magit/transient") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "01xsw9sxr50valc2q590ngy3ra2ll01p39l9cbzvqqz6mxyymxmd")))) - (build-system emacs-build-system) - (arguments - `(#:tests? #f ;no test suite - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'build-info-manual - (lambda _ - (invoke "make" "info") - ;; Move the info file to lisp so that it gets installed by the - ;; emacs-build-system. - (rename-file "docs/transient.info" "lisp/transient.info") - #t)) - (add-after 'build-info-manual 'enter-lisp-directory - (lambda _ - (chdir "lisp") - #t))))) - (native-inputs - `(("texinfo" ,texinfo))) - (propagated-inputs - `(("dash" ,emacs-dash))) - (home-page "https://magit.vc/manual/transient") - (synopsis "Transient commands in Emacs") - (description "Taking inspiration from prefix keys and prefix arguments + (package + (name "emacs-transient") + (version "0.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/magit/transient") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0g694ydmb9zjn99hxgfjd3m73kpmnkbrgqhr73b4crbxza5sl29c")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #f ;no test suite + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'build-info-manual + (lambda _ + (invoke "make" "info") + ;; Move the info file to lisp so that it gets installed by the + ;; emacs-build-system. + (rename-file "docs/transient.info" "lisp/transient.info") + #t)) + (add-after 'build-info-manual 'enter-lisp-directory + (lambda _ + (chdir "lisp") + #t))))) + (native-inputs + `(("texinfo" ,texinfo))) + (propagated-inputs + `(("dash" ,emacs-dash))) + (home-page "https://magit.vc/manual/transient") + (synopsis "Transient commands in Emacs") + (description "Taking inspiration from prefix keys and prefix arguments in Emacs, Transient implements a similar abstraction involving a prefix command, infix arguments and suffix commands. We could call this abstraction a \"transient command\", but because it always involves at least two commands (a prefix and a suffix) we prefer to call it just a \"transient\".") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-forge (let ((commit "05ef02913004826165c383bd6d2ff6574542b76c")) @@ -22433,6 +22890,36 @@ functions for Fish shell scripts.") parent directory using @code{Eshell}.") (license license:gpl3+)))) +(define-public emacs-springboard + ;; Upstream provides no tag. Using the latest commit. Version is extracted + ;; from "Version:" keyword. + (let ((commit "687d1e5898a880878995dc9bffe93b4598366203") + (version "1.0") + (revision "1")) + (package + (name "emacs-springboard") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jwiegley/springboard") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0fn8c4hqblfjvcpg68kj2dmdjqsdnxddqbzgvakl43zckjg8pi01")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-ivy" ,emacs-ivy))) + (home-page "https://github.com/jwiegley/springboard") + (synopsis "Change the Emacs default directory quickly") + (description + "This Emacs package provides a quick way to change the default +directory for only the next invoked command. The directory selection can be +done using Helm, Ido or Ivy.") + (license license:gpl2+)))) + (define-public emacs-tco-el (let ((commit "482db5313f090b17ed22ccd856f0e141dc75afe6") (revision "1")) @@ -22551,9 +23038,9 @@ based on diff output.") (license license:gpl3+)))) (define-public emacs-all-the-icons-dired - (let ((commit "980b7747d6c4a7992a1ec56afad908956db0a519") + (let ((commit "fc2dfa1e9eb8bf1c402a675e7089638d702a27a5") (version "1.0") - (revision "1")) + (revision "2")) (package (name "emacs-all-the-icons-dired") (version (git-version version revision commit)) @@ -22566,7 +23053,7 @@ based on diff output.") (file-name (git-file-name name version)) (sha256 (base32 - "1pvbgyxfj4j205nj1r02045f1y4wgavdsk7f45hxkkhms1rj8jyy")))) + "0zhyhz4lhx0d8wwh1xxxf7ck4s621fk9757ql2ypxbr4iqh7sjlp")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-all-the-icons" ,emacs-all-the-icons))) @@ -23042,6 +23529,39 @@ Dash docsets.") through Dash docsets.") (license license:expat)))) +(define-public emacs-cascading-dir-locals + (let ((release "0.1") + (revision "0") + (commit "efdf5e6d62b955ee0ca3c170eae1d388799f9fa0")) + (package + (name "emacs-cascading-dir-locals") + (version (git-version release revision commit)) + (home-page "https://github.com/fritzgrabo/cascading-dir-locals") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1jwd99kk5l588n7wwi1x3b4bgimm66x1icna3n20pwaj49kf0zy8")))) + (build-system emacs-build-system) + (synopsis "Apply all @file{.dir-locals.el} from root to current directory") + (description + "This package provides a global minor mode that changes how Emacs +handles the lookup of applicable dir-locals files (@file{.dir-locals.el}): +instead of starting at the directory of the visited file and moving up the +directory tree only until a first dir-locals file is found, collect and apply +all (!) dir-locals files found from the current directory up to the root one. + +Values specified in files nearer to the current directory take precedence over +values in files farther away from it. + +You might want to use this to globally set dir-local variables that apply to +all of your projects, then override or add variables on a per-project basis.") + (license license:gpl3+)))) + (define-public emacs-calibredb (package (name "emacs-calibredb") @@ -23181,14 +23701,14 @@ well as an option for visually flashing evaluated s-expressions.") (define-public emacs-tramp (package (name "emacs-tramp") - (version "2.5.0.1") + (version "2.5.0.3") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "tramp-" version ".tar")) (sha256 - (base32 "0kqlc03bbsdywp0m3mf0m62hqyam8vg81phh7nqmpdjzskrdc1yy")))) + (base32 "0c77d1ihn17lzk9jb7ss346ryprnbii1zmijl6zj0kk4lm8fpfl3")))) (build-system emacs-build-system) (arguments `(#:emacs ,emacs ;need D-Bus @@ -23784,6 +24304,52 @@ convert the resulting @code{.epub} to a @code{.mobi} file. Needs a working zip utility (default is @code{zip}).") (license license:gpl3+))) +(define-public emacs-ox-gemini + ;; No releases yet + (let ((commit "d88c10bcb10fc463fa5a2f6e29c8c94b75a314c0") + (revision "0")) + (package + (name "emacs-ox-gemini") + (version (git-version "0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.sr.ht/~abrahms/ox-gemini") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1f8kbg5vjd1k7fak3v56b77yk612j6vmzx4xzx3m2vq3f0nyxq29")))) + (build-system emacs-build-system) + (home-page "https://sr.ht/~abrahms/ox-gemini") + (synopsis "Export Org files in Gemini format") + (description + "@code{ox-gemini} adds support for exporting Org files in Gemini +format. Many things were taken from the ASCII exporter, from which +@code{ox-gemini} derives.") + (license license:gpl3+)))) + +(define-public emacs-ox-haunt + (package + (name "emacs-ox-haunt") + (version "0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.sr.ht/~jakob/ox-haunt") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1rs1n228c2fmpvirc57bqgf2616ijpphkgf4w9ln5j46snmkam25")))) + (build-system emacs-build-system) + (home-page "https://git.sr.ht/~jakob/ox-haunt") + (synopsis "Export Org files to HTML appropriate for Haunt") + (description + "This library implements an HTML back-end for the Org generic exporter, +producing output appropriate for Haunt's @code{html-reader}.") + (license license:gpl3+))) + (define-public emacs-ox-hugo (package (name "emacs-ox-hugo") @@ -24242,7 +24808,7 @@ Emacs that integrate with major modes like Org-mode.") (define-public emacs-modus-themes (package (name "emacs-modus-themes") - (version "1.1.1") + (version "1.2.3") (source (origin (method git-fetch) @@ -24251,7 +24817,7 @@ Emacs that integrate with major modes like Org-mode.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1n716nasa1pccz7983kicagc9sqnxlyfmflvifqk4kza2ks0rh9m")))) + (base32 "1l392hz6zs6wg06x2zxnk7s0h5cpmvbkcynh68gjmqjj84l7mqrk")))) (build-system emacs-build-system) (home-page "https://protesilaos.com/modus-themes/") (synopsis "Accessible themes (WCAG AAA)") @@ -24945,21 +25511,21 @@ current buffer.") (define-public emacs-repl-toggle (package (name "emacs-repl-toggle") - (version "0.6.1") + (version "0.7.1") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/tomterl/repl-toggle") + (url "https://git.sr.ht/~tomterl/repl-toggle") (commit version))) (sha256 (base32 - "12h3xxja3isnhvrqx7m2g7a5d8h68cc85pbqyhiipfxyafyl1yxd")) + "0nycm8a4wwkkaif958z4m89slayp17k20lp2h7lvddjx8prn6yfp")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (propagated-inputs `(("emacs-fullframe" ,emacs-fullframe))) - (home-page "https://github.com/tomterl/repl-toggle") + (home-page "https://git.sr.ht/~tomterl/repl-toggle") (synopsis "Switch to and from current major mode's REPL") (description "This package provides a function to switch to and from a REPL appropriate to the current major mode.") @@ -25064,14 +25630,14 @@ interface.") (define-public emacs-ivy-posframe (package (name "emacs-ivy-posframe") - (version "0.5.5") + (version "0.6.0") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "ivy-posframe-" version ".tar")) (sha256 - (base32 "184730grclxmlw6nfs41d4g6fvz9c6xnclvwgqx1ii0xm7p9xy95")))) + (base32 "07dzglrcdl54lkznyphw97xwd9bcwzdcgzkav0vqfk7f5cwh1wkf")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-ivy" ,emacs-ivy) @@ -25106,6 +25672,56 @@ can specify how popup-displaying functions occupy the screen.") (home-page "https://github.com/wasamasa/shackle") (license license:gpl3+)))) +(define-public emacs-showtip + (let ((commit "930da302809a4257e8d69425455b29e1cc91949b") + (revision "0")) + (package + (name "emacs-showtip") + (version (git-version "0.01" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacsorphanage/showtip") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01zak0zhha6dp7a2hm28d065gjnc462iwpsfyxhbxgfzcdlicqc7")))) + (build-system emacs-build-system) + (home-page "https://github.com/emacsorphanage/showtip") + (synopsis "Show tip at cursor") + (description + "This library provide one function to show tooltip near the cursor.") + (license license:gpl2+)))) + +(define-public emacs-sdcv + ;; No tagged version upstream. + (let ((commit "943ae3e90cc9a0a88a37cc710acd7424fd4defc4" ) + (revision "0")) + (package + (name "emacs-sdcv") + (version (git-version "1.5.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stardiviner/sdcv.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0i1ylvw7p46pkf3yyyzcdmdhsspzymnnnvx8s0i7vynngr5x0vzh")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-popup" ,emacs-popup) + ("emacs-pos-tip" ,emacs-pos-tip) + ("emacs-showtip" ,emacs-showtip))) + (home-page "https://www.emacswiki.org/emacs/download/sdcv.el") + (synopsis "Emacs interface for @code{sdcv}") + (description + "This plugin translates words with @code{sdcv}, and displays +translation using a tooltip or in a dedicated buffer.") + (license license:gpl3+)))) + (define-public emacs-helm-lacarte (let ((commit "40a6c449720be521435b6b1da7911af3a0b9dca0") (revision "1")) @@ -26138,34 +26754,36 @@ snippets for Emacs.") (license license:expat)))) (define-public emacs-org-roam - (package - (name "emacs-org-roam") - (version "1.2.3") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/org-roam/org-roam") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0n8c0yxqb62i39kn0d5x83s96vwc0nbg0sx5hplffnbkfbj88bba")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-company" ,emacs-company) - ("emacs-dash" ,emacs-dash) - ("emacs-emacsql-sqlite3" ,emacs-emacsql-sqlite3) - ("emacs-f" ,emacs-f) - ("emacs-org-ref" ,emacs-org-ref) - ("emacs-s" ,emacs-s))) - (home-page "https://github.com/org-roam/org-roam/") - (synopsis "Non-hierarchical note-taking with Org mode") - (description "Emacs Org Roam is a solution for taking non-hierarchical + (let ((commit "8ad57b121831eda8d226faa14ff2ba7ab652849c") + (revision "0") + (version "1.2.3")) + (package + (name "emacs-org-roam") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/org-roam/org-roam") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "162qhb6rkpl1n0l8yhnwgagsx56ykaj9lchsny1id5z1257kgw9w")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-emacsql-sqlite3" ,emacs-emacsql-sqlite3) + ("emacs-f" ,emacs-f) + ("emacs-org" ,emacs-org) + ("emacs-s" ,emacs-s))) + (home-page "https://github.com/org-roam/org-roam/") + (synopsis "Non-hierarchical note-taking with Org mode") + (description "Emacs Org Roam is a solution for taking non-hierarchical notes with Org mode. Notes are captured without hierarchy and are connected by tags. Notes can be found and created quickly. Org Roam should also work as a plug-and-play solution for anyone already using Org mode for their personal wiki.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-org-roam-bibtex (package @@ -26815,15 +27433,15 @@ s-expression.") (define-public emacs-map (package (name "emacs-map") - (version "2.1") + (version "3.0") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/map-" - version ".el")) + version ".tar")) (sha256 (base32 - "0ydz5w1n4vwhhzxxj003s7jv8n1wjijwfryk5z93bwhnr0cak0i0")))) + "00wf8lgh1b1i5l838y6di8194rf5gf5djklkhmxj1nlikz66j2ls")))) (build-system emacs-build-system) (home-page "http://elpa.gnu.org/packages/map.html") (synopsis "Map manipulation functions") @@ -26937,7 +27555,7 @@ rules about where space should be left to separate words and parentheses.") (description "This mode allows to paste whole buffers or parts of buffers to pastebin-like services. It supports more than one service and will failover if one service fails. More services can easily be added over time -and prefered services can easily be configured.") +and preferred services can easily be configured.") (license license:gpl3+))) (define-public emacs-keystore-mode @@ -26976,3 +27594,77 @@ and prefered services can easily be configured.") "This package provides an Elisp wrapper around the Java @command{keytool} command and major mode for viewing Java keystores.") (license license:expat)))) + +(define-public emacs-ivy-avy + (package + (name "emacs-ivy-avy") + (version "0.13.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/" + "ivy-avy-" version ".tar")) + (sha256 + (base32 "1q5caxm4rnh4jy5n88dhkdbx1afsshmfki5dl8xsqbdb3y0zq7yi")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy) + ("emacs-avy" ,emacs-avy))) + (home-page "https://github.com/abo-abo/swiper") + (synopsis "Avy integration for Ivy") + (description + "This package adds a \"C-'\" binding to Ivy minibuffer that uses Avy.") + (license license:gpl3+))) + +(define-public emacs-vertico + (package + (name "emacs-vertico") + (version "0.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/minad/vertico") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "01x2nxj2gnmzg91nxjmgy9i41c04gzplsi19qldm4w03schgs8f6")))) + (build-system emacs-build-system) + (native-inputs + `(("texinfo" ,texinfo))) + (home-page "https://github.com/minad/vertico") + (synopsis "Vertical interactive completion") + (description + "Vertico provides a minimalistic vertical completion UI, which is based +on Emacs' default completion system. By reusing the default system, it +achieves full compatibility with built-in Emacs commands and completion +tables. Vertico is pretty bare-bone and only provides a minimal set of +commands. Additional optional enhancements can be provided externally by +complementary packages.") + (license license:gpl3+))) + +(define-public emacs-ivy-hydra + (package + (name "emacs-ivy-hydra") + (version "0.13.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/" + "ivy-hydra-" version ".tar")) + (sha256 + (base32 "06rln9bnq5hli5rqlm47fb68b8llpqrmzwqqv4rn7mx3854i9a5x")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy) + ("emacs-hydra" ,emacs-hydra))) + (home-page "https://github.com/abo-abo/swiper") + (synopsis "Additional key bindings for Ivy") + (description + "This package provides the `hydra-ivy/body' command, which is a +quasi-prefix map, with many useful bindings. These bindings are +shorter than usual, using mostly unprefixed keys.") + (license license:gpl3+))) +