;;; Copyright © 2019 Amin Bandali <bandali@gnu.org>
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2019 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
+;;; Copyright © 2019 Stephen Webber <montokapro@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
#:use-module (gnu packages bash)
#:use-module (gnu packages cmake)
#:use-module (gnu packages code)
+ #:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages dictionaries)
#:use-module (gnu packages emacs)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
+ #:use-module (gnu packages node)
#:use-module (gnu packages xml)
#:use-module (gnu packages glib)
#:use-module (gnu packages acl)
(license license:gpl3+)))
(define-public emacs-magit
- ;; Version 2.90.1 has trouble loading the transient library,
- ;; so we use a more recent commit that fixes it.
- (let ((commit "b4aec016b5577afa8d889f258b499814d1bb1d94"))
+ ;; `magit-setup-buffer' macro introduced in c761d28d and required in
+ ;; `emacs-forge'.
+ (let ((commit "c761d28d49e5238037512b898db0ec9b40d85770"))
(package
(name "emacs-magit")
- (version (git-version "2.90.1" "1" commit))
+ (version (git-version "2.90.1" "2" commit))
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/magit/magit")
+ (url "https://github.com/magit/magit.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
- "0zl7v6z0y50pcgqsf2r8c1k3r5nwjad9ba7r6sgrnf4rc62br7jv"))))
+ "16qx0404l05q1m6w7y5j8ck1z5nfmpinm00w0p2yh1hn5zzwy6dd"))
+ ;; FIXME: emacs-forge uses a function defined in this patch,
+ ;; which is newer than the current commit.
+ (patches
+ (search-patches
+ "emacs-magit-log-format-author-margin.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Fix syntax error
+ (substitute* "lisp/magit-extras.el"
+ (("rev\\)\\)\\)\\)\\)\\)") "rev)))))"))
+ #t))))
(build-system gnu-build-system)
(native-inputs `(("texinfo" ,texinfo)
("emacs" ,emacs-minimal)))
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch
+ (lambda _
+ (chmod "lisp/magit-extras.el" #o644)
+ (emacs-batch-edit-file "lisp/magit-extras.el"
+ `(progn (progn
+ (goto-char (point-min))
+ (re-search-forward "(defun magit-copy-buffer-revision ()")
+ (forward-sexp 2)
+ (kill-sexp)
+ (insert ,(format #f "~S"
+ '(if (use-region-p)
+ (copy-region-as-kill nil nil 'region)
+ (when-let ((rev (cl-case major-mode
+ ((magit-cherry-mode
+ magit-log-select-mode
+ magit-reflog-mode
+ magit-refs-mode
+ magit-revision-mode
+ magit-stash-mode
+ magit-stashes-mode)
+ (car magit-refresh-args))
+ ((magit-diff-mode magit-log-mode)
+ (let ((r (caar magit-refresh-args)))
+ (if (string-match "\\.\\.\\.?\\(.+\\)" r)
+ (match-string 1 r)
+ r)))
+ (magit-status-mode "HEAD"))))
+ (when (magit-commit-p rev)
+ (setq rev (magit-rev-parse rev))
+ (push (list rev default-directory) magit-revision-stack)
+ (kill-new (message "%s" rev))))))))
+ (basic-save-buffer)))
+ #t))
(delete 'configure)
(add-before
'build 'patch-exec-paths
(license license:gpl3+)))
(define-public emacs-ghub
- (package
- (name "emacs-ghub")
- (version "3.2.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/magit/ghub")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "0lp52qygyavddl1lrgsyb6mq7hcf9h89dy2pzya3mb2va49f0vvl"))))
- (build-system emacs-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-before 'install 'make-info
- (lambda _
- (invoke "make" "info"))))))
- (native-inputs
- `(("texinfo" ,texinfo)))
- (propagated-inputs
- `(("dash" ,emacs-dash)
- ("graphql" ,emacs-graphql)
- ("treepy" ,emacs-treepy)))
- (home-page "https://github.com/magit/ghub")
- (synopsis "Emacs client libraries for the APIs of various Git forges")
- (description
- "Ghub provides basic support for using the APIs of various Git forges from
+ ;; We need a newer commit to avoid problems in emacs-forge.
+ (let ((commit "e19cd86ca4768a6d89285123933baa3f1460d696")
+ (revision "2"))
+ (package
+ (name "emacs-ghub")
+ (version (git-version "3.2.0" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/magit/ghub")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1d6f8sxlsl0fpkzwbpnaw77d1a5pkg63zfvf6a2fxir357lbdizx"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'install 'make-info
+ (lambda _
+ (invoke "make" "info"))))))
+ (native-inputs
+ `(("texinfo" ,texinfo)))
+ (propagated-inputs
+ `(("dash" ,emacs-dash)
+ ("emacs-let-alist" ,emacs-let-alist)
+ ("treepy" ,emacs-treepy)))
+ (home-page "https://github.com/magit/ghub")
+ (synopsis "Emacs client libraries for the APIs of various Git forges")
+ (description
+ "Ghub provides basic support for using the APIs of various Git forges from
Emacs packages. It supports the REST APIs of Github, Github GraphQL, Gitlab,
Gitea, Gogs and Bitbucket. It abstracts access to API resources using only a
handful of functions that are not resource-specific.")
- (license license:gpl3+)))
+ (license license:gpl3+))))
(define-public emacs-scribble-mode
(let ((commit "217945d54de5e4bb207033f2116baa28f5c5ecf2")
(license license:gpl3+)))
(define-public emacs-unpackaged-el
- (let ((commit "c0d58cf81e531b2b6fa1bd5dd612dc1b93d4d186")
- (revision "2"))
+ (let ((commit "746801a677ada6cd6fa076e423aa0953779f3fad")
+ (revision "3"))
(package
(name "emacs-unpackaged-el")
(version (git-version "0" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "0y3sgvd51l4pb3acps92bazfk49da6nim1f1hyxzy1ravg4kbw83"))))
+ "0jvb2ci0h0lj368qhbff3pzkxj3nhlligpbkjzi525k9rkjgm7l8"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
(define-public emacs-ag
(package
(name "emacs-ag")
- (version "0.47")
+ (version "0.48")
(source (origin
(method git-fetch)
(uri (git-reference
(file-name (git-file-name name version))
(sha256
(base32
- "15kp99vwyi7hb1jkq3lwvqzw3v62ycixsq6y4pd1x0nn2v5p5m5r"))))
+ "1p918y24vcn2pdliaymd210xp9fvhd4a1srqbv2lfiqrh59yjidx"))))
(build-system emacs-build-system)
(arguments
`(#:phases
files and directories.")
(license license:gpl3+)))
+(define-public emacs-fringe-helper
+ (let ((commit "ef4a9c023bae18ec1ddd7265f1f2d6d2e775efdd")
+ (revision "1"))
+ (package
+ (name "emacs-fringe-helper")
+ (version (git-version "1.0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/nschum/fringe-helper.el.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0ra9rc53l1gvkqank8apasl3r7wz2yfjrcvmfk3wpxhh24ppxv9d"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("emacs" "--batch"
+ "-l" "tests.el"
+ "-f" "ert-run-tests-batch-and-exit")))
+ (home-page "https://github.com/nschum/fringe-helper.el")
+ (synopsis "Helper functions for fringe bitmaps")
+ (description
+ "This package allows fringe bitmaps to be defined with a visual string
+representation.")
+ (license license:gpl2+))))
+
(define-public emacs-git-gutter
(package
(name "emacs-git-gutter")
display and behaviour is easily customisable.")
(license license:gpl3+)))
+(define-public emacs-git-gutter-fringe
+ (let ((commit "16226caab44174301f1659f7bf8cc67a76153445")
+ (revision "1"))
+ (package
+ (name "emacs-git-gutter-fringe")
+ (version (git-version "0.23" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/syohex/git-gutter-fringe.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1y77gjl0yznamdj0f55d418zb75k22izisjg7ikvrfsl2yfqf3pm"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-git-gutter" ,emacs-git-gutter)
+ ("emacs-fringe-helper" ,emacs-fringe-helper)))
+ (home-page "https://github.com/syohex/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
+window.")
+ (license license:gpl3+))))
+
+(define-public emacs-git-link
+ (package
+ (name "emacs-git-link")
+ (version "0.7.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/sshaw/git-link.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04xa6lp8wkjb6zs096bf4sz124grcjj15xv1h009bmn2j95rggj6"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("make" "test")))
+ (home-page "https://github.com/sshaw/git-link")
+ (synopsis "Create links for files and commits in GitHub/GitLab/etc. repos")
+ (description
+ "@code{git-link} returns the URL for the current buffer's file location
+at the current line number or active region. @code{git-link-commit} returns
+the URL for a commit. URLs are added to the kill ring.")
+ (license license:gpl3+)))
+
+(define-public emacs-apheleia
+ (package
+ (name "emacs-apheleia")
+ (version "1.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/raxod502/apheleia.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "04pls7zahy4jfkikv6fvd9vfpm4glhyanmmkx79hgi9pwdv966rf"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/raxod502/apheleia")
+ (synopsis "Reformat buffer stably")
+ (description
+ "This package allows for a buffer to be reformatted without moving point,
+so that running a formatting tool like @code{Prettier} or @code{Black} upon
+saving won't move point back to the beginning of the buffer.")
+ (license license:gpl3+)))
+
(define-public emacs-git-timemachine
(package
(name "emacs-git-timemachine")
(define-public emacs-debbugs
(package
(name "emacs-debbugs")
- (version "0.19")
+ (version "0.20")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
version ".tar"))
(sha256
(base32
- "0cpby8f088cqb5mpd756a2mb706x763k15cg2xdmmsxl415k3yw4"))))
+ "03mmb1zvbqlsznl5agq8k3xrlcz310vnsa2zn0y8myanm4ra51zm"))))
(build-system emacs-build-system)
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
(propagated-inputs
(license license:expat)))
(define-public emacs-prescient
- (package
- (name "emacs-prescient")
- (version "3.3")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/raxod502/prescient.el/")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1wqk1g8fjpcbpiz32k7arnisncd4n9zs84dn3qn9y8ggjzldqy91"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-company" ,emacs-company)
- ("emacs-ivy" ,emacs-ivy)))
- (home-page "https://github.com/raxod502/prescient.el/")
- (synopsis "Library that sorts and filters lists of candidates")
- (description
- "This package provides a library for sorting and filtering, as well as
+ ;; XXX: emacs-ivy introduced a commit that disables sorting for counsel-M-x
+ ;; by default, so we use a non-release version ahead by one commit
+ (let ((commit "95056580ed743da92b05aaf86f943ee05600c28d")
+ (revision "1"))
+ (package
+ (name "emacs-prescient")
+ (version (git-version "3.3" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/raxod502/prescient.el/")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "06qxs8p66jr4gg9m1gd27v5may32f3n28la56cv4f4prinqyyfj7"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-company" ,emacs-company)
+ ("emacs-ivy" ,emacs-ivy)))
+ (home-page "https://github.com/raxod502/prescient.el/")
+ (synopsis "Library that sorts and filters lists of candidates")
+ (description
+ "This package provides a library for sorting and filtering, as well as
extensions for @code{ivy-mode} and @code{company-mode} that make use of the
library.")
- (license license:gpl3+)))
+ (license license:gpl3+))))
(define-public emacs-smartparens
(package
(define-public emacs-load-relative
(package
(name "emacs-load-relative")
- (version "1.3")
+ (version "1.3.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/load-relative-"
version ".el"))
(sha256
- (base32
- "1hfxb2436jdsi9wfmsv47lkkpa5galjf5q81bqabbsv79rv59dps"))))
+ (base32 "1m37scr82lqqy954fchjxrmdh4lngrl4d1yzxhp3yfjhsydizhrj"))))
(build-system emacs-build-system)
(home-page "http://github.com/rocky/emacs-load-relative")
(synopsis "Emacs Lisp relative file loading related functions")
(license license:gpl3+)))
(define-public emacs-ivy
- ;; The latest release version introduced a new feature, swiper-isearch, that
- ;; generally works well but had some noticeable bugs; this later commit
- ;; includes fixes for several of them.
- (let ((commit "79333e9edfee38ec3b367c33711a68bdf7783259")
- (revision "2"))
+ (package
+ (name "emacs-ivy")
+ (version "0.13.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/abo-abo/swiper.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0ghcwrg8a6r5q6fw2x8s08cwlmnz2d8qjhisnjwbnc2l4cgqpd9p"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (info (string-append out "/share/info")))
+ (with-directory-excursion "doc"
+ (invoke "makeinfo" "ivy.texi")
+ (install-file "ivy.info" info)
+ #t))))
+ (add-before 'check 'make-dummy-git-directory
+ (lambda _
+ (mkdir-p ".git")))
+ (add-after 'check 'delete-dummy-git-directory
+ (lambda _
+ (delete-file-recursively ".git"))))
+ #:tests? #t
+ #:test-command '("make" "test")))
+ (propagated-inputs
+ `(("emacs-hydra" ,emacs-hydra)))
+ (native-inputs
+ `(("texinfo" ,texinfo)
+ ("emacs-wgrep" ,emacs-wgrep)))
+ (home-page "http://oremacs.com/swiper/")
+ (synopsis "Incremental vertical completion for Emacs")
+ (description
+ "This package provides @code{ivy-read} as an alternative to
+@code{completing-read} and similar functions. No attempt is made to determine
+the best candidate. Instead, the user can navigate candidates with
+@code{ivy-next-line} and @code{ivy-previous-line}. The matching is done by
+splitting the input text by spaces and re-building it into a regular
+expression.")
+ (license license:gpl3+)))
+
+(define-public emacs-ivy-xref
+ (let ((commit "1a35fc0f070388701b05b0a455cbe262e924d547")
+ (revision "1"))
(package
- (name "emacs-ivy")
- (version (git-version "0.12.0" revision commit))
+ (name "emacs-ivy-xref")
+ (version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/abo-abo/swiper.git")
+ (url "https://github.com/alexmurray/ivy-xref.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
- "0dyclc51sprhmr5fi4lylhwsrn8v1jgyblwk9ly60jj84lj6278z"))))
+ "0d71nm9d9ajp5i6dnl8h1hw9jqp8gd1ajgninb1h13i80rplzl9k"))))
(build-system emacs-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'install 'install-doc
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (info (string-append out "/share/info")))
- (with-directory-excursion "doc"
- (invoke "makeinfo" "ivy.texi")
- (install-file "ivy.info" info)
- #t))))
- (add-before 'check 'make-dummy-git-directory
- (lambda _
- (mkdir-p ".git")))
- (add-after 'check 'delete-dummy-git-directory
- (lambda _
- (delete-file-recursively ".git"))))
- #:tests? #t
- #:test-command '("make" "test")))
(propagated-inputs
- `(("emacs-hydra" ,emacs-hydra)))
- (native-inputs
- `(("texinfo" ,texinfo)
- ("emacs-wgrep" ,emacs-wgrep)))
- (home-page "http://oremacs.com/swiper/")
- (synopsis "Incremental vertical completion for Emacs")
- (description
- "This package provides @code{ivy-read} as an alternative to
-@code{completing-read} and similar functions. No attempt is made to determine
-the best candidate. Instead, the user can navigate candidates with
-@code{ivy-next-line} and @code{ivy-previous-line}. The matching is done by
-splitting the input text by spaces and re-building it into a regular
-expression.")
- (license license:gpl3+))))
+ `(("emacs-ivy" ,emacs-ivy)))
+ (home-page "https://github.com/alexmurray/ivy-xref")
+ (synopsis "Ivy interface for @code{xref}")
+ (description "This package provides an Ivy interface for selecting from
+@code{xref} results.")
+ (license license:gpl3))))
(define-public emacs-ivy-pass
(let ((commit "5b523de1151f2109fdd6a8114d0af12eef83d3c5")
(define-public emacs-ivy-rich
;; The latest release version has a small mistake that has since been fixed,
;; so we use a more recent commit.
- (let ((commit "f6bfa293c6df0b43cc411876b665816ec3f03d08")
- (version "0.1.4")
- (revision "1"))
+ (let ((commit "7a667b135983a1f3ad33d6db8514638e2a3bdfb3")
+ (revision "2"))
(package
(name "emacs-ivy-rich")
- (version (git-version version revision commit))
+ (version (git-version "0.1.4" revision commit))
(source
(origin
(method git-fetch)
(commit commit)))
(file-name (git-file-name name version))
(sha256
- (base32 "1s8nwwb1z6lkc58g02pi8w99qms948k8d02lw8k8cq47dw87i219"))))
+ (base32 "1v5j6pak2j1wjw19y7rx9rhxif0bj2h47xyl2knfcl6fi4qiqm9y"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-ivy" ,emacs-ivy)))
(license license:gpl3+))))
(define-public emacs-lpy
- (let ((commit "dfd9a0fc8f84674fc669eab2942cfa038d7dc590")
- (revision "2"))
+ (let ((commit "43b401fe15f0f0d01edb189378b9498121e9f766")
+ (revision "3"))
(package
(name "emacs-lpy")
(version (git-version "0.1.0" revision commit))
(commit commit)))
(sha256
(base32
- "15y1fvn1sjngpiqlq090hxqhmxp32f88rspfapwcisxa3hcg5r5a"))
+ "0xj1r7cn1rivaxhvawvmgx9fg3xilpfw4lkf2x2aqplr4s85ijas"))
(file-name (git-file-name name version))))
(propagated-inputs
`(("emacs-zoutline" ,emacs-zoutline)
(base32
"1kkj888k9x5n0i7xkia177gzsa84my3g8n0n7v65281cc4f1yhk5"))))
(build-system emacs-build-system)
+ (inputs
+ `(("node" ,node)))
+ (native-inputs
+ `(("emacs-ert-expectations" ,emacs-ert-expectations)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'set-shell
+ ;; Setting the SHELL environment variable is required for the tests
+ ;; to find sh.
+ (lambda _
+ (setenv "SHELL" (which "sh"))
+ #t))
+ (add-after 'unpack 'configure
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((node (assoc-ref inputs "node")))
+ ;; Specify the absolute file names of the various
+ ;; programs so that everything works out-of-the-box.
+ (make-file-writable "nodejs-repl.el")
+ (emacs-substitute-variables
+ "nodejs-repl.el"
+ ("nodejs-repl-command"
+ (string-append node "/bin/node")))))))
+ #:tests? #t
+ #:test-command '("emacs" "-Q" "--batch"
+ "-L" "."
+ "-l" "test/test.el"
+ "-f" "ert-run-tests-batch-and-exit")))
(home-page "https://github.com/abicky/nodejs-repl.el")
(synopsis "Node.js REPL inside Emacs")
(description
in Emacs.")
(license license:gpl3+)))
+(define-public emacs-evil-markdown
+ (let ((commit "46cd81b37991c4325fc24015a610f832b0ff995d")
+ (revision "1"))
+ (package
+ (name "emacs-evil-markdown")
+ (version (git-version "0.0.2" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/Somelauw/evil-markdown.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0mad8sp5y9vyk28595qygspnyh8bfmb1fbxjlw70qwc1kdn822n4"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-markdown-mode" ,emacs-markdown-mode)
+ ("emacs-evil" ,emacs-evil)))
+ (home-page "http://jblevins.org/projects/evil-markdown/")
+ (synopsis "Evil keybindings for @code{markdown-mode}")
+ (description
+ "This package provides custom text objects and bindings for
+@code{markdown-mode}.")
+ (license license:gpl3+))))
+
(define-public emacs-edit-indirect
(package
(name "emacs-edit-indirect")
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/Fanael/edit-indirect")
- (commit version)))
+ (url "https://github.com/Fanael/edit-indirect")
+ (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
as well as features for editing search results.")
(license license:gpl3+))))
+;; There hasn't been a tag or release since 2016, so we take the latest
+;; commit.
(define-public emacs-helm-projectile
- (package
- (name "emacs-helm-projectile")
- (version "0.14.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/bbatsov/helm-projectile.git")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32 "0lph38p112fridighqcizpsyzjbv7qr3d8prbfj6w6q6gfl6cna4"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-dash" ,emacs-dash)
- ("emacs-helm" ,emacs-helm)
- ("emacs-projectile" ,emacs-projectile)))
- (home-page "https://github.com/bbatsov/helm-projectile")
- (synopsis "Helm integration for Projectile")
- (description
- "This Emacs library provides a Helm interface for Projectile.")
- (license license:gpl3+)))
+ (let ((commit "5328b74dddcee8d1913803ca8167868831a07463")
+ (version "0.14.0")
+ (revision "1"))
+ (package
+ (name "emacs-helm-projectile")
+ (version (git-version version revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/bbatsov/helm-projectile.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0a811cblrvc8llpv771b8dppgxs6bwjyvjy3qn2xns4nigvn93s0"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-helm" ,emacs-helm)
+ ("emacs-projectile" ,emacs-projectile)))
+ (home-page "https://github.com/bbatsov/helm-projectile")
+ (synopsis "Helm integration for Projectile")
+ (description
+ "This Emacs library provides a Helm interface for Projectile.")
+ (license license:gpl3+))))
(define-public emacs-taskrunner
(let ((commit "3afd4a546d42339543d3d4e51b175fc3e82b3358")
;; There hasn't been a tag or release since 2016, so we take the latest
;; commit.
(define-public emacs-sly
- (let ((commit "29dccc0735283897a6dbd97e0b6828a45c2985e2")
- (revision "2"))
+ (let ((commit "0a3b81770e46b93b9ffd8b9ac5254e0b88d1b13d")
+ (revision "3"))
(package
(name "emacs-sly")
(version (git-version "1.0.0" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "0d0skgyqn422130xn8lrdp04m5cjk3sl18w6lf2wrmrndc1crqxk"))))
+ "1q5ga4mxa0ffa4zb2y0zfwmgzjggx4fn1y4bl2x7ac6ynvb32zkj"))))
(build-system emacs-build-system)
(native-inputs
`(("texinfo" ,texinfo)))
sly-quickload command that prompts the user for a package to install. ")
(license license:gpl3+))))
+(define-public emacs-sly-asdf
+ (let ((commit "4e323bc28da2f07fd799b6a31b94fd93848b5f3c")
+ (revision "2"))
+ (package
+ (name "emacs-sly-asdf")
+ (version (git-version "0.1.0" revision commit))
+ (home-page "https://github.com/mmgeorge/sly-asdf")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "16sc33jhc6ik4ilsyqc3cjpi6v0wdmwjlwrzjwd6yym11bscsmad"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-sly" ,emacs-sly)))
+ (arguments
+ '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)))
+ (synopsis "ASDF contrib for SLY")
+ (description
+ "@command{sly-asdf} is an external contrib for SLY that provides
+additional support for working with ASDF projects.")
+ (license license:gpl3+))))
+
+(define-public emacs-sly-named-readtables
+ (let ((commit "a5a42674ccffa97ccd5e4e9742beaf3ea719931f")
+ (revision "1"))
+ (package
+ (name "emacs-sly-named-readtables")
+ (version (git-version "0.1" revision commit))
+ (home-page "https://github.com/joaotavora/sly-named-readtables")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "16asd119rzqrlclps2q6yrkis8jy5an5xgzzqvb7jdyq39zxg54q"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-sly" ,emacs-sly)))
+ (arguments
+ '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)))
+ (synopsis "Named-readtables support for SLY")
+ (description
+ "@command{sly-named-readtables} is an external contrib for SLY that
+enables different readtables to be active in different parts of the same
+file.")
+ (license license:gpl3+))))
+
+(define-public emacs-sly-macrostep
+ (let ((commit "be2d24545092d164be1a91031d8881afd29c9ec0")
+ (revision "1"))
+ (package
+ (name "emacs-sly-macrostep")
+ (version (git-version "0.1" revision commit))
+ (home-page "https://github.com/joaotavora/sly-macrostep")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0v8m3zkccpqd2l8m9340y672l2mm3mrry8422nva5kfvpcwdayqb"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-sly" ,emacs-sly)
+ ("emacs-macrostep" ,emacs-macrostep)))
+ (arguments
+ '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)
+ #:phases
+ ;; The package provides autoloads.
+ (modify-phases %standard-phases
+ (delete 'make-autoloads))))
+ (synopsis "Expand Common Lisp macros inside source files with SLY")
+ (description
+ "@command{sly-macrostep} is a SLY contrib for expanding CL macros right
+inside the source file.")
+ (license license:gpl3+))))
+
+(define-public emacs-sly-package-inferred
+ (let ((commit "800e71e2be631422277e2ec77e6d6f6ea20e95ef")
+ (revision "1"))
+ (package
+ (name "emacs-sly-package-inferred")
+ (version (git-version "0.1" revision commit))
+ (home-page "https://github.com/40ants/sly-package-inferred")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url home-page)
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1216idyp034nkqddhw4p53jkhhdxa6xnjjmsvijpf4rxqnfqvapg"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-sly" ,emacs-sly)))
+ (arguments
+ '(#:include (cons* "\\.lisp$" "\\.asd$" %default-include)
+ #:phases
+ ;; The package provides autoloads.
+ (modify-phases %standard-phases
+ (delete 'make-autoloads))))
+ (synopsis "Improved package inferred systems support for SLY")
+ (description
+ "@command{sly-package-inferred} is an external contrib for SLY that
+replaces its completion with a function which is better suited for systems
+using package inferred style.")
+ (license license:gpl3+))))
+
(define-public emacs-lua-mode
(let ((commit "95c64bb5634035630e8c59d10d4a1d1003265743")
(revision "2"))
(sha256
(base32
"1833w397xhac5g3pp25szr2gyvclxy91aw27azvbmsx94pyk2a3q"))))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'fix-test-helpers
+ (lambda _
+ (substitute* "evil-test-helpers.el"
+ (("\\(undo-tree-mode 1\\)") ""))
+ #t)))))
(build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-undo-tree" ,emacs-undo-tree)
- ("emacs-goto-chg" ,emacs-goto-chg)))
(home-page "https://github.com/emacs-evil/evil")
(synopsis "Extensible Vi layer for Emacs")
(description
(license license:gpl3+)))
(define-public emacs-evil-collection
- (let ((commit "bf4200a57c81c2302a3bf5b2058d74c6f90a3e6c")
- (revision "11"))
+ (let ((commit "38e916d5d56b391f1ad4c72ad3909491e86cda3c")
+ (revision "12"))
(package
(name "emacs-evil-collection")
(version (git-version "0.0.3" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "01xw0m5gj14ly42y8ikvldpab5my28sylf6l9gvwd5cf909bd445"))))
+ "00a1ya3c92ymhfj4ai1ygljnxa147d4cgi6jmvccngicphn99782"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-evil" ,emacs-evil)
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/mamapanda/evil-owl")
+ (url "https://github.com/mamapanda/evil-owl")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0bqzch14whlmrcasakah3psrzswvkzd7mmi8hx5s64kfp29wbdhi"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-evil" ,emacs-evil)))
+ (arguments
+ `(#:tests? #t
+ #:test-command '("make" "test")))
+ (home-page "https://github.com/mamapanda/evil-owl")
+ (synopsis "Preview candidates when using Evil registers and marks")
+ (description
+ "This package supplements Evil's register- and mark-based commands with
+a popup window for previewing candidates.")
+ (license license:gpl3+))))
+
+(define-public emacs-evil-args
+ (let ((commit "758ad5ae54ad34202064fec192c88151c08cb387")
+ (revision "1"))
+ (package
+ (name "emacs-evil-args")
+ (version (git-version "1.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/wcsmith/evil-args.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
- "0bqzch14whlmrcasakah3psrzswvkzd7mmi8hx5s64kfp29wbdhi"))))
+ "0k35glgsirc3cph8v5hhjrqfh4ndwh8a28qbr03y3jl8s453xcj7"))))
(build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-evil" ,emacs-evil)))
- (arguments
- `(#:tests? #t
- #:test-command '("make" "test")))
- (home-page "https://github.com/mamapanda/evil-owl")
- (synopsis "Preview candidates when using Evil registers and marks")
+ (propagated-inputs `(("emacs-evil" ,emacs-evil)))
+ (home-page "https://github.com/wcsmith/evil-args")
+ (synopsis "Motions and text objects for delimited arguments in Evil")
(description
- "This package supplements Evil's register- and mark-based commands with
-a popup window for previewing candidates.")
- (license license:gpl3+))))
+ "This package provides motions and text objects for delimited
+arguments, such as arguments separated by commas and semicolons.")
+ (license license:expat))))
(define-public emacs-evil-exchange
(let ((commit "47691537815150715e64e6f6ec79be7746c96120")
(name "emacs-yasnippet")
(version "0.13.0")
(source (origin
- (method url-fetch)
- (uri (string-append "https://github.com/joaotavora/yasnippet/"
- "archive/" version ".tar.gz"))
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/joaotavora/yasnippet.git")
+ (commit version)))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "12ls2x17agzbrj1xynjbmfa11igqxia4hj4fv6fpr66yci2r1plc"))
+ "0fkkplycrw8f8r30hjjxl1wm7p2irq2ipzzc1g7cc52abaal796p"))
(modules '((guix build utils)))
(snippet
'(begin
"))\n"))
#t))))
(build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("emacs" "--batch"
+ "-l" "yasnippet-tests.el"
+ "-f" "ert-run-tests-batch-and-exit")
+ ;; FIXME: one failing test
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'check 'make-tests-writable
+ (lambda _
+ (make-file-writable "yasnippet-tests.el")
+ #t))
+ (add-before 'check 'delete-rebinding-test
+ (lambda _
+ (emacs-batch-edit-file "yasnippet-tests.el"
+ `(progn (progn (goto-char (point-min))
+ (re-search-forward
+ "ert-deftest test-rebindings")
+ (beginning-of-line)
+ (kill-sexp))
+ (basic-save-buffer)))
+ #t)))))
(home-page "https://github.com/joaotavora/yasnippet")
(synopsis "Yet another snippet extension for Emacs")
(description
(define-public emacs-csv-mode
(package
(name "emacs-csv-mode")
- (version "1.7")
+ (version "1.10")
(source
(origin
(method url-fetch)
- (uri (string-append "http://elpa.gnu.org/packages/csv-mode-"
+ (uri (string-append "https://elpa.gnu.org/packages/csv-mode-"
version ".el"))
(sha256
- (base32
- "0r4bip0w3h55i8h6sxh06czf294mrhavybz0zypzrjw91m1bi7z6"))))
+ (base32 "0q7j2cmj7vs6hz8cnf7j7lmlcjmig3jn2p6az345z96agl8a5xsq"))))
(build-system emacs-build-system)
- (home-page
- "http://elpa.gnu.org/packages/csv-mode.html")
- (synopsis
- "Major mode for editing comma/char separated values")
+ (home-page "https://elpa.gnu.org/packages/csv-mode.html")
+ (synopsis "Major mode for editing comma/char separated values")
(description
"This Emacs package implements CSV mode, a major mode for editing records
in a generalized CSV (character-separated values) format.")
standard Unix password manager\").")
(license license:gpl2+)))
+(define-public emacs-auth-source-pass
+ (let ((commit "847a1f54ed48856b4dfaaa184583ef2c84173edf")
+ (revision "1"))
+ (package
+ (name "emacs-auth-source-pass")
+ (version (git-version "5.0.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/NicolasPetton/auth-password-store.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0g48z5w6n3c54zqfpx65dfyl9jqbl15idvbb1hhw2pd9f9r8fykk"))))
+ (build-system emacs-build-system)
+ (arguments
+ `(#:tests? #t
+ #:test-command '("emacs" "--batch"
+ "-L" "."
+ "-l" "test/auth-source-pass-tests.el"
+ "-f" "ert-run-tests-batch-and-exit")))
+ (home-page "https://github.com/NicolasPetton/auth-password-store")
+ (synopsis "Integrate @code{auth-source} with @code{password-store}")
+ (description "This package helps Emacs integrate with the Unix
+@code{password-store} application.")
+ (license license:gpl3+))))
+
(define-public emacs-pass
(package
(name "emacs-pass")
#t)))))
(inputs
`(("emacs-minimal" ,emacs-minimal)
- ("mariadb" ,mariadb)
+ ("mariadb" ,mariadb "lib")
+ ("mariadb-dev" ,mariadb "dev")
("postgresql" ,postgresql)))
(propagated-inputs
`(("emacs-finalize" ,emacs-finalize)
(license license:gpl3+)))
(define-public emacs-closql
- (package
- (name "emacs-closql")
- (version "1.0.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/emacscollective/closql.git")
- (commit (string-append "v" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1xhpfjjkjqfc1k2rj77cscclz5r7gpvv3hi202x178vdcpipjwar"))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-emacsql" ,emacs-emacsql)))
- (home-page "https://github.com/emacscollective/closql")
- (synopsis "Store EIEIO objects using EmacSQL")
- (description
- "This package allows to store uniform EIEIO objects in an EmacSQL
+ ;; Take a commit newer than 1.0.0 release because of Emacs upgrade to 26.3.
+ (let ((commit "70b98dbae53611d10a461d9b4a6f71086910dcef"))
+ (package
+ (name "emacs-closql")
+ (version (git-version "1.0.0" "1" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emacscollective/closql.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1wvhrihg663f61yzc7f0vha2abjdnlwbk0gjcwakdfk1bhwf5ikh"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-emacsql" ,emacs-emacsql)))
+ (home-page "https://github.com/emacscollective/closql")
+ (synopsis "Store EIEIO objects using EmacSQL")
+ (description
+ "This package allows to store uniform EIEIO objects in an EmacSQL
database. SQLite is used as backend. This library imposes some restrictions
on what kind of objects can be stored; it isn't intended to store arbitrary
objects. All objects have to share a common superclass and subclasses cannot
add any additional instance slots.")
- (license license:gpl3)))
+ (license license:gpl3))))
(define-public emacs-epkg
;; The release version is to old for the current database scheme.
(license license:gpl3+)))
(define-public emacs-org-ql
- (let ((commit "949a06c3ab50482b749fd2d4350837a197660d96")
- (revision "3"))
- (package
- (name "emacs-org-ql")
- (version (git-version "0.3.1" revision commit))
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/alphapapa/org-ql")
- (commit commit)))
- (sha256
- (base32
- "0apcg63xm0242mjgsgw0jrcda4p4iqj7fy3sgh0p7khi4hrs5ch0"))
- (file-name (git-file-name name version))))
- (build-system emacs-build-system)
- (propagated-inputs
- `(("emacs-s" ,emacs-s)
- ("emacs-f" ,emacs-f)
- ("emacs-ov" ,emacs-ov)
- ("emacs-peg" ,emacs-peg)
- ("emacs-org-super-agenda" ,emacs-org-super-agenda)
- ("emacs-ts" ,emacs-ts)
- ("emacs-org" ,emacs-org)
- ("emacs-helm" ,emacs-helm)
- ("emacs-helm-org" ,emacs-helm-org)
- ("emacs-dash" ,emacs-dash)))
- (native-inputs
- `(("emacs-buttercup" ,emacs-buttercup)))
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'require-helm
- (lambda _
- (substitute* "helm-org-ql.el"
- (("^;;;; Requirements")
- ";;;; Requirements\n(require 'helm)\n(require 'helm-org)"))
- #t)))
- #:tests? #t
- #:test-command '("buttercup" "-L" ".")))
- (home-page "https://github.com/alphapapa/org-ql/")
- (synopsis "Query language for Org buffers")
- (description "This package provides a Lispy query language for Org
+ (package
+ (name "emacs-org-ql")
+ (version "0.3.2")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/alphapapa/org-ql")
+ (commit version)))
+ (sha256
+ (base32
+ "11bhpi2l28vp8mm9nx18jljbqdnh9vxpv9kp1dn9lpsgivcdbc34"))
+ (file-name (git-file-name name version))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-s" ,emacs-s)
+ ("emacs-f" ,emacs-f)
+ ("emacs-ov" ,emacs-ov)
+ ("emacs-peg" ,emacs-peg)
+ ("emacs-org-super-agenda" ,emacs-org-super-agenda)
+ ("emacs-ts" ,emacs-ts)
+ ("emacs-org" ,emacs-org)
+ ("emacs-helm" ,emacs-helm)
+ ("emacs-helm-org" ,emacs-helm-org)
+ ("emacs-dash" ,emacs-dash)))
+ (native-inputs
+ `(("emacs-buttercup" ,emacs-buttercup)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'require-helm
+ (lambda _
+ (substitute* "helm-org-ql.el"
+ (("^;;;; Requirements")
+ ";;;; Requirements\n(require 'helm)\n(require 'helm-org)"))
+ #t)))
+ #:tests? #t
+ #:test-command '("buttercup" "-L" ".")))
+ (home-page "https://github.com/alphapapa/org-ql/")
+ (synopsis "Query language for Org buffers")
+ (description "This package provides a Lispy query language for Org
files, allowing for actions to be performed based on search criteria.")
- (license license:gpl3+))))
+ (license license:gpl3+)))
(define-public emacs-org-auto-expand
(let ((commit "4938d5f6460e2f8f051ba9ac000b291bfa43ef62")
(sha256
(base32 "1kykbb1sil5cycfa5aj8dhsxc5yrx1641i2np5kwdjid6ahdlz5r"))))
(build-system emacs-build-system)
+ (native-inputs
+ `(("emacs-buttercup" ,emacs-buttercup)))
+ (arguments
+ `(#:tests? #t
+ #:test-command '("buttercup" "-L" ".")))
(home-page "https://github.com/DamienCassou/hierarchy")
(synopsis "Library to create and display hierarchy structures")
(description "This package provides an Emacs library to create, query,
(define-public emacs-let-alist
(package
(name "emacs-let-alist")
- (version "1.0.5")
+ (version "1.0.6")
(source
(origin
(method url-fetch)
(uri (string-append
"https://elpa.gnu.org/packages/let-alist-" version ".el"))
(sha256
- (base32
- "0r7b9jni50la1m79kklml11syg8d2fmdlr83pv005sv1wh02jszw"))))
+ (base32 "0szj7vnjzz4zci5fvz7xqgcpi4pzdyyf4qi2s8xar2hi7v3yaawr"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/let-alist.html")
(synopsis "Easily let-bind values of an assoc-list by their names")
(license license:gpl3+))))
(define-public emacs-ibuffer-projectile
- (let ((commit "c18ac540ee46cb759fc5df18747f6e8d23563011")
- (revision "1"))
+ (let ((commit "76496214144687cee0b5139be2e61b1e400cac87")
+ (revision "2"))
(package
(name "emacs-ibuffer-projectile")
- (version (string-append "0.2" "-" revision "."
- (string-take commit 7)))
+ (version (git-version "0.2" revision commit))
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "1nd26cwwdpnwj0g4w393rd59klpyr6wqrnyr6scmwb5d06bsm44n"))))
+ "0vv9xwb1qd5x8zhqmmsn1nrpd11cql9hxb7483nsdhcfwl4apqav"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-projectile" ,emacs-projectile)))
(define-public emacs-darkroom
(package
(name "emacs-darkroom")
- (version "0.1")
+ (version "0.2")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/darkroom-"
version ".el"))
(sha256
(base32
- "0fif8fm1h7x7g16949shfnaik5f5488clsvkf8bi5izpqp3vi6ak"))))
+ "1a528brhz4vckhp77n2c1phkyqdliykpj9kzk3f834f4rwnb5mp0"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/darkroom.html")
(synopsis "Remove visual distractions and focus on writing")
(method git-fetch)
(uri (git-reference (url home-page)
(commit (string-append "v" version))))
- (file-name (string-append name "-" version ".tar.gz"))
+ (file-name (git-file-name name version))
(sha256
(base32
"1wi70r56pd5z0x4dp4m58p9asq03j74kdm4fi9vai83vsl2z9amq"))))
(define-public emacs-editorconfig
(package
(name "emacs-editorconfig")
- (version "0.8.0")
+ (version "0.8.1")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(sha256
(base32
- "1b2cpqz75pivl323bs60j5rszwi787x6vy68csycikqz9mhpmjn9"))))
+ "1djlhkap7zddknzvjsjz0agpfsms1ih05zcpg1bikid2vs4gddyr"))))
(build-system emacs-build-system)
(home-page "https://github.com/editorconfig/editorconfig-emacs")
(synopsis "Define and maintain consistent coding styles between different
@end itemize\n")
(license license:gpl3+)))
+(define-public emacs-helm-sly
+ (package
+ (name "emacs-helm-sly")
+ (version "0.4.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emacs-helm/helm-sly")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0b2dx9nzh5233lkix3lz81c9cv626lk2hjpcjiikwvyp6y0q92ys"))))
+ (build-system emacs-build-system)
+ (propagated-inputs
+ `(("emacs-helm" ,emacs-helm)
+ ("emacs-sly" ,emacs-sly)))
+ (home-page "https://github.com/emacs-helm/helm-sly")
+ (synopsis "Helm for SLY, a Common Lisp interaction mode for Emacs")
+ (description "Helm-SLY defines a few new commands:
+
+@itemize
+@item helm-sly-list-connections: Yet another Lisp connection list with Helm.
+@item: helm-sly-apropos: Yet another @command{apropos} with Helm.
+@item helm-sly-mini: Like @command{helm-sly-list-connections}, but include an
+extra source of Lisp-related buffers, like the events buffer or the scratch
+buffer.
+@end itemize\n")
+ (license license:gpl3+)))
+
(define-public emacs-gtk-look
(package
(name "emacs-gtk-look")
(license license:gpl3+)))
(define-public emacs-lsp-ivy
- (let ((commit "6fd55316dd62d290429c25ea9b0c1f66069b2f37")
- (revision "1"))
+ (let ((commit "caf1e1d7e22ed0b5fe18dd508d1a6f83dd163288")
+ (revision "2"))
(package
(name "emacs-lsp-ivy")
(version (git-version "0.1" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "0hx9rs66ahl2rqgnmyiyrwk12v7iv8c6gnn7b66985mxjqyyh94r"))))
+ "084ds4qhzhivfnicy3h7z4mblxgcqx8pfnkbjr9qjrfng7cisy4z"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-ivy" ,emacs-ivy)
a suffix) we prefer to call it just a \"transient\".")
(license license:gpl3+))))
+(define-public emacs-forge
+ (let ((commit "63cbf81f166fc71861d8e3d246df8e5ccedcb9bb"))
+ (package
+ (name "emacs-forge")
+ (version (git-version "0.1.0" "2" commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/magit/forge.git")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1yf2xjx3459py6rji740jm8bmh2pv66ghnbjxsvjd4jf9kcdav83"))))
+ (build-system gnu-build-system)
+ (native-inputs
+ `(("texinfo" ,texinfo)
+ ("emacs" ,emacs-minimal)))
+ (propagated-inputs
+ `(("emacs-closql" ,emacs-closql)
+ ("emacs-dash" ,emacs-dash)
+ ("emacs-emacsql-sqlite" ,emacs-emacsql)
+ ("emacs-ghub" ,emacs-ghub)
+ ("emacs-let-alist" ,emacs-let-alist)
+ ("emacs-magit" ,emacs-magit)
+ ("emacs-markdown-mode" ,emacs-markdown-mode)
+ ("emacs-transient" ,emacs-transient)))
+ (arguments
+ `(#:tests? #f ;no tests
+ #:modules ((srfi srfi-26)
+ (guix build gnu-build-system)
+ ((guix build emacs-build-system) #:prefix emacs:)
+ (guix build utils)
+ (guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-build-system)
+ (guix build emacs-utils))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (delete 'install)
+ (add-after 'unpack 'delete-doc-targets
+ (lambda _
+ (substitute* "./Makefile"
+ (("lisp docs") "lisp"))))
+ (add-after 'delete-doc-targets 'emacs-set-emacs-load-path
+ (assoc-ref emacs:%standard-phases 'set-emacs-load-path))
+ (add-after 'emacs-set-emacs-load-path 'chdir-lisp
+ (lambda _
+ (chdir "lisp")))
+ (add-after 'chdir-lisp 'emacs-install
+ (assoc-ref emacs:%standard-phases 'install))
+ (add-after 'emacs-install 'emacs-make-autoloads
+ (assoc-ref emacs:%standard-phases 'make-autoloads))
+ (add-after 'build 'install-elc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (el-dir (string-append
+ out "/share/emacs/site-lisp/guix.d/forge-"
+ ,version)))
+ (for-each (cut install-file <> el-dir)
+ (find-files "." "\\.elc"))
+ #t)))
+ (add-after 'install-elc 'install-doc
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (info (string-append out "/share/info")))
+ (with-directory-excursion "../docs"
+ (invoke "makeinfo" "forge.texi")
+ (install-file "forge.info" info)
+ #t)))))))
+ (home-page "https://github.com/magit/ghub/")
+ (synopsis "Access Git forges from Magit")
+ (description
+ "Work with Git forges, such as Github and Gitlab, from the comfort of
+Magit and the rest of Emacs.")
+ (license license:gpl3+))))
+
(define-public emacs-matcha
(let ((commit "c7df5cf5cdac9ae369e241342389ccda0205eab9"))
(package
(define-public emacs-web-server
(let ((commit "cafa5b7582c57252a0884b2c33da9b18fb678713")
- (version "0.1.1")
(revision "1"))
(package
(name "emacs-web-server")
- (version (git-version version revision commit))
+ (version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
(base32
"1c0lfqmbs5hvz3fh3c8wgp6ipwmxrwx9xj264bjpj3phixd5419y"))))
(build-system emacs-build-system)
+ (native-inputs
+ `(("curl" ,curl)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'set-shell
+ ;; Setting the SHELL environment variable is required for the tests
+ ;; to find sh.
+ (lambda _
+ (setenv "SHELL" (which "sh"))
+ #t)))
+ #:tests? #t
+ #:test-command '("make" "check")))
(home-page "https://github.com/eschulte/emacs-web-server/")
(synopsis "Web server with handlers in Emacs Lisp")
(description "This package supports HTTP GET and POST requests with
("emacs-web-server" ,emacs-web-server)))
(arguments '(#:include '("\\.el$" "\\.html$")))
(home-page "https://github.com/ancane/markdown-preview-mode")
- (synopsis "Live web development in Emacs")
+ (synopsis "Preview Markdown files")
(description "This package provides a minor mode for preview of Markdown
files, and sends rendered Markdown to a web browser.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-counsel-dash
- (let ((commit "24d370be9e94e90d045c49967e19484b9903fce9")
- (revision "2"))
+ (let ((commit "7027868d483b51d949b9f20fb8f34b122ca61520")
+ (revision "3"))
(package
(name "emacs-counsel-dash")
(version (git-version "0.1.3" revision commit))
(file-name (git-file-name name version))
(sha256
(base32
- "18gp7hhgng271c7bh06k9p24zqic0f64j5cicivljmyk9c3nh7an"))))
+ "0h3f5pxnmb21pq4hh7k4w8jzflz1k2ap7nwpjc222w0q6x6jrbjp"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash-docs" ,emacs-dash-docs)
("emacs-ivy" ,emacs-ivy)))
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'require-ivy
+ (lambda _
+ (substitute* "counsel-dash.el"
+ (("^\\(require 'cl-lib\\)")
+ "(require 'cl-lib)\n(require 'ivy)\n(require 'subr-x)"))
+ #t)))))
(home-page "https://github.com/dash-docs-el/counsel-dash")
(synopsis "Offline documentation browser for APIs using Dash docsets")
(description "This package uses @code{ivy-mode} to install and navigate
(define-public emacs-nhexl-mode
(package
(name "emacs-nhexl-mode")
- (version "1.2")
+ (version "1.4")
(source
(origin
(method url-fetch)
"https://elpa.gnu.org/packages/nhexl-mode-"
version ".el"))
(sha256
- (base32
- "031h22p564qdvr9khs05qcba06pmsk68cr7zyc7c04hfr3y3ziaf"))))
+ (base32 "1c2q4w6hkvc7z4026hiqdcsm2scd6q35x7b0dk80h8qicsbi14c8"))))
(build-system emacs-build-system)
- (home-page "http://elpa.gnu.org/packages/nhexl-mode.html")
+ (home-page "https://elpa.gnu.org/packages/nhexl-mode.html")
(synopsis "Minor mode to edit files via hex-dump format")
(description
"This package implements NHexl mode, a minor mode for editing files
"Elixir-Mode Provides font-locking, indentation and navigation support
for the Elixir programming language.")
(license license:gpl3+)))
+
+(define-public emacs-dimmer
+ (package
+ (name "emacs-dimmer")
+ (version "0.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/gonewest818/dimmer.el.git")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1jv9rrv15nb5hpwcaqlpjj932gyisrkwbv11czkg3v0bn7qn6yif"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/gonewest818/dimmer.el")
+ (synopsis "Visually highlights the selected buffer in Emacs")
+ (description "Dimmer provides a minor mode that indicates which buffer is
+currently active by dimming the faces in the other buffers. It does this
+nondestructively, and computes the dimmed faces dynamically such that your
+overall color scheme is shown in a muted form without requiring you to define
+what is a \"dim\" version of every face.")
+ (license license:gpl3+)))
+
+(define-public emacs-minibuffer-line
+ (package
+ (name "emacs-minibuffer-line")
+ (version "0.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://elpa.gnu.org/packages/minibuffer-line-"
+ version
+ ".el"))
+ (sha256
+ (base32 "1ny4iirp26na5118wfgxlv6fxlrdclzdbd9m0lkrv51w0qw7spil"))))
+ (build-system emacs-build-system)
+ (home-page "https://elpa.gnu.org/packages/minibuffer-line.html")
+ (synopsis "Display status info in the minibuffer window")
+ (description
+ "This package lets you display various status information in the
+minibuffer window instead of the mode-line. Of course, this is only displayed
+when the minibuffer window is not already used for other things (e.g. a
+minibuffer or an each area message).
+
+The contents and aspect is controlled by the @code{minibuffer-line-format}
+variable and the @code{minibuffer-line} face.")
+ (license license:gpl3+)))