virtualenv.vim 1.0 KB

1234567891011121314151617181920212223242526272829303132
  1. " MIT License. Copyright (c) 2013-2021 Bailey Ling et al.
  2. " Plugin: https://github.com/jmcantrell/vim-virtualenv
  3. " vim: et ts=2 sts=2 sw=2
  4. scriptencoding utf-8
  5. let s:spc = g:airline_symbols.space
  6. function! airline#extensions#virtualenv#init(ext)
  7. call a:ext.add_statusline_func('airline#extensions#virtualenv#apply')
  8. endfunction
  9. function! airline#extensions#virtualenv#apply(...)
  10. if match(get(g:, 'airline#extensions#virtualenv#ft', ['python']), &filetype) > -1
  11. if get(g:, 'virtualenv_loaded', 0)
  12. let statusline = virtualenv#statusline()
  13. else
  14. let statusline = fnamemodify($VIRTUAL_ENV, ':t')
  15. endif
  16. if !empty(statusline)
  17. call airline#extensions#append_to_section('x',
  18. \ s:spc.g:airline_right_alt_sep.s:spc.statusline)
  19. endif
  20. endif
  21. endfunction
  22. function! airline#extensions#virtualenv#update()
  23. if match(get(g:, 'airline#extensions#virtualenv#ft', ['python']), &filetype) > -1
  24. call airline#extensions#virtualenv#apply()
  25. call airline#update_statusline()
  26. endif
  27. endfunction