RFR: 8352693: Use a simpler console reader instead of JLine for System.console() [v4]
Jan Lahoda
jlahoda at openjdk.org
Wed Apr 16 12:07:45 UTC 2025
> The `java.io.Console` has several backends: a simple on in `java.base`, a more convenient one in `jdk.internal.le` (with line-reading based on JLine) and one for JShell.
>
> The backend based on JLine is proving to be a somewhat problematic - JLine is very powerful, possibly too powerful and complex for the simple task of editing a line with no completion, no history, no variables, no commands, etc. As a consequence, there are inevitable sharp edges in this backend.
>
> The idea in this PR is to replace the use of JLine in the `jdk.internal.le` backend with a simple escape code interpreter, that only handles a handful of keys/codes (left/right arrow, home, end, delete, backspace, enter), and ignores the rest. The goal is to have something simple with less surprising behavior.
Jan Lahoda has updated the pull request incrementally with one additional commit since the last revision:
Reflecting review feedback: Adding makefile comment as suggested
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/24242/files
- new: https://git.openjdk.org/jdk/pull/24242/files/daa2cc39..d75641e2
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=24242&range=03
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=24242&range=02-03
Stats: 4 lines in 2 files changed: 3 ins; 0 del; 1 mod
Patch: https://git.openjdk.org/jdk/pull/24242.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/24242/head:pull/24242
PR: https://git.openjdk.org/jdk/pull/24242
More information about the core-libs-dev
mailing list