turtledemo imports IDLE's Percolator, ColorDelegator, and read-only text viewer and uses the first two to colorize demo text it loads into the text viewer. This works fine for traditional dark on white text color themes but not for IDLE's new white, etc, on dark theme (IDLE Dark). The reason is that the text viewer was designed to display black on white text, not colorized code. IDLE's editor tells tk how to display normal text. The text view does not, so normal text is the default black on white. The result is that special items are color on 'black' (dark blue actually) while normal text is black on white. The strange result can be viewed by selecting IDLE Dark in the preferences dialog and then selecting Help - Turtledemo or running 'python -m turtledemo' in a console.
The immediate workaround is for anyone running turtledemo to use a normal color theme, at least temporarily. A longer-term solution might be to add a startup option to the text viewer to use the 'normal text' colors of the current theme.
I prepared and tested two slightly different patches for 3.5 and 3.6. I committed the 3.6 patch, then the 3.5 patch, and prepared a null merge (in default), but did not hit the commit button before pushing. I just finished the null merge, creating two heads (in default), which I merged (after updating to Martin's head) and pushed both. Everything looks good here after re-pulling. One of you could recheck in your clones.
---
turtledemo.__main__ creates a framework for running any of the demo files in the package. There is no test_turtledemo unittest. The test is to run it, either with python -m turtledemo in the console or Help => Turtle Demo in IDLE. Two summers ago, before adding the IDLE menu item, I loaded and ran each of the demos, patched a few, as well as .__main__, and re-ran, more than once.
For this issue, I only needed to load one demo with the IDLE Dark theme, or a custom version thereof, as the current theme. If someone has not customized the theme selection in IDLE, the default IDLE Classic, black on white, will be used.
Testing this issue also required running IDLE and loading a file to be sure the the revised editor still worked, and loading and running the colorizer file, to run its htest (which previously had the same problem as turtledemo).