Как переключаться между режимами ввода-ввода через Терминал?

Я посмотрел на ответы на вопрос Как мне изменить клавиатуру из командной строки? Однако я обнаружил, что, хотя они указывают, как переключать источники ввода через Терминал, они не показывают, как переключаться между режимами источников ввода. Например, у меня установлен "Японский (Anthy)", в котором есть несколько различных настроек режима: Input mode, Typing mode, Segment mode, а также Dictionary mode, В каждом из них есть разные режимы, которые вы можете установить для этих настроек. Словно Input mode один обеспечивает режимы ввода, такие как Hiragana а также Katakana, Typing mode один позволяет вам переключаться между Romaji, Kana, а также Thumb shift, а другие имеют другие различные опции, которые вы можете изменить, чтобы изменить режим источника ввода.

Их очень легко изменить с помощью графического интерфейса, так как на панели AppIndicator есть только выпадающее меню, однако, поскольку мне понадобится некоторое время использовать TTY и не иметь доступа к обычному графическому интерфейсу, мне нужно знать, как переключаться между этими разными режимами в терминале. Так как это можно сделать?

По крайней мере, мне нужно знать, как переключаться между Input mode режимы.

Я использую Ubuntu GNOME 15.10 с GNOME 3.18.

1 ответ

Я почти уверен, что вы не добьетесь успеха в этом, если будете использовать классическую консоль tty вместо терминальной программы (на основе графического интерфейса пользователя).

Это связано с тем, как поступают входные данные. Когда вы используете такую ​​программу, как xterm, она получит входной поток из системы X Window. Таким образом, между клавишей, которую вы нажимаете на клавиатуре, и потоком ввода, предназначенным для приложения X, имеется много программного обеспечения для доступа к функциям. Такое программное обеспечение делает режимы ввода по вашему желанию - это не особенность, т. Е. Xterm.

Если вы используете консоль tty, вы почти голы. Вы работаете с бинарными файлами agetty, login и bash, и все они получают входные данные практически прямо из ядра. Есть некоторые раскладки клавиатуры между нажатой клавишей и входным потоком bash, но нет никакой функции, позволяющей достичь программного кода на этом пути, который бы делал полезные вещи, как вы хотите.

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