file-template插件用法入门
2017-07-11 本文已影响27人
Liutos
写代码新建文件的时候,常常需要敲入一些固定的代码。比如我新建一个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"))
全文完