Sympa, mais il est possible de le montrer dans la barre supérieure du terminal? (ou terminator) ou quelque part sans taper une commande.
eMarine le
21
:f!ne fonctionne pas toujours, appuyez sur 1, puis sur Ctrl-G pour le chemin complet.
ives le
1
Que diriez-vous d'un chemin complet? Quand je lance vim à partir de ~/dev/file.pyet exécute :fdans vim, j'obtiens file.pycomme sortie au lieu de ~/dev/file.py.
gxyd
1
@ives que signifient séparément 1 et Ctrl + g?
jobima
2
@jobima: il se modifie ctrl-gpour retourner chemin + fichier. :frenverra le nom de fichier sans chemin, comme cela pourrait être le cas ctrl-g. Un 1avant ctrl-gaffichera le chemin et le nom (pas nécessairement développés cependant). c'est-à-dire qu'il montrera à la ~/dev/file.pyplace de file.py. 2suivie ctrl-gcomprendra que le tampon: buf 1: "~/dev/file.py".
ives le
71
ctrl+ le gfera.
Aussi, j'aime avoir:
set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
Ce qui produit:
foo.c [C] [0x23] <code / foo.c 1, 1 2% de 50
De plus, comme quelqu'un l'a mentionné (mais maintenant supprimé) %sera remplacé par le nom de fichier actuel. Par exemple:
:! echo "fichier courant:%"
fichier actuel: foo.c
Appuyez sur ENTRÉE ou tapez la commande pour continuer
@LangeHaare Filetype et valeur hexadécimale du caractère sous le curseur respectivement
'statusline'est une chaîne, mais vous n'incluez pas de guillemets dans l'ensemble: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesnécessite également des espaces d'
échappement
18
définir la ligne d'état. plus d'infos avec:help statusline
Ces commandes peuvent aller dans votre fichier .vimrc, ou vous pouvez les entrer comme commandes dans vim en tapant ':' en mode commande.
Tout d'abord, définissez le dernier état sur 2 en utilisant ce qui suit:
set laststatus=2
Définissez ensuite la ligne d'état sur% f pour le nom de fichier court.
Bienvenue dans Stack Overflow ! Cela devrait probablement être une suggestion de modification ou de commentaire sur la ou les réponses pertinentes - vous n'avez pas encore assez de réputation pour commenter ou modifier, mais vous le ferez bientôt si vous posez de bonnes questions et écrivez de bonnes réponses! En attendant, je proposerai les correctifs pertinents aux auteurs des réponses. Bonne prise!
Il utilise le lightline.vimbranchement et affiche le nom du fichier sur la barre d'état.
L'avantage d'utiliser le amix/vimrcest que ce plugin s'occupe de la plupart de la personnalisation, il est très stable et a été testé par des milliers de personnes, comme vous pouvez le vérifier en regardant le nombre d'étoiles github .. et les problèmes peu fréquents.
Il est également mis à jour assez fréquemment.
PS: pas l'auteur de l'un ou l'autre des plugins .. juste un fan :)
J'avais également besoin de mettre cela dans mon fichier .vimrc:
set noruler
set laststatus=2
Ensuite, je pourrais mettre quelque chose comme set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"dans mon fichier .vimrc et après le redémarrage de mon terminal, la ligne d'état s'affiche correctement.
'statusline'est une chaîne, mais vous n'incluez pas de guillemets dans l'ensemble: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesnécessite également des espaces d'
Réponses:
:f
(:file
) fera la même chose que<C-G>
.:f!
donnera une version non tronquée, le cas échéant.la source
:f!
ne fonctionne pas toujours, appuyez sur 1, puis sur Ctrl-G pour le chemin complet.~/dev/file.py
et exécute:f
dans vim, j'obtiensfile.py
comme sortie au lieu de~/dev/file.py
.ctrl-g
pour retourner chemin + fichier.:f
renverra le nom de fichier sans chemin, comme cela pourrait être le casctrl-g
. Un1
avantctrl-g
affichera le chemin et le nom (pas nécessairement développés cependant). c'est-à-dire qu'il montrera à la~/dev/file.py
place defile.py
.2
suiviectrl-g
comprendra que le tampon:buf 1: "~/dev/file.py"
.ctrl+ le gfera.
Aussi, j'aime avoir:
Ce qui produit:
De plus, comme quelqu'un l'a mentionné (mais maintenant supprimé)
%
sera remplacé par le nom de fichier actuel. Par exemple:la source
[C]
et[0x23]
?'statusline'
est une chaîne, mais vous n'incluez pas de guillemets dans l'ensemble:set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
nécessite également des espaces d'définir la ligne d'état. plus d'infos avec
:help statusline
Ces commandes peuvent aller dans votre fichier .vimrc, ou vous pouvez les entrer comme commandes dans vim en tapant ':' en mode commande.
Tout d'abord, définissez le dernier état sur 2 en utilisant ce qui suit:
set laststatus=2
Définissez ensuite la ligne d'état sur% f pour le nom de fichier court.
set statusline=%f
Pour le chemin complet du fichier, utilisez% F.
la source
:set title
pour afficher le nom du fichier dans la barre de titre de la fenêtre.la source
Pourquoi si compliqué? Control-G fera le travail
la source
Pour afficher le chemin complet de tout fichier, y compris les liens symboliques résolus, utilisez ce qui suit.
Cela peut être ajouté à votre barre d'état en ajoutant la ligne ci-dessous à votre
~./vimrc
la source
L'une des suggestions ci-dessus a dû être remplacée par
set statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
pour le faire fonctionner. Aussi
set laststatus=2
a été utilisé.
la source
J'utilise l'incroyable
vimrc
d'Amix: https://github.com/amix/vimrcIl utilise le
lightline.vim
branchement et affiche le nom du fichier sur la barre d'état.L'avantage d'utiliser le
amix/vimrc
est que ce plugin s'occupe de la plupart de la personnalisation, il est très stable et a été testé par des milliers de personnes, comme vous pouvez le vérifier en regardant le nombre d'étoiles github .. et les problèmes peu fréquents.Il est également mis à jour assez fréquemment.
PS: pas l'auteur de l'un ou l'autre des plugins .. juste un fan :)
la source
J'avais également besoin de mettre cela dans mon fichier .vimrc:
Ensuite, je pourrais mettre quelque chose comme
set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
dans mon fichier .vimrc et après le redémarrage de mon terminal, la ligne d'état s'affiche correctement.la source
'statusline'
est une chaîne, mais vous n'incluez pas de guillemets dans l'ensemble:set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
nécessite également des espaces d'