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

Jan Lahoda jan.lahoda at oracle.com
Tue Oct 31 13:51:08 UTC 2017


The patch updated to print a message like "press <tab> to see more" is here:
http://cr.openjdk.java.net/~jlahoda/8189595/webrev.01/

Does that look better?

Thanks,
     Jan

On 29.10.2017 16:19, Robert Field wrote:
> 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