In Vim, is there a way to copy the current line nu

2019-03-27 16:54发布

When using gdb and Vim, often I want to stop on a particular line. Normally in Vim I copy-paste the line number showing on the rule area to the gdb session. It'd save me a lot of hassle if I could use something like "+<magic-incantation> to copy the line number of the current cursor position into the xclipboard buffer. Is this possible?

标签: vim x11
4条回答
Juvenile、少年°
2楼-- · 2019-03-27 17:19

Also, to use GDB from within vim, you may want to check out some of the gdb scripts on vim.sourceforge.net -

查看更多
走好不送
3楼-- · 2019-03-27 17:21

So the magic line is:

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

The reason:

  1. The register * hold the clipboard
  2. line('.') holds the current line number

Of course you can map that function to a shortcut:

nmap ,ln :call setreg('*', line('.'))<CR>
查看更多
贼婆χ
4楼-- · 2019-03-27 17:41

put this in your vimrc

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

then using ,n will copy the current line number into the clipboard

查看更多
太酷不给撩
5楼-- · 2019-03-27 17:45

Not sure if this is what you're after but have you tried using markers?

Put the cursor on the line you want, then enter m and a letter, say a.

Entering 'a will take you to the line containing the marker.

Entering `a will take you to the actual letter that you marked in the line.

Hmm, just thinking a bit further, this must be available as the line number is available for use in various functions, e.g. for use in the status bar.

查看更多
登录 后发表回答