file-template插件用法入门

写代码新建文件的时候,常常需要敲入一些固定的代码。比如我新建一个Node.js的源文件后,第一行写入的内容经常是

'use strict';

通过编辑器的模板功能,可以免去这些重复的输入。Emacs有不少插件可以实现模板的功能,file-template正是其中一款。

下载与安装

file-template无法使用Emacs的package-install命令安装,需要到这个页面下载,示例代码为

wget 'http://www.emacswiki.org/emacs/download/file-template.el'

假设下载后的文件绝对路径为/path/to/file-template.el,可以在Emacs配置中添加下列代码安装该插件

(load-file "/path/to/file-template.el")

配置

file-template支持定制,示例代码如下

(autoload 'file-template-auto-insert "file-template" nil t)
(setq file-template-insert-automatically 'ask)
(autoload 'file-template-find-file-not-found-hook "file-template" nil t)
(add-hook 'find-file-not-found-hooks 'file-template-find-file-not-found-hook 'append)

file-template-insert-automatically变量控制着创建新文件时向其中写入模板文件内容的行为,设置为'ask意味着在创建新文件时询问用户。

此外还需要配置新建的文件名模式与相应的模板文件的映射关系,可以通过修改file-template-mapping-alist变量来实现。

以创建org文件的模板为例。我先编写了如下内容

#+STARTUP: indent
#+STARTUP: showall

并保存到了路径为/path/to/template.org的文件中。使用ELisp提供的add-to-list函数可以方便地往列表中添加元素,示例代码如下

(add-to-list 'file-template-mapping-alist
             '("\\.org$" . "/path/to/template.org"))

全文完

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容