let g:lightline = { \ 'colorscheme': 'solarized', \ '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', \ }, \ 'separator': { 'left': '', 'right': '' }, \ 'subseparator': { 'left': '', 'right': '' } \ } function! LightLineModified() return &ft =~ 'help\|vimfiler\|gundo' ? '' : &modified ? '+' : &modifiable ? '' : '-' endfunction function! LightLineReadonly() return &ft !~? 'help\|vimfiler\|gundo' && &readonly ? '' : '' 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") let _ = fugitive#head() return _ !=# '' ? '⭠ '._ : '' endif return '' 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