当前位置:  开发笔记 > 开发工具 > 正文

如何使用文件局部变量设置Emacs缓冲区名称?

如何解决《如何使用文件局部变量设置Emacs缓冲区名称?》经验,为你挑选了1个好方法。

我希望我的emacs缓冲区具有与文件名不同的名称.我不是每次都手动设置,而是希望根据文件内容自动执行此操作,例如:

//局部变量:
// buffer-name:MyName
//结束:

但这不起作用,因为buffer-name是一个函数,而不是一个变量.我怎样才能做到这一点?



1> Pierre..:

你可以说:

// Local Variables:
// eval: (rename-buffer "my-buffer-name-here")
// end:

这是一个技巧.

否则,您可以find-file-hook.emacs其中编写一个钩子,将缓冲区重命名为特定的局部变量内容.就像是:

(defvar pdp-buffer-name nil)

(defun pdp-rename-buffer-if-necessary ()
  "Rename the current buffer according to the value of variable"
  (interactive)
  (if (and pdp-buffer-name (stringp pdp-buffer-name))
      (rename-buffer pdp-buffer-name)))

(add-hook 'find-file-hook 'pdp-rename-buffer-if-necessary)

然后在您的特定文件中

// Local Variables:
// pdp-buffer-name: "pierre" 
// end:

拥有更多的脑力,你可以有一个更好的解决方案.

请注意,您的需求可能已存在扩展.查看Emacs维基.

推荐阅读
无名有名我无名_593
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有