Emacs Lisp 功能扩展集锦

2009-05-13 05:07:49来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


Emacs Lisp 功能扩展集锦
Emacs 具有超强的扩展性。这是当今没有任何其它编辑器可以比拟的强大特点。这里介绍一些很方便的 Emacs Lisp 扩展。
有链接的文件可能不是 Emacs 自带的,你需要下载el文件到你的 load-path 中的一个目录里。
所有文件可以点击链接下载,你也可以点击这里一次性下载所有 el 文件,但是不包括大型的 elisp 包,比如 dictionary. [
下载
]。
这里提供的下载是我正在用的版本。我没有列出我找到它们的地址, 因为我记不住那么多。如果你需要最新的版本,请查看文件里的网址 到作者的主页。
每个标题后面的lisp代码是需要写到配置文件里的东西。
session.el
  (require 'session)
  (add-hook 'after-init-hook 'session-initialize)
使用了这个扩展之后,你上次离开 Emacs 时的全局变量 (kill-ring,命令记录……),局部变量,寄存器,打开的文件,修改过的文件和最后修改的位置,…… 全部都会被记录下来。
加载了 session 之后菜单上会多两项:最近访问过的文件和最近修改过的文件。看这个


desktop.el(load "desktop")
(desktop-load-default)
(desktop-read)
如果你想保存上次打开的文件记录,那么可以使用 desktop。这是 Emacs 自带的。你只需要加入以上设置,然后 M-x desktop-save。以后 Emacs 启动时就会打开你上次离开时的所有 buffer.
M-x desktop-clear 可以删除记住的内容,你闲现在记住的 buffer 太多就可以采用这个办法。不过我还是建议用 ibuffer(见下) 来管理这些buffer,因为有时你会发现,如果删掉全部记住的buffer,以后你需要一定的时间来打开你经常编辑的文件!
如果session跟desktop配合,下次启动Emacs 的时候,就像根本没有关闭 Emacs 一样!多爽!
ibuffer.el
把这几行加入 .emacs 就可以把 C-x C-b 那个普通的 buffer menu 换成非常方便的 ibuffer 啦! (require 'ibuffer)
(global-set-key (kbd "C-x C-b") 'ibuffer)
使用了 desktop 之后有可能使你同时有几十个 buffer 同时打开着。有时你想把其中一些关闭,有时你想在某些 buffer 里寻找某个 regexp。这个时候你可以用 ibuffer,它有跟 dired 相似的界面。可以对 buffer 进行各种标记,排序,隐藏,查找,替换。非常好用。看看
这个抓图
就是我限定显示 emacs-lisp-mode 和 c-mode 的 buffer,按 major mode 名称排序,并做上一些记号的情况。
我常用的一个功能是,用 %-n 标记符合某种名字的 buffer,然后按 "O" 在这些buffer里寻找我需要的字串。比如在所有打开的后缀为 html 的 buffer 里寻找 "Emacs" 字样,得到
如下结果

browse-kill-ring.el
(require 'browse-kill-ring)
(global-set-key [(control c)(k)] 'browse-kill-ring)
(browse-kill-ring-default-keybindings)
方便的在 kill-ring 里寻找需要的东西。
你是不是经常按 C-y 放进一个 kill-ring 里的单元。然后 M-y,M-y,…… 来寻找你需要的很久以前剪切下来的东西?很费事吧?用了 browse-kill-ring 就好了。你只需要把它绑定到一个热键,比如 C-c k: 就能出现这样一个buffer。[
查看图形
]
kill-ring 里的内容都可以方便的浏览,粘贴。具体操作请在这个 buffer 里 C-h m 或者 ?.

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:软件大全 -- FreeSoftware

下一篇:安装实战:FreeBSD6.1桌面安装指南