作者が教える! lightline.vimの導入・設定方法! 〜 初級編 - インストールしよう

この記事では、lightline.vimの導入・設定に戸惑っている皆さんのために、コピペで使える設定を教えます. 特に、lightline.vimのGitHubページが英語でよく分からないよ、という方を想定しています. GitHubページ或いはヘルプファイルを読んで分かる方は、この記事は読まなくても構いません.もし既に設定している方でも、LightlineFilenameにおかしいところがあると思いますので、必ずこのエントリーの関数を用いて下さい. (ドキュメントも私の.vimrcもexpandの引数を間違っていました)

ステップ1: インストール

lightlineは現在、GitHubからのみ入手できます。

インストール方法は、あなたが他のプラグインをどのようにインストールしているかによって異なります。

NeoBundle

NeoBundleをお使いの方は、以下の設定を.vimrcに書いて下さい。
(Windowsの方は、.vimrcを_vimrcと読み替えて下さい)

NeoBundle 'itchyny/lightline.vim'

そして、Vimを再度開き:NeoBundleInstallでインストールします。


vim-powerlineやpowerline、vim-airlineなどのプラグインを既にインストールしている時は、該当行をコメントアウトして下さい。

" NeoBundle 'Lokaltog/vim-powerline'
Vundle

Vundleをお使いの方は、以下の設定を.vimrcに書いて下さい。

Plugin 'itchyny/lightline.vim'

そして、Vimを再度開き:BundleInstallでインストールします. 同様にvim-powerline等、これまでのステータスラインプラグインとは干渉しますので、該当行をコメントアウトして下さい。

その他

NeoBundleやVundle以外の方法でプラグインをインストールしている人は、その方法に従って下さい。


上手く表示されましたか?

インストールはこれだけです。

上手くいかない時は、以下を試してみて下さい。

  • set laststatus=2 を.vimrcに書いてみる
  • set t_Co=256 と.vimrcに追記し、export TERM=xterm-256color とシェルで実行してからVimを起動してみる

それでも上手くいかない時は、このブログにコメントするか、Twitterで@を送ってください。

ステップ2: カラースキームを変えてみる

lightlineでは既存のカラースキームにマッチするように、いくつかのlightlineカラースキームを用意しています。特に、lightlineではwombatを使用することを勧めています。
次の設定を.vimrcに追記して下さい

let g:lightline = {
      \ 'colorscheme': 'wombat'
      \ }

もし、solarizedカラースキームを使用している方は、以下を使って下さい。

let g:lightline = {
      \ 'colorscheme': 'solarized'
      \ }



どちらかになったと思います。solarizedのテーマは、background設定がlightかdarkかによって自動的に変わるようになっています。



これでもう満足、これ以上難しいことしたら頭が爆発すると思ったら、ここで辞めて構いません。

ステップ3: uniteやvimfiler、vimshellでなんかかっこよくなるよう設定する

最後です。先ほどlightlineのカラースキームを変更したと思いますが、その設定を消し、以下の設定を.vimrcにコピペして下さい。

let g:lightline = {
        \ 'colorscheme': 'wombat',
        \ 'mode_map': {'c': 'NORMAL'},
        \ 'active': {
        \   'left': [ [ 'mode', 'paste' ], [ 'fugitive', 'filename' ] ]
        \ },
        \ 'component_function': {
        \   'modified': 'LightlineModified',
        \   'readonly': 'LightlineReadonly',
        \   'fugitive': 'LightlineFugitive',
        \   'filename': 'LightlineFilename',
        \   'fileformat': 'LightlineFileformat',
        \   'filetype': 'LightlineFiletype',
        \   'fileencoding': 'LightlineFileencoding',
        \   'mode': 'LightlineMode'
        \ }
        \ }

function! LightlineModified()
  return &ft =~ 'help\|vimfiler\|gundo' ? '' : &modified ? '+' : &modifiable ? '' : '-'
endfunction

function! LightlineReadonly()
  return &ft !~? 'help\|vimfiler\|gundo' && &readonly ? 'x' : ''
endfunction

function! LightlineFilename()
  return ('' != LightlineReadonly() ? LightlineReadonly() . ' ' : '') .
        \ (&ft == 'vimfiler' ? vimfiler#get_status_string() :
        \  &ft == 'unite' ? unite#get_status_string() :
        \  &ft == 'vimshell' ? vimshell#get_status_string() :
        \ '' != expand('%:t') ? expand('%:t') : '[No Name]') .
        \ ('' != LightlineModified() ? ' ' . LightlineModified() : '')
endfunction

function! LightlineFugitive()
  if &ft !~? 'vimfiler\|gundo' && exists('*fugitive#head')
    return fugitive#head()
  else
    return ''
  endif
endfunction

function! LightlineFileformat()
  return winwidth(0) > 70 ? &fileformat : ''
endfunction

function! LightlineFiletype()
  return winwidth(0) > 70 ? (&filetype !=# '' ? &filetype : 'no ft') : ''
endfunction

function! LightlineFileencoding()
  return winwidth(0) > 70 ? (&fenc !=# '' ? &fenc : &enc) : ''
endfunction

function! LightlineMode()
  return winwidth(0) > 60 ? lightline#mode() : ''
endfunction

これをコピペして以上です!vimfilerを開いて下さい!

パスが表示されるようになりました!


初級編は以上です。次回は上記のもう少し詳しく設定を見ていきます。