Dans Vim, existe-t-il un moyen de copier le numéro de ligne actuel dans une mémoire tampon?

StackOverflow https://stackoverflow.com/questions/295321

  •  08-07-2019
  •  | 
  •  

Question

Lorsque vous utilisez gdb et Vim, je souhaite souvent m'arrêter sur une ligne particulière. Normalement, dans Vim, je copie-colle le numéro de ligne figurant dans la zone de règle dans la session gdb. Cela me ferait économiser beaucoup de tracas si je pouvais utiliser quelque chose comme "+<magic-incantation> pour copier le numéro de ligne de la position actuelle du curseur dans la mémoire tampon de xclipboard. Est-ce possible?

Était-ce utile?

La solution

mettez ceci dans votre vimrc

map ,n <Esc>:let @*=line(".")<CR>

puis en utilisant , n copiera le numéro de ligne actuel dans le presse-papier

Autres conseils

La ligne magique est donc la suivante:

 :call setreg('*', line('.'))

La raison:

  1. Le registre * tient le presse-papiers
  2. line('.') contient le numéro de ligne actuel

Bien sûr, vous pouvez associer cette fonction à un raccourci:

nmap ,ln :call setreg('*', line('.'))<CR>

De plus, pour utiliser GDB à partir de vim, vous pouvez consulter certains des scripts gdb sur vim.sourceforge.net -

Vous ne savez pas si c'est ce que vous cherchez, mais avez-vous essayé d'utiliser des marqueurs?

Placez le curseur sur la ligne souhaitée, puis entrez m et une lettre, dites a.

La saisie de 'a vous mènera à la ligne contenant le marqueur.

Si vous entrez `a, vous obtiendrez la lettre que vous avez marquée dans la ligne.

Hmm, en y réfléchissant un peu plus loin, cela doit être disponible car le numéro de ligne est disponible pour une utilisation dans diverses fonctions, par exemple. à utiliser dans la barre d'état.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top