LoginSignup
14
17

More than 5 years have passed since last update.

vim から :shell で抜けたときにわかりやすくする

Last updated at Posted at 2013-11-21

# VimShell 使ったりして :shell とか使ってない人が多いかもだけど。

:shell でシェルに抜けたときに,それを忘れていて,編集中のファイルをふたたび開こうとして怒られたり,気がついたら3つくらい vim を抜けたりしたりして困っていたので,vim からシェルに抜けている時はちゃんとハッキリ分かるようプロンプトにだすようにした。

[[ -n "$VIMRUNTIME" ]] && \
    PROMPT="%{${fg[white]}${bg[blue]}%}(vim)%{${reset_color}%} $PROMPT"

最初はシェルの親プロセスの名前を調べていたんだけど, @thinca さんのご指摘により,$VIMRUNTIME という環境変数 (あと $VIM という環境変数も設定されていた) を調べることにしました。格段にシンプルになりました。変数のローカリゼーションする必要もなくなりました。 @thinca さんありがとうございます!

これを ~/.zshrc に書くことで

このように表示されるようになった。

そもそも :shell つかわずに CTRL-Z を使って抜けている人も多いみたいです。

@dayflower :sh 使うとそのへん面倒なので、自分は C-z でシェルに戻ってシェルを使い、あとプロンプトにジョブ数(%j)を表示してます。vimへはfgコマンドで戻ります。

わたしはどうしてもエディタを CTRL-Z するのに抵抗感があるので :sh に慣れてしまいましたが。

14
17
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
14
17