This section describes the externally-visible variables exported by the GNU History Library.
The logical offset of the first entry in the history list.
The number of entries currently stored in the history list.
The maximum number of history entries. This must be changed using stifle_history().
If non-zero, timestamps are written to the history file, so they can be preserved between sessions. The default value is 0, meaning that timestamps are not saved.
The character that introduces a history event. The default is !. Setting this to 0 inhibits history expansion.
The character that invokes word substitution if found at the start of a line. The default is ^.
During tokenization, if this character is seen as the first character of a word, then it and all subsequent characters up to a newline are ignored, suppressing history expansion for the remainder of the line. This is disabled by default.
"char *" history_word_delimiters
The characters that separate tokens for history_tokenize(). The default value is " \t\n()<>;&|".
"char *" history_no_expand_chars
The list of characters which inhibit history expansion if found immediately following history_expansion_char. The default is space, tab, newline, \r, and =.
"char *" history_search_delimiter_chars
The list of additional characters which can delimit a history search string, in addition to space, tab, : and ? in the case of a substring search. The default is empty.
If non-zero, single-quoted words are not scanned for the history expansion character. The default value is 0.
"rl_linebuf_func_t *" history_inhibit_expansion_function
This should be set to the address of a function that takes two arguments: a char * (string) and an int index into that string (i). It should return a non-zero value if the history expansion starting at string[i] should not be performed; zero if the expansion should be done. It is intended for use by applications like bash that use the history expansion character for additional purposes. By default, this variable is set to NULL.