Wie man den lokalen Verlauf in ZSH standardmäßig aktiviert

Mit zsh, insbesondere mit oh-my-zsh, ist der Standardverlauf global, d.h. von allen Shells geteilt. Dies kann oft seltsam sein, wenn Sie mit mehreren Terminal-Sitzungen arbeiten und erwarten, dass jede Sitzung ihren eigenen Verlauf hat.

Um dies zu beheben, hängen Sie Folgendes an Ihre ~/.zshrc-Datei an:

enable_local_history_zsh.sh
# Local history - https://superuser.com/a/691603/285486

bindkey "${key[Up]}" up-line-or-local-history
bindkey "${key[Down]}" down-line-or-local-history

up-line-or-local-history() {
    zle set-local-history 1
    zle up-line-or-history
    zle set-local-history 0
}
zle -N up-line-or-local-history
down-line-or-local-history() {
    zle set-local-history 1
    zle down-line-or-history
    zle set-local-history 0
}
zle -N down-line-or-local-history

bindkey "^[[1;5A" up-line-or-history    # [CTRL] + Cursor up
bindkey "^[[1;5B" down-line-or-history  # [CTRL] + Cursor down

Check out similar posts by category: Linux