battery.vim is a statusline or tabline component for Neovim/Vim.
It uses a job feature of Neovim/Vim to retrieve battery informations so that the plugin won't block the main thread.
It supports macOS, Windows, and Linux.
The implementation was translated to Vim script from a Bash script found on https://github.com/b4b4r07/dotfiles/blob/master/bin/battery.
Use junegunn/vim-plug or Shougo/dein.vim like:
" Plug.vim
Plug 'lambdalisue/battery.vim'
" dein.vim
call dein#add('lambdalisue/battery.vim')Or copy contents of the repository into your runtimepath manually.
Use battery#component() like:
set statusline=...%{battery#component()}...
set tabline=...%{battery#component()}...Or with itchyny/lightline.vim
let g:lightline = {
\ ...
\ 'component_function': {
\ ...
\ 'battery': 'battery#component',
\ ...
\ },
\ ...
\}Additionally, assign 1 to corresponding variables to immediately reflect the
changes to statusline or tabline.
let g:battery#update_tabline = 1 " For tabline.
let g:battery#update_statusline = 1 " For statusline.