21 lines
737 B
VimL
21 lines
737 B
VimL
let b:black_disable = 0
|
|
autocmd BufWritePre <buffer> if b:black_disable != 1 | execute 'silent Black' | endif
|
|
map <Leader>b :let b:black_disable = (b:black_disable + 1) % 2<CR>
|
|
|
|
" Show icon in airline when black is disabled
|
|
" Adapted from https://github.com/ryanoasis/vim-devicons/blob/a5750c6507602a7238e1c87669c64a6d820a319d/plugin/webdevicons.vim#L567
|
|
function! BlackIconStatus()
|
|
if &filetype ==# 'python' && b:black_disable == 1
|
|
return " "
|
|
else
|
|
return ""
|
|
endif
|
|
endfunction
|
|
|
|
function! AirlineBlackIcon(...)
|
|
let w:airline_section_x = get(w:, 'airline_section_x', get(g:, 'airline_section_x', ''))
|
|
let w:airline_section_x .= '%{BlackIconStatus()}'
|
|
endfunction
|
|
|
|
call airline#add_statusline_func('AirlineBlackIcon')
|