「vim/gvim用utf-8設定ファイル」の.vimrc、.gvimrc等について解説するページ
vim/gvimをutf-8(unicode)化することによって、ほとんどの文字コードについては自動で認識され、文字化けが無くなります。 このページでは、「vim UTF-8日本語版」で配布している「vim/gvim用utf-8設定ファイル」についての解説を行っています。 サンプル設定ファイルには、オプション設定とエンコード設定以外にも各種設定/スクリプトなどが追加されています。 設定ファイルはWindowsとLinux(Ubuntu)の vim / gvim 7.2 で動作確認しています。 「vim/gvim用utf-8設定ファイル」や vim/gvim 本体のダウンロードは「vim UTF-8日本語版」を参照して下さい。 「vim UTF-8日本語版」すでにvim/gvimを使用している場合のUTF-8化や文字コード自動認識、文字化け対策について以下を参照して下さい。 「vim/gvimのUTF-8化とファイルの文字コード自動認識」「vimの文字化けについて」
サンプル設定ファイルについて
内部エンコードについて (UTF8化の問題点と内部エンコードをcp932に設定する)
vimの文字化けについて (文字化け対策としてファイルの文字エンコード判定をutf-8優先にする) 設定ファイルについてWindowsの設定ファイルと他のOSの設定ファイルの違いそれぞれ次のように読み替えてください。
vimrc と gvimrcはシステム管理者が作成するもので、必要最小限の設定(エンコードの設定など)のみ設定して、基本的に変更しません。
個人的な設定は_vimrc と _gvimrcに保存します。 カスタマイズのために変更するのは、_vimrc、_gvimrc、vimfilesの中だけです。 vimrc、gvimrc、_vimrcと_gvimrc以外の各種設定ファイルやプラグインは、すべてvimfilesの中に作成/コピーして下さい。 vimfilesの中のファイルはデフォルトのランタイムディレクトリにコピーしたのと同じに扱われます。 Windowsの場合、vimrcとgvimrcは、_vimrcや_gvimrcと同じフォルダでかまわないでしょう。 本来なら環境変数$HOMEをWindowsに設定して、そのホームディレクトリに設定ファイル(_vimrc, _gvimrc, vimfiles)を置きます。 またunixのように '~/vim' などとpathを指定する場合、 '~' はWindowsでは、環境変数HOMEを設定していないと C:\Documents and Settings\...以下の個人フォルダになります。 サンプル設定ファイル(_vimrc、_gvimrc、vimfiles)はLinux(Ubuntu)でも使用可能です。 ただ、文字コードの自動認識はデフォルトの vimrcでは設定されていないことが多いと思いますので、その場合は .vimrc 内の「encode.vimを読み込む」を有効にしてください。 文字コードの自動認識既にvim/gvimを導入している場合は以下を参照してください。「vim/gvimのUTF-8化とファイルの文字コード自動認識」 サンプル設定ファイル(_vimrc、_gvimrc、vimfiles)はLinux(Ubuntu)でも使用可能です。 ただ、文字コードの自動認識はデフォルトの vimrcでは設定されていないことが多いと思いますので、その場合は .vimrc 内の「encode.vimを読み込む」を有効にしてください。 encode.vimは「vim/gvim用utf-8設定ファイル」で配布している設定ファイルの vimfiles/pluginjp の中にあります。 vimの文字コードの自動判定は、fileencodings の順番に変換をしてみて、エラーが出なかったらそのファイルエンコードと見なす、という処理を行っています。 encode.vimは fileencodings に適切な値を設定するためのものですが、fileencodingsに自分で明示的に順番を指定する事も出来ます。 「vimの文字化けについて」 _vimrc_vimrcサンプルを表示ダウンロード _vimrc には vim/gvim 共通の個人設定を保存します。 メニューの編集(E)→起動時の設定(S)で_vimrcを編集できます。 _vimrcにもコメントを書いてあります。 また'K'か'<F1>'キーでカーソル下の単語のヘルプを検索できますので、そちらを参照してみてください。 以下標準と異なる点について列挙します。 不要なものについては_vimrcの該当部分を無効にして下さい
本ページで配布している設定ファイルではvimrc内で内部エンコードやファイルエンコードの自動判定が設定されています。 しかし vimrc がないか使用しない、あるいは何らかの理由でデフォルトではファイルエンコードの自動判定が設定されていない環境では、_vimrc の「encode.vimを読み込む」を有効にして下さい。 また本サイトで配布している設定ファイルを使用しない場合は以下を参照して下さい。 「vim/gvimのUTF-8化とファイルの文字コード自動認識」 差分表示用コマンド DiffOrig、 Diff は _vimrcで設定しています。 1.4.8 Diff Windows用に公式で配布されている「diff」はvim72へコピーして使って下さい。 _gvimrc_gvimrcサンプルを表示ダウンロード _gvimrc には gvim 固有の個人設定を保存します。 主にGUIのフォントとメニューなどgvim固有の設定を行うファイルです。 色設定など、設定自体は vim と共通でも _gvimrc で設定しないと gvim には反映されない項目もあります。 いくつかファイル(F)のメニューに追加しています。
|
| リネーム前 |
Windows |
Linux |
| _sample_vimrc |
_vimrc | .vimrc |
| _sample_gvimrc | _gvimrc | .gvimrc |
内部エンコードについて
vimrc(_vimrcで encode.vimを有効にしている場合はencode.vim)でvimの内部エンコードがutf-8に設定されています。これはWeb関係のファイルなどで内部エンコードがcp932だと、開けないファイルが増えているためです。
Web関係のファイルを扱う場合には、内部エンコードはutf-8のままで使用することをおすすめします。
外部grepをそのまま使用する場合、内部エンコードと異なるエンコードのファイルを検索できません。
Windowsで内部エンコードをutf-8に設定した場合、shellから日本語を含むファイル名やpathを扱う場合も問題になる事があります。
OSのshellエンコードがcp932であるWindowsでは、内部エンコードをutf-8にした場合、そのままでは外部grepを使用してcp932のファイルを日本語で検索できなくなります。
「外部grepの問題点」 (「vimのgrepの設定と使い方」)
vim/gvimの外部grepで日本語がうまく扱えない場合は、まずvimgrepを使用して下さい。
速度が問題で外部grepを使用したい場合は「QFixGrep」などのgrepヘルパーの使用を検討して下さい。
速度が問題にならない場合、文字エンコードの扱いについては外部grepより内部grep(vimgrep)が有利です。
本来は内部エンコードをOSのエンコードと同一にするのが望ましい設定です。
Windowsのshellエンコードはcp932なので、cp932のファイルしか扱わないならcp932にする方が良いかもしれません。
余談ですが、Windowsのshellの見かけ上は cp932(Shift-JIS) になっていますが、内部的にはunicode化されています。
何らかの理由で、内部エンコードをcp932にしたい場合には、vimrc(_vimrcで encode.vimを有効にしている場合はencode.vim)内の
set encoding=utf-8を
set encoding=cp932に変更して下さい。
内部エンコードをcp932に設定変更しても、大抵のutf-8やEUCのファイルは問題なく扱えます。
vimの文字化けについて
「vimの文字化けについて」にまとめました。前のページ「vim UTF-8日本語版」へ戻る
index
前のページ「vim UTF-8日本語版」へ戻る