2016-03-04 278 views
1

我想使用SublimeREPL在Sublime Text 3中运行R文件。在Preferences -> Browse packages...文件SublimeREPL\config\R\Main.sublime-menu中,我加入将R路径("id" -> "repl_r" -> "cmd" -> "windows"Sublime Text 3:运行R文件

[ 
    { 
     "id": "tools", 
     "children": 
     [{ 
      "caption": "SublimeREPL", 
      "mnemonic": "R", 
      "id": "SublimeREPL", 
      "children": 
      [ 
       {"command": "repl_open", 
       "caption": "R", 
       "id": "repl_r", 
       "mnemonic": "R", 
       "args": { 
        "type": "subprocess", 
        "external_id": "r", 
        "additional_scopes": ["tex.latex.knitr"], 
        "encoding": { 
         "windows": "$win_cmd_encoding", 
         "linux": "utf8", 
         "osx": "utf8" 
         }, 
        "soft_quit": "\nquit(save=\"no\")\n", 
        "cmd": {"linux": ["R", "--interactive", "--no-readline"], 
          "osx": ["R", "--interactive", "--no-readline"], 
          "windows": ["C:/Program Files/R/R-3.2.3/bin/x64/Rgui.exe", "--ess","--encoding=$win_cmd_encoding"]}, 
        "cwd": "$file_path", 
        "extend_env": {"osx": {"PATH": "{PATH}:/usr/local/bin"}, 
            "linux": {"PATH": "{PATH}:/usr/local/bin"}, 
            "windows": {}}, 
        "cmd_postfix": "\n", 
        "suppress_echo": {"osx": true, 
             "linux": true, 
             "windows": false}, 
        "syntax": "Packages/R/R Console.tmLanguage" 
        } 
       } 
      ] 
     }] 
    } 
] 
在工具

然后 - >构建系统 - >新建系统 我将它添加到文件:

{ 
    "target": "run_existing_window_command", 
    "id": "repl_r", 
    "file": "config/R/Main.sublime-menu" 
} 

当我运行file.R时,R程序启动并没有任何反应。

我已经做了python的这些操作,当我启动一个file.py一个新的选项卡sublime文本打开(称为:REPL [python])。当我运行file.R时,我想要同样的东西。

(对不起我的英语不好)


我所做的更改,但是当我运行该脚本,该窗口中的“REPL * [R]”打开与文本,R版本3.2.3(2015年12-10)... ...,但写在脚本中的命令不会掀起

test.R

print(1+1) 

我做工具 - >构建和什么都不显示


我把:

"windows": "windows": ["C:/Program Files/R/R-3.2.3/bin/x64/R.exe","-f","--ess","--encoding=$win_cmd_encoding"]}, 

我得到一个错误:Fatal error : Can not open file '--ess' : No such file or directory

而且随着

"windows": "windows": ["C:/Program Files/R/R-3.2.3/bin/x64/Rscript.exe","--ess","--encoding=$win_cmd_encoding"]}, 

我得到一个错误太:

file name is missing 
***Repl Closed*** 
+1

你尝试用'Rterm.exe'? – MattDMo

+0

我承诺如何使用它,谢谢你的帮助 –

回答

1

你是试图运行R GUI(图形用户界面)。 SublimeREPL预计R的命令行版本在Windows下称为Rterm.exe。只需更改该参数,并且您应该在Sublime中获得一个名为REPL [r]的新选项卡。您也可以致电R.exe。本节应该是这样的:

"windows": [ 
    "C:/Program Files/R/R-3.2.3/bin/x64/R.exe", 
    "--ess", 
    "--encoding=$win_cmd_encoding" 
] 

另外一个变化,你可能希望 - 如果你正在使用的R-Box包(我强烈推荐它),改变"syntax"线

"syntax": "Packages/R-Box/syntax/R Extended.sublime-syntax" 

我建议读一下SublimeREPL一点。您尝试自定义的配置菜单是在 Sublime中打开R REPL 。打开后,您可以使用Tools -> SublimeREPL下的命令将整个文件或文件片段发送到正在运行的REPL以进行评估。

+0

Downvoter - 你能描述我的回答有什么问题吗? – MattDMo

-1

@MattDMo写的一般是真的,但特别错误。Rterm.exe,Rcmd.exe都是旧时代的遗物(R v2?)。在相对现代的R安装中,运行脚本的方式是Rscript.exeR.exe -f。请检查R.exe, Rcmd.exe, Rscript.exe and Rterm.exe: what's the difference?了解更多信息

UPDATE

你可能要看一看Running R Code from Command Line (Windows)以及

+1

“Rterm.exe”是否仍然与“Rscript.exe”或“R.exe -f”一样? – MattDMo

+1

不幸的是,这是不正确的。在回答之前你真的测试过了吗?首先,使用'Rterm' * *会给出正确的行为。其次,'Rscript'用于运行脚本,不用于打开REPL,这正是我们在这里要做的。 'R -f'需要一个没有指定的文件名。 – MattDMo