summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefan Reichör <stefan@xsteve.at>2017-08-24 22:14:51 +0200
committerThomas Danckaert <thomas.danckaert@gmail.com>2017-08-30 09:20:52 +0200
commitf3f82d1d1f3d6a320ae12c13176c49797fc64dc8 (patch)
tree400240bfe635f1f71e4223766093e67d03b20fc8
parent9dd14f1e08b0a4cd73590495d8a853e8ddc027d5 (diff)
downloadgnu-guix-f3f82d1d1f3d6a320ae12c13176c49797fc64dc8.tar
gnu-guix-f3f82d1d1f3d6a320ae12c13176c49797fc64dc8.tar.gz
gnu: Add fzy.
* gnu/packages/shellutils.scm (fzy): New variable.
-rw-r--r--gnu/packages/shellutils.scm35
1 files changed, 35 insertions, 0 deletions
diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm
index 3ecc1ee8ba..2d515ec7a5 100644
--- a/gnu/packages/shellutils.scm
+++ b/gnu/packages/shellutils.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
+;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -122,3 +123,37 @@ Before each prompt, direnv checks for the existence of a .envrc file in the
current and parent directories. This file is then used to alter the
environmental variables of the current shell.")
(license expat)))
+
+(define-public fzy
+ (package
+ (name "fzy")
+ (version "0.9")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/jhawthorn/fzy/archive/"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1xfgxqbkcpi2n4381kj3fq4026qs6by7xhl5gn0fgp3dh232c63j"))))
+ (build-system gnu-build-system)
+ (arguments
+ '(#:make-flags (list "CC=gcc"
+ (string-append "PREFIX=" (assoc-ref %outputs "out")))
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure))))
+ (home-page "https://github.com/jhawthorn/fzy")
+ (synopsis "Fast fuzzy text selector for the terminal with an advanced
+scoring algorithm")
+ (description
+ "Most other fuzzy matchers sort based on the length of a match. fzy tries
+to find the result the user intended. It does this by favouring matches on
+consecutive letters and starts of words. This allows matching using acronyms
+or different parts of the path.
+
+fzy is designed to be used both as an editor plugin and on the command
+line. Rather than clearing the screen, fzy displays its interface directly
+below the current cursor position, scrolling the screen if necessary.")
+ (license expat)))