mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2024-11-22 07:43:31 +01:00
fix(history): add warning before deleting command history in history -c
(#12472)
This commit is contained in:
parent
59e8e028e1
commit
35a6725970
@ -1,14 +1,22 @@
|
|||||||
## History wrapper
|
## History wrapper
|
||||||
function omz_history {
|
function omz_history {
|
||||||
# parse arguments and remove from $@
|
# parse arguments and remove from $@
|
||||||
local clear list stamp
|
local clear list stamp REPLY
|
||||||
zparseopts -E -D c=clear l=list f=stamp E=stamp i=stamp t:=stamp
|
zparseopts -E -D c=clear l=list f=stamp E=stamp i=stamp t:=stamp
|
||||||
|
|
||||||
if [[ -n "$clear" ]]; then
|
if [[ -n "$clear" ]]; then
|
||||||
# if -c provided, clobber the history file
|
# if -c provided, clobber the history file
|
||||||
echo -n >| "$HISTFILE"
|
|
||||||
|
# confirm action before deleting history
|
||||||
|
print -nu2 "This action will irreversibly delete your command history. Are you sure? [y/N] "
|
||||||
|
builtin read -k1
|
||||||
|
[[ "$REPLY" = $'\n' ]] || print -u2
|
||||||
|
[[ "$REPLY" != ([nN]|$'\n') ]] || return 0
|
||||||
|
|
||||||
|
print -nu2 >| "$HISTFILE"
|
||||||
fc -p "$HISTFILE"
|
fc -p "$HISTFILE"
|
||||||
echo >&2 History file deleted.
|
|
||||||
|
print -u2 History file deleted.
|
||||||
elif [[ $# -eq 0 ]]; then
|
elif [[ $# -eq 0 ]]; then
|
||||||
# if no arguments provided, show full history starting from 1
|
# if no arguments provided, show full history starting from 1
|
||||||
builtin fc $stamp -l 1
|
builtin fc $stamp -l 1
|
||||||
|
Loading…
Reference in New Issue
Block a user