Guake
é um emulador de terminal. Como tal, não armazena o histórico de comandos em qualquer lugar (nem sequer tem a menor ideia do que é um histórico de comandos). Ele lança seu shell e o shell faz o resto.
Pode ser que, por qualquer motivo, Guake
lance um shell diferente, por exemplo bash
em vez de seu zsh
preferido. Também pode ser que ele lance zsh
com algumas configurações diferentes, por exemplo, argv[0]
diferente, o que faz o zsh
se comportar de maneira diferente (por exemplo, bash
se comportará de maneira diferente se você iniciá-lo como sh
; não tenho certeza se zsh
tem algo assim também)
Outra explicação poderia ser que quando Guake
oculta sua janela, ele não terminará o shell em execução, o mesmo zsh
continuará sendo executado lá e será mostrado novamente quando você chamar Guake
novamente. Ou seja, zsh
não escreveu seu histórico no meio e não leu o que outras zsh
instâncias escreveram lá (exatamente como se fosse um emulador de terminal "regular" cuja janela você minimizou mas não fechou).