history: fixup exact matching by default

Work on #6070. Fixup from 54ed2ad44039f8871a0.
This commit is contained in:
David Adam 2019-09-11 23:12:10 +08:00
parent e935f5ce89
commit 737c2d156d
2 changed files with 6 additions and 3 deletions

View File

@ -33,6 +33,7 @@ function history --description "display or manipulate interactive command histor
set -l hist_cmd
set -l show_time
set -l max_count
set -l search_mode
set -q _flag_max
set max_count -n$_flag_max
@ -108,8 +109,10 @@ function history --description "display or manipulate interactive command histor
read -P"Search term: " searchterm
end
test -z "$search_mode"
and set search_mode "--exact"
if test -z "$search_mode"
set search_mode "--exact"
set _flag_case_sensitive "-C"
end
if test $search_mode = "--exact"
builtin history delete $search_mode $_flag_case_sensitive $searchterm

View File

@ -23,7 +23,7 @@ The following operations (sub-commands) are available:
- ``search`` returns history items matching the search string. If no search string is provided it returns all history items. This is the default operation if no other operation is specified. You only have to explicitly say ``history search`` if you wish to search for one of the subcommands. The ``--contains`` search option will be used if you don't specify a different search option. Entries are ordered newest to oldest unless you use the ``--reverse`` flag. If stdout is attached to a tty the output will be piped through your pager by the history function. The history builtin simply writes the results to stdout.
- ``delete`` deletes history items. Without the ``--prefix`` or ``--contains`` options, the exact match of the specified text will be deleted. If you don't specify ``--exact`` a prompt will be displayed before any items are deleted asking you which entries are to be deleted. You can enter the word "all" to delete all matching entries. You can enter a single ID (the number in square brackets) to delete just that single entry. You can enter more than one ID separated by a space to delete multiple entries. Just press [enter] to not delete anything. Note that the interactive delete behavior is a feature of the history function. The history builtin only supports ``--exact --case-sensitive`` deletion.
- ``delete`` deletes history items. Without the ``--prefix`` or ``--contains`` options, the exact, case-sensitive match of the specified text will be deleted. If you don't specify ``--exact`` a prompt will be displayed before any items are deleted asking you which entries are to be deleted. You can enter the word "all" to delete all matching entries. You can enter a single ID (the number in square brackets) to delete just that single entry. You can enter more than one ID separated by a space to delete multiple entries. Just press [enter] to not delete anything. Note that the interactive delete behavior is a feature of the history function. The history builtin only supports ``--exact --case-sensitive`` deletion.
- ``merge`` immediately incorporates history changes from other sessions. Ordinarily ``fish`` ignores history changes from sessions started after the current one. This command applies those changes immediately.