summary refs log tree commit diff
path: root/gnu/packages/emacs.scm
diff options
context:
space:
mode:
authorGabriel Hondet <gabrielhondet@gmail.com>2019-01-06 10:41:09 +0100
committerLudovic Courtès <ludo@gnu.org>2019-01-11 12:14:38 +0100
commit88d710179808d96761f10d81913ee5aac8458fb3 (patch)
tree7ca24aa205337305ee764643e1f7fe460c55b83c /gnu/packages/emacs.scm
parent84a2de36a10dc2ab80f86e16721cbd228c85279e (diff)
downloadguix-88d710179808d96761f10d81913ee5aac8458fb3.tar.gz
gnu: Add emacs-general.
[[PGP Signed Part:Good signature from 31BC8105F659D425 Gabriel Hondet <gabrielhondet@gmail.com> (trust undefined) created at 2019-01-06T10:42:43+0100 using RSA]]
* gnu/packages/emacs.scm (emacs-general): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu/packages/emacs.scm')
-rw-r--r--gnu/packages/emacs.scm31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 6a0429aabc..3978d9ab6d 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12907,3 +12907,34 @@ other frame parameters.")
       (description "Emacs major mode for editing Arduino sketches.")
       (home-page "https://github.com/bookest/arduino-mode")
       (license license:gpl3+))))
+
+(define-public emacs-general
+  (let ((commit "675050199b5a30d54a24b58a367db32c0bdc47f5"))
+    (package
+      (name "emacs-general")
+      (version (git-version "0" "0" commit))
+      (home-page "https://github.com/noctuid/general.el")
+      (source (origin
+                (method git-fetch)
+                (uri (git-reference
+                      (url (string-append home-page ".git"))
+                      (commit commit)))
+                (sha256
+                 (base32
+                  "175yyhzk57yk1sskxh3d2jzhrh2waiibbcfsll167qxr117yji5h"))
+                (file-name (git-file-name name version))))
+      (build-system emacs-build-system)
+      (synopsis "More convenient key definitions in emacs")
+      (description "@code{general.el} provides a more convenient method for
+binding keys in emacs (for both evil and non-evil users).  Like
+@code{use-package}, which provides a convenient, unified interface for
+managing packages, @code{general.el} is intended to provide a convenient,
+unified interface for key definitions.  While this package does implement some
+completely new functionality (such as the ability to make vim-style
+keybindings under non-prefix keys with an optional timeout), its primary
+purpose is to build on existing functionality to make key definition more
+clear and concise.  @code{general-define-key} is user-extensible and supports
+defining multiple keys in multiple keymaps at once, implicitly wrapping key
+strings with (@code{kbd ...}), using named prefix key sequences (like the
+leader key in vim), and much more.")
+      (license license:gpl3+))))