classification
Title: IDLE Shell sidebar.
Type: behavior Stage: patch review
Components: Versions: Python 3.9, Python 3.8, Python 3.7
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: taleinat, terry.reedy
Priority: normal Keywords: patch

Created on 2019-08-21 06:47 by terry.reedy, last changed 2019-08-24 20:51 by taleinat.

Pull Requests
URL Status Linked Edit
PR 15474 open taleinat, 2019-08-24 20:50
Messages (2)
msg350054 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2019-08-21 06:47
This issue proposes to add a shell-specific sidebar to Shell.  It follows-up #17535, which added a line-number sidebar to module editors and implements the first phase of #37892, which proposes that the single statement editing area of Shell should be strictly just that.

Looking ahead to this issue, #17535 added both a generic Sidebar class and a specific LineNumber subclass.  This issue proposes to add a 3 char wide ShellIO subclass that would mark the beginning of the blocks of text added to the Shell history area. Labels, such as '>>>', 'Out', 'Inp', and 'Err' would be used for the first line of user code input, program stdout, user response to input() (there is only one line), and program stderr (which includes tracebacks).  I am not quite sure what to do with debug notices and warnings from the warning modules.  Maybe use 'Con', maybe use Dbg and Wrn.  I expect to test variations.

As with LineNumber, the font face and size will the the same as in the text.  The labels should use the highlight colors of their text block except that '>>>' should continue getting the 'console' colors.

I thing the initial implementation should not response to clicks.  After experimentation, we might decide that clicking on a label could select whole blocks, but I would like get the essential stuff right first.
msg350400 - (view) Author: Tal Einat (taleinat) * (Python committer) Date: 2019-08-24 20:51
See PR GH-15474 with an implementation.
History
Date User Action Args
2019-08-24 20:51:50taleinatsetmessages: + msg350400
2019-08-24 20:50:08taleinatsetkeywords: + patch
stage: test needed -> patch review
pull_requests: + pull_request15162
2019-08-21 06:47:13terry.reedycreate