 `kill-output-from-shell' does The Right Thing."
   (let ((curbuf (current-buffer))
 	(procbuf (process-buffer proc))
-	(comint-scroll-to-bottom-on-output t)
+;	(comint-scroll-to-bottom-on-output t)
 	(msg (format "## working on region in file %s...\n" filename))
 	(cmd (format "execfile('%s')\n" filename)))
     (unwind-protect
-	(progn
+	(save-excursion
 	  (set-buffer procbuf)
 	  (goto-char (point-max))
 	  (move-marker (process-mark proc) (point))

   (apply 'make-comint py-which-bufname py-which-shell nil py-which-args))
  (make-local-variable 'comint-prompt-regexp)
  (setq comint-prompt-regexp "^>>> \\|^[.][.][.] \\|^(pdb) ")
  (set-process-filter (get-buffer-process (current-buffer)) 'py-process-filter)
  (set-syntax-table py-mode-syntax-table)
  ;; set up keybindings for this subshell
  (local-set-key [tab]   'self-insert-command)

sections of the Emacs manual for details, especially for the key
bindings active in the `*Python*' buffer.

Note: You can toggle between using the CPython interpreter and the
JPython interpreter by hitting \\[py-toggle-shells].  This toggles
buffer local variables which control whether all your subshell
