とある方の
"エンターだけで ls と git status 表示するようにしてある"
というつぶやきを見て便利そうだと思ったのでやってみました。
基本的なやり方は以下の記事が参考になりました。
ただ、上記方法では私の環境の場合、プロンプトが1回余分に表示されてしまって気持ちが悪いので、その辺りも手を加えました。
#Installation
以下スクリプトを .zshrc
に記述すれば、何も入力されていない状態で Enter を打つだけで ls
と git status
が表示されるようになります。
.zshrc
function do_enter() {
if [ -n "$BUFFER" ]; then
zle accept-line
return 0
fi
echo
ls
# ↓おすすめ
# ls_abbrev
if [ "$(git rev-parse --is-inside-work-tree 2> /dev/null)" = 'true' ]; then
echo
echo -e "\e[0;33m--- git status ---\e[0m"
git status -sb
fi
zle reset-prompt
return 0
}
zle -N do_enter
bindkey '^m' do_enter
ls
は以下記事の ls_abbrev
を使用するのがお勧めです。
Enter はちょっとやり過ぎという方は別のキーに割り当てると良いでしょう。
#おわり
ls
や cd
の入力をどれだけ減らせるかというのは、ターミナル使用者の力量が問われる部分ではないでしょうか。
(最近Twitterで cd後のls や mkdir後のls/cd の話が少し話題になってましたね)
そんな私の zsh
の設定は以下にあるので良ければどうぞ。
また、良いアイディアやアドバイスなどありましたら教えてください。