2

У меня есть Alphasmart Neo, который эмулирует клавиатуру при подключении к компьютеру для отправки текстовых файлов. В основном это работает как очень быстрая машинистка. Когда он ударяет акцентированный символ, он пытается использовать комбинации клавиш Alt Windows для их вставки.

Например, символ é отправляется как Alt + 0 2 3 3. Конечно, это только отправляет вздор под Linux, потому что он обрабатывает специальные символы по-другому.

Я не могу изменить способ отправки файлов с устройства.

Мне было интересно, есть ли способ временно эмулировать эти сочетания клавиш Alt Windows под Linux, чтобы файлы отправлялись правильно.

2 ответа2

0

Так что, кажется, есть обходной путь. Консоль Linux (Ctrl+Alt+F1) позволяет использовать коды Alt и отправка файла туда работает.

Тем не менее, я надеялся подражать этому в графическом интерфейсе. Но, кажется, это довольно сложно сделать, если не включено какое-либо низкоуровневое программирование. Я не приму этот ответ в течение нескольких часов, если у кого-то есть другое решение.

0

Не совсем то, что вы просите, но достаточно похоже, что это, вероятно, все еще будет работать:

Многие (но не все) платформы IME (включая ibus и fctix) в Linux поддерживают библиотеку m17n для предоставления IME. Библиотека m17n предоставляет множество простых в использовании IME (включая тривиальные переназначения клавиатуры для работы с различными языками). Один из них, просто называемый «Юникод», происходит почти так же, как и альтернативные коды. Единственными двумя отличиями являются:

  • Альтернативные коды зависят от того, какая кодовая страница вашей системы предназначена для устаревших приложений. IME m17n 'Unicode' использует шестнадцатеричные кодовые точки Unicode, которые на 100% непротиворечивы независимо от того, как еще настроена система.
  • Альт-коды требуют, чтобы вы удерживали клавишу Alt и использовали цифровую клавиатуру для ввода цифр. IME m17n 'Unicode' использует Ctrl-U в качестве последовательности триггера и позволяет вводить код любым удобным вам способом (при условии, что он соответствует требуемому шестнадцатеричному коду).

Итак, для вашего примера строчной латинской буквы «е» с острым акцентом точная последовательность для IME «Unicode» m17m будет Ctrl-U 0 0 e 9 . Численно шестнадцатеричное число 00e9 фактически идентично десятичному значению 0233, используемому для эквивалентного кода Alt с CP1252. Это происходит для большинства первых 256 символов в Юникоде, поскольку они в основном совпадают с CP1252 как в порядке, так и в положении. Эта эквивалентность, однако, не относится к более высоким числам.

Другие IME, предоставляемые m17n, которые могут представлять потенциальный интерес для вас, включают «Latin-Post» и «Latin-Pre», которые позволяют добавлять определенные символы после или перед буквой для создания диакритических знаков или специальных букв (для этого вы должны использовать либо e' или 'e соответственно) и 'RFC 1345', который использует мнемонику RFC 1345, чтобы позволить вводить подавляющее большинство широко используемых символов из BMP Unicode (и будет использовать тот же e' что и метод' Latin-Post ') ).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .