2010-12-01 3 views
9

Mon ~/.vimrc utilise le statusline suivant la mise enUtiliser Vim, comment puis-je « set statusline » pour aligner à droite?

set statusline=%F%m%r%h%w\ %{&ff}\ %Y\ [0x\%02.2B]\ %l/%L,%v\ %p%% 

Tout est aligné à gauche. help 'statusline' dit que le caractère - est utilisé pour « justifier l'élément gauche. La valeur par défaut est justifié à droite lorsque largmin est supérieure à la longueur de l'élément. »

Cependant, je ne l'ai pas été en mesure d'utiliser (ou ne pas utiliser) - à jamais aligner les choses à droite.

Qu'est-ce qu'un exemple d'avoir un groupe d'éléments aligné à gauche et à droite un groupe aligné?

J'ai également essayé d'utiliser = mais il affiche simplement le signe =.

Répondre

11

Vous devez préfixer le = avec un signe de pourcentage: %=.

En utilisant votre exemple:

set statusline=%F%m%r%h%w\ %{&ff}\ %Y\ [0x\%02.2B]\ %=l/%L,%v\ %p%% 

Est-ce droit d'aligner le groupe "%l/%L,%v\ %p%%". Vous devez également forcer probablement une troncature en utilisant %< dans un endroit approprié pour accueillir des fenêtres étroites:

set statusline=%F%m%r%h%w%<\ %{&ff}\ %Y\ [0x\%02.2B]\ %=l/%L,%v\ %p%% 
+2

'% =% l' parce que je veux que le numéro de ligne – Robert

4

Vous devez utiliser %=

Quelle est à gauche de %= sera aligné à gauche, et ce qui est au droite de %= sera aligné à droite.

Par exemple, voici le statusline que j'utilise.

set statusline=%f%m%r%h\ [%L]\ [%{&ff}]\ %y%=[%p%%]\ [line:%05l,col:%02v]

1

d'accord avec Xavier T.

utilisant %= ce qui signifie droit aligner les éléments suivants

La mise en jachère est mon vimrc

set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}][TYPE=%Y][ASCII=\%03.3b][HEX=\%02.2B]%=[POS=%04l,%04v][%p%%][LEN=%L]

Questions connexes