介绍
yasnippet是emacs下一套高效的模版(代码块)系統,它允许自定义模版内容并通过tab自动展示,省去了很多重复编写复杂代码块的时间,提高了开发的效率。
官方描述
YASnippet is a template system for Emacs. It allows you to type an abbreviation and automatically expand it into function templates.
安装
使用emacs自带的包安装工具,搜寻yasnippet,安装即可。其他的配置尽量使用 默认值,减少配置文件的大小。
使用
第一次使用的时候,会让设置是小任务栏模式还是独立窗口,可以根据自己的喜 好选择。
之后用以下命令建立一个模版。
M-x yas-new-sinippet
会新开一个窗口,让用户定义自己的模版,格式示例如下。
# -*- mode: snippet -*-
# name: hugo
# key: h
# --
#+HUGO_BASE_DIR: ../
#+TITLE: $1
#+DATE: `(format-time-string "%Y-%m-%d")`
#+HUGO_AUTO_SET_LASTMOD: t
#+HUGO_TAGS: $2
#+HUGO_CATEGORIES: $3
#+HUGO_DRAFT: false
$0
snippet的语法变量是以$美元符开始的,根据变量$1 $2 $… 定义顺序光标移动位置,特殊的$0是最后光标停位置
第1行是模板说明,也就是用鼠标点击yasnippet菜单里相应模式的模板的一些文字提示
第2行是语法要求,声明模板内容开始
第3行以后的,就是模板的内容了。
使用的时候,只要打出key关键字后按Tab,就可以快速引入模版的内容。