2011-11-26 76 views
3

跟進question - 如果我有兩個運行在emacs中的python shell,我怎麼能指定從每個python腳本緩衝區發送到哪個shell命令?我懷疑它與python-bufferpython-set-proc有關,但將這些變量設置爲shell的名稱顯然不是解決方案。emacs python-mode:指定要發送命令的哪個python shell

編輯:其實因爲我使用python-mode而非loveshack蟒蛇,它可能沒有與python-bufferpython-set-proc做。

回答

1

在任何Python緩衝區中,可以使用變量py-which-bufname來控制執行代碼時發送給哪個Python shell。該變量是緩衝的地方,所以爲了將其設置爲自定義值,則需要按M-:,並進入其從緩衝區內更改以下

(setq py-which-bufname "My-Custom-Bufname") 

這也可以很容易地快速創建進程緩衝區:如果您將py-which-bufname設置爲沒有相應進程緩衝區的名稱,則只需發出C-c !即可快速創建一個進程緩衝區。

HTH

+0

案件關閉!謝謝 - 這正是我需要的。 – hatmatrix

2

您可以將一個新值設置爲python-buffer

(defun my-python-set-proc (buffer-name) 
    (interactive "B") 
    (setf python-buffer (get-buffer buffer-name)) 
    (python-set-proc)) 

然後中號 - Xmy-python-set-procRET*Python*RET,或 中號 - Xmy-python-set-procRET*Python*<2>RET

+0

感謝 - 這是我的錯誤,我建議使用'python-buffer'和'python-set-proc',因爲它們似乎是loveshack python而不是'python-mode'的相關變量。 – hatmatrix

0

PY-殼名稱設置默認,這可能是由命令

應緩衝代碼包含一個認領指定pythonVERSION被覆蓋,比這優先於默認設置。

您可以強制通過調用類的命令執行通過特定pythonVERSION緩衝PY-執行緩衝 - pythonVERSION

見菜單PyExec,進入執行緩衝......