用Emacs+etags+cscope可以让你的Emacs拥有比Source Insight强大的代码阅读功能。

etags: 这个是Emacs内置的功能,etags主要的功能是寻找一个变量或者函数的定义。用法如下:

1,生成TAGS索引文件:

etags `find . -name "*.[chS]"`

或  etags `find . -name "*.h" -o "*.cpp"

2,打开Emacs,读入TAGS

M-x visit-tags-table

3,

M-. :跳至相应的函数定义处;

M-* :返回刚才的函数名处;

C-u M-. :查找下一个tags

cscope:

首先到 Cscope 的主页 上去下载最新的源代码包,编译安装。要在 Emacs 里面 使用,首先必须把 xcscope.el 拷贝到 load-path 里面包含的目录里面。并在 ~/.emacs 里面加上 (require 'xcscope) 就可以了,或者,如果你希望在打开 c 或者 c++ 文件的时候才加载 xcsope ,可以写:

(add-hook 'c-mode-common-hook

'(lambda ()

(require 'xcscope)))

如果源代码全部处于同一个目录下面,现在就可以使用了。否则,如果源代码有 多层目录,或者其他地方还有附加的源代码,则需要 cscope-indexer 脚本。把 那个脚本拷贝到系统 PATH 里面去(如/usr/bin/)。如果所有的源代码以及子目 录都是在同一个目录下面的,只要执行 C-c s I(cscope-index-files) 就可以 生成 Cscope 的数据库,接下来就可以使用了。

默认是的快捷键都是绑定到 C-c s 的前缀上面,如果嫌麻烦的话可以自己更改 快捷键绑定。这是默认的用于查找的键绑定:

C-c s s Find symbol.

C-c s d Find global definition.

C-c s g Find global definition (alternate binding).

C-c s G Find global definition without prompting.

C-c s c Find functions calling a function.

C-c s C Find called functions (list functions called

from a function).

C-c s t Find text string.

C-c s e Find egrep pattern.

C-c s f Find a file.

C-c s i Find files #including a file.

下面是在搜索到的结果之间切换用的快捷键:

C-c s b Display *cscope* buffer.

C-c s B Auto display *cscope* buffer toggle.

C-c s n Next symbol.

C-c s N Next file.

C-c s p Previous symbol.

C-c s P Previous file.

C-c s o 跳转到定义处

C-c s u Pop mark.

emacs mysql代码阅读_Emacs + etags + cscope 阅读代码相关推荐

  1. 使用Vim+Ctags+Cscope阅读源代码

    2019独角兽企业重金招聘Python工程师标准>>> 因为所有设计思想.内部机制都是 以代码的形式实现,所有的资料也都是为了更好的诠释代码.那么一个好的阅读工具,能 够提高阅读的效 ...

  2. vim cscope php,使用Vim+Ctags+Cscope阅读源代码

    因为所有设计思想.内部机制都是 以代码的形式实现,所有的资料也都是为了更好的诠释代码.那么一个好的阅读工具,能 够提高阅读的效率和效果. • "Cscope"[4]为终端下的代码阅 ...

  3. 网站底部添加访客阅读次数总访问量在线人数代码

    简介: 网站底部添加访客阅读次数总访问量在线人数代码分享 请在此输入内容代码放置在 主题目录下:footer.php(放在合适的位置) 也可以调用自己的JS 下载JS后 上传到服务器 修改上方代码引用 ...

  4. 代码整洁之道 1-3阅读笔记

    一.有意义的命名 编写代码时,遇到的第一个问题大概就是命名,创建一个类.一个函数.一个变量时,都需要命名.这看似很简单但一个好的命名和差的命名,可是有着天差地别的区别的.好的命名,可以让人扫一眼,就大 ...

  5. 【C++】如何阅读别人的代码?如何阅读别人的C++代码?如何高效学习他人代码

    [ C/C++ ] 程序学习--如何阅读别人的代码 ++++++++++++ 第一章: 导论 ++++++++++++ 1.要养成一个习惯, 经常花时间阅读别人编写的高品质代码. 2.要有选择地阅读代 ...

  6. 如何读懂python代码_教你如何阅读 Python 开源项目代码

    作者: Destiny 来源:https://learnku.com/articles/23010/teach-you-to-read-the-python-open-source-project-c ...

  7. 怎样阅读一份PHP开源代码

    怎样阅读一份PHP开源代码 很多朋友估计都会在网上下载开源的PHP源代码,PHP源代码怎么用很简单:将PHP源代码拷贝到你的环境下,在浏览器中输入地址到源代码的install目录按照步骤安装就OK啦! ...

  8. java 答题卡_阅读下列说明和java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】 - 信管网...

    阅读下列说明和JAVA代码,将应填入(n)处的字句写在答题纸的对应栏内. [说明] 某大型商场内安装了多个简易的纸巾售卖机,自动出售2元钱一包的纸巾,且每次仅售出一包纸巾.纸巾售卖机的状态图如图6-1 ...

  9. java 答题卡_试题六(共15分) 阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某咖啡 - 赏学吧...

    试题六(共15分) 阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内. [说明] 某咖啡店当卖咖啡时,可以根据顾客的要求在其中加入各种配料,咖啡店会根据所加入的配料来计算费用.咖 ...

最新文章

  1. C语言考研复试知识点整理
  2. how to force opened by browser
  3. QT的QContiguousCache类的使用
  4. NXP(I.MX6uLL)DDR3实验——DDR3初始化、校准、超频测试
  5. mybatis中#{}和${}传参的区别
  6. 数据库笔记10:创建与管理视图
  7. 今日头条反省整改;微信QQ封杀短视频;雷军10亿赌约将见分晓| CSDN极客头条
  8. mysql 大文件导入工具_BigDump:导入超大mysql数据库文件工具
  9. d-s证据理论 matlab代码2
  10. 26款Java开源项目,劝你千万别错过,适合所有程序员
  11. 调研 微信小程序客服功能
  12. 对数学期望、方差、协方差、协方差矩阵的理解
  13. STM32学习笔记--I2C
  14. 笔试 | 数字IC设计之1bit的半加器、全加器实现
  15. 一篇文章教你正确解锁 代理ip 的使用方式,包含两个实战案例
  16. 七夕送什么礼物会让对方惊喜呢!2022最全情人节礼物指南
  17. 实现 等高线图 - 基于python-matplotlib
  18. 机器视觉(相机、镜头、光源)详细解析
  19. 实习市场竞争激烈,大一就去实习小伙伴们惊呆了
  20. MP4剪切合成时间计算

热门文章

  1. 微mysql命令行_mysql命令大全
  2. axis1 c# 接口 调用_java axis 调用C# webService的例子
  3. 7时过2小时是几时_飞机2小时和高铁7小时你愿意坐哪个?
  4. 最大子序列求和_连续子序列最大和与乘积问题的分析
  5. devops 工具_衡量DevOps成功的13种工具
  6. git web框架搭建_Git,Python Web框架,AI,机器学习,Android,Linux和更多必读内容
  7. 中国最佳广告创意图片_设计一个系统,以帮助赢得最佳创意
  8. drupal 使用补丁_使用Drupal解决大学需求
  9. python websocket异步高并发_python – WebSocket聊天异步示例崩溃
  10. 学计算机好轻松,猎证全国计算机等级考试学习系统