在python-mode(对于emacs)中,按Control-C\Control-C将执行当前缓冲区.但是,执行完成后,输出缓冲区会弹出并将编辑窗口分成两半.这是一个彻头彻尾的痛苦,特别是考虑到缓冲区中通常没有输出!
有没有办法阻止缓冲区出现?另外,我怎么能给程序员发送痛苦的电击,他们认为用空缓冲器意外地打断了我的思路是一个好主意?
编辑: 显然,这种行为有用,最值得注意的是看到程序的输出.这很好,但是如果没有输出(就像我正在修改的程序那样),用空白窗口将缓冲区切成两半真的很蠢.
你用的是什么python-mode?不幸的是,有几个.
键入Ch k然后键入Cc Cc ..它在模式行中说了什么?它是说"py-execute-buffer"还是说"python-send-buffer",第一种表示你正在使用Tim Peters的python模式,而第二种表示你正在使用Dave Love的python模式.
我自己更喜欢Dave Love的python模式,它是Emacs 23附带的版本(也许更早的版本?).当你运行Cc Cc时,Dave Love没有弹出缓冲区,如果你想看到它,你必须显式切换到*Python*缓冲区.
如果你真的想要坚持使用Tim Peters的版本,你总是可以在.emacs中添加类似下面的内容,除非明确移动到,否则你永远不会再看到输出缓冲区.
(defadvice py-execute-buffer (after advice-delete-output-window activate) (delete-windows-on "*Python Output*"))