summary refs log tree commit diff
path: root/gnu
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2016-06-18 16:16:39 +0200
committerRicardo Wurmus <rekado@elephly.net>2016-06-20 07:06:58 +0200
commit5edc24ec2cae6c5352ad358971006b1320bf52bf (patch)
tree218842a08a976dcf8d57d0335dbe2cf944c541d2 /gnu
parent12db29baafb677cba1a93a8b36cceba93d997541 (diff)
downloadguix-5edc24ec2cae6c5352ad358971006b1320bf52bf.tar.gz
gnu: Add emacs-avy.
* gnu/packages/emacs.scm (emacs-avy): New variable.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/packages/emacs.scm29
1 files changed, 29 insertions, 0 deletions
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 8648ceb132..44c4e4e018 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -1771,6 +1771,35 @@ splitting the input text by spaces and re-building it into a regular
 expression.")
     (license license:gpl3+)))
 
+(define-public emacs-avy
+  (package
+    (name "emacs-avy")
+    (version "0.4.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/abo-abo/avy/archive/"
+                           version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
+       (sha256
+        (base32
+         "1wdrq512h25ymzjbf2kbsdymvd2ryfwzb6bh5bc3yv7q203im796"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/abo-abo/avy")
+    (synopsis "Tree-based completion for Emacs")
+    (description
+     "This package provides a generic completion method based on building a
+balanced decision tree with each candidate being a leaf.  To traverse the tree
+from the root to a desired leaf, typically a sequence of @code{read-key} can
+be used.
+
+In order for @code{read-key} to make sense, the tree needs to be visualized
+appropriately, with a character at each branch node.  So this completion
+method works only for things that you can see on your screen, all at once,
+such as the positions of characters, words, line beginnings, links, or
+windows.")
+    (license license:gpl3+)))
+
 (define-public emacs-clojure-mode
   (package
     (name "emacs-clojure-mode")