mirror of
https://github.com/jorgebucaran/fisher
synced 2024-11-09 07:10:27 +00:00
68beef51e9
* Add Mizuki to THANKS for help with Japanese translation of the QuickStart Guide. * fisher --list should return 1 (fail) if no plugins are installed. Closes #101. * More consistent style 'Usage' instead of 'usage'. * Silence index check in case $fisher_cache/.index does not exist. * Add more descriptive message if plugin is not found. * Silence search failure in case $fisher_cache/.index does not exist.
118 lines
3.2 KiB
Fish
118 lines
3.2 KiB
Fish
function fisher_help -d "Show Help"
|
|
if not set -q argv[1]
|
|
man fisher
|
|
return
|
|
end
|
|
|
|
set -l option
|
|
set -l value
|
|
|
|
getopts $argv | while read -l 1 2
|
|
switch "$1"
|
|
case _
|
|
set option manual
|
|
set value $2
|
|
|
|
case a all
|
|
set option guides commands
|
|
set value $2
|
|
|
|
case g guides
|
|
set option $option guides
|
|
set value $2
|
|
|
|
case commands
|
|
set option $option commands
|
|
set value $2
|
|
|
|
case u usage
|
|
set option usage
|
|
set value $value $2
|
|
|
|
case help
|
|
set option help
|
|
|
|
case h
|
|
printf "Usage: fisher help [<keyword>] [--all] [--guides] [--help]\n\n"
|
|
|
|
printf " -a --all List available documentation\n"
|
|
printf " -g --guides List available guides\n"
|
|
printf " -u --usage[=<cmd>] Display command usage\n"
|
|
printf " -h --help Show usage help\n"
|
|
return
|
|
|
|
case \*
|
|
printf "fisher: '%s' is not a valid option.\n" $1 > /dev/stderr
|
|
fisher_help --help > /dev/stderr
|
|
return 1
|
|
end
|
|
end
|
|
|
|
if not set -q option[1]
|
|
set option commands
|
|
end
|
|
|
|
switch "$option"
|
|
case help
|
|
man fisher-help
|
|
|
|
case manual
|
|
set -l value (printf "%s\n" $value | awk '{ print tolower($0) }')
|
|
|
|
switch "$value"
|
|
case me fisher fisherman
|
|
man fisher
|
|
|
|
case \*
|
|
man fisher-$value
|
|
end
|
|
|
|
case usage
|
|
if test -z "$value"
|
|
set -e value
|
|
sed -E 's/^ *([^ ]+).*/\1/' | while read -l command
|
|
if functions -q fisher_$command
|
|
set value $command $value
|
|
end
|
|
end
|
|
end
|
|
|
|
for command in $value
|
|
fisher $command -h
|
|
end
|
|
|
|
case \*
|
|
switch "$value"
|
|
case bare
|
|
case \*
|
|
fisher --help=$option
|
|
return
|
|
end
|
|
|
|
switch commands
|
|
case $option
|
|
functions -a | grep '^fisher_[^_]*$' | while read -l func
|
|
functions $func | awk '
|
|
/^$/ { next } {
|
|
printf(" %s\t", substr($2, 8))
|
|
gsub("\'","")
|
|
|
|
for (i=4; i<=NF && $i!~/^--.*/; i++) {
|
|
printf("%s ", $i)
|
|
}
|
|
|
|
print ""
|
|
exit
|
|
}'
|
|
end | column -ts\t
|
|
end
|
|
|
|
switch guides
|
|
case $option
|
|
sed -nE 's/(fisher-)?(.+)\([0-9]\) -- (.+)/ \2'\t'\3/p' \
|
|
{$fisher_home,$fisher_config}/man/man{5,7}/fisher*.md | sort -r
|
|
|
|
end | column -ts\t
|
|
end
|
|
end
|