On Wed, May 19, 2021 at 4:01 AM Mark Roseman <m...@markroseman.com> wrote: > > > > On May 17, 2021, at 10:22 PM, Terry Reedy <tjre...@udel.edu> wrote: >> 5) Tabbed edit windows (already in IdleX). >> >> Tabbed windows, with not just editors on tabs, was one of my initial goals >> 11 years ago, along with using ttk widgets (done). Other things, including >> a bit of opposition, keep intervening. I will increment its priority. >> >> After Roger Sewey, IdleX author, got the commit bit, at my suggestion, he >> fixed about 10 issues in a few months, and then disappeared and quit >> contributing. To do tabbed windows, he must have made some preliminary >> changes that could have already been merged. (Separate the editor window >> into a menu window and a frame.) But no one else has yet dived into his >> tabbed window code to see if it is usable. Mark Roseman also said he did >> the same but I have not seen his code either. >> >> Part of the holdup is that the current class inheritance tree is wrong and >> needs to be refactored, without breaking things. >> > > Is there interest in building something akin to > https://tkdocs.com/images/idle_onewindow.png into IDLE in the foreseeable > future? > > I’ve considered updating the code I did a while back > (https://github.com/roseman/idle) but getting it from where it was to a > series of patches that would actually find it’s way into IDLE I thought would > be challenging due to multiple steps needed. > > As you say, restructuring things so that editors, shells, debuggers etc. are > assumed to fit in frames and not be their own toplevel was a starting point > (e.g., I introduced a generic ‘Component’ class). > > And to be honest, how to determine what is considered an “acceptable" UI > change for IDLE remains wholly opaque to me. There are still many things in > there that leave me scratching my head. > > Some things would be simplified now (e.g., at that point ttk wasn’t assumed) > but I’m still not confident about reworking that, with proper testing, etc. > to the point that it would be accepted into the main codebase.
Hi Mark, good to have you join this conversation! I've been through much of what you describe, including having my own fork of IDLE and trying to bring some of its improvements into CPython's IDLE... Like Roger Serwy, I was also given commit permissions to CPython to do this work, but could only manage to do rather little before running out of time and energy. Partly this is because getting something into CPython's IDLE is much harder, more so than I expected. Still, I've been able to continue contributing over the years. In recent years Terry J. Reedy has taken the lead on IDLE. Terry has been doing a fantastic job of moving IDLE forward while also fixing many bugs and making it more robust. He's also been very responsible in deciding which changes to make. Thanks to his stewardship, I think now is the best time in the past 15 years or so to attempt to bring such improvements into IDLE proper. I encourage you to try! Start with something significant, but not huge. Perhaps discuss this with us in advance, so that we can decide together what we'd like done and on the general approach, to avoid working a lot on something that is eventually rejected (I've gone through that too many times!). - Tal _______________________________________________ IDLE-dev mailing list IDLE-dev@python.org https://mail.python.org/mailman/listinfo/idle-dev