Как я могу заставить JShell перестать наматывать строки обратно на себя?

Я использую JDK 9 build 179 на Windows 7. У меня есть свойство " Размер буфера экрана " моей командной оболочки Windows 7, для которого задано большое число, потому что я так и делаю. Это нормально работает нормально; когда я просто использую оболочку Windows самостоятельно.

К сожалению, хотя, когда я использую JShell, мое свойство " Screen Buffer Size Width " игнорируется, и JShell переносит мои длинные строки обратно на себя. Когда строка переносится, она не создает новую строку. Вместо этого курсор удваивается назад к началу той же строки и перезаписывает символы в этой строке.

Посмотрите на эту запись экрана, чтобы понять, что я имею в виду.

Кажется, он использует крайний правый размер фактической ширины окна в качестве сигнала для переноса строки; игнорирование свойства " Размер буфера экрана ". Единственная цель этого свойства в жизни состоит в том, чтобы явно предотвратить перенос и разрешить длинные строки длиной до 9999 символов.

Я терпел эту надоедливую чушь с JDK 9 ea + 166. Я терпеливо ждал месяцами; ожидая, что это будет исправлено ко времени общего выпуска JDK 9. Нет такой удачи.

Пожалуйста, кто-нибудь может раскрыть мне секрет, как это исправить?

Заранее спасибо.

1 ответ

Поскольку Oracle официально подтвердила, что обнаруженная мною проблема действительно является ошибкой, мой собственный ответ на этот вопрос: " Вместо этого используйте интерактивную консоль BeanShell ".

bsh безоговорочно удовлетворил все мои личные потребности в Java REPL за восемь или десять лет. В настоящее время я не использую jshell, и в bsh я ничего не могу сделать; с гораздо большей легкостью и намного более интуитивно, на мой взгляд.

Несомненно, jshell делает пару вещей, которые не делает bsh. Но если, как и я, все, для чего вы используете Java REPL, это пробовать код в командной строке, то bsh не может быть побежден как уже зрелая опция Java REPL; Испытано и проверено тысячами (если не миллионами) разработчиков в течение многих лет ( фактически с 1999 года).

Другие вопросы по тегам