I often use Guake (drop-down terminal for GNOME). The problem is that it apparently stores its own command history, and it is different from that of the standard GNOME terminal. My shell is zsh
and it is configured to store its command history in ~/.zsh_history
. How do I make Guake
use the command history stored in ~/.zsh_history
?
Guake
is a terminal emulator. As such, it doesn't store the command history anywhere (it doesn't even have a clue what a command history is). It launches your shell, and the shell does the rest.It could be that, for whatever reason,
Guake
launches a different shell, e.g.bash
instead of your preferredzsh
. It could also be that it launcheszsh
with some different settings, e.g. differentargv[0]
which causeszsh
to behave differently (e.g.bash
behaves differently if you start it assh
; not sure ifzsh
has something like this too).Another explanation could be that when
Guake
hides its window it doesn't terminate the shell running inside, the samezsh
keeps running there and is shown you again when you invokeGuake
again. That is,zsh
did not write its history in between and did not read what otherzsh
instances wrote there (exactly as if it was a "regular" terminal emulator whose window you minimized but didn't close).In your terminal, type 'guake'. When Guake launches, right click and click on preferences then click locate shell tab. On the shell tab, select /usr/bin/zsh. This will set your default shell to zsh, subsequently storing your code to zshrc_history. I hope this helps!