mirror of
https://github.com/fish-shell/fish-shell
synced 2024-12-30 22:58:46 +00:00
e9b5505169
This adds a flag to the `history search` command to limit the number of matching entries to the first "n". The default is unlimited. This is mostly useful in conjunction with aliases (i.e., functions) that are intended to report the "n" most recent matching history entries without piping the result through the user's pager. Fixes #3244
25 lines
1.5 KiB
Fish
25 lines
1.5 KiB
Fish
# Note that when a completion file is sourced a new block scope is created so `set -l` works.
|
|
set -l __fish_history_all_commands search delete save merge clear
|
|
|
|
# Note that these options are only valid with the "search" and "delete" subcommands.
|
|
complete -c history -n '__fish_seen_subcommand_from search delete' \
|
|
-s p -l prefix -d "Match items beginning with the string"
|
|
complete -c history -n '__fish_seen_subcommand_from search delete' \
|
|
-s c -l contains -d "Match items containing the string"
|
|
complete -c history -n '__fish_seen_subcommand_from search delete' \
|
|
-s e -l exact -d "Match items identical to the string"
|
|
complete -c history -n '__fish_seen_subcommand_from search delete' \
|
|
-s t -l show-time -d "Output with timestamps"
|
|
complete -c history -n '__fish_seen_subcommand_from search' \
|
|
-s n -l max -d "Limit output to the first 'n' matches"
|
|
|
|
# We don't include a completion for the "save" subcommand because it should not be used
|
|
# interactively.
|
|
complete -f -c history -n "not __fish_seen_subcommand_from $__fish_history_all_commands" \
|
|
-a search -d "Prints commands from history matching the strings"
|
|
complete -f -c history -n "not __fish_seen_subcommand_from $__fish_history_all_commands" \
|
|
-a delete -d "Deletes commands from history matching the strings"
|
|
complete -f -c history -n "not __fish_seen_subcommand_from $__fish_history_all_commands" \
|
|
-a merge -d "Incorporate history changes from other sessions"
|
|
complete -f -c history -n "not __fish_seen_subcommand_from $__fish_history_all_commands" \
|
|
-a clear -d "Clears history file"
|