This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
Created on 2012年08月08日 07:20 by Tyler.Crompton, last changed 2022年04月11日 14:57 by admin. This issue is now closed.
| Files | ||||
|---|---|---|---|---|
| File name | Uploaded | Description | Edit | |
| Screen Shot 2012年08月08日 at 2.07.19 AM.png | Tyler.Crompton, 2012年08月08日 07:20 | Side by side comparison of Terminal and IDLE on the Macbook Pro with Retina Display | ||
| Messages (10) | |||
|---|---|---|---|
| msg167671 - (view) | Author: Tyler Crompton (Tyler.Crompton) | Date: 2012年08月08日 07:20 | |
I think this is more of a Tkinter issue than IDLE but since IDLE uses Tkinter, it inherits this "bug". Many programs that were not developed for the Macbook Pro with Retina Display still look great. Whereas others, look pixelated in some areas (i.e. the current stable release of Google Chrome IIRC (I installed the beta to get around that)), and some are just flat out pixelated everywhere. IDLE falls into the latter category. I know IDLE really has its issues and that few people use it, but it's a cosmetic change that I don't see being too difficult. Then again, I know hardly anything about how it is implemented. |
|||
| msg167676 - (view) | Author: Ned Deily (ned.deily) * (Python committer) | Date: 2012年08月08日 08:13 | |
Text rendering in Tkinter applications like IDLE is a service of the underlying Tcl/Tk implementation. Essentially, all that IDLE does is to pass text in a requested font face and font size through Tkinter to Tcl/Tk which may then use whatever approach it wants to render the text. IDLE does allow you to select a font face and text size in the IDLE Preferences Font/Tabs tab. You may want to experiment there to find a satisfactory combination of settings for your use. If you can't and there is something specific that needs to change, it will almost certainly have to be done by the Tcl/Tk project. Feel free to reopen this issue if you can identify specific deficiencies in IDLE or Tkinter. |
|||
| msg176415 - (view) | Author: Kevin Walzer (wordtech) * | Date: 2012年11月26日 14:37 | |
This can probably be fixed by setting this key in the app's info.plist file: <key>NSHighResolutionCapable</key> <true/> Under the hood, Tkinter/Tk-Cocoa uses CoreText to render text, and I understand this to adapt to high-res displays out of the box--as long as the proper key is set in the plist file. Only pixmaps/images require special developer handling to display properly on Retina displays. As IDLE does not use any such graphics, it should be fine. Can someone file a patch for the info.plist file, or at try editing the app's info.plist file and then testing on a high-res display? I do not have access to a Retina display machine on my system. Here are more details on how to enable the key and test it: http://apple.stackexchange.com/questions/53717/how-does-eclipse-work-on-new-retina-macbook-pros |
|||
| msg176424 - (view) | Author: Tyler Crompton (Tyler.Crompton) | Date: 2012年11月26日 16:31 | |
I can confirm that this works. The underscore does not appear when using the default font settings (Courier, size 10). I changed it to Courier New and all is fine. One may also want to increase the font size to 12 as the font is difficult to read when the property list has been fixed. I have no idea where to begin on the patch, though. |
|||
| msg176425 - (view) | Author: Ned Deily (ned.deily) * (Python committer) | Date: 2012年11月26日 16:45 | |
Tahnks for the suggestion, Kevin, and for testing, Tyler. I'll work up a proper patch and may ask you to test it, Tyler, as I also do not have access to a Retina display at the moment. |
|||
| msg181137 - (view) | Author: Roundup Robot (python-dev) (Python triager) | Date: 2013年02月02日 07:18 | |
New changeset 2274f3196a44 by Ned Deily in branch '2.7': Issue #15587: Enable Tk high-resolution text rendering on Macs with http://hg.python.org/cpython/rev/2274f3196a44 New changeset 7dfd84021494 by Ned Deily in branch '3.2': Issue #15587: Enable Tk high-resolution text rendering on Macs with http://hg.python.org/cpython/rev/7dfd84021494 New changeset 8fbab6648309 by Ned Deily in branch '3.3': Issue #15587: merge from 3.2 http://hg.python.org/cpython/rev/8fbab6648309 New changeset d8dcf87b8e49 by Ned Deily in branch 'default': Issue #15587: merge from 3.3 http://hg.python.org/cpython/rev/d8dcf87b8e49 |
|||
| msg181139 - (view) | Author: Ned Deily (ned.deily) * (Python committer) | Date: 2013年02月02日 07:28 | |
I've updated the plists for both IDLE.app and the framework Python.app to enable the high-resolution rendering. That should affect IDLE.app and bin/idle and any other Tkinter-based program, as long as they all are being run from a framework build of Python such as provided by the python.org OS X installers. Again, since I don't have access to a Retina display Mac, I cannot test the changes myself. The fixes will appear in the upcoming 2.7.4 and 3.2.4 releases as well as 3.3.1 and 3.4.0. It would be nice if someone with a Retina Mac could install one or both of the release candidates for 2.7.4 and 3.2.4 when available and report the results of testing. |
|||
| msg182468 - (view) | Author: Tyler Crompton (Tyler.Crompton) | Date: 2013年02月20日 04:40 | |
I will gladly test the changes. Where would I find these to download? |
|||
| msg182475 - (view) | Author: Ned Deily (ned.deily) * (Python committer) | Date: 2013年02月20日 06:43 | |
Thanks, Tyler. The 2.7.4 and 3.2.4 maintenance releases have been delayed due to some critical issues and so we don't have a new availability date for the first release candidates. I'll try to remember to ping here when that happens. |
|||
| msg184659 - (view) | Author: Ned Deily (ned.deily) * (Python committer) | Date: 2013年03月19日 18:36 | |
I've just run across an easy way to simulate a retina display on my MBP model (http://stackoverflow.com/a/13596261/145403) and have verified that the change in the plist makes a big difference in Tk text rendering, at least with A/S Tcl/Tk 8.5.13. So I'm going to close this now. Tyler, once the next releases are out, I'd still be interested to know how it works for you. |
|||
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2022年04月11日 14:57:34 | admin | set | github: 59792 |
| 2013年03月19日 18:36:48 | ned.deily | set | status: pending -> closed messages: + msg184659 |
| 2013年02月20日 06:43:41 | ned.deily | set | status: open -> pending messages: + msg182475 |
| 2013年02月20日 04:40:26 | Tyler.Crompton | set | status: pending -> open messages: + msg182468 |
| 2013年02月02日 07:28:01 | ned.deily | set | status: open -> pending versions: + Python 3.4 type: enhancement -> behavior messages: + msg181139 resolution: fixed stage: needs patch -> resolved |
| 2013年02月02日 07:18:14 | python-dev | set | nosy:
+ python-dev messages: + msg181137 |
| 2012年11月26日 16:45:08 | ned.deily | set | status: pending -> open assignee: ned.deily messages: + msg176425 stage: resolved -> needs patch |
| 2012年11月26日 16:31:51 | Tyler.Crompton | set | status: closed -> pending resolution: not a bug -> (no value) messages: + msg176424 |
| 2012年11月26日 14:37:41 | wordtech | set | nosy:
+ wordtech messages: + msg176415 |
| 2012年08月08日 08:13:59 | ned.deily | set | status: open -> closed versions: - Python 2.6, Python 3.1, Python 3.4 nosy: + ned.deily messages: + msg167676 resolution: not a bug stage: resolved |
| 2012年08月08日 07:20:16 | Tyler.Crompton | create | |