Home > vim

vim Archive

gvimの設定

毎回調べながらの設定はめんどくさいので備忘録。

1. vimのインストール

kaoriyaさんからインストール、バージョンはVim 7.2-20090321 for Windowsで解凍先を
C:\Program Files\vim72-kaoriya-w32j\
としました

2. vimの環境設定

  • コントロールパネル -> システム -> 詳細設定 環境変数のPath に「C:\Program Files\vim72-kaoriya-w32j;」を追加
  • デフォルトのエンコーディングを UTF-8 にする

C:\Program Files\vim72-kaoriya-w32j\runtime\encode_japan.vim を編集
set encoding=japanese を set encoding=UTF-8 に変更

  • vimrcの変更

C:\Program Files\vim72-kaoriya-w32j\gvimrcを編集

"-----------------------------------------------------------------
" サイトローカルな設定($VIM/gvimrc_local.vim)があれば読み込む。読み込んだ後
" に変数g:gvimrc_local_finishに非0な値が設定されていた場合には、それ以上の設
" 定ファイルの読込を中止する。
if 1 && filereadable($VIM . '/gvimrc_local.vim')
source $VIM/gvimrc_local.vim
if exists('g:gvimrc_local_finish') && g:gvimrc_local_finish != 0
finish
endif
endif</code>

"---------------------------------------------------------------------------
" ユーザ優先設定($HOME/.gvimrc_first.vim)があれば読み込む。読み込んだ後に変
" 数g:gvimrc_first_finishに非0な値が設定されていた場合には、それ以上の設定
" ファイルの読込を中止する。
if 0 &amp;&amp; exists('$HOME') &amp;&amp; filereadable($HOME . '/.gvimrc_first.vim')
unlet! g:gvimrc_first_finish
source $HOME/.gvimrc_first.vim
if exists('g:gvimrc_first_finish') &amp;&amp; g:gvimrc_first_finish != 0
finish
endif
endif

"---------------------------------------------------------------------------
" Bram氏の提供する設定例をインクルード (別ファイル:vimrc_example.vim)。これ
" 以前にg:no_gvimrc_exampleに非0な値を設定しておけばインクルードしない。
if 1 &amp;&amp; (!exists('g:no_gvimrc_example') || g:no_gvimrc_example == 0)
source $VIMRUNTIME/gvimrc_example.vim
endif

" フォント設定:
if has('win32')
" Windows用
set guifont=MS_Gothic:h12:cSHIFTJIS
"set guifont=MS_Mincho:h12:cSHIFTJIS
" 行間隔の設定
set linespace=1
" 一部のUCS文字の幅を自動計測して決める
if has('kaoriya')
set ambiwidth=auto
endif
elseif has('mac')
set guifont=Osaka-等幅:h14
elseif has('xfontset')
" UNIX用 (xfontsetを使用)
set guifontset=a14,r14,k14
endif

"---------------------------------------------------------------------------
" ウインドウに関する設定:
"
" ウインドウの幅
set columns=80
" ウインドウの高さ
set lines=25
" コマンドラインの高さ(GUI使用時)
set cmdheight=2
"---------------------------------------------------------------------------
" 日本語入力に関する設定:
"
if has('multi_byte_ime') || has('xim')
" IME ON時のカーソルの色を設定(設定例:紫)
highlight CursorIM guibg=Purple guifg=NONE
" 挿入モード・検索モードでのデフォルトのIME状態設定
set iminsert=0 imsearch=0
if has('xim') &amp;&amp; has('GUI_GTK')
" XIMの入力開始キーを設定:
" 下記の s-space はShift+Spaceの意味でkinput2+canna用設定
"set imactivatekey=s-space
endif
" 挿入モードでのIME状態を記憶させない場合、次行のコメントを解除
"inoremap <silent> <ESC> <ESC>:set iminsert=0<CR>
endif

"---------------------------------------------------------------------------
" マウスに関する設定:
"
" 解説:
" mousefocusは幾つか問題(一例:ウィンドウを分割しているラインにカーソルがあっ
" ている時の挙動)があるのでデフォルトでは設定しない。Windowsではmousehide
" が、マウスカーソルをVimのタイトルバーに置き日本語を入力するとチラチラする
" という問題を引き起す。
"
" どのモードでもマウスを使えるようにする
set mouse=a
" マウスの移動でフォーカスを自動的に切替えない (mousefocus:切替る)
set nomousefocus
" 入力時にマウスポインタを隠す (nomousehide:隠さない)
set mousehide
" ビジュアル選択(D&amp;D他)を自動的にクリップボードへ (:help guioptions_a)
set guioptions+=a

"---------------------------------------------------------------------------
" メニューに関する設定:
"
" 解説:
" "M"オプションが指定されたときはメニュー("m")・ツールバー("T")供に登録され
" ないので、自動的にそれらの領域を削除するようにした。よって、デフォルトのそ
" れらを無視してユーザが独自の一式を登録した場合には、それらが表示されないと
" いう問題が生じ得る。しかしあまりにレアなケースであると考えられるので無視す
" る。
"
if &amp;guioptions =~# 'M'
let &amp;guioptions = substitute(&amp;guioptions, '[mT]', '', 'g')
endif

"---------------------------------------------------------------------------
" その他、見栄えに関する設定:
"
" 検索文字列をハイライトしない(_vimrcではなく_gvimrcで設定する必要がある)
set hlsearch

"---------------------------------------------------------------------------
" 印刷に関する設定:
"
" 注釈:
" 印刷はGUIでなくてもできるのでvimrcで設定したほうが良いかもしれない。この辺
" りはWindowsではかなり曖昧。一般的に印刷には明朝、と言われることがあるらし
" いのでデフォルトフォントは明朝にしておく。ゴシックを使いたい場合はコメント
" アウトしてあるprintfontを参考に。
"
" 参考:
"   :hardcopy
"   :help 'printfont'
"   :help printing
"
" 印刷用フォント
if has('printer')
if has('win32')
set printfont=MS_Mincho:h12:cSHIFTJIS
"set printfont=MS_Gothic:h12:cSHIFTJIS
endif
endif
"---------------------------------------------------------------------------
" 検索の挙動に関する設定:
"
" 検索時に大文字小文字を無視 (noignorecase:無視しない)
set ignorecase
" 大文字小文字の両方が含まれている場合は大文字小文字を区別
set smartcase

" インクリメンタルサーチ
set incsearch
"---------------------------------------------------------------------------
" 編集に関する設定:
"
" タブの画面上での幅
set tabstop=4
set softtabstop=4

" タブをスペースに展開しない (expandtab:展開する)
set noexpandtab
" 自動的にインデントする (noautoindent:インデントしない)
set autoindent
" バックスペースでインデントや改行を削除できるようにする
set backspace=2
" 検索時にファイルの最後まで行ったら最初に戻る (nowrapscan:戻らない)
set wrapscan
" 括弧入力時に対応する括弧を表示 (noshowmatch:表示しない)
set showmatch
" コマンドライン補完するときに強化されたものを使う(参照 :help wildmenu)
set wildmenu
" テキスト挿入中の自動折り返しを日本語に対応させる
set formatoptions+=mM
" 日本語整形スクリプト(by. 西岡拓洋さん)用の設定
let format_allow_over_tw = 1    " ぶら下り可能幅

"---------------------------------------------------------------------------
" GUI固有ではない画面表示の設定:
"
" 行番号を非表示 (number:表示)
set number
" ルーラーを表示 (noruler:非表示)
set ruler
" タブや改行を表示 (list:表示)
set list
" どの文字でタブや改行を表示するかを設定
set listchars=tab:>\ ,eol:<,nbsp:%,trail:-
highlight ZenkakuSpace cterm=underline ctermfg=lightblue guibg=#666666

" 全角スペースの可視化
if has("syntax")
syntax on
function! ActivateInvisibleIndicator()
syntax match InvisibleJISX0208Space " " display containedin=ALL
highlight InvisibleJISX0208Space term=underline ctermbg=Gray guibg=Gray
endf
augroup invisible
autocmd! invisible
autocmd BufNew,BufRead * call ActivateInvisibleIndicator()
augroup END
endif

" 長い行を折り返して表示 (nowrap:折り返さない)
set wrap
" 常にステータス行を表示 (詳細は:he laststatus)
set laststatus=2
" コマンドラインの高さ (Windows用gvim使用時はgvimrcを編集すること)
set cmdheight=2
" コマンドをステータス行に表示
set showcmd
set statusline=%<%f\ %m%r%h%w%{'['.(&amp;fenc!=''?&amp;fenc:&amp;enc).']['.&amp;ff.']'}%=%l,%c%V%8P
" タイトルを表示
set title
" カラーテーマ
colorscheme desert
" クリップボードの共有
set clipboard=unnamed
" MS-WindowsのCTRL-X、CTRL-CおよびCTRL-V
source $VIMRUNTIME/mswin.vim
" taglist.vim
set tags=./tags,/usr/src/tags
"バックアップファイルを作らない
set nobackup

各種プラグインのインストール

ホーム > vim

Search
Feeds
 

SiteMap - Return to page top