2.9 KiB
CONFIGURATION
Get most of hh
by configuring it with:
hh --show-configuration >> ~/.bashrc
Run hh --show-configuration
to determine what will be appended to your BASH profile.
This document describes hh
related configuration in detail -
binding hh to a keyboard shortcut,
colors,
default history view,
verbosity,
BASH history settings
and examples.
BINDING HH TO KEYBOARD SHORTCUT
Bind hh
to a BASH key e.g. to Ctrl-r
:
bind '"\C-r": "\C-ahh \C-j"'
or Ctrl-Alt-r
:
bind '"\e\C-r":"\C-ahh \C-j"'
or Ctrl-F12
:
bind '"\e[24;5~":"\C-ahh \C-j"'
Bind hh
to Ctrl-r
only if it is interactive shell:
if [[ $- =~ .*i.* ]]; then bind '"\C-r": "\C-a hh \C-j"'; fi
To determine the character sequence emitted by a pressed key in terminal,
type Ctrl-v
and then press the key. Check your current bindings using:
bind -S
COLORS
Get hh
in more colors:
export HH_CONFIG=hicolor
or ensure black and white mode:
export HH_CONFIG=monochromatic
HISTORY VIEW
Show normal history by default (instead of metrics-based view):
export HH_CONFIG=rawhistory
Show favorite commands by default (instead of metrics-based view):
export HH_CONFIG=favorites
FILTERING
Make search case sensitive (insensitive by default):
export HH_CONFIG=casesensitive
VERBOSITY
Show warnings:
export HH_CONFIG=warning
Show debug messages:
export HH_CONFIG=debug
EXAMPLES
More colors with case sensitive search of history:
export HH_CONFIG=hicolor,casesensitive
Favorite commands view in black and white:
export HH_CONFIG=favorites,monochromatic
Keywords based search in colors with debug mode verbosity:
export HH_CONFIG=keywords,hicolor,debug
BASH HISTORY SETTINGS
Use the following BASH settings to get most out of hh
.
Increase the size of history maintained by BASH - variables defined below increase the number of history items and history file size (default value is 500):
export HISTFILESIZE=10000
export HISTSIZE=${HISTFILESIZE}
Ensure syncing (flushing and reloading) of .bash_history
with in-memory
history:
export PROMPT_COMMAND="history -a; history -n; ${PROMPT_COMMAND}"
Force appending of in-memory history to .bash_history
(instead of overwriting):
shopt -s histappend
Use leading space to hide commands from history:
export HISTCONTROL=ignorespace
Suitable for a sensitive information like passwords.
ZSH HISTORY SETTINGS
If you use zsh, set HISTFILE environment variable in ~/.zshrc:
export HISTFILE=~/.zsh_history