在 vim 中,
:jumps
我看到了跳转列表,然后G
我转到跳转列表的末尾。
我怎样才能用地图到达列表末尾?我认为在某些情况下
nn <leader>j :jumps<CR>G
但是这样,显示跳转列表并转到原始文件的末尾
答案1
“更多提示”不受映射的影响。从:help more-prompt
:
注意:键入的键直接从终端获取,它未经映射并且忽略 typeahead。
您可以定义一个映射来重置more
选项在执行之前:jumps
(然后恢复它)就像这样(在你的中.vimrc
):
map <Leader>j :
\let prevmore=&more<Bar>
\set nomore<Bar>
\jumps<Bar>
\let &more=prevmore<CR>
当您使用此\j
映射时(默认情况下 Leader 为反斜杠,请参阅:help mapleader
),Vim 会不停地显示整个跳转列表,直到到达末尾(实际上,你会看到输出的最后一“页”)。
请注意<Leader>
, 和mapleader
与上面使用的反斜杠无关;那些是行延续对于:source
d 文件(如.vimrc
)。
答案2
Vim 帮助文档说跳转列表最多固定为 100 个条目,并且您可以使用 CTRL-I(上一个)和 CTRL-O(下一个)进行计数...因此“转到跳转列表末尾”的明显方法是:
100<C-O>
这将执行您想要的操作。将其放入映射或任何您想要的内容中。