Emacs中的r-autoyas

Emacs中的r-autoyas,r,ess,yasnippet,R,Ess,Yasnippet,我正在尝试让r-autoyas在Emacs 23.3.1上工作 我已经安装了yasnippet,它自己也可以正常工作。对于EG:C++模式下的“Apple”选项卡自动扩展。然后我继续让r-autoyas工作。我已经按照github存储库中给出的说明进行了操作,但无法让选项卡扩展R缓冲区中的内置函数 如果我键入rnorm(然后按TAB),会打开一个小缓冲区,其中显示函数的各种参数。这是默认行为吗?还是应该将输入参数作为默认值填充,然后让我逐个更改 我在网上搜索,看看是否有人遇到过这个问题。在一个论

我正在尝试让r-autoyas在Emacs 23.3.1上工作

我已经安装了yasnippet,它自己也可以正常工作。对于EG:C++模式下的“Apple”选项卡自动扩展。然后我继续让r-autoyas工作。我已经按照github存储库中给出的说明进行了操作,但无法让选项卡扩展R缓冲区中的内置函数

如果我键入rnorm(然后按TAB),会打开一个小缓冲区,其中显示函数的各种参数。这是默认行为吗?还是应该将输入参数作为默认值填充,然后让我逐个更改

我在网上搜索,看看是否有人遇到过这个问题。在一个论坛上,有人提到这可能是因为Emacs中的自动完成功能

我的init.el文件中有以下几行,它们在说明中给出:

(需要“r-autoyas”)

(添加挂钩“ess模式挂钩”r-autoyas-ess-activate)


(添加hook'ess mode'yas/minor mode on)

您需要为ess/R添加您自己的yasnippets,以便任何yasnippet扩展都能工作。默认情况下,没有yasnippet

当您键入
rnorm(
时所看到的行为与yasnippet无关,这是ESS提供的使您的R编码生活更轻松的行为

因此--您必须为R创建自己的代码段。您需要在yasnippets所在的
text mode/ess mode
目录下执行此操作(您必须创建
ess mode
目录)

.我想我会更多地使用它们,但我只真正使用了
setGeneric
setMethod
代码片段……而且这些也不是那么防弹的