Cap*_*rog 5 sublimerepl sublimetext3
我在 R 和 Python 中使用 Sublime Text 3 和 SublimeREPL 作为我的命令。每当启动 SublimeREPL 时,它都会将当前工作目录设置为 Sublime Text 安装目录。这发生在 Windows 和 Mac OSX 上。通常,我需要从 R 或 Python 运行代码,这会打开一个文件,该文件与我正在运行的R或py文件位于同一文件夹中。在正常情况下(即不使用 Sublime Text),这可以正常工作,因为 R 或 Python 解释器知道在脚本所在的同一目录中查找。
然而,使用 SublimeREPL,命令作为文本“传输”到 SublimeREPL,因此 SublimeREPL 不知道程序来自哪里。因此,我需要在我的每个程序中明确指定我试图访问的文件的位置,这有点笨拙,特别是如果我的程序四处移动(他们这样做)。
有没有办法让 SublimeREPL 在启动时将当前工作目录设置为与当前活动脚本文件相同的目录?这将是一个很好的解决方法,因为这意味着如果我改为使用位于不同目录中的文件,则必须重新启动 REPL。

我有同样的问题并在这里找到了答案。
对于 Python 和 IPython,在您的Packages/User文件夹中创建 SublimeREPL/config/Python/Main.sublime-menu,并在其中指定"cwd": "$file_path" :
[
{
"id": "tools",
"children":
[{
"caption": "SublimeREPL",
"mnemonic": "r",
"id": "SublimeREPL",
"children":
[
{
"caption": "Python",
"id": "Python",
"children":[
{
"command": "repl_open",
"caption": "Python - Anaconda",
"id": "repl_python",
"mnemonic": "p",
"args": {
"type": "subprocess",
"encoding": "utf8",
"cmd": ["/path/to/Anaconda/python", "-i", "-u"],
"cwd": "$file_path",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "python",
"extend_env": {"PYTHONIOENCODING": "utf-8"}
}
},
{
"command": "repl_open",
"caption": "IPython - Anaconda",
"id": "repl_python_ipython",
"mnemonic": "p",
"args": {
"type": "subprocess",
"encoding": "utf8",
"autocomplete_server": true,
"cmd": ["/path/to/Anaconda/python", "-u", "${packages}/SublimeREPL/config/Python/ipy_repl.py"],
"cwd": "$file_path",
"syntax": "Packages/Python/Python.tmLanguage",
"external_id": "python",
"extend_env": {
"PYTHONIOENCODING": "utf-8",
"SUBLIMEREPL_EDITOR": "$editor"
}
}
}
]
}
]
}]
}
]
Run Code Online (Sandbox Code Playgroud)
我想,对于 R 来说也是一样的。
| 归档时间: |
|
| 查看次数: |
2847 次 |
| 最近记录: |