跳转列表的默认行为如下
以下命令是“跳转”命令:“'”,“`”,“ G”,“ /”,“?”, “ n”,“ N”,“%”,“(”,“)”,“ [[”,“]]”,“ {”,“}”,“:s”,“:tag”,“ L “,” M“, “ H”和开始编辑新文件的命令。
但是,我感觉到如此多的jump
命令使jumplist
所包含的内容比我所拥有的更多。例如,我使用cscope
从函数调用跳转到函数实现,然后在实现中,我可以使用%
导航到匹配的花括号,或使用/
搜索特定的括号。内容。但是,我希望跳转列表仅保留cscope
跳转历史记录,以便我可以轻松返回到调用点。
是否有某种方法可以排除jumplist
中的某些运动?
答案 0 :(得分:2)
如果您使用常规的ctags
而不是cscope
,则可以通过:help tagstack
内置;跳转列表中的<C-O>
等同于标签栈中的<C-T>
。
:help cscope-intro
提供以下内容:
cscope查询结果变得与常规标签一样,因此 您可以像使用普通标签(Ctrl-]或:tag一样)跳转到它们 然后使用Ctrl-T弹出标记栈以返回。 (请注意 但是,您实际上并没有通过简单地执行Ctrl-]或:tag而无需重新映射这些命令或设置选项来跳到cscope标签。
我认为这意味着,如果正确使用cscope接口,<C-T>
应该可以正常工作,但是为了使标记查找更方便,您需要构建自己的cscope接口快捷方式。 / p>
答案 1 :(得分:0)
理论上,您建议使用标记栈代替@Ingo Karkat的跳转列表。但是,我认为假设您没有离开函数,仅使用[[
或[m
回到函数定义会更简单。如果您知道要重新使用它,那么我建议您打开一个新窗口(例如:split
或<c-w>s
)或设置一个(文件)标记(例如mm
或{ {1}}。