2

是否有颜色突出显示锯齿和错误模型文件的软件包?我安装了 ESS,但它似乎无法识别开箱即用的 .bug 文件或 jags/bugs 语法。

4

1 回答 1

3

语法高亮

我正在使用 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 缓冲区中更改它,以及修改要使用的链数。

于 2012-07-03T11:11:33.837 回答