[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-07 Thread Terry J. Reedy


Terry J. Reedy  added the comment:

Summary for users: Previously, Code Context displayed a fixed number of lines.  
Often, many were blank.  Hence the default *numlines* to display was small, 3, 
to avoid having too many blank lines.  However, 3 is often too small to display 
the complete context.

Now, Code Context initially displays a single blank line for 'no context', to 
show that the feature is active.  When the top visible line is part of an 
indented body, the context used as many non-blank lines as needed, up to a 
maximum of *maxlines*, which has a default of 15.  Because a new configuration 
option is used, there should be no interference between user settings for old 
releases and future releases. 

Initially, context lines are added to an expanded editor window.  When the 
height of the window has been maximized, perhaps with the zoomheight feature, 
and when the height of the window has been reset with the mouse, context lines 
replace normal code text.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread Terry J. Reedy


Terry J. Reedy  added the comment:

I am leaving this open until the new behavior is documented, even though it 
might be part of another issue that includes other context changes.

For this issue, I will leave what happens when unzooming unspecific.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread miss-islington


miss-islington  added the comment:


New changeset a42fe3c67ca86ac08dc6f47af27eed089d35fdd0 by Miss Islington (bot) 
in branch '3.6':
bpo-33642: IDLE: Use variable number of lines in CodeContext. (GH-7106)
https://github.com/python/cpython/commit/a42fe3c67ca86ac08dc6f47af27eed089d35fdd0


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread miss-islington


miss-islington  added the comment:


New changeset 0800b6c17a829ecb554d93cba8c97f92b15be52a by Miss Islington (bot) 
in branch '3.7':
bpo-33642: IDLE: Use variable number of lines in CodeContext. (GH-7106)
https://github.com/python/cpython/commit/0800b6c17a829ecb554d93cba8c97f92b15be52a


--
nosy: +miss-islington

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread miss-islington


Change by miss-islington :


--
pull_requests: +6964

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread miss-islington


Change by miss-islington :


--
pull_requests: +6963

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread Terry J. Reedy


Terry J. Reedy  added the comment:


New changeset 29996a1c4e8bd6dde6adce2b44d11a0982a47a3a by Terry Jan Reedy 
(Cheryl Sabella) in branch 'master':
bpo-33642: IDLE: Use variable number of lines in CodeContext. (GH-7106)
https://github.com/python/cpython/commit/29996a1c4e8bd6dde6adce2b44d11a0982a47a3a


--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-06-01 Thread Cheryl Sabella


Cheryl Sabella  added the comment:

I see similar behavior on Linux, except after maximizing and then minimizing, 
it seems to stay with option 2.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-31 Thread Terry J. Reedy


Terry J. Reedy  added the comment:

On Windows, I observe the following behaviors.

1. When Code Context is enabled on a windows still at its initial height, 
context lines are added to code lines to increase the window height.

2. When the window height is changed with a mouse, that becomes the fixed 
height, which is partitioned between context and code lines.  In other words, 
context lines are taken from and given back to code lines.

3. When height is maximized either with ZoomHeight or WindowMaximize, the 
behavior is as with 2.  When height is un-maximized, behavior reverts to what 
it was, either 1 or 2.

What do you see on Linux?

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-28 Thread Cheryl Sabella


Cheryl Sabella  added the comment:

I pushed a commit for these three items.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-27 Thread Terry J. Reedy

Terry J. Reedy  added the comment:

After testing the patch as a user, I would like 3 user-visible changes.

1. Only display a blank line when there are no context lines.

2. Replace the 'lines' option with a 'maxlines' option.  There is no need to 
worry about, or explain to users (see 3.) the possible complications of reusing 
'lines' with a different meaning.

3. Add a 'maxlines' entry to the General tab help page.  I will work on this 
either first or second.

I will post other thoughts on the master issue, #33610.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-27 Thread Terry J. Reedy

Terry J. Reedy  added the comment:

Unlinked duplicate PR entry.  I have no idea how that could happen.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-27 Thread Terry J. Reedy

Change by Terry J. Reedy :


--
pull_requests:  -6745

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-25 Thread Cheryl Sabella

Cheryl Sabella  added the comment:

I know we usually don't change defaults, but I had tested this one and I think 
it works.  After I changed it to 15 lines in master, I opened the installed 
version of IDLE 2.7.  Although it showed 15 fixed lines, it made sense since 
that was the number of lines in the 3.8 version.

I figured a typical user would be using whichever version of IDLE comes with 
their current Python.  So, at some point the OS would upgrade it and they would 
be moving from a version with fixed lines to a version with variable lines (for 
Python 3).  If they had previously changed their settings, it would still use 
whatever they had changed it to as the limit, but now the context area would 
grow and shrink (so they would know the change exists).  If they hadn't 
customized their settings, it would just change from 3 to 15.

If the user switches between two versions (like when I tested with 2.7), then I 
think seeing the changes almost makes more sense to them.  They can see it at 
15 in the new version and watch it grow and shrink.  Then it the 2.7 version, 
it looks the same, but without the expansion/contraction.  It's a demonstration 
of what makes the variable sizing nice to have.  Although it may lead to 
someone wanting it in 2.7.  :-)

Anyway, that was my thinking process.  When you try it out, you may not agree, 
but it made sense to me when I saw what was happening.

Note: one time this didn't quite work was when I set the line limit to 90.  3.8 
worked great -- just like it had with 15 (that is, it never ate the whole 
editor window).  But, under 2.7, it ate the whole window and without the 
`reload` in codecontext, changing the config didn't help until I restarted IDLE.

--

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-24 Thread Terry J. Reedy

Terry J. Reedy  added the comment:

2 quick thoughts.

1. I am not sure we can/should change the default, as it interacts with the 
recorded user changes for past versions.  The default is that we never change 
defaults.  (Having one user config for all Python/IDLE versions is a curse as 
well as a blessing.  I anticipate having to do something different, sometime.

2. I was thinking for '' instead of a blank line for when CC is on 
but there is no real context.  I think we should try both and see what seems 
better in use while moving down through a file.

--
versions: +Python 3.6

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-24 Thread Cheryl Sabella

Change by Cheryl Sabella :


--
keywords: +patch, patch
pull_requests: +6744, 6745
stage:  -> patch review

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-24 Thread Cheryl Sabella

Change by Cheryl Sabella :


--
keywords: +patch
pull_requests: +6744
stage:  -> patch review

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com



[issue33642] IDLE: Use variable number of lines in CodeContext

2018-05-24 Thread Cheryl Sabella

New submission from Cheryl Sabella :

Item 7 from #33610:
Change fixed # of lines to variable # of lines as needed, up to limit.  About 
15 is limit for 4-space indents in 80 char lines. 

* Change default number of lines to be 15 in config.
* Label in config dialog.
* Initialize context to be one blank line to show it's turned on.
* Remove padding of blank lines.
* Modify tests to show variable number of lines in context text instead of 
lines scrolling out of view.

Tip: For manual tests, help.py works really well in viewing 15 lines.

--
assignee: terry.reedy
components: IDLE
messages: 317649
nosy: cheryl.sabella, terry.reedy
priority: normal
severity: normal
status: open
title: IDLE: Use variable number of lines in CodeContext
type: enhancement
versions: Python 3.7, Python 3.8

___
Python tracker 

___
___
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com