Emacs defaultcontent.el-@@LISP标记-读取最近的sexp?
我开始使用来用内容填充新创建的缓冲区。 显然,这个模块没有被广泛使用。我想有3个人使用它,包括我和作者,因为当我搜索它时,我发布的emacs.el会成为第一个热门 尽管如此,我发现它很有用。我为每种文件类型指定一个模板,每次创建该类型(或扩展名)的新文件时,它都会被模板文件中的内容填充。该模板支持以“@@”开头的著名标记,这些标记在运行时会被替换:Emacs defaultcontent.el-@@LISP标记-读取最近的sexp?,emacs,elisp,Emacs,Elisp,我开始使用来用内容填充新创建的缓冲区。 显然,这个模块没有被广泛使用。我想有3个人使用它,包括我和作者,因为当我搜索它时,我发布的emacs.el会成为第一个热门 尽管如此,我发现它很有用。我为每种文件类型指定一个模板,每次创建该类型(或扩展名)的新文件时,它都会被模板文件中的内容填充。该模板支持以“@@”开头的著名标记,这些标记在运行时会被替换: 作者插入用户名 日期(明显) FILENAME,插入正在创建的文件的名称 ENV(xxx),插入环境变量xxx的值 还有一些其他的标签 例如,在
- 作者插入用户名李>
- 日期(明显)李>
- FILENAME,插入正在创建的文件的名称李>
- ENV(xxx),插入环境变量xxx的值李>
- 还有一些其他的标签李>
问题是 该模板中的一个著名标记是LISP,它声称运行任意elisp代码来生成要插入新缓冲区的内容。(用法:@@LISP(此处为LISP内容)@)。这取决于函数“读取最近的sexp”,我猜它只会在某个点读取sexp 我找不到这个函数。它不包括在defaultcontent.el中,而且我对elisp的了解不够,无法轻松创建它。我在emacs lisp\lisp.el中查找提示,但似乎不明显 问题:我如何将点的sexp读入变量 我猜这是elisp中的两行…尝试一下:
(require 'thingatpt)
(let ((sexp (thing-at-point 'sexp)))
(do-something-with sexp))
事实上,如果您忽略了“做某事”选项,则有两行代码:)在某一点上尝试:
(require 'thingatpt)
(let ((sexp (thing-at-point 'sexp)))
(do-something-with sexp))
事实上,如果您忽略“做某事”选项,则有两行:)