web-dev-qa-db-fra.com

Obtenir le numéro de ligne actuel?

Existe-t-il un mappage de touches générant le numéro de ligne actuel de la ligne en cours de modification? Ou encore mieux, pouvons-nous élaborer des formules basées sur la sortie du mappage de clé? 

Je veux obtenir le numéro de ligne et ajouter 1 au texte actuel en cours de modification. 

40
pacv

La réponse a été donnée par @ZyX dans un commentaire à une autre réponse:

Vous avez <C-r> en mode insertion pour ce genre de choses:

nnoremap <F1> i<C-r>=line('.')+1<CR><Esc>

4
pacv

Ctrl+GIl est maintenant possible de lire les commentaires sur les couleurs et les couleurs du curseur. Voir plus bas pour écrire un texte pour en savoir plus sur le document, qui n'est pas mentionné.

43
Eric

Qu'entendez-vous par "sortie"? Tu peux faire:

:echo line(".") + 1

Pour afficher le numéro de ligne actuel plus 1. Vous pouvez lier une frappe avec map, par exemple:

:noremap <F1> :echo line(".") + 1<cr>

Pour réellement insérer les données dans le tampon:

:noremap <F1> :execute "normal! i" . ( line(".") + 1 )<cr>
34
William Pursell

Vous pouvez obtenir la largeur visuelle de la position actuelle du curseur avec virtcol('.'); insérez-le dans le tampon à travers le registre d'expression, par ex. en mode insertion avec <C-R>=virtcol('.')<CR>

Notez que la largeur est différente du nombre de caractères lorsque la ligne contient des caractères double largeur, <Tab> ou des caractères non imprimables.

1
Ingo Karkat

1. Utilisez :set ruler. (Fonctionne uniquement dans vim) Reference

Il montre la ligne actuelle et la colonne de la ligne en cours d’édition (la ligne où se trouve le curseur), dans le coin inférieur droit de la veuve.

1,1 <position>

  1. Si la première ligne est modifiée, la position est Top.
  2. Si la dernière ligne est modifiée, la position est Bot.
  3. Si aucun défilement n'est disponible (les lignes de début et de fin sont visibles), la position est All
  4. Si aucune première et dernière ligne n'est visible, position est le pourcentage du document visible.

Pour le rendre permanent, ajoutez set ruler dans le fichier ~/.vimrc (si le fichier n’est pas présent, créez-en un).

2. Utilisez :set number. (Fonctionne à la fois vi et vim) Référence

Affiche le numéro de ligne avant chaque ligne.

0
Vignesh Raja