在Emacs中,当我正在编辑远程Python文件(使用tramp-plinkx:在Windows上)时,使用C-c !启动Python时,Python解释器会在远程主机上启动。
是否有任何方法可以编辑远程Python文件并启动本地Python解释器?
我正在使用python-mode(而不是默认的python.el)。
是否有任何方法可以编辑远程Python文件并启动本地Python解释器?
我正在使用python-mode(而不是默认的python.el)。
python-mode 通过 'make-comint
创建一个下级进程,该进程使用 'start-file-process
,该进程相对于变量 'default-directory
创建。因此,您可以有几种方法来解决这个问题。
第一种方法是将 'default-directory
更改为本地目录,例如:
(add-hook 'python-mode-hook (lambda () (setq default-directory "~"))
这样做的缺点是,C-x C-f 的行为现在不同了(从 ~
开始)。
另一种方法是仅针对调用 'py-shell
更改 'default-directory
,如下所示(未经测试):
(defadvice py-shell (around py-shell-different-directory activate)
"set default-directory just for py-shell"
(let ((default-directory "~"))
ad-do-it))