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.
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>
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é.
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>
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.
:set ruler
. (Fonctionne uniquement dans vim
) ReferenceIl 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>
Top
.Bot
.All
Pour le rendre permanent, ajoutez set ruler
dans le fichier ~/.vimrc
(si le fichier n’est pas présent, créez-en un).
:set number
. (Fonctionne à la fois vi
et vim
) RéférenceAffiche le numéro de ligne avant chaque ligne.