From 79378d4acde71db54c4ed6636a0695741bb467fc Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Tue, 3 Feb 2015 17:12:41 +0000 Subject: users/19800: more help for $HISTORY_IGNORE --- ChangeLog | 2 ++ Doc/Zsh/params.yo | 23 +++++++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index 98c103e0c..8071ae703 100644 --- a/ChangeLog +++ b/ChangeLog @@ -4,6 +4,8 @@ 2015-02-03 Peter Stephenson + * users/19800: Doc/Zsh/params.yo: more help on $HISTORY_IGNORE. + * 34455: Src/Modules/db_gdbm.c: some further parameter bug fixes including memory leak and unsetting old parameter too late. diff --git a/Doc/Zsh/params.yo b/Doc/Zsh/params.yo index 391a5fb0a..ee7c05412 100644 --- a/Doc/Zsh/params.yo +++ b/Doc/Zsh/params.yo @@ -1052,10 +1052,25 @@ item(tt(HISTORY_IGNORE))( If set, is treated as a pattern at the time history files are written. Any potential history entry that matches the pattern is skipped. For example, if the value is `tt(fc *)' then commands that invoke the -interactive history editor are never written to the history file (compare -the tt(HIST_NO_STORE) option or the tt(zshaddhistory) hook, either of -which would prevent such commands from being added to the interactive -history at all). +interactive history editor are never written to the history file. + +Note that tt(HISTORY_IGNORE) defines a single pattern: to +specify alternatives use the `tt(+LPAR()first|second|...+RPAR())' +syntax. + +Compare the tt(HIST_NO_STORE) option or the tt(zshaddhistory) hook, +either of which would prevent such commands from being added to the +interactive history at all. If you wish to use tt(HISTORY_IGNORE) to +stop history being added in the first place, you can define the +following hook: + +example(zshaddhistory+LPAR()RPAR() { + emulate -L zsh + ## uncomment if HISTORY_IGNORE + ## should use EXTENDED_GLOB syntax + # setopt extendedglob + [[ $1 != ${~HISTORY_IGNORE} ]] +}) ) vindex(HISTSIZE) item(tt(HISTSIZE) )( -- cgit 1.4.1