[issue12274] "Print window" menu on IDLE aborts whole application
Gabriel Genellina
report at bugs.python.org
Tue Jun 7 08:16:07 CEST 2011
New submission from Gabriel Genellina <gagsl-py2 at yahoo.com.ar>:
On Windows, IDLE closes all open windows and exits completely, without any error message, when selecting the "Print window" menu command.
Starting IDLE from inside a console, one can see the error message:
Exception in Tkinter callback
Traceback (most recent call last):
File "D:\apps\python32\lib\tkinter\__init__.py", line 1399, in __call__
return self.func(*args)
File "D:\apps\python32\lib\idlelib\IOBinding.py", line 453, in print_window
command = idleConf.GetOption('main','General','print-command-win')
File "D:\apps\python32\lib\idlelib\configHandler.py", line 245, in GetOption
type=type, raw=raw)
File "D:\apps\python32\lib\idlelib\configHandler.py", line 54, in Get
return self.get(section, option, raw=raw)
File "D:\apps\python32\lib\configparser.py", line 789, in get
d)
File "D:\apps\python32\lib\configparser.py", line 391, in before_get
self._interpolate_some(parser, option, L, value, section, defaults, 1)
File "D:\apps\python32\lib\configparser.py", line 440, in _interpolate_some
"found: %r" % (rest,))
configparser.InterpolationSyntaxError: '%' must be followed by '%' or '(', found
: '%s'
It is trying to read this entry from the config-main.def file:
[General]
print-command-posix=lpr %s
print-command-win=start /min notepad /p %s
For a ConfigParser file, those %s should be %%s instead. Previous IDLE versions (2.7 and 3.1) read the same entry without problem; I suspect they were using a RawConfigParser or processing the entry in a different way.
As a workaround, replacing %s with %%s in config-main.def is enough, until the code gets fixed.
----------
components: IDLE
messages: 137789
nosy: gagenellina
priority: normal
severity: normal
status: open
title: "Print window" menu on IDLE aborts whole application
type: behavior
versions: Python 3.2
_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue12274>
_______________________________________
More information about the Python-bugs-list
mailing list