特别是,最好的片段包是什么?

特征:

  • 轻松定义新片段(纯文本、默认的自定义输入)
  • 代码片段中预定义位置之间的简单导航
  • 多次插入相同的自定义输入
  • 接受当前选定的文本作为自定义输入
  • 跨平台 (Windows、Linux)
  • 用简洁的编程语言(Perl、Python、Ruby 是首选)编写的动态求值表达式(嵌入代码)
  • 与 Emacs 中的其他包很好地共存

代码模板示例,简单 for C 中的循环:

for (int i = 0; i < %N%; ++i) {
  _
}

对于这样的通用代码,需要输入大量的代码。我想调用一个代码模板或摘要,该模板为我插入了样板代码。此外,它停止(按 TAB 或其他击键) %N% (我的输入取代了它)光标的最终位置是 _.

有帮助吗?

解决方案

TextMate 的片段 是最接近的匹配,但它不是跨平台解决方案,也不适合 Emacs。

第二个最接近的是 亚斯尼佩特 (截屏视频 显示主要功能)。但它会干扰 hippie-expand 我的设置中的包和嵌入式语言是 EmacsLisp,我对外部感到不舒服 .emacs.

编辑:在这里发布我的答案以允许投票 yasnippet.

其他提示

就我个人而言,我已经使用 Dmacro 多年了(ftp://ftp.sgi.com/other/dmacro/dmacro.tar.gz).

这是对其的评论,还提到了一些替代方案: http://linuxgazette.net/issue39/marsden.html

EmacsWiki 有一个 模板引擎页面.

其中,我用过 速度 在(遥远的)过去添加表格支持 html 帮助程序模式, ,但不知道过去15年它进展如何。

我会投票给 节奏片段 ...易于设置,功能强大(您可以在模板中运行任意 elisp - 这样您就可以小写内容,查找文件名和类,计算内容等),设置缩进,与缩写集成...我经常使用它;)

我投票给 http://cedet.sourceforge.net/srecode.shtml

它具有非常干净的语法,并且可以通过以下方式访问代码环境 Semantic.

它也是大型良好支撑的一部分 CEDET 发行版(内置于 Emacs 24.x 版本系列中)。

更新 https://github.com/capitaomorte/yasnippet 也是强大的模板引擎。但它使用丑陋的文件命名模式(您的文件名 === 模板名称),因为您无法将多个模板放入单个文件中并且存在国家字符集问题......

您可以尝试轻量级的解决方案 穆班网

它完全用 Elisp 编写,语法非常简单。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top