zshのhistory
関連する環境変数
HISTFILE
履歴を保存するファイル名
HISTSIZE
履歴を記録する上限数(メモリ保存)
SAVEHIST
HISTFILE で指定したファイルに保存するコマンド履歴の上限数(ディスク保存)
関連するoptionsいくつか
HIST_IGNORE_SPACE
行頭がスペースのコマンドは記録しない
HIST_IGNORE_DUPS
直前に実行したコマンドと重複する場合は履歴に残さない
HIST_IGNORE_ALL_DUPS が設定されている場合は無意味
HIST_FIND_NO_DUPS
C-rで履歴検索時に重複してるものは非表示にする
HIST_EXPIRE_DUPS_FIRST
履歴上限に達したら重複排除を実施する
その後、古い方から履歴の削除が行われる
つまり、上限到達後は HIST_IGNORE_ALL_DUPS と全く同じ動作になる
HIST_IGNORE_ALL_DUPS
履歴中の重複行をファイル記録前に無くす
つまり、既に重複して記録されているものには影響がない #?? HIST_NO_STORE
histroyコマンドの実行は記録しない
Extended_History
timestamp を含めた形式の履歴の形式にする
HIST_SAVE_NO_DUPS
履歴ファイルに書き込む際,新しいものと重複する古いコマンドを削除する
HIST_VERIFY
historyを呼び出してから実行するまでに編集できる
つまり、選択→実行と1step増える
なしの場合は、選択(=実行)
SHARE_HISTORY
本来は複数tabや複数windowを開いているときのhistoryは、zsh再読み込みをしないと共有されないが、即座に反映して共有した感じに振る舞う
こういう感じで指定する
code:.zshrc
setopt HIST_IGNORE_DUPS
重複系をonにするかどうか悩ましいmrsekut.icon
検索時に重複しなければ別にhistoryに残っていても問題ない
カーソル「↑」で実行順が保たれてるほうが嬉しい
そこまで困ることはないだろうけど
履歴上限に到達して困ったこと記憶にないしなー
home-managerの設定では一部defualtでONになってるっぽい
参考