(py-execute-region): Patch by Hunter Kelly so that execution uses the

correct Python shell (CPython or JPython).
This commit is contained in:
Barry Warsaw 1998-11-17 19:24:47 +00:00
parent 50cd34888b
commit 014e0e29b1
1 changed files with 4 additions and 4 deletions

View File

@ -1040,8 +1040,8 @@ comint believe the user typed this string so that
(defun py-comint-output-filter-function (string) (defun py-comint-output-filter-function (string)
"Watch output for Python prompt and exec next file waiting in queue. "Watch output for Python prompt and exec next file waiting in queue.
This function is appropriate for `comint-output-filter-functions'." This function is appropriate for `comint-output-filter-functions'."
;; TBD: this should probably use split-string
(when (and (or (string-equal string ">>> ") (when (and (or (string-equal string ">>> ")
;; NT XEmacs 21.0 kludge
(and (>= (length string) 5) (and (>= (length string) 5)
(string-equal (substring string -5) "\n>>> "))) (string-equal (substring string -5) "\n>>> ")))
py-file-queue) py-file-queue)
@ -1200,7 +1200,7 @@ is inserted at the end. See also the command `py-clear-queue'."
(interactive "r\nP") (interactive "r\nP")
(or (< start end) (or (< start end)
(error "Region is empty")) (error "Region is empty"))
(let* ((proc (get-process "Python")) (let* ((proc (get-process py-which-bufname))
(temp (if (memq 'broken-temp-names py-emacs-features) (temp (if (memq 'broken-temp-names py-emacs-features)
(let (let
((sn py-serial-number) ((sn py-serial-number)
@ -1216,7 +1216,7 @@ is inserted at the end. See also the command `py-clear-queue'."
;; always run the code in its own asynchronous subprocess ;; always run the code in its own asynchronous subprocess
(async (async
(let* ((buf (generate-new-buffer-name py-output-buffer))) (let* ((buf (generate-new-buffer-name py-output-buffer)))
(start-process "Python" buf py-python-command "-u" file) (start-process py-which-bufname buf py-which-shell "-u" file)
(pop-to-buffer buf) (pop-to-buffer buf)
(py-postprocess-output-buffer buf) (py-postprocess-output-buffer buf)
)) ))
@ -1231,7 +1231,7 @@ is inserted at the end. See also the command `py-clear-queue'."
(setq py-exception-buffer (cons file (current-buffer)))) (setq py-exception-buffer (cons file (current-buffer))))
(t (t
;; otherwise either run it synchronously in a subprocess ;; otherwise either run it synchronously in a subprocess
(shell-command-on-region start end py-python-command py-output-buffer) (shell-command-on-region start end py-which-shell py-output-buffer)
;; shell-command-on-region kills the output buffer if it never ;; shell-command-on-region kills the output buffer if it never
;; existed and there's no output from the command ;; existed and there's no output from the command
(if (not (get-buffer py-output-buffer)) (if (not (get-buffer py-output-buffer))