Table des matières

, , , , ,

Vim : Installation du plugin vim-airline sous Windows

L'extension vim-airline permet d'améliorer la mise en forme de la barre de status de Vim.

Dans un premier temps installer Vundle.

On peut ensuite modifier le fichier _vimrc pour ajouter les plugins :

_vimrc
 
Pour que l'installation du plugin réussisse lancer l'installation depuis une console Git-Bash

Relancer Vim dans une console Git-Bash puis dans le mode commande saisir :

:PluginInstall

Utiliser les symboles Powerline

vim-airline peut utiliser les polices de l'extension Powerline pour améliorer la mise en forme de la barre de status.

Vim utilise la police (fonts) de la console. Si celle-ci n'est pas une des polices Powerline spécifiquement patchées, les symboles ne s'afficheront pas correctement. Confère section troubleshooting.

Cloner le dépot contenant l'ensemble des polices :

# On clone le dépot dans un dossier temporaire (ici sur un ramdisk)
Set-Location R:\Temp\
 
git clone https://github.com/powerline/fonts.git
Set-Location .\fonts\
 
# Installation des polices
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Bypass
.\install.ps1

Troubleshooting

Après installation certains symboles dans la barre vim-airline ne sont pas correctement affichés:

airline_pb_affichage_symboles.jpg

Afficher les symboles depuis le mode normal:

:set g:airline_symbols

On obtient la liste des symboles utilisés par airline

g:airline_symbols     {'linenr': ' :', 'modified': '+', 'whitespace': '☲', 'bra
nch': '', 'ellipsis': '...', 'paste': 'PASTE', 'maxlinenr': '☰ ', 'readonly': '
', 'spell': 'SPELL', 'space': ' ', 'dirty': '⚡', 'colnr': ' ℅:', 'keymap': 'Ke
ymap:', 'crypt': '🔒', 'notexists': 'Ɇ'}

On peut voir que certains symboles ne sont pas correctement affichés. vim-airline est configuré pour utiliser une police Powerline : ces polices sont spécifiquement patchées pour offrir des glyples permettant d'améliorer la mise en forme de la barre d'état.

En cas de mauvais affichage deux solutions :

_vimrc
" Unicode symbols
let g:airline_left_sep = '»'
let g:airline_left_sep = '▶'
let g:airline_right_sep = '«'
let g:airline_right_sep = '◀'
let g:airline_symbols.linenr = '␊'
let g:airline_symbols.linenr = '␤'
let g:airline_symbols.linenr = '¶'
let g:airline_symbols.branch = '⎇'
let g:airline_symbols.paste = 'ρ'
let g:airline_symbols.paste = 'Þ'
let g:airline_symbols.paste = '∥'
let g:airline_symbols.whitespace = 'Ξ'

Références