vimrc + screenrc晒し
先日のvimの文字判別あたりの設定はhttp://www.kawaz.jp/pukiwiki/?vimのものだった。改めて謝辞。
今日は先日のvimrcとscreenrcをすっきりさせたものを晒してみる。
実はscreen + vimという環境でうまく256色表示がされていなかったのだが、t_Co=256を設定したら見事256色表示になった。
PuTTYをお使いの方でxterm-256colorにしたのに256色表示されない!という方はぜひ試してみる事をお勧めします。
" vim: set ts=4 sw=4 sts=0: " http://www.kawaz.jp/pukiwiki/?vim "----------------------------------------------------------------------------- " 文字コード関連 " 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 nomodeline "バックアップを取らない set nobackup "カーソル移動時の上下の余白 set scrolloff=5 "backspaceキーの挙動を設定する " indent : 行頭の空白の削除を許す " eol : 改行の削除を許す " start : 挿入モードの開始位置での削除を許す set backspace=indent,eol,start "オートインデントしない set noautoindent "バイナリ編集(xxd)モード(vim -b での起動、もしくは *.bin で発動します) augroup BinaryXXD autocmd! autocmd BufReadPre *.bin let &binary =1 autocmd BufReadPost * if &binary | silent %!xxd -g 1 autocmd BufReadPost * set ft=xxd | endif autocmd BufWritePre * if &binary | %!xxd -r | endif autocmd BufWritePost * if &binary | silent %!xxd -g 1 autocmd BufWritePost * set nomod | endif augroup END "----------------------------------------------------------------------------- " 検索関連 " "検索文字列が小文字の場合は大文字小文字を区別なく検索する set ignorecase "検索文字列に大文字が含まれている場合は区別して検索する set smartcase "検索時に最後まで行ったら最初に戻る set wrapscan "検索文字列入力時に順次対象文字列にヒットさせない set noincsearch "----------------------------------------------------------------------------- " 装飾関連 " if &term =~ "xterm-256color" "256色表示 set t_Co=256 "シンタックスハイライトを有効にする syntax on "カラースキーマ colorscheme desert256 endif "行番号を表示しない set nonumber "タイトルを表示しない set notitle "タブ、折り返しに記号表示 set listchars=tab:^\ \,trail:-,extends:>,precedes:< set list "タブ幅を設定する set tabstop=8 set shiftwidth=4 set softtabstop=4 "タブ入力時にスペースに変換 set expandtab set smarttab "括弧入力時の対応する括弧を表示 set showmatch "検索結果文字列のハイライトを有効にする set hlsearch "入力中のコマンドをステータスに表示する set showcmd "ステータスラインを常に表示 set laststatus=2 "ステータスラインに文字コードと改行文字を表示する set statusline=%<%f%=%h%w%y%{'['.(&fenc!=''?&fenc:&enc).']['.&ff.']'}%9(\ %m%r\ %)[%4v][%12(\ %5l/%5L%)] "----------------------------------------------------------------------------- " マップ定義 " "表示行単位で行移動する nnoremap j gj nnoremap k gk "フレームサイズを怠惰に変更する map <kPlus> <C-W>+ map <kMinus> <C-W>- "----------------------------------------------------------------------------- " 関数 "
次はscreenrc。
configure時に256色対応でコンパイルすること。
# prefix key [Ctrl]-z escape ^z^z # General startup_message off vbell off msgminwait 0 autodetach on defscrollback 1000 # http://d.hatena.ne.jp/naoya/20051223/1135351050 # List window hardstatus on hardstatus alwayslastline "%{.Wb}.: %-w%{.RW}%n %t%{-}%+w :. %=[%Y-%m-%d %02c]" # http://www.negeta.com/~maya/tdiary/?date=20080229#p02 # 256 colors defbce on term xterm-256color termcapinfo xterm* 'Co#256:pa#32767:AB=\E[48;5;%dm:AF=\E[38;5;%dm:' termcapinfo kterm* 'Co#256:pa#32767:AB=\E[48;5;%dm:AF=\E[38;5;%dm:' # http://paranoid.dip.jp/kaworu/2008-03-06-1.html # Resize Window termcapinfo xterm* 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l' termcapinfo kterm* 'is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l' # Binding Keys bind w windowlist -b