mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-01-10 20:03:34 -03:00
7075848f96
Completions are dynamically generated from the respective binary help pages. Completions should be sourced into the shell or added to $XDG_CONFIG/fish/completions.
35 lines
1.1 KiB
Fish
35 lines
1.1 KiB
Fish
# Disable files from being included in completions by default
|
|
complete --command bitcoin-qt --no-files
|
|
|
|
# Extract options
|
|
function __fish_bitcoinqt_get_options
|
|
argparse 'nofiles' -- $argv
|
|
set --local cmd (commandline -opc)[1]
|
|
set --local options
|
|
|
|
if set -q _flag_nofiles
|
|
set --append options ($cmd -help-debug | string match -r '^ -.*' | string replace -r ' -' '-' | string replace -r '=.*' '=' | string match --invert -r '^.*=$')
|
|
else
|
|
set --append options ($cmd -help-debug | string match -r '^ -.*' | string replace -r ' -' '-' | string replace -r '=.*' '=' | string match -r '^.*=$')
|
|
end
|
|
|
|
for option in $options
|
|
echo $option
|
|
end
|
|
end
|
|
|
|
|
|
# Add options with file completion
|
|
complete \
|
|
--command bitcoin-qt \
|
|
--arguments "(__fish_bitcoinqt_get_options)"
|
|
# Enable file completions only if the commandline now contains a `*.=` style option
|
|
complete -c bitcoin-qt \
|
|
--condition 'string match --regex -- ".*=" (commandline -pt)' \
|
|
--force-files
|
|
|
|
# Add options without file completion
|
|
complete \
|
|
--command bitcoin-qt \
|
|
--arguments "(__fish_bitcoinqt_get_options --nofiles)"
|
|
|