问题标签 [yasnippet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
149 浏览

emacs - 将代码片段的自定义功能放在哪里?

我尝试创建一个需要一点 elisp 代码(大约 15 行)的片段。我不想把所有的代码都放在那里让代码片段看起来很丑。函数调用是最好的选择。但我不确定我应该把那个函数的代码放在哪里。

例如:(丑)

${1: $(这里是超长的省略代码)}

我期待类似的东西:

${1: $(my-function arg)}

那我应该把我的功能代码放在哪里?

0 投票
1 回答
1575 浏览

javascript - emacs 中的 Javascript 环境

我一直在尝试从 emacs 开始进行基于 node.js 的项目开发。

我无法为此设置我的emacs。它更像是一种反复试验的黑匣子,导致挫败感。你能帮我设置一下吗:

我安装了插件M-x package-install

我的 emacs 文件如下所示:

这是我最近添加的用于设置环境的部分;您可能会看到很多注释代码,表明我在任何地方都尝试过这个或那个。我主要关注的是:deadpansincerity,然后最近尝试使用turnongtx

我最想要的是 yasnippet 和 jslint 的自动完成功能吗?其他功能可以是插件,但我只在这些方面挣扎了两天。

我的 emacs 版本是 24.3.1,其中很多东西都会中断。

我观察到,经过 1 天的完整试验和错误,yasnippet 开始工作,但在重新启动 emacs 后它无法正常工作。这意味着我可能在该 emacs 会话期间通过重新加载 .emacs 文件做了一些正确的事情。但我又不知道在哪里发生了什么。

当我打开任何 js 文件并写入if并点击时,TAB什么也没有发生。

另外,M-x yas-expand写完之后if没有任何反应。但是消息确实来了You can run the command "yas-expand" with TAB,但这有时也会发生。

我记得在某个时间点,做上述任何事情都会显示昨天的 if-expanded。

好消息是我的 jslint 正在工作。我使用 npm 安装它并添加了 flymake。:) 我也可以使用 comint nodejs repl :)

任何帮助,将不胜感激。

我完整的 emacs 文件在这里我的 emacs

0 投票
1 回答
272 浏览

emacs - 如何永远不要在评论和字符串中扩展 yasnippets

我想if在注释和字符串中禁用 YASnippet 扩展(例如,),但找不到如何以通用方式执行此操作。

条件系统上,他们说如何为 Python 做这件事,但我想让它同时适用于所有 prog 模式,而且我不知道有任何函数可以独立测试“在字符串/注释中”的语言。

还有办法吗?

0 投票
2 回答
662 浏览

emacs - 用于不同编码风格的 Emacs Yasnippet

最近刚开始将 yasnippet 用于 emacs,并且非常喜欢它的工作方式,但是我遇到了一个小麻烦,如果可能的话,我希望得到一些帮助来解决。

我特别喜欢的一个片段是“for”片段,即:

然而,我最近开始从事一个我们有不同编码风格的项目。简单地说,上面的代码片段将被更改为将起始大括号位置设置为:

然而,我想轻松地在不同的项目之间切换,从而在不同的编码风格之间切换,而不必手动更改片段或创建许多重复项。所以我认为应该可以在代码片段中编写一些 elisp 代码来自动适应当前活动的编码风格。

环顾一些 Emacs/elisp 文档,我发现了所谓的 c-hanging-brace-alist ( GNU doc ),我觉得我应该能够以某种方式使用它。但是我从来没有真正在 elisp 中进行过任何编程,而且我不确定如何实现这一点。任何帮助或建议将不胜感激!

0 投票
0 回答
42 浏览

linux - 对于 emacs 片段,如何在一个片段中展开另一个片段

我想将另一个预定义的片段扩展为当前模板文件,我该如何实现?
例如:
假设我已经有一个名为“snippet1”的片段,我希望我可以这样写片段:

字符串(expand 'snippet1)只是一个例子。
如何实现?

0 投票
0 回答
67 浏览

emacs - 仅在扩展 yasnippet 中的片段时将 Cf 绑定到下一个字段

仅当当前位于片段扩展中时,是否可以将 Cf 和 Cb 绑定到 yasnippet 的 next-field 和 prev-field 函数?我试过寻找类似的东西yas-snippet-mapyas-minor-mode-map不起作用,因为只要我启用了 yas,它就会重新映射 Cf 和 Cb。

有任何想法吗?

先感谢您。

0 投票
0 回答
319 浏览

emacs - Yasnippet 在 Emacs 错误中使用木桶安装

我一直在尝试使用 Cask 安装 Yasnippet,但我无法让它工作。我已经使用 Cask 安装了其他软件包,它们似乎可以工作,但 Yasnippet 不会加载。当我打开 Emacs 并将 (yas-global-mode 1) 添加到我的 init.el 文件时出现此错误。

Cask 已被删除并重新安装在我的主文件夹中。/home/adam/.emacs.d/.cask/24.3.1/elpa/ 中的 Yasnippet 地图已被删除并使用 Cask 重新安装。

提前感谢您的帮助!

编辑:emacs --debug-init

0 投票
1 回答
160 浏览

emacs - 通过 emacs 为函数生成注释

功能 :

我需要这样的评论:

我可以通过 yasnippet 生成这样的评论吗?

在 vim 中,doxygentoolkit 可以做到。

我可以在emacs中使用哪个工具?

0 投票
1 回答
309 浏览

ruby-on-rails - 用于rails的emacs yasnippets

我正在使用 emacs 24.3.1 进行 rails 开发,目前在我的 rails 模型文件中最终使用 enh-ruby-mode。我想将 yasnippets 用于 rails 命令,例如:输入 'bt' + tab 扩展为 belongs_to。

我的 Rails 模板应该放入我的 enh-ruby-mode 片段目录吗?

0 投票
0 回答
1198 浏览

emacs - 组织模式和 Yasnippet

在 Emacs 中,如何修改 org-mode 键盘映射,以便 shift-tab 运行 yas-expand 而不是 org-shifttab?更好的是,我怎样才能使 shift-tab 仅在 point 位于片段触发器前面时运行 yas-expand ,否则运行 org-shifttab ?

另外,我在 org-mode wiki 中看到了这个条目。第一个选项不起作用,我无法让第二个选项起作用,因为我找不到backtab相当于org-tab-first-hook

Org 模式绑定键的方式(绑定到 [tab] 而不是 "\t")会否决 YASnippet 对该键的访问。下面的代码解决了这个问题:

最新版本的 yasnippet 不能很好地与 Org 模式配合使用。如果上面的代码不能解决冲突,请从定义以下函数开始:

然后,告诉 Org 模式如何处理新功能: