Years ago I created a widget that allows me to accept a line without committing it to the history:
execute_no_history(){
fc -p /dev/null
________tmp___restore_history=1
zle accept-line
}
and my precmd contains:
precmd(){
[[ $________tmp___restore_history -eq 1 ]] && {
unset ________tmp___restore_history
fc -P
}
}
now I noticed that when I execute it as a non-privileged user, I get:
precmd:3: locking failed for /dev/null: permission denied
So I wonder, what would be a better implementation?