是否有颜色突出显示锯齿和错误模型文件的软件包?我安装了 ESS,但它似乎无法识别开箱即用的 .bug 文件或 jags/bugs 语法。
1 回答
语法高亮
我正在使用 ESS 5.14(来自 ELPA),语法高亮或智能下划线对我来说适用于 GNU Emacs 24.1.1。如果要突出显示给定文件,可以尝试M-x ess-jags-mode
或添加一个钩子以每次突出显示 JAGS 文件,例如
(add-to-list 'auto-mode-alist '("\\.jag\\'" . jags-mode))
但是,这并不是真正需要的,因为您可以简单地
(require 'ess-jags-d)
在你的.emacs
. BUGS 文件有相应的模式。该文件已包含在早期版本(至少 5.13)中,并附带相应的auto-mode-alist
(用于"\\.[jJ][aA][gG]\\'"
扩展)。
(请注意,使用 JAGS 和 BUGS 似乎存在一些微妙的问题,但我不能说更多,因为我只使用 JAGS。)
运行命令文件
如果你想坚持使用 Emacs 来运行 JAGS(即,而不是rjags或其他 JAGS/BUGS 的 R 接口),只需要知道一个命令:如ESS 手册中所述,在处理命令文件时,C-c C-c
应该创建一个.jmd
文件,然后C-c C-c
再次 'ing 应该将此命令文件提交给 Emacs *shell*
(在新缓冲区中),并jags
以批处理模式调用。在内部,此命令绑定到“下一步操作”指令 ( ess-*-next-action
)。例如,使用 JAGS 示例文件附带的鼠标数据,您应该得到mice.jmd
如下所示的:
model in "mice.jag"
data in "mice.jdt"
compile, nchains(1)
parameters in "mice.in1", chain(1)
initialize
update 10000
update 10000
#
parameters to "mice.to1", chain(1)
coda \*, stem("mice")
system rm -f mice.ind
system ln -s miceindex.txt mice.ind
system rm -f mice1.out
system ln -s micechain1.txt mice1.out
exit
Local Variables:
ess-jags-chains:1
ess-jags-command:"jags"
End:
注意默认文件名!在这里,假设数据在文件中mice.jdt
,参数的初始值在mice.in1
. 如果需要,您可以在 Emacs 缓冲区中更改它,以及修改要使用的链数。