使用Sweave文档修改Emacs选项卡行为

时间:2012-02-12 06:43:53

标签: emacs sweave ess

在Sweave模式下,按Tab键不会移动光标并杀死我的自动完成选项(当我按Tab键完成代码时,完成消失而不是完成代码片段)。

如果我将空白区域移到缓冲区的中心,按下选项卡会将光标移回文件的最左侧。

当我编辑'foo.tex'或'foo.r'文件选项卡时,缩进和自动完成功能正常。有没有办法为Sweave(.rnw)文件定义标签行为?

1 个答案:

答案 0 :(得分:0)

您可以尝试在init文件中设置它。

(setq ess-tab-complete-in-script t)
(add-hook 'ess-mode-hook
      '(lambda()    
     (local-set-key (kbd "<tab>") 'ess-indent-or-complete)
     ))     

当你进入R代码块时,如果没有正确对齐,第一个 TAB 命中将缩进该行,否则它将自动完成该单词。您可以使用变量ess-first-tab-never-complete进一步自定义此行为,并确定是否仅在行尾,单词结尾等处发生完成(请参阅变量说明)。