Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Special symbols display is broken? #1

Closed
residentsummer opened this issue Jul 1, 2013 · 2 comments
Closed

Special symbols display is broken? #1

residentsummer opened this issue Jul 1, 2013 · 2 comments

Comments

@residentsummer
Copy link

I've installed the plugin (together with bufferline). I've already got some powerline-patched fonts installed, so I've enabled corresponding option in my .vimrc. But instead of familiar "arrows" there was some squares with crosses inside.

image

At the same time, vim-powerline looks as expected. So I've opened plugin/airline.vim and saw the root of the problem - the entire line of powerline symbols looked wrong, and also the lines with separators setting:

image

If I open the plugin sources on github, this lines are also looking broken. Is it a problem on my side? Or, maybe, it's something with the script encoding?

@bling
Copy link
Member

bling commented Jul 1, 2013

vim-powerline uses different font glyths compared to the newer powerline. have a look at https://github.com/Lokaltog/powerline-fonts for prepatched fonts.

@residentsummer
Copy link
Author

Oh, this explains everything... Didn't noticed that vim-powerline -> powerline change.

Thank you very much!

d10n added a commit to d10n/vim-airline that referenced this issue Jul 1, 2017
When using vim-gitgutter and fugitive:

The hunks extension and the branch extension work as expected when the
file is first loaded; both parts are added to the statusline.

Once the cursor is moved and stopped for &updatetime ms:

1. The branch extension clears b:airline_head on CursorHold
2. Somehow (?) airline#statusline gets called on CursorHold
3. The hunks extension returns '' when b:airline_head is empty, causing
the hunks to be removed from the statusline.

It doesn't make sense to clear airline_head just because the cursor
moved, and the commit message adding the line doesn't say why:
13297ce

Commit 174b7e1 relies on airline_head
being set.

Debug detail:

Executing CursorHold Auto commands for "*"
autocommand unlet! b:airline_head
[...]
continuing in CursorHold Auto commands for "*"
calling function airline#statusline(1)
[...]
line 1:   return exists('*airline#extensions#branch#head') && empty(get(b:, 'airline_head', ''))
function airline#extensions#hunks#get_hunks[13]..<SNR>32_get_hunks[14]..<SNR>32_get_hunks_gitgutter[1]..<SNR>32_is_branch_empty returning vim-airline#1
function airline#extensions#hunks#get_hunks[13]..<SNR>32_get_hunks[14]..<SNR>32_get_hunks_gitgutter returning ''
function airline#extensions#hunks#get_hunks[13]..<SNR>32_get_hunks returning ''
function airline#extensions#hunks#get_hunks returning ''

:au CursorHold
--- Auto-Commands ---
gitgutter  CursorHold
    *         call gitgutter#process_buffer(bufnr(''), 1)
CursorHold
    *         unlet! b:airline_head
airline_whitespace  CursorHold
    *         call <sid>ws_refresh()

------------------------

Sample vimrc:

set nocompatible

if empty(glob('~/.vim/autoload/plug.vim'))
  silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
    \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
  autocmd VimEnter * PlugInstall --sync | q | doautocmd WinEnter
endif

autocmd VimEnter *
  \  if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
  \|   PlugInstall --sync | q
  \| endif

call plug#begin('~/.vim/bundle/')
Plug 'vim-airline/vim-airline'
Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-gitgutter'
call plug#end()
set laststatus=2
set updatetime=250
let g:airline_theme = 'dark'
HacksPloiter added a commit to HacksPloiter/vim-airline that referenced this issue Dec 5, 2023
Description:
Implemented the first release of Vim-Airline++.
Vim-Airline++ focuses on 2 enhancements over the
original Vim-Airline plugin. It can now show the
git branch name without actully using the vim
fugitive plugin which makes it blazing fast for
large size projects. Another enhancement is that
it can trim the branch name if your organization
follows slash based hierarchical naming
convention.

CID: vim-airline#1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants