Vim設定
- デフォルトでインストールされているのはvim-minimalではるが、高機能版であるvim-enhancedをインストールする
- 独自設定は
/etc/vimrc
ではなく/etc/vimrc
が読み込んでいる/etc/vimrc.local
に記述する
vim-enhancedインストール
dnf install vim-enhanced
Vim設定
/etc/vimrc.local
" 文字コードの自動認識
if &encoding !=# 'utf-8'
set encoding=japan
set fileencoding=japan
endif
if has('iconv')
let s:enc_euc = 'euc-jp'
let s:enc_jis = 'iso-2022-jp'
" iconvがeucJP-msに対応しているかをチェック
if iconv("\x87\x64\x87\x6a", 'cp932', 'eucjp-ms') ==# "\xad\xc5\xad\xcb"
let s:enc_euc = 'eucjp-ms'
let s:enc_jis = 'iso-2022-jp-3'
" iconvがJISX0213に対応しているかをチェック
elseif iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb"
let s:enc_euc = 'euc-jisx0213'
let s:enc_jis = 'iso-2022-jp-3'
endif
" fileencodingsを構築
if &encoding ==# 'utf-8'
let s:fileencodings_default = &fileencodings
let &fileencodings = s:enc_jis .','. s:enc_euc .',cp932'
let &fileencodings = &fileencodings .','. s:fileencodings_default
unlet s:fileencodings_default
else
let &fileencodings = &fileencodings .','. s:enc_jis
set fileencodings+=utf-8,ucs-2le,ucs-2
if &encoding =~# '^\(euc-jp\|euc-jisx0213\|eucjp-ms\)$'
set fileencodings+=cp932
set fileencodings-=euc-jp
set fileencodings-=euc-jisx0213
set fileencodings-=eucjp-ms
let &encoding = s:enc_euc
let &fileencoding = s:enc_euc
else
let &fileencodings = &fileencodings .','. s:enc_euc
endif
endif
" 定数を処分
unlet s:enc_euc
unlet s:enc_jis
endif
" 日本語を含まない場合は 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
" □とか○の文字があってもカーソル位置がずれないようにする
if exists('&ambiwidth')
set ambiwidth=double
endif
"--------------------
" 検索設定
"--------------------
" 検索時に大文字小文字を無視する
set ignorecase
" インクリメンタルサーチを有効にする
set incsearch
" 検索時にハイライトを無効にする
set nohlsearch
" 検索の循環
set wrapscan
"--------------------
" 表示設定
"--------------------
" シンタックスハイライト
syntax on
" 行番号を表示する
set number
" 対になる括弧を表示する
set showmatch
" モードを表示する
set showmode
" ルーラーを表示する
set ruler
" 高度な自動インデントを行う
set smartindent
" 編集中のファイル名を表示する
set title
" Shift+矢印キーで選択できるようにする
set keymodel=startsel
"--------------------
" 編集設定
"--------------------
" auto indentを有効にする
set autoindent
" タブの代わりに空白文字を挿入する
set expandtab
" タブをスペース4つ分にする
set tabstop=4
" 上の行の末尾の文字を1文字消去する
set backspace=2
" シフト移動幅を4にする
set shiftwidth=4
" 見た目のtabstopを変える
set softtabstop=4