1.安装ctags应用程序。
到CTags的官方网站下载最新版本,将解压后的ctags.exe放到系统环境变量的搜索路径中。一般是C:\windows\system32。
如果你想放到其他文件夹中,记得要将所在文件夹置于系统环境变量中。(我的电脑->右键属性->高级系统设置->(系统属性)高级->环境变量->系统变量->Path中添加 (路径前注意加分号))
2,安装Sublime Text 2的Package Control功能。(sublime现在可能集成了此项功能,如果步骤3可用,此步骤可以跳过)
打开Sublime Text 2,使用快捷键ctrl+`(功能菜单View->Show Console)呼出命令行,执行如下命令:
import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'
重启Sublime text 2。
3、安装Sublime Text3的Package Control功能。
import
urllib.request,os; pf
=
'Package Control.sublime-package'
; ipp
=
sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) );
open
(os.path.join(ipp, pf),
'wb'
).write(urllib.request.urlopen(
'http://sublime.wbond.net/'
+
pf.replace(
' '
,
'%20'
)).read())
4.使用Package Control功能安装ctags插件。
按下 Shift + Command + P 调出命令面板。输入 install 调出 Package Control: Install Package 选项。该选项会列出所有可被安装的插件,输入ctags,或者从列表中选择ctags进行安装。
5.使用ctags浏览代码
使用ctrl+t、ctrl+r 两个连续组合键,创建.tags工程符号索引文件(此时Sublime Text 2会自动调用第一步安装的ctags.exe)。.tags文件创建好后,就可以使用快捷键方便得进行代码浏览了。
Command | Key Binding |
---|---|
rebuild_ctags -重建ctags索引 | ctrl+t ctrl+r 组合键 |
navigate_to_definition -跳转到函数定义 | ctrl+t ctrl+t |
jump_back -跳回 | ctrl+t ctrl+b |
jump_back to_last_modification -跳转到上次修改处 | ctrl+t ctrl+m |
show_symbols -按函数索引查找 | alt+s |
sublime text 2或3中安装完ctags ,对函数进行两次ctrl+T,发现不能跳转,报错: can't find any relevent tags file
------------------------解决方法----------------------------------------------------------
原因是因为没有生成.tags索引文件
生成方法有两种:
1.sublime软件中,功能菜单File->Open Folder 打开要分析的目标文件夹,从左侧边栏中点击打开任意程序文件,按下crtl+T、ctrl+R组合键(即:最上行功能菜单Find->Ctags->rebuild tags),这时可以看到目标文件夹中生成了.tags索引文件,以及.tags_sorted_by_file。
2.Win+R:输入指令cmd,回车。cd指令进入要分析的目标文件夹,输入:ctags -R -f .tags
手动生成.tags文件。与方法一不同的是,不会生成.tags_sorted_by_file,不过在使用中尚未发现区别,对此欢迎大家完善补充。