netrw.vim 1.1 KB

1234567891011121314151617181920212223242526272829303132333435
  1. " MIT License. Copyright (c) 2013-2021 Bailey Ling et al.
  2. " Plugin: http://www.drchip.org/astronaut/vim/#NETRW
  3. " vim: et ts=2 sts=2 sw=2
  4. scriptencoding utf-8
  5. if !exists(':NetrwSettings')
  6. finish
  7. endif
  8. function! airline#extensions#netrw#apply(...)
  9. if &ft == 'netrw'
  10. let spc = g:airline_symbols.space
  11. call a:1.add_section('airline_a', spc.'netrw'.spc)
  12. if exists('*airline#extensions#branch#get_head')
  13. call a:1.add_section('airline_b', spc.'%{airline#extensions#branch#get_head()}'.spc)
  14. endif
  15. call a:1.add_section('airline_c', spc.'%f'.spc)
  16. call a:1.split()
  17. call a:1.add_section('airline_y', spc.'%{airline#extensions#netrw#sortstring()}'.spc)
  18. return 1
  19. endif
  20. endfunction
  21. function! airline#extensions#netrw#init(ext)
  22. let g:netrw_force_overwrite_statusline = 0
  23. call a:ext.add_statusline_func('airline#extensions#netrw#apply')
  24. endfunction
  25. function! airline#extensions#netrw#sortstring()
  26. let order = (get(g:, 'netrw_sort_direction', 'n') =~ 'n') ? '+' : '-'
  27. return get(g:, 'netrw_sort_by', '') . (g:airline_symbols.space) . '[' . order . ']'
  28. endfunction