gnu: Add emacs-ido-vertical-mode.
[jackhill/guix/guix.git] / gnu / packages / emacs.scm
index ec0ea72..cc3d2fc 100644 (file)
@@ -9577,3 +9577,437 @@ Using this package is easy, just call @code{academic-phrases} to get a list of
 phrases organized by topic, or call @code{academic-phrases-by-section} to
 browse the phrases by the paper section and fill-in the blanks if required.")
       (license license:gpl3+))))
+
+(define-public emacs-auto-yasnippet
+  (let ((commit "d1ccfea87312c6dd8cf8501ab5b71b1d3d44d95b"))
+    (package
+      (name "emacs-auto-yasnippet")
+      (version (git-version "0.3.0" "1" commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/abo-abo/auto-yasnippet.git")
+                      (commit commit)))
+                (file-name (string-append name "-" version "-checkout"))
+                (sha256
+                 (base32
+                  "1i8k2qiyzd5rq0zplk4xb5nfa5mp0ibxbzwqj6c7877waq7244xk"))))
+      (build-system emacs-build-system)
+      (arguments
+       '(#:phases
+         (modify-phases %standard-phases
+           (add-before 'install 'check
+             (lambda _
+               (invoke "emacs" "--batch"
+                       "-l" "auto-yasnippet.el"
+                       "-l" "auto-yasnippet-test.el"
+                       "-f" "ert-run-tests-batch-and-exit"))))))
+      (propagated-inputs
+       `(("emacs-yasnippet" ,emacs-yasnippet)))
+      (home-page "https://github.com/abo-abo/auto-yasnippet/")
+      (synopsis "Quickly create disposable yasnippets")
+      (description "This package provides a hybrid of keyboard macros and
+yasnippet.  You create the snippet on the go, usually to be used just in the
+one place.  It's fast, because you're not leaving the current buffer, and all
+you do is enter the code you'd enter anyway, just placing ~ where you'd like
+yasnippet fields and mirrors to be.")
+      (license license:gpl3+))))
+
+(define-public emacs-highlight-numbers
+  (package
+    (name "emacs-highlight-numbers")
+    (version "0.2.3")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://github.com/Fanael/highlight-numbers/archive/"
+             version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "030v5p11d4n0581ncv499l1fqrmfziy756q6378x2bv22ixghqqp"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     `(("emacs-parent-mode" ,emacs-parent-mode)))
+    (home-page "https://github.com/Fanael/highlight-numbers")
+    (synopsis "Highlight numbers in source code")
+    (description "@code{highlight-numbers-mode} provides a minor mode for
+syntax highlighting of numeric literals in source code.
+
+It s customizable: it's easy to add or redefine what exactly consitutes a
+\"number\" in given major mode.  See @code{highlight-numbers-modelist}.")
+    (license license:gpl3+)))
+
+(define-public emacs-darkroom
+  (package
+    (name "emacs-darkroom")
+    (version "0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://elpa.gnu.org/packages/darkroom-"
+                                  version ".el"))
+              (sha256
+               (base32
+                "0fif8fm1h7x7g16949shfnaik5f5488clsvkf8bi5izpqp3vi6ak"))))
+    (build-system emacs-build-system)
+    (home-page "https://elpa.gnu.org/packages/darkroom.html")
+    (synopsis "Remove visual distractions and focus on writing")
+    (description "@code{darkroom-mode} makes visual distractions disappear.
+The mode-line is temporarily elided, text is enlarged and margins are adjusted
+so that it's centered on the window.
+
+@code{darkroom-tentative-mode} is similar, but it doesn't immediately turn-on
+@code{darkroom-mode}, unless the current buffer lives in the sole window of
+the Emacs frame (i.e. all other windows are deleted).  Whenever the frame is
+split to display more windows and more buffers, the buffer exits
+@code{darkroom-mode}.  Whenever they are deleted, the buffer re-enters
+@code{darkroom-mode}.")
+    (license license:gpl3+)))
+
+(define-public emacs-rsw-elisp
+  (package
+    (name "emacs-rsw-elisp")
+    (version "1.0.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://github.com/rswgnu/rsw-elisp"
+                                  "/archive/" version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1jnn7xfwl3wxc87v44ccsf1wwp80par3xgcvfb1icd6zchjmlcps"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/rswgnu/rsw-elisp")
+    (synopsis "Improved expressions that interactively evaluate Emacs Lisp")
+    (description "This package improves and replaces the GNU Emacs commands
+that interactively evaluate Emacs Lisp expressions.  The new commands replace
+standard key bindings and are all prefixed with rsw-elisp-.  They work the
+same way as the old commands when called non-interactively; only the
+interactive behavior should be different.")
+    (license license:gpl3+)))
+
+(define-public emacs-default-text-scale
+  (let ((commit "968e985e219235f3e744d6d967e592acbaf6e0a8")
+        (revision "1"))
+    (package
+      (name "emacs-default-text-scale")
+      (version (string-append "0.1" "-" revision "."
+                              (string-take commit 7)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/purcell/default-text-scale")
+                      (commit commit)))
+                (file-name (string-append name "-" version "-checkout"))
+                (sha256
+                 (base32
+                  "0zds01c3q5yny6ab1fxfkzzgn1kgl3q23lxxap905f4qd70v922h"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/purcell/default-text-scale")
+      (synopsis "Adjust the font size in all Emacs frames")
+      (description "This package provides commands for increasing or
+decreasing the default font size in all GUI Emacs frames.")
+      (license license:gpl3+))))
+
+(define-public emacs-visual-regexp
+  (package
+    (name "emacs-visual-regexp")
+    (version "1.1.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/benma/visual-regexp.el/archive/"
+                           "v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1czmhvcivlcdyz7rfm0vd4a3xsgmy4qbvbl6yjxc217wrxqflr92"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/benma/visual-regexp.el/")
+    (synopsis "Regexp command with interactive visual feedback")
+    (description "This package provides an Emacs regexp command with
+interactive visual feedback.")
+    (license license:gpl3+)))
+
+(define-public emacs-faceup
+  (let ((commit "6c92dad56a133e14e7b27831e1bcf9b3a71ff154")
+        (revision "1"))
+    (package
+      (name "emacs-faceup")
+      (version (string-append "0.0.1" "-" revision "."
+                              (string-take commit 7)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/Lindydancer/faceup.git")
+               (commit commit)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "1yzmy7flrhrh0i10bdszx8idx6r8h6czm4vm4q0z6fp5fw94zwrx"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/Lindydancer/faceup")
+      (synopsis "Markup language for faces and font-lock regression testing")
+      (description "Emacs is capable of highlighting buffers based on
+language-specific @code{font-lock} rules.  This package makes it possible to
+perform regression test for packages that provide font-lock rules.")
+      (license license:gpl3+))))
+
+(define-public emacs-racket-mode
+  (let ((commit "33877b1bb24faea68842e0396bd5718b84e47451")
+        (revision "1"))
+    (package
+      (name "emacs-racket-mode")
+      (version (string-append "0.0.1" "-" revision "."
+                              (string-take commit 7)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/greghendershott/racket-mode")
+               (commit commit)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "0681mzwx08zwbh8qg3s26jw1jn4fw2ljp1akxqkhy08sxhafqvb1"))))
+      (build-system emacs-build-system)
+      (propagated-inputs
+       `(("emacs-faceup" ,emacs-faceup)
+         ("emacs-s" ,emacs-s)))
+      (home-page "https://github.com/greghendershott/racket-mode")
+      (synopsis "Major mode for Racket language")
+      (description "@code{racket-mode} provides:
+
+@itemize
+@item Focus on Racket (not various Schemes).
+@item Follow DrRacket concepts where applicable.
+@item Thorough font-lock and indent.
+@end itemize\n")
+      (license license:gpl3+))))
+
+(define-public emacs-grep-context
+  (let ((commit "a17c57e66687a54e195e08afe776bdd60cb6c0a7"))
+    (package
+      (name "emacs-grep-context")
+      (version (git-version "0.1" "1" commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/mkcms/grep-context.git")
+               (commit commit)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "1nqfa6kjzjshww4hnwg1c0vcr90bdjihy3kmixq3c3jkvxg99b62"))))
+      (build-system emacs-build-system)
+      (propagated-inputs
+       `(("emacs-dash" ,emacs-dash)))
+      (home-page "https://github.com/nashamri/academic-phrases")
+      (synopsis "Increase context in compilation and grep buffers")
+      (description
+       "This package provides an Emacs package for more context in
+compilation/grep buffers.  Works with @code{wgrep}, @code{ack}, @code{ag},
+@code{ivy}.")
+      (license license:gpl3+))))
+
+(define-public emacs-helm-firefox
+  (let ((commit "0ad34b7b5abc485a86cae6920c14de861cbeb085")
+        (revision "1"))
+    (package
+      (name "emacs-helm-firefox")
+      (version (string-append "0.0.1" "-" revision "."
+                              (string-take commit 7)))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://github.com/emacs-helm/helm-firefox.git")
+               (commit commit)))
+         (file-name (string-append name "-" version "-checkout"))
+         (sha256
+          (base32
+           "08mjsi2f9s29fkk35cj1rrparjnkm836qmbfdwdz7y51f9varjbs"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/emacs-helm/helm-firefox")
+      (synopsis "Display firefox bookmarks with Emacs Helm interface")
+      (description "Display firefox bookmarks with Emacs Helm interface")
+      (license license:gpl3+))))
+
+(define-public emacs-interactive-align
+  (package
+    (name "emacs-interactive-align")
+    (version "0.1.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/mkcms/interactive-align/"
+                           "archive/" "v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0sibpgb4lp6yy3pziak8f3hz4b28yj0dqy2nzh51z3d0b63h528m"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/mkcms/interactive-align/")
+    (synopsis "Interactive align-regexp command in Emacs")
+    (description "Interactive align-regexp command in Emacs")
+    (license license:gpl3+)))
+
+(define-public emacs-shift-number
+  (package
+    (name "emacs-shift-number")
+    (version "0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/alezost/shift-number.el"
+                           "/archive/" "v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1g79m0hqn9jgpm565vvh8pdfzndc4vw7xisnh5qysj55qfg8cb1x"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/alezost/shift-number.el")
+    (synopsis "Increase or decrease the number at point")
+    (description "@code{emacs-shift-number} provides commands
+@code{shift-number-up} to increase and @code{shift-number-down} to
+decrease the number at point.")
+    (license license:gpl3+)))
+
+(define-public emacs-highlight-defined
+  (package
+    (name "emacs-highlight-defined")
+    (version "0.1.5")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://github.com/Fanael/highlight-defined/archive/"
+             version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1ryd66989b5byqdw8jmjrjf0c78iiz72wibld750skcnj5h5h506"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/Fanael/highlight-defined")
+    (synopsis "Syntax highlighting of known Elisp symbols")
+    (description "Minor mode providing syntax highlighting of known Emacs Lisp
+symbols.  Currently the code distinguishes Lisp functions, built-in functions,
+macros, faces and variables.  To enable call @code{highlight-defined-mode}. ")
+    (license license:gpl3+)))
+
+(define-public emacs-parinfer-mode
+  (package
+    (name "emacs-parinfer-mode")
+    (version "0.4.10")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/DogLooksGood/parinfer-mode/archive/"
+                           "v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "06ba9qi59sm9ih9m38fbr8kj4qkvrm58n0c0ngfjz60gnr9x9pcv"))))
+    (propagated-inputs
+     `(("emacs-dash" ,emacs-dash)
+       ("emacs-rainbow-delimiters" ,emacs-rainbow-delimiters)
+       ("emacs-company" ,emacs-company)))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/DogLooksGood/parinfer-mode/")
+    (synopsis "Lisp structure editing mode")
+    (description "@code{parinfer-mode} is a proof-of-concept editor
+mode for Lisp programming languages.  It will infer some changes to
+keep Parens and Indentation inline with one another.")
+    (license license:gpl3+)))
+
+(define-public emacs-helm-eww
+  (let ((commit "5d6c2c66d4694415ef8a16a6d38a37aeae76c5ac"))
+    (package
+      (name "emacs-helm-eww")
+      (version (git-version "0.1" "1" commit))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/emacs-helm/helm-eww.git")
+                      (commit commit)))
+                (file-name (string-append name "-" version "-checkout"))
+                (sha256
+                 (base32
+                  "1x442ylrr7cx587s4rvfh187h3qbkr79qp95qr57a4igxkkw6183"))))
+      (build-system emacs-build-system)
+      (home-page "https://github.com/emacs-helm/helm-eww/")
+      (synopsis "Helm interface to EWW")
+      (description "This package provides a Helm interface for EWW buffers,
+bookmarks and history.")
+      (license license:gpl3+))))
+
+(define-public emacs-stumpwm-mode
+  (let ((commit "8fbe071d2c6c040794060a354eb377218dc10b35")
+        (revision "1"))
+    (package
+      (name "emacs-stumpwm-mode")
+      (version (string-append "0.0.1-" revision "."
+                              (string-take commit 7)))
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url "https://github.com/stumpwm/stumpwm-contrib.git")
+                      (commit commit)))
+                (file-name (string-append name "-" version "-checkout"))
+                (sha256
+                 (base32
+                  "1dfwsvz1c8w6j4jp0kzaz78ml3f5dp0a5pvf090kwpbpg176r7iq"))))
+      (build-system emacs-build-system)
+      (arguments
+       `(#:phases
+         (modify-phases %standard-phases
+           (add-after 'unpack 'chdir-elisp
+             ;; Elisp directory is not in root of the source.
+             (lambda _
+               (chdir "util/swm-emacs"))))))
+      (home-page "https://github.com/stumpwm/stumpwm-contrib")
+      (synopsis "Emacs minor-mode for Stumpwm")
+      (description "Emacs minor-mode for Stumpwm")
+      (license license:gpl3+))))
+
+(define-public emacs-irfc
+  (package
+    (name "emacs-irfc")
+    (version "20130824.507")
+    (source
+     (origin
+       (method url-fetch)
+       (uri "https://www.emacswiki.org/emacs/download/irfc.el")
+       (file-name (string-append "irfc-" version ".el"))
+       (sha256
+        (base32
+         "197ybqwbj8qjh2p9pkf5mvqnrkpcgmv8c5s2gvl6msyrabk0mnca"))))
+    (build-system emacs-build-system)
+    (home-page "https://www.emacswiki.org/emacs/download/irfc.el")
+    (synopsis "Interface for IETF RFC document")
+    (description
+     "This package provides an Emacs interface for IETF RFC document.")
+    (license license:gpl3+)))
+
+(define-public emacs-ido-vertical-mode
+  (package
+    (name "emacs-ido-vertical-mode")
+    (version "0.1.6")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "https://github.com/creichert/ido-vertical-mode.el/archive/"
+             "v" version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "0dprdxq8wvqd45dinwj92k0kixr07c8xvspa6i613mjcpxgwjg53"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/creichert/ido-vertical-mode.el")
+    (synopsis "Makes ido-mode display vertically")
+    (description "Makes ido-mode display prospects vertically.")
+    (license license:gpl3+)))