RFR: JDK-8189595: jshell tool: line redrawn on each completion

Robert Field robert.field at oracle.com
Sun Oct 29 15:19:52 UTC 2017


The most consistent (if not, in this case, the most helpful) would be like that but with the press tab for more message.

Robert


Sent from my iPad

> On Oct 29, 2017, at 7:40 AM, Jan Lahoda <jan.lahoda at oracle.com> wrote:
> 
>> On 27.10.2017 19:14, Robert Field wrote:
>> As is, there are a couple of nits: "hasSmart && hasBoth" is redundant,
>> "hasBoth" implies "hasSmart".  And with the approach, the last parameter
>> of the OrdinaryCompletionTask constructor is incorrectly named.
>> 
>> However, to the extent this fix works, it works by changing the behavior
>> of:
>> 
>>     494   boolean showItems = toShow.size() > 1 || smart;
>> 
>> But I think this is the wrong test to be making.  Rather, I think, what
>> needs to be tested is whether putting the prefixStr completes the
>> completion.
>> 
>> Example, before and after the fix:
>> 
>> jshell> int zxgrr
>> zxgrr ==> 0
>> 
>> jshell> double zxgrr() { return 0; }
>> |  created method zxgrr()
>> 
>> jshell> int x = zx<tab>
>> 
>> Yields a completion with "grr" and a show:
>> 
>> jshell> int x = zxgrr
>> zxgrr
>> 
>> jshell> int x = zxgr
> 
> I guess the question is what should happen if one types:
> jshell> zx<tab>
> 
> It currently does:
> jshell> zxgrr
> zxgrr     zxgrr()
> 
> jshell> zxgrr
> 
> And I think the smart handling is consistent with that (the items are present, only not displayed - overall the user needs to get to full items by pressing <tab>).
> 
> An alternative would be:
> jshell> zx<tab>
> //note - not repeat
> jshell> zxgrr<tab>
> zxgrr zxgrr()
> 
> jshell> zxgrr
> 
> In which case for in the smart case it would be:
> jshell> int x = zx<tab>
> jshell> int x = zxgrr<tab>
> zsgrr
> jshell> int x = zxgrr
> 
> Jan
> 
>> 
>> -Robert
>> 
>> 
>> 
>>> On 10/26/17 10:49, Jan Lahoda wrote:
>>> Hi,
>>> 
>>> Please review fix:
>>> http://cr.openjdk.java.net/~jlahoda/8189595/webrev.00/
>>> 
>>> For bug:
>>> https://bugs.openjdk.java.net/browse/JDK-8189595
>>> 
>>> Thanks,
>>>    Jan
>> 



More information about the kulla-dev mailing list