1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Rocky Linux 9】05.Vim設定

Last updated at Posted at 2023-02-28

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
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?