hitode909の日記

趣味はマリンスポーツですの日記です

zaw

zaw.zshのzaw-historyみたいなやつ,履歴に変な文字が入ってるとだめみたいで,bad patternとか言って,動いてなかったけど,おかしい感じの行を消したら動くようになった.grep -P -v "[\x80-\xFF]" zsh_history_old > .zsh_history みたいな感じ.うまくいくかわからないからバックアップを取っておいたり,先に grep -P "[\x80-\xFF]" zsh_history_old してなにが消えそうか調べておくとよいと思う.それで,動くようにはなったけど,ぼくはzshの履歴ずっと消さずに使っているから,12万行くらいあって,それをzsh-history起動するたびに毎回読み込んで何かしてるみたいで,使いものにならないくらい遅かった.12万行でも3MBくらいだから,grepするだけなら一瞬だろうけど,なにかもっとリッチなことをしてるようだった.重複したのを除くと4万行くらいになった.最近の何件かだけ使うとかするとよいかもしれない.使えてる人は履歴何行くらいなのか気になる.GitHub - zsh-users/zaw: zsh anything.el-like widget.


追記,重複を除くようにしたらちょっとましになったけど正しいのは一つだけで間違い探しみたいになるから間違えずに選ぶみたいなのが難しいと思う.

f:id:hitode909:20120602131618p:plain

.zsh_historyから古いの消してみて直近5000件だけ使うようにしたらあまり待たずに使えるようになった.けど 普通にCtrl-r して打っていくほうが速い.こういう風に調整するのめんどうだから,非同期にだんだん古いのを探したりしてほしい.


追記,Forkして直近何件かだけ使うオプションみたいなの作った.export ZAW_HISTORY_LIMIT=5000 とかしておくと直近の5000件だけ使う.GitHub - hitode909/zaw: zsh anything.el-like widget.