Java мигающий курсор Терминал Ubuntu - PullRequest
0 голосов
/ 28 мая 2020

Я хочу остановить мигание курсора при запуске программы в Java с помощью команды Java в терминале Ubuntu. Как мне это сделать?

1 Ответ

0 голосов
/ 28 мая 2020

Ваша Java программа точно не контролирует терминал, с которого ее запустил пользователь. Я бы посоветовал вашей программе управлять своим собственным окном, которым вы можете управлять.

Но если вам не хочется этого делать, то одна идея состоит в том, что есть коды, которые некоторые терминалы Слушай. Это очень зависит от того, какой терминал вы используете, но Linux, похоже, в основном придерживается SPE c.

В справочных страницах Ubuntu даже перечислены его коды здесь: http://manpages.ubuntu.com/manpages/focal/man4/console_codes.4.html

В разделе ECMA-48 Set Graphics Rendition говорится, что ESC [ 25 m устанавливает blink off

коррекцию, как указано в VGR, это контролирует, мигает ли печатный текст, а не курсор мигает

Так что найдите и попробуйте несколько разных кодов для вашего конкретного c терминала и не забудьте запустить его с вашего терминала, так как ваш IDE-терминал не обязательно такой же:

// \u001B is ESC
public static final String ESC = "\u001B";
public static final String HIDE_CURSOR = ESC + "[?25l";

public static void main(String[] args) throws IOException {
    System.out.print(HIDE_CURSOR);
    System.out.println("Where'd your cursor go??");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...