summary refs log tree commit diff
path: root/doc/guix.texi
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2017-06-13 23:04:05 +0200
committerLudovic Courtès <ludo@gnu.org>2017-06-13 23:22:19 +0200
commit4e863eb35fd8337eab48928e7733b7f6b7b2c242 (patch)
tree80c8606b7787e724f52dca738cff47de339e3045 /doc/guix.texi
parent4ee79f22f5379b201eabca94c3ab34bb00a8a8b0 (diff)
downloadguix-4e863eb35fd8337eab48928e7733b7f6b7b2c242.tar.gz
guix package: '--search' sorts by relevance.
* guix/scripts/package.scm (find-packages-by-description): Rewrite to
compute a score based on the number of regexps matched and the number of
matches for each regexp.  Sort according to this score and return it as
a second value.
(process-query) <'search>: Capture the two return values of
'find-packages-by-description'.  Pass #:extra-fields to
'package->recutils'.
* doc/guix.texi (Invoking guix package): Mention relevance, give an
example.
Diffstat (limited to 'doc/guix.texi')
-rw-r--r--doc/guix.texi14
1 files changed, 10 insertions, 4 deletions
diff --git a/doc/guix.texi b/doc/guix.texi
index ffd2028de9..b5538e0195 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -1854,7 +1854,7 @@ availability of packages:
 @itemx -s @var{regexp}
 @cindex searching for packages
 List the available packages whose name, synopsis, or description matches
-@var{regexp}.  Print all the metadata of matching packages in
+@var{regexp}, sorted by relevance.  Print all the metadata of matching packages in
 @code{recutils} format (@pxref{Top, GNU recutils databases,, recutils,
 GNU recutils manual}).
 
@@ -1862,12 +1862,18 @@ This allows specific fields to be extracted using the @command{recsel}
 command, for instance:
 
 @example
-$ guix package -s malloc | recsel -p name,version
+$ guix package -s malloc | recsel -p name,version,relevance
+name: jemalloc
+version: 4.5.0
+relevance: 6
+
 name: glibc
-version: 2.17
+version: 2.25
+relevance: 1
 
 name: libgc
-version: 7.2alpha6
+version: 7.6.0
+relevance: 1
 @end example
 
 Similarly, to show the name of all the packages available under the