我寫一個小包裝農場出來的Emacs Lisp計算爲Python子進程,所以我沒有重現複雜數字例程。對於我的特殊問題,我需要Python作爲子進程,因爲我需要維護Python完成的一些耗時的計算。對於小事,我可以通過shell命令將計算髮送到Python來完成很好的事情。但是,我需要更密集的東西的子過程。
SETUP
GNU Emacs的25.2.1的Windows 10下
蟒蛇的的Python 3.5分發用於Windows 10
樣品運行
從任何緩衝區中,點擊M-x ielm。這將啓動IELM Emacs Lisp外殼。這裏是我的會話中的幾分鐘前:
*** Welcome to IELM *** Type (describe-mode) for help.
ELISP> (setq PyProc (start-process "python" "*python*" "python"))
#<process python>
ELISP> (process-list)
(#<process python> #<process ielm>)
ELISP> (process-status PyProc)
run
ELISP> (process-type PyProc)
real
ELISP> (process-send-string PyProc "1+1")
nil
ELISP> (process-send-eof PyProc)
#<process python>
當你運行上面的Emacs Lisp在IELM(或任何你想要的方式),你可以觀看蟒蛇緩衝區。沒有顯示。然而,正如你清楚地看到的,我可以殺死進程並查詢它的運行狀態。
問題
爲什麼Python進程無法顯示在蟒蛇緩衝什麼嗎?我已經使用MySQL來完成遠程服務器(使用本地安裝的MySQL)而沒有任何問題。