在Emacs中使用ECB
By:???????????? 潘云登
Date:????????? 2009-7-9
Email:???????? intrepyd@gmail.com
Homepage:http://blog.csdn.net/intrepyd
Copyright: 该文章版权由潘云登所有。可在非商业目的下任意传播和复制。
对于商业目的下对本文的任何行为需经作者同意。
?
写在前面
?
?
?
ECB代表的是“Emacs Code Browser”,顾名思义,用以浏览代码。ECB提供了四个窗口:
2???????? Directories窗口:显示目录结构;
2???????? Sources窗口:显示当前目录下的文件列表;
2???????? Methods窗口:显示当前文件中的函数/类/成员列表;
2???????? History窗口:显示最近访问过的文件。
本文简单介绍ECB的安装与基本配置,希望本文对您有所帮助。主要参考ECB帮助文档。
?
安装 ECB
?
?
正如绝大多数Emacs插件,ECB同样要求版本兼容,具体内容参考帮助文档的Installation部分。由于ECB的显示需要semantic的支持,因此在安装ECB之前,必须正确安装cedet/semantic,可参考《在Emacs中使用CEDET》。一切准备工作就绪以后,即可下载ECB包,并将其解压到Emacs插件存放的位置,如~/.emacs.d/site-lisp/。向.emacs文件添加以下内容,将ECB的安装目录加入到Emacs的load-path中,并且在Emacs启动时加载并自动启动ECB,同时屏蔽扰人的每日提示。
?
(add-to-list 'load-path "/home/pydeng/.emacs.d/site-lisp/ecb-2.40")
(require 'ecb)
?
;;;; 自动启动ecb,并且不显示每日提示
(setq ecb-auto-activate t
????? ecb-tip-of-the-day nil)
?
重新启动Emacs,就可以看到ECB提供的四个窗口。这时候,可以在Emacs执行“M-x ecb-byte-complie”编译,加快ECB的运行速度。
?
鼠标的支持
?
?
默认情况下,使用鼠标点击ECB窗口中的内容,不起作用。可以在Emacs中执行“M-x ecb-customize-most-important”,找到“Ecb Primary Secondary Mouse Buttons”选项,将其设为“Primary: mouse-1, secondary: mouse-2”,并且以“Save for Future Sessions”保存。
?
关于 ECB窗口的基本操作
?
?
在.emacs文件中加入如下按键绑定,方便执行ECB窗口的基本操作,包括窗口间切换、显示/隐藏ECB窗口、使ECB窗口最大化等。
?
;;;; 各窗口间切换
(global-set-key [M-left] 'windmove-left)
(global-set-key [M-right] 'windmove-right)
(global-set-key [M-up] 'windmove-up)
(global-set-key [M-down] 'windmove-down)
?
;;;; 隐藏和显示ecb窗口
(define-key global-map [(control f1)] 'ecb-hide-ecb-windows)
(define-key global-map [(control f2)] 'ecb-show-ecb-windows)
?
;;;; 使某一ecb窗口最大化
(define-key global-map "/C-c1" 'ecb-maximize-window-directories)
(define-key global-map "/C-c2" 'ecb-maximize-window-sources)
(define-key global-map "/C-c3" 'ecb-maximize-window-methods)
(define-key global-map "/C-c4" 'ecb-maximize-window-history)
;;;; 恢复原始窗口布局
(define-key global-map "/C-c`" 'ecb-restore-default-window-sizes)