Je sais CTRLgaffiche le fichier actuel sur lequel vous travaillez. Existe-t-il un moyen de modifier mon pour .vimrc
que le nom de fichier / chemin soit toujours affiché?
Réponses:
Dans votre ligne d'état, ajoutez un %F
pour afficher le chemin complet:
:help statusline
" Add full file path to your existing statusline
set statusline+=%F
Remarque, %F
sera le chemin complet. Pour obtenir un chemin relatif au répertoire de travail, utilisez %f
.
Si votre ligne d'état n'est pas déjà visible, vous devrez peut-être d'abord la configurer pour qu'elle soit toujours visible, via laststatus=2
set laststatus=2
Voyez :help laststatus
ce que signifient les options. Normalement, la ligne d'état peut être masquée ou masquée à moins que plusieurs tampons ne soient ouverts, mais je trouve extrêmement utile de l'utiliser tout le temps avec des personnalisations comme celle-ci, cela vaut la peine de renoncer à une réserve de ligne d'écran.
:set statusline=%F
sans le+
:set statusline=%F
? Regardez bien à droite ou à gauche pour voir si le nom de fichier se cache là-bas dans la ligne d'état
set laststatus=2
pour garder la ligne d'état visible tout le temps. J'ai oublié que j'avais ça.
set ls = 2
ajoutez ceci dans vimrc, et vous verrez toujours le nom du fichier en bas.
set modeline
est un peu dangereux et n'a rien à voir avec la question. Il permet l'exécution de commandes Vim dans les 5 lignes de début / fin d'un fichier. Il ne devrait être activé que par ceux qui savent pourquoi et le veulent vraiment. (C'est pourquoi je -1 cette réponse)
J'ai trouvé 2 façons d'afficher le chemin du fichier dans la barre de titre du gnome-terminal lors de l'édition d'un fichier avec Vim.
La manière la plus simple (et la meilleure): ajoutez la ligne suivante à votre ~/.vimrc
:
set title
Ce qui vous montrera en haut:
filename.ext (~/path_to_directory_where_your_file_is/) - VIM
La manière la plus compliquée vous montrera le chemin absolu du fichier. C'est documenté un peu plus en détail dans ce billet de blog que j'ai récemment écrit.
La seule manière que je trouvais pour obtenir le chemin complet du fichier que je travaille en est: :echo expand('%:p')
. Vous pouvez re-mapper ctrl + g si vous le souhaitez, mais personnellement, je n'aime pas trop m'éloigner des normes. J'ai mappé F7 comme ceci:
map <F7> <Esc>:echo expand('%:p')<Return>
:help CTRL-G
, et regardez deux paragraphes vers le bas pour CTRL-G
avec count.
1 CTRL-G
affiche le nom complet du fichier. Je cherchais cette option.
~
.
Si vous utilisez vim-airlines , indiquez .vimrc
:
let g:airline_section_c = '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#'
Il s'agit d'une modification de la valeur %f
par défaut de la compagnie aérienne, changeant par %F
.
La ligne de statut est très puissante et pratique je pense. Sortez de la boîte, il affichera le nom du fichier, la position du curseur et quelques drapeaux. Mais vous voulez faire la même chose que moi et remplacer le nom de fichier -part par le chemin complet du fichier.
Ainsi, lors de la modification de mon .vimrc
statut, ma ligne de statut pourrait ressembler à ceci par défaut:
.vimrc 26,16 7%
Vous pouvez afficher vos paramètres de la ligne d'état avec:
:set statusline?
Mais si vous n'avez fait aucune modification et qu'aucun module ne l'a changé, il serait vide. Mais par les exemples de la section d'aide ( :help statusline
), vous pouvez trouver que la valeur par défaut est:
:set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
Alors incluez ceci dans votre .vimrc
et changez %f
en %F
. J'ai également ajouté le drapeau de type de fichier ( %y
) à ma ligne de statut car je le trouve pratique. Donc, ma configuration résultante ressemble à ceci:
:set statusline=%<%F\ %h%m%r%y%=%-14.(%l,%c%V%)\ %P
Et le résultat ressemblerait à quelque chose comme ceci:
~/.vimrc [vim] 26,16 7%
Bonne lecture:
PS. Je lance vim 7.3
Si vous souhaitez que le chemin inclue des liens symboliques résolus, utilisez ce qui suit:
set statusline +=%{resolve(expand('%:p'))}\ %*
Pour conserver l'abréviation «~» de votre répertoire personnel, incluez fnamemodify
set statusline +=%{fnamemodify(resolve(expand('%:p')),':~')}\ %*
set statusline+=%F
à ma~/.vimrc
ne semble pas faire ce que vous dites. Bien que la documentation semble certainement d'accord avec vous ...