RFR: JDK-8214491: Upgrade to JLine 3.9.0
Robert Field
robert.field at oracle.com
Wed Dec 5 21:49:07 UTC 2018
On December 5, 2018 9:19:00 AM Jan Lahoda <jan.lahoda at oracle.com> wrote:
> Hi Robert,
>
> On 4.12.2018 23:59, Robert Field wrote:
>> I saw no issues with JShell tool and test portions of the webrev. I did
>> not review the nashorn changes.
>
> Thanks for looking at this!
>
>>
>> Testing it: editing multi-line snippets is vastly easier and more
>> intuitive.
>> There is one issue, with the old mechanism, as horridly clunky as it
>> was, you could add new lines of code (a frequently needed functionality).
>> Since <return> is accept, I could find no way to add lines with this
>> JLine 3 version. Thoughts?
>
> One possibility that comes to mind: pressing Enter inside the snippet
> would add a new line, Enter at the very end of a (complete) snippet
> would confirm that snippet. Could be fairly convenient/intuitive. What
> do you think?
Robert: that would certainly make adding new lines easy, but if you were
changing something in the middle, you'd have to navigate to the end of the
snippet then press enter.
I think we need different keys or key combos for the two actions. And in
that return is the established key for accept, we are probably stick with that.
Maybe we put this out explicitly to the list for ideas
>
>
>>
>> I looked into readline commands as an approach to addressing this, found
>> nothing. However, most readline commands worked. Ctrl-u however did not
>> behave as documented in readline (instead deleting to the beginning of
>> the line). I notice that the there is zero in-command documentation of
>> command-line editing -- not even a mention. Independent from the review
>> of this port, it seems we should have in-command documentation of
>> command editing -- even more so now that multiline editing is useful.
>
> This is about enhancing /help, right? I'll see what I can do.
Right. And that could easily be a separate bug.
/help keys
Or something
>
>
>>
>> The JShell User Manual will also need a little edit in the History
>> Navigation section.
>
> Where is that?
Tech pubs does that. Once we figure out the above, I'll file a bug.
>
> Thanks,
> Jan
Robert
>
>
>>
>> -Robert
>>
>>
>> On 11/29/18 1:06 PM, Jan Lahoda wrote:
>>> Hi,
>>>
>>> I'd like to update the internal JLine used by JShell and jjs to JLine
>>> 3.9.0. Two notable advantages of this version is multi-line snippet
>>> editing and better UI on Windows (escape sequence support on Windows).
>>> As a consequence, this patch drops EditingHistory, as it does not seem
>>> to be needed anymore.
>>>
>>> JBS:
>>> https://bugs.openjdk.java.net/browse/JDK-8214491
>>>
>>> The full patch is here:
>>> http://cr.openjdk.java.net/~jlahoda/8214491/webrev.00/
>>>
>>>
>>> To make the changes more clear, I've split it into two:
>>> -replacement of existing JLine with the new on in jdk.internal.le, no
>>> changes to JLine code:
>>> http://cr.openjdk.java.net/~jlahoda/8214491/webrev.00.replace/
>>>
>>> -tweaks to JLine (repackaging, eliminating references to j.u.l.Logger,
>>> adding hooks to wrap input streams with our stop-detecting input
>>> stream, adding unicode escapes to unicode characters, support for
>>> Windows without JNA), adjustments to JShell and jjs (unfortunately,
>>> 3.9.0 is not compatible with the JLine 2 branch, so the changes are
>>> substantial):
>>> http://cr.openjdk.java.net/~jlahoda/8214491/webrev.00.update/
>>>
>>> Any feedback is welcome!
>>>
>>> Thanks,
>>> Jan
More information about the kulla-dev
mailing list