Subject: [PATCH] gnu: Add emacs-general.

From: Gabriel Hondet <[email-masked]>
Date: Sun, 6 Jan 2019 10:41:09 +0100

* gnu/packages/emacs.scm (emacs-general): New variable.
---
 gnu/packages/emacs.scm | 31 +++++++++++++++++++++++++++++++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 07619e302..8ef2b94ee 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -12963,3 +12963,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+))))
-- 
2.20.1