emacs 中配置cscope

原创 2012年03月22日 13:42:48

emacs+autocomplete+cscope三者配合编程能极大提高编程效率,前面已介绍emacs配置autocomplete,接下来介绍一下如何配置cscope

1在emacs的配置文件~/.emacs中添加

;;LOAD_PATH       

(add-to-list 'load-path' "~/.emacs.d/xcscope")

 

2在.emacs文件中加入下面的语句

(require 'xcscope)

或者,你希望只在打开c/c++文件的时候才加载xcscope,可以加入

(add-hook 'c-mode-common-hook '(lambda() (require 'xcscope)))

 

3.xcscope默认的快捷键都是绑定到C-c s的前缀上面,如果你经常使用xcscope.el,可以自己进行按键绑定,减少击键次数。不要担心别人笑你懒,xcscope.el的编写者就鼓励我们这样做:-)。具体方法是,在.emacs文件中加入

(define-key global-map [(control f3)]  'cscope-set-initial-directory)

(define-key global-map [(control f4)]  'cscope-unset-initial-directory)

(define-key global-map [(control f5)]  'cscope-find-this-symbol)

(define-key global-map [(control f6)]  'cscope-find-global-definition)

(define-key global-map [(control f7)]  'cscope-find-global-definition-no-prompting)

(define-key global-map [(control f8)]  'cscope-pop-mark)

(define-key global-map [(control f9)]  'cscope-next-symbol)

(define-key global-map [(control f10)] 'cscope-next-file)

(define-key global-map [(control f11)] 'cscope-prev-symbol)

(define-key global-map [(control f12)] 'cscope-prev-file)

(define-key global-map [(meta f9)]     'cscope-display-buffer)

(define-key global-map [(meta f10)]    'cscope-display-buffer-toggle)

 

4.重启emacs,使配置生效。


基本使用

这里以内核源码为例,介绍Cscope的基本用法。

1.首先,在源码根目录下,如~/kernerl/linux-0.11,利用cscope-indexer脚本生成文件列表和数据库,方法是执行

cscope-indexer -r

 

2. C-s搜索sched_init函数,将光标停在函数名上,按C-c s d,回车

 


附:默认的按键绑定

;; * Keybindings:

;;

;; All keybindings use the "C-c s" prefix, but are usable only while

;; editing a source file, or in the cscope results buffer:

;;

;;      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.

;;

;; These pertain to navigation through the search results:

;;

;;      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 u         Pop mark.

;;

;; These pertain to setting and unsetting the variable,

;; `cscope-initial-directory', (location searched for the cscope database

;;  directory):

;;

;;      C-c s a         Set initial directory.

;;      C-c s A         Unset initial directory.

;;

;; These pertain to cscope database maintenance:

;;

;;      C-c s L         Create list of files to index.

;;      C-c s I         Create list and index.

;;      C-c s E         Edit list of files to index.

;;      C-c s W         Locate this buffer's cscope directory

;;                      ("W" --> "where").

;;      C-c s S         Locate this buffer's cscope directory.

;;                      (alternate binding: "S" --> "show").

;;      C-c s T         Locate this buffer's cscope directory.

;;                      (alternate binding: "T" --> "tell").

;;      C-c s D         Dired this buffer's directory.

 

 

Emacs 中使用 Cscope (xcscope.el)

 Emacs 中使用 Cscope (xcscope.el)  Emacs 中使用 Cscope (xcscope.el)Created: Fang lungang(方伦钢) 10/30/2006 M...
  • wzwind
  • wzwind
  • 2011年03月09日 10:25
  • 2521

Emacs Cscope安装

Table of Contents 1 前面的话2 安装Cscope 2.1 下载cscope2.2 编译安装2.3 配置2.4 使用2.5 加快索引速度 1 前面的...

Ubuntu14.04 emacs配置cscope

Ubuntu安装emacs: 1.先卸载之前安装的emacs: sudo apt-get purge emacs(卸载过程同时删除配置文件) sudo apt-get autoremove em...

Cscope在emacs中的配置与使用

在windows下通常使用source insight阅读源代码,本人希望将这项工作转移到linux下面。在配置并试用vim一段时间后,感觉不是特别满意。幸运的是,这个挑剔的人并不懒惰,开始尝试使用强...
  • HMSIWTV
  • HMSIWTV
  • 2012年05月17日 16:25
  • 1060

使用Emacs Cscope来阅读代码

Emacs的字体设置方法总结  在windows环境下使用emacs + cscope + ecb替代source insight(转)Emacs Lisp 功能扩展集锦emacs配置大全(cedet...
  • spche
  • spche
  • 2010年04月02日 15:13
  • 1684

我的Emacs配置(cscope-conf.el) -- 004

1. cscope 是c和c++代码代码索引工具2. 安装方法 : sudo apt-get install cscope     生成三个文件   cscope, cscope-indexer 和 ...

windows+putty+linux+emacs+cscope+auto-complete+ecb 将emacs配置为一个可以编程的IDE

远程连接使用emacs配置 本文介绍如何配置windows下的putty,通过ssh或者其它远程连接协议连接linux,在putty里使用emacs编辑查看代码,解决各种乱码问题,putty...

Emacs插件cscope+autocomplete

  • 2017年07月07日 23:03
  • 5.06MB
  • 下载

emacs_cscope

  • 2009年12月18日 08:05
  • 3.39MB
  • 下载

emacs ecb cscope 阅读源代码

声明:这篇博文全部内容均来源于网络,在这里针对自己的需要做了整理,主要是为了方便以后查找;参考资料全部在结尾给出。 步骤: 1、首先安装emacs:sudo apt-get install ema...
  • SOSO222
  • SOSO222
  • 2011年12月25日 14:56
  • 877
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:emacs 中配置cscope
举报原因:
原因补充:

(最多只允许输入30个字)