Cicaフォントを使ってVimをオシャンティーにする設定
Cica フォントを使って Vim(GVim、MacVim)をかっこよくする設定のご紹介です。
基本設定
Mac
set guifont=Cica:h16
set printfont=Cica:h12
set ambiwidth=double
Windows の場合は以下のようにしています。
set guifont=Cica:h11
set printfont=Cica:h8
set renderingoptions=type:directx,renmode:5
set ambiwidth=double
ambiwidth
は環境によっては single
の方が正しい場合があるかもしれません。(iTerm など?要調査)
vim-devicons
Cica を v2 にする発端となったプラグインです。Nerd Fonts を含むフォントを設定して、 インストールするだけで対応するプラグイ ンに Deviconsが表示されるようになります。
デフォルトでディレクトリのアイコンは有効になっていないので、以下の設定を vimrc に入れます。
" フォルダアイコンの表示をON
let g:WebDevIconsUnicodeDecorateFolderNodes = 1
NERDTree
scrooloose/nerdtree: A tree explorer plugin for vim.
超有名プラグインですね。(NERD ってオタクという意味なんですね 。)
ディレクトリの左の三角アイコンを設定しておきます。
let g:NERDTreeDirArrowExpandable = '▸'
let g:NERDTreeDirArrowCollapsible = '▾'
CtrlP
ctrlpvim/ctrlp.vim: Active fork of kien/ctrlp.vim—Fuzzy file, buffer, mru, tag, etc finder.
ファイルをサクッと開ける便利プラグインですね。特に必要な設定はありません。
NERDTree みたいにアイコンに色つけられないかなーとみていたら、vim-jp の皆さまの Issue マター()になっていました。
set ctrlp buffer's filetype by HerringtonDarkholme · Pull Request #316 · ctrlpvim/ctrlp.vim
Powerline / Lightline / AirLine
- powerline/powerline: Powerline is a statusline plugin for vim, and provides statuslines and prompts for several other applications, including zsh, bash, tmux, IPython, Awesome and Qtile.
- itchyny/lightline.vim: A light and configurable statusline/tabline plugin for Vim
- vim-airline/vim-airline: lean & mean status/tabline for vim that's light as air
私は Lightline を使っていて以下のように設定しています。せっかくなので燃えてるやつを設定しています。
let g:lightline = {
\ 'colorscheme': 'jellybeans',
\ 'active': {
\ 'left': [ [ 'mode', 'paste' ],
\ [ 'fugitive', 'filename' ] ]
\ },
\ 'component_function': {
\ 'fugitive': 'LightLineFugitive',
\ 'readonly': 'LightLineReadonly',
\ 'modified': 'LightLineModified',
\ 'filename': 'LightLineFilename',
\ 'filetype': 'LightLineFiletype',
\ 'fileformat': 'LightLineFileformat',
\ },
\ 'separator': { 'left': '', 'right': '' }, \ 'subseparator': { 'left': '', 'right': '' } \ }
function! LightLineModified()
if &filetype == "help"
return ""
elseif &modified
return "+"
elseif &modifiable
return ""
else
return ""
endif
endfunction
function! LightLineReadonly()
if &filetype == "help"
return ""
elseif &readonly
return ""
else
return ""
endif
endfunction
function! LightLineFugitive()
if exists("*fugitive#head")
let _ = fugitive#head()
return strlen(_) ? ''._ : ''
endif
return ''
endfunction
function! LightLineFilename()
return ('' != LightLineReadonly() ? LightLineReadonly() . ' ' : '') .
\ ('' != expand('%:t') ? expand('%:t') : '[No Name]') .
\ ('' != LightLineModified() ? ' ' . LightLineModified() : '')
endfunction
function! LightLineFiletype()
return winwidth(0) > 70 ? (strlen(&filetype) ? &filetype . ' ' . WebDevIconsGetFileTypeSymbol() : 'no ft') : ''
endfunction
function! LightLineFileformat()
return winwidth(0) > 70 ? (&fileformat . ' ' . WebDevIconsGetFileFormatSymbol()) : ''
endfunction
Powerline と Airline は vim-devicons
の README の設定例をご確認ください(投
完成!
でーん。