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 两个连续组合键,创建.tagsproject符号索引文件(此时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,只是在使用中尚未发现差别,对此欢迎大家完好补充。

sublime怎么实现函数之间的跳转的更多相关文章

  1. Sublime text追踪函数插件

    Sublime Text2/3怎样在Ubuntu中配置CTags插件 | 浏览:1278 | 更新:2014-03-05 10:34 1 2 3 4 5 6 7 分步阅读 本文详解在Ubuntu Li ...

  2. js 页面之间的跳转、传参以及返回上一页

    js实现html 页面之间的跳转传参以及返回上一页的相关知识点 一.页面之间的跳转传参 1.在页面之间跳转的方式有两种: window.location.href="test.html?nu ...

  3. Android activity之间的跳转和数据传递

    1.Activity之间的跳转 并且 传递数据 A Activity进行的操作 Intent intent = new Intent(context, B.class); intent.putExtr ...

  4. 微信小程序详解——页面之间的跳转方式【路由】和参数传递

    微信小程序拥有web网页和Application共同的特征,我们的页面都不是孤立存在的,而是通过和其他页面进行交互,来共同完成系统的功能.今天我们来研究小程序页面之间的跳转方式. 1.先导 在Andr ...

  5. 微信小程序开发--页面之间的跳转

    一.navigator--完成页面之间的跳转 1.新建一个页面文件夹 2.在app.json文件中引入页面 "pages": [ "pages/index/index&q ...

  6. Mvc中域的添加和不同域之间的跳转

    一.在新添加的域中中的 AreaRegistration中作如下设置: 二.在原来的Global.asax中设置: 三.不同域之间的跳转 @Url.Action("Index", ...

  7. sprig里的controller之间的跳转的问题

    学习spring的controller,发现controller之间的跳转有些地方搞的不是很清楚,如果通过controller的return语句实现跳转的话,会造成request的丢失:具体怎么回事首 ...

  8. iOS开发拓展篇—应用之间的跳转和数据传递

    iOS开发拓展篇—应用之间的跳转和数据传 说明:本文介绍app如何打开另一个app,并且传递数据. 一.简单说明 新建两个应用,分别为应用A和应用B. 实现要求:在appA的页面中点击对应的按钮,能够 ...

  9. iOS中两个APP之间的跳转和通信

    app间的跳转 一:在第一个app首先要做下面这些操作: 1.在info.plist文件中的Information Property List下添加一项:URL types. 2.点开URL type ...

随机推荐

  1. 数据视化Echarts+百度地图API实现市县区级下钻

    开始 这两天公司有个页面需要做数据可视化的展示,数据视化采用的是Echarts+百度地图API做展示,需要用到县级区级下钻的一个联动效果发现网上关于Echarts做到县区级下钻的资料很少,有的话也不是 ...

  2. SVN 代码下载,上传

    代码下载,如: svn co https://99.99.16.1:8080/svn/pavenas/webpy --username bg 代码上传,如: svn commit -m "备 ...

  3. iOS集成微信支付各种坑收录

    统一下单的参数要拼接成XML格式,使用AFN请求时要对参数转义,直接传入字典给AFN无法识别(这个接口微信demo中并没有提供示例) AFHTTPRequestOperationManager *ma ...

  4. 配置squid代理服务

    1. 简述一下squid的用途?squid可以做代理和缓存服务器,而做代理时,可以分为正向代理和反向代理.正向代理用在企业办公环境中,企业员工上网通过代理来上网,代理的缓存功能可以为企业节省宝贵的带宽 ...

  5. SQL自连接(源于推荐算法中的反查表问题)

    ”基于用户的协同过滤算法“是推荐算法的一种,这类算法强调的是:把和你有相似爱好的其他的用户的物品推荐给你. 要实现该推荐算法,就需要计算和你有交集的用户,这就要用到物品到用户的反查表. 先举个例子说明 ...

  6. AngularJs练习Demo17 ngRoute

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  7. Swift - defer关键字(推迟执行)

    在一些语言中,有try/finally这样的控制语句,比如Java. 这种语句可以让我们在finally代码块中执行必须要执行的代码,不管之前怎样的兴风作浪. 在Swift 2.0中,Apple提供了 ...

  8. Altium Designer极坐标布局方法

    1.键盘快捷组合 O+G,打开栅格管理器,点击左下角的“菜单”,在对话框中的选择“添加极坐标栅格”. 2.双击新添加的优先等级为1的栅格,在弹出的polar  grid editor 对话框中,对里边 ...

  9. 使用PHP解压文件Unzip

    这是一个非常方便的PHP函数从.zip文件解压缩文件.它有两个参数:第一个是压缩文件的路径和第二 function unzip_file($file, $destination) { // creat ...

  10. 关于ubuntu 系统

    1. ubuntu怎么卸载自带的软件中心?sudo apt-get remove software-center 2. 重新安装ubuntu软件中心!sudo apt-get install --re ...