当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 怎样对 Emacs 内置的函数进行 advice
帖子发表于 : 2008-03-24 11:09 

注册: 2007-04-12 23:20
帖子: 60
送出感谢: 0 次
接收感谢: 0 次
emacs的dired功能很强大,但是在目录跳转的时候会产生很多buffer,虽然用a进入可以避免,但是^回原目录的时候还是会产生新buffer。在网上搜索了一下说可以通过对内置函数进行advice来实现单buffer。代码如下:

(defadvice dired-find-file (around dired-find-file-single-buffer activate)
"Replace current buffer if file is a directory."
(interactive)
(let ((orig (current-buffer))
(filename (dired-get-file-for-visit)))
ad-do-it
(when (and (file-directory-p filename)
(not (eq (current-buffer) orig)))
(kill-buffer orig))))
(defadvice dired-up-directory (around dired-up-directory-single-buffer activate)
"Replace current buffer if file is a directory."
(interactive)
(let ((orig (current-buffer)))
ad-do-it
(kill-buffer orig)))

我的问题是不知道怎么进行advice,直接新建一个.el的文件还是怎样?
请做过相关设置的高手不吝赐教!


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-03-24 18:05 
头像

注册: 2005-08-15 0:04
帖子: 1880
地址: 南7技校
送出感谢: 0 次
接收感谢: 0 次
写进 .emacs 吧


_________________
飞得高,飞得低,学习再学习,多少大秘密!
http://zhan.blog.ubuntu.org.cn


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-03-24 19:44 

注册: 2007-04-12 23:20
帖子: 60
送出感谢: 0 次
接收感谢: 0 次
直接写进去吗?好,我试试


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-03-27 22:14 

注册: 2007-05-14 23:14
帖子: 264
送出感谢: 0 次
接收感谢: 0 次
用dired-single就可以了


_________________
KDE!!!
Linux 发行版永远都是在重复造轮子。
Linux 发行版总是把应由开发者关心问题抛给普通用户。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译