在一个大缓冲区中,我想向下滚动到模式pattern的最后一次出现。
如果我是第一次出现,则很容易搜索模式 /
,将移动到下一次出现 n
并N
到达最后一次..
如果我处于一系列事件的中间......有没有更好的跳跃方式?
在一个大缓冲区中,我想向下滚动到模式pattern的最后一次出现。
如果我是第一次出现,则很容易搜索模式 /
,将移动到下一次出现 n
并N
到达最后一次..
如果我处于一系列事件的中间......有没有更好的跳跃方式?
找到最后一次出现的一种简单方法是跳到末尾并向后搜索:
G?foo<CR>
事实上,如果您已经在搜索某些内容,还有一种更简单的方法。只需跳到最后并向后搜索您刚刚搜索的内容:
GN
就那么简单。
编辑:如果您的搜索发生在最后一行,那么GN
将跳过它到倒数第二次出现。使用ggN
将解决这个问题。(gg?foo<CR>
出于类似的原因。)
一个可能更长的解决方案:
:vim foo % | clast
您可以尝试通过向后搜索?
:1?SEARCH_PHRASE
另一种解决方案是:
G/\(.\{-}\zs\(foo\)\)\{1,}<CR>