Stealing focus: emacs, and PIL, in Windows
graham.fawcett at gmail.com
Sat Nov 26 19:05:13 CET 2005
damonwischik at gmail.com wrote:
> I'm using GNU Emacs 21.3.1 with python-mode 1.0alpha under Windows XP.
> Whenever I execute a command in an edit window (with
> py-execute-region), the output window steals the focus. How can I stop
> this happening?
> I commented out the command
> (pop-to-buffer (current-buffer))
> and now the command window no longer steals focus. But I don't know if
> this has any other side effects, or it there's a better way to prevent
> focus being stolen.
For someone who says he doesn't know Lisp, you seem to be doing just
Not sure if there would be side-effects. Note that py-execute-string,
py-execute-buffer, py-execute-def-or-class all use py-execute-region.
Their behaviour may be altered by your change. But it would be easy to
If you did encounter a problematic side-effect, you could define your
own "py-execute-region-custom" as a copy of py-execute-region but with
the (pop-to-buffer) call removed. Then use
(require 'python-mode) ;; if you're putting this in .emacs
(define-key py-mode-map "\C-c|" 'py-execute-region-custom)
to redefine the keyboard mapping. (The (require 'python-mode) call
ensures that the py-mode-map variable has been initialized.) You could
provide an alternate mapping for your new function, of course.
If you put the custom function and your define-key call both in your
.emacs file, then you can easily port it to other machines (perh.
easier than maintaining a patch for python-mode).
More information about the Python-list