本文共 1786 字,大约阅读时间需要 5 分钟。
转自
https://www.zybuluo.com/lanxinyuchs/note/33551
说明:以Windows系统下查看C++代码为例。因为Source Insight(以下简称SI)是收费软件,且界面丑陋,所以考虑其替代方案,发现Sublime Text3(以下简称ST3) + Ctags + Cscope 可以取得很好的效果。使用ST3基本可以实现全键盘操作,同时它又没有学习Vim的陡峭曲线。
(1) 通过 Preference -> Package Control -> Install Package安装Ctags插件
(2) 下载 Ctags.exe, 通过 Preference -> Package Settings -> Ctags -> Settings Default 中的内容拷贝到 Setting User中,将command": ""
中的 ""
填入Ctags.exe的路径位置 (3) 在工程根目录上点击右键,选择Ctags:Rebuild tags
(1) 通过 Preference -> Package Control -> Install Package安装Cscope插件
(2) 下载 Cscope.exe, 并在工程根目录下生成cscope.out文件 (3) 打开CscopeSublime.sublime-settings文件(可能需要添加到 Package -> User 目录下),将"executable": ""
中的 ""
填入Cscope.exe的路径位置,将 "database_location": ""
中的 ""
填入cscope.out的路径位置 (1) 对于symbol函数的定义查询,ST3自带此功能Go to Definition
,且搜索结果有多个时可以预览,不用跳转到另一个文件。Ctags也有此功能navigate_to_definition
,搜索结果比ST3要准确一些,但多结果时不支持预览。Csope也有此功能 Cscope: look up function defintion
,但搜索结果不支持双击点开。因此实际中多用ST3和Ctags来实现此功能
Cscope: look up function calling this function
(4) 全局搜索, ST3可通过Ctrl+Shift+F
实现,但搜索耗时较长。Cscope可通过Cscope: look up symbol
实现,因为已经通过cscope.out建立了索引,所以结果很快,但结果不一定全面 注:使用Cscope的功能时,需按enter
键确定才会执行
比较:ST3 + Ctags + Cscope的方案基本可以实现Source Insight的常用有效功能(除了查看类继承关系的Relation Windows),且其速度更快,界面也更为清爽。ST3相比于SI的其他优点还包括:
(1)ST3使用Ctrl+P
搜索文件时,使用的是模糊匹配,不像SI必须顺次拼写正确才行 (2)ST3支持tab模式,可方便的在多个文件间切换 (1) Alt+O
可以实现头文件和源文件之间的快速切换
Ctrl+R
查看 (3) 通过 Preference -> Key binding user 可根据个人操作习惯自定义快捷键(包括ST3自带的和插件的) (4) 双击可选中光标所在单词,三击可选中光标所在行 (5) Ctrl+Shift+T
可以打开之前关闭的tab页,这点同chrome是一样的 转载地址:http://alpsi.baihongyu.com/