Issue 27170: IDLE: remove Toggle Auto Coloring or add to edit menu & doc (original) (raw)
On Stackoverflow, person asked why syntax coloring sometimes stopped working, seemingly at random. https://stackoverflow.com/questions/37511276/how-to-make-python-idle-editor-to-change-line-colors-according-to-the-color-map
The OP finally traced the problem to hitting ctrl-/ because of habit from using PyCharm, which bind ^/ to something else. In IDLE, cntrl-/ is bound to <>, but that is not easy to discover. (If I ever halfway knew about it, I had forgotten.) There is no menu entry and, I am sure, no mention in the doc. There is only the hard-to-search list in the Keys tab of the configuration dialog. T think that this feature should either be visible on the menu and documented and enhanced, or deleted.
I am currently inclined to delete it as I cannot see hardly any use, and doubt that is sees real use, especially by beginners. It only affects the current window. It only affects future keystrokes (and pasted text), leaving current colorization as is. There is no indication that coloring is off until one types something that should be colored, and many will not know all the fine details. (This is why the SO OP had trouble pinning down the trigger.) If the toggle is kept, there should be an indication added to the status bar.
Searching all IDLE issues for 'toggle' returned 24 hits, none for color. I should check hg annotate for the author of the code and issue #, if not part of the original submission.
Looking more, there are lots of editor bindings that are not on the menu that are more important than this. Example: Center insert, ^L, scrolls text to bring insert cursor as close to the middle of the window as possible. It does move the position of the cursor within the doc. I discovered the existence of this and determined its actual behavior by reading the code.
Some are listed in the doc, section '2. Editing and navigation'. Anything that can be user configured can be discovered, but not everything is.
If this feature is kept, it should be on a submenu with other missing items.