Help us understand the problem. What is going on with this article?

.vimrc の変更が適用されないときは

More than 5 years have passed since last update.

gvim を使っている場合、それは .vimrc ではなくて .gvimrc に書くべき設定かもしれない。ウィンドウや IM なんかの設定に関しては可能性が高い。

事のはじまり

MacVim の kaoriya さん版を利用しているんだけど input mode 移行時にいちいち IM が off にされてしまう。
これは由々しき事態だ、何とかしなければ。

:help コマンドと Google 検索で 'imdisableactivate' が悪さをしていることがわかったぞふはは。 .vimrc に set noimdisableactivate を書けば一件落着だ。

と、意気揚々と変更して :source ~/.vimrc してみたものの変わらない。
なぜだ。
おかしい。

鍵は Vim のスタートアップ時の挙動

.vimrc に書いているんだから適用されてないはずがない。適用後にどこかでさらに変更されているはずだ。

まず .vim/after の中身をチェック。該当なし。

となると system 設定ファイルが怪しいな。 :cd $VIM して :vim /imdisableactivate/ ** まで一連の流れ。しばらく待つ。と、結果が 1 件。 gvimrc ? えっ ?

確か system の設定ファイルが読まれてから local の設定ファイルが読まれるはずだったから…、あれ、おかしい。

ここで :help start まで打って補完させる。 startup て項目があった。 :help startup 。…順番違うじゃん。

GUI の設定ファイル読み込みはほぼ最後だった

ヘルプには設定ファイルが読み込まれる順番が書いてあった。上から順に実行されるってことは :help system-vimrc:help .vimrc:help init-gui の順だな。

どうも以下の順番になるらしい。

  1. system .vimrc
  2. local .vimrc
  3. system .gvimrc
  4. local .gvimrc

そうか、 local .vimrc で設定した option を system .gvimrc が変更していたわけか。
じゃあ設定を .gvimrc に移して、よし動いた。

文字入力なのに GUI 関係あるの ?

でも文字入力なのに GUI だとかは関係ないはずだよなー、と思って調べていたら :help imdisable に以下の一文を発見。

{only available when compiled with the |+xim|,
|+multi_byte_ime| or |global-ime| features, always
available in MacVim}

あー、 GUI 版は XIM 経由だから GUI 側の設定なのね。 CUI 版は terminal だとかからの入力で賄ってるわけか。

納得した。

というわけで

'guioptions' とか明らかに GUI まわりの設定や IM まわりの設定は .gvimrc に書かないと反映されない、ということがわかった。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした