viの設定ファイル
設定ファイルについて
vi設定ファイル
ホームディレクトリ$HOMEの「.exrc」が使われます。
vim設定ファイル
ホームディレクトリ$HOMEの「.exrc」と「.vimrc」が使われます。
Vimは「.exrc」を読み込んだ後に「.vimrc」を読み込みます。
「.exrc」にviとvimの共通で使えるオプションを書いておき、「.vimrc」にVimだけのオプションを書くという使い方が出来ます。
NetBSDの場合
ホームディレクトリに「.exrc」ファイルを作成しても作動しない場合があります。
修正方法としては、起動シェル、例えば「.shrc」に記述すると適用されます。
export EXINIT='set number|set tabstop=4'
設定方法
設定ファイルの内容は、EXコマンドとして実行されます。
EXコマンドとはノーマルモードで「:」を押すと入力することの出来るコマンドです。
設定はviのset系コマンドをコロン「:」なしで記述します。
vimの設定内容例
"
" VIM settings
"
"============================================================
" 基本設定
"============================================================
"viとの互換性をとらない
set nocompatible
"バックアップをとらないが、ファイルの上書き時に一時的にバックアップをとる
set nobackup
set writebackup
"行番号を表示する
set number
" ルラーを表示する
set ruler
" タイトルをウィンドウ枠に表示する
set title
" タブをスペースとする
set expandtab
" タブ幅
set tabstop=8
" 挿入されるタブ幅
set shiftwidth=8
" ステータスラインを常に表示する
set laststatus=2
" 入力時のコマンドを表示する
set showcmd
" モードを表示する
set showmode
" 全角スペースの表示
highlight ZenkakuSpace cterm=underline ctermfg=lightblue guibg=darkgray
match ZenkakuSpace / /
" Vimの自動コメント挿入をさせない
augroup auto_comment_off
autocmd!
autocmd BufEnter * setlocal formatoptions-=r
autocmd BufEnter * setlocal formatoptions-=o
augroup END
"============================================================
" Search option
"============================================================
"検索文字列が小文字の場合は大文字小文字を区別なく検索する
set ignorecase
"検索文字列に大文字が含まれている場合は区別して検索する
set smartcase
"検索時に最後まで行ったら最初に戻る
set wrapscan
"検索文字列入力時に順次対象文字列にヒットさせない
set noincsearch
"検索結果文字列のハイライト表示
set hlsearch
"============================================================
" cscope
"============================================================
if has("cscope")
set csprg=/usr/bin/cscope
set csto=0
set cst
set nocsverb
" 現在ディレクトリのデータベースを読み込む
if filereadable("cscope.out")
cs add cscope.out
elseif $CSCOPE_DB != ""
" cs add $CSCOPE_DB
endif
set csverb
endif
"============================================================
" 文字コードの設定
"============================================================
"UTF-8を標準とする
set encoding=utf-8
set termencoding=utf-8
set fileencodings=utf-8,cp932,euc-jp,sjis
" 日本語を含まない場合は fileencoding に encoding を使うようにする
if has('autocmd')
function! AU_ReCheck_FENC()
if &fileencoding =~# 'iso-2022-jp' && search("[^\x01-\x7e]", 'n') == 0
let &fileencoding=&encoding
endif
endfunction
autocmd BufReadPost * call AU_ReCheck_FENC()
endif
" 改行コードの自動認識
set fileformats=unix,dos,mac
関連
- viの基本操作
- viの応用操作
- viの正規表現
- viで複数ファイルの編集
- viの画面分割
- viのFileExplorer
- viのコマンド実行
- viのsetコマンド一覧
- viの文字コードについて
- viの設定ファイル