vimを起動するときのみ実行する処理を、”.vimrc”に記述して設定を行いたい。
vimには”vim_starting”というfeatureがあるので、これとhas()関数を利用してvim起動時の判別を行い、起動時のみ処理を実行する。
“.vimrc”に以下の様に記述することにより、vim起動時のみ実行する処理を記述できる。
1 2 3 4 |
if has('vim_starting') " 起動時に実行する処理を記述する endif |
vimを起動するときのみ実行する処理を、”.vimrc”に記述して設定を行いたい。
vimには”vim_starting”というfeatureがあるので、これとhas()関数を利用してvim起動時の判別を行い、起動時のみ処理を実行する。
“.vimrc”に以下の様に記述することにより、vim起動時のみ実行する処理を記述できる。
1 2 3 4 |
if has('vim_starting') " 起動時に実行する処理を記述する endif |
vimを使用していると時々インサートモードに入ったときに日本語入力になってしまい、IMEの切り替え作業が毎回必要になって困るときがあります。
多分間違って入力切り替えを行っているのでしょうが、戻し方が分からなくなって困ったためにメモです。
vimで以下のコマンドを実行すると、インサートモードに入ったときにIME(日本語入力)を切ることができます。
1 |
:set iminsert=0 |
iminsertのモードは必要に応じて切り替えすると便利に使えると思います。
0:IMEを自動でOFF
2:IMEを自動でON
ちなみに、検索時にIMEを無効にしたい場合は、imsearchのモードを設定します。
0:IMEを自動でOFF
2:IMEを自動でON
-1:iminsertの設定を参照する
英文入力が多い方は、.vimrcに以下を追加しておくと良いと思います。
1 2 |
set iminsert=0 set imsearch=-1 |
日本語入力が多い方は、以下のほうがおすすめです。
1 2 |
set iminsert=2 set imsearch=-1 |
お好きな方をお使い下さい。
vimを使用して編集しているときに、普段はタブを使用してインデントしていますが、入力されているタブをスペースに変換したいときがあります。
入力されているタブをスペースに変換するときは、以下の様なコマンドを順に実行します。
1 2 3 |
:set tabstop=4 :set expandtab :retab |
“:set expandtab”を設定しないと、”:retab”コマンドを実行してもタブがスペースに変換されません(noexpandtabの設定がされているとき)
タブをスペースに変換後、インデントにタブを使用する場合は、”:set noexpandtab”コマンドを実行してから続きの作業を行います。
このコマンドを実行しないと、タブがスペースになります。
shiftwidthで設定された数のスペースをタブに変換する場合
1 |
:set noet|retab! |
vim起動時からタブキーを押したときに、スペースが入力されるようにするには、[.vimrc]に以下を入力しておきます。
1 2 |
set tabstop=4 set expandtab |
[set tabstop=4]
タブの幅(スペース4個分)
[set expandtab]
TABキーを押したときにスペースを挿入する
vimで構文ハイライトを使用してテキストの一部をハイライトすることで、内容が見やすくなります。
構文ハイライトの設定を有効にする
.vimrcに、下記設定を追記して、vimを再起動する。
1 |
syntax enable |
カラースキームの設定をします。
デフォルトでインストールされているカラースキームがあるのでその中から選択します。
1 |
:colorscheme [カラースキーム名] |
現在選択が可能なカラースキームは、vimでコマンドとして[:colorscheme ]を入力してから、[ctrl+d]を押すと一覧が表示されます。
※:colorscheme の最後に半角スペースを入れないとうまくいきません。
現在使用しているカラースキームを確認する時は、vimで以下のコマンドを実行します。
1 |
:colorscheme |
デフォルトのカラースキームにお気に入りの物がない場合は、好きなカラースキームをインストールして使用することができます。
また、KaoriYa版vimを使用している場合は、[編集->色テーマ選択]の中から選択すると変更できる
カラースキームのハイライトは、以下のコマンドで確認できます。
1 |
:highlight |