获取当前行号?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取当前行号?相关的知识,希望对你有一定的参考价值。
是否有任何键映射输出正在编辑的行的当前行号?或者,更好的是,我们可以根据键映射的输出来做公式吗?
我想获取行号并将1
添加到当前正在编辑的文本中。
答案
Ctrl + G将告诉您行号,甚至是光标所在的列。如果您的意思是将其作为文本输出到您的文档,那么我不知道。
另一答案
“输出”是什么意思?你可以做:
:echo line(".") + 1
要显示当前行号加1.您可以使用map
绑定击键,例如:
:noremap <F1> :echo line(".") + 1<cr>
要将数据实际插入缓冲区:
:noremap <F1> :execute "normal! i" . ( line(".") + 1 )<cr>
另一答案
答案是由@ZyX在对另一个答案的评论中给出的:
你有插入模式的
<C-r>
这种东西:
nnoremap <F1> i<C-r>=line('.')+1<CR><Esc>
另一答案
您可以使用virtcol('.')
获取当前光标位置的可视宽度;通过表达式寄存器将其插入缓冲区,例如在插入模式下使用<C-R>=virtcol('.')<CR>
请注意,当行包含双宽字符,<Tab>
或不可打印的字符时,宽度与字符数不同。
另一答案
1.使用:set ruler
。 (仅在vim
工作)Reference
它显示了正在编辑的行的当前行和列(光标所在的行),位于寡妇的右下角。
1,1 <position>
- 如果编辑第一行,则位置为
Top
。 - 如果编辑了最后一行,则位置为
Bot
。 - 如果没有可用的滚动(开始和结束行都可见),则位置为
All
- 如果没有可见的第一行和最后一行,则position是文档可见的百分比。
要使其永久化,请在set ruler
文件中添加~/.vimrc
(如果文件不存在,请创建一个)。
2.使用:set number
。 (适用于vi
和vim
)Reference
显示每行之前的行号。
以上是关于获取当前行号?的主要内容,如果未能解决你的问题,请参考以下文章
Android 使用两个不同的代码片段获取当前位置 NULL