* Improved README, added links to screencasts, updated documentation with new changes and fixed other typos and composition errors. * Removed `fisher update --cache` in favor of `fisher --cache | fisher update` and `fisher uninstall --all` in favor of `fisher --cache | fisher uninstall`. * Fisherman does not move initialization / configuration files following the convention `name`.config.fish to `$fisher_config/functions`, but to `$fisher_config/conf.d` now and evaluates each `*.config.fish` inside at shell start as usual. Closes #13. * Added `fisher --cache[=base]` option to retrieve contents in `$fisher_cache`, eliminating flaky usage of `find(1)`. Closes #11. * Fisherman now generates information about plugins installed via custom URLs. For the description, a shortened version of the URL is used. For the URL the full URL is used. For tags, the URL is fuzzily checked and tags such as _theme_, _plugin_, _config_ and _omf_ are added. The tag _orphan_ is added by default as well. Finally, the author is generated by retrieving the e-mail or username of the author of the first commit in the plugin's repository. Closes #9 and #14. * Changed `--path-in-cache` to `--translate.` This function translates an name or supported URL/URL variation into a path inside `$fisher_cache`. This allows you to treat plugins installed via custom URLs almost like regular plugins if they are installed. Closes #8. * Fixed a bug with `mktemp` failing on some systems. Closes #7. Thanks @tobywf. * Added [CODE_OF_CONDUCT][code_of_conduct]. Closes #6. * Fisherman can now unload themes within the same shell, without having to restart the session. Closes #5. * Fisherman can now load themes within the same shell, without having to restart the session using `exec fish`. Shoddy themes, for example those failing to declare global variables with the `-g` flag still require the session to be reset. See [**related**][bobthefish-19]. Closes #4. * Move `getopts` implementation to `share/getopts.awk`. Closes #3. * Support dots inside URIs in `fisher --validate`. Closes #2.
4.1 KiB
fisher-search(1) -- Search Fisherman Index
SYNOPSIS
fisher search
[name or url]
fisher search
[--select
=all|cache|remote]
fisher search
[--field
=name|url|info|tag|author]
fisher search
[--
field=match]
fisher search
[--
field~/
regex/
]
fisher search
[--query
=field[&&
,||
]field...]
fisher search
[--and
] [--or
] [--quiet
] [--help
]
USAGE
fisher search
plugin
fisher search
owner/repo
fisher search
--field=name --select=all | column
fisher search
--tag=tag1 --and --tag=tag2
DESCRIPTION
Search the Fisherman index database. You can use a custom index file by setting $fisher_index
to your preferred url or file. See fisher help config
and fisher
(7)#{Index
}.
A copy of the index is downloaded each time a search query happens, keeping the index up to date all the time.
The index file consists of records separated by blank lines '\n\n'
and each record consists of fields separated by a single line '\n'
.
name
url
info | description
tag1 tag2 ...
author
See #{Output
} for more information.
OPTIONS
-
-s
--select
[=all|cache|remote]: Select the record source. --select=cache queries only local plugins, i.e., those inside$fisher_cache
. --select=remote queries all plugins not in the cache, i.e, those available to install. --select=all queries everything. -
-f
--field
=name|url|info|tag|author: Display only the given fields from the selected records. Use --field instead as a shortcut for--field
=name. -
--field[=match]: Filter the result set by field=match, where field can be one or more of
name
,url
,info
,tag
orauthor
. If match is not given, this is equivalent to--select
=field. Use!=
to negate the query. -
--field[
/
regex/
]: Essentially the same as --field=match, but with Regular Expression support. --field/
regex/
filters the result set using the given/
regex/
. For example, --name=/
^match$/
is the same as --field=match and --url~/
oh-my-fish/
selects only Oh My Fish! plugins. Use!~
to negate the query. -
-a
--and
: Join query with a logical AND operator. -
-o
--or
: Join query with a logical OR operator. This the default operator for each query operation. -
-Q
--query
=field[&&
,||
]field...: Use a custom search expression. For example, --query='name~/
[0-9]/
||name~/
^[xyz]/
' selects all plugins that contain numbers in their name or begin with the characters x, y or z. -
-q
--quiet
: Enable quiet mode. -
-h
--search
: Show usage search.
OUTPUT
The default behavior is to print the result set to standard output in its original format.
fisher search shark
...
shark
https://github.com/bucaran/shark
Sparklines for your Fish
chart tool
bucaran
Search is optimized for parsing when using filters: --name
, --url
, --info
, --tags
, --author
or --field
=name|url|info|tag|author.
fisher search shark --name --url
...
shark;https://github.com/bucaran/shark
The result set above consists of single line '\n'
separated records where each record consists of one or more of the given fields separated by a semicolon ';'
.
EXAMPLES
- Display all plugins by name and format into multiple columns.
fisher search --name | column
- Display all plugins by url, sans https://github.com/ and format into multiple columns.
fisher search --field=url --select=all | sed 's|https://github.com/||' | column
- Display all remote plugins by name tagged as a or b.
fisher search --select=remote --name --tag=github --or --tag=tool
- Search plugins from a list of one or more urls and / or names and display their authors.
fisher search $urls $names --url
- Search all plugins in the cache whose name does not start with the letter
s
.
fisher search --select=cache --name~/^[^s]/
SEE ALSO
fisher
(1)
fisher
(7){Index
}
fisher help plugins