хочу отметить по поводу этой проблемы:
Сам проект bluez по-прежнему содержит файл rfcomm.c, который можно легко скомпилировать с помощью:
gcc -lbluetooth rfcomm.c -orfcomm -DVERSION=xyz
... всего один файл, нет необходимости компилировать весь проект bluez. где xyz — версия загруженного bluez tar.xz исходного кода (5.46 теперь ). перед загрузкой следует сначала проверить собственный bluetoothd -v
и загрузить соответствующий источник. bluez -libs зависит только от успешной компиляции.
Мне нужен был rfcomm для armv7 (raspberry 2 )а для rfcomm нет пакета aur, и это был единственный способ, но он работает хорошо.
Все еще не уверен, почему rfcomm устарел, без хорошей альтернативы, и как общаться с bluetooth, поскольку это был последовательный порт другим способом. Потому что даже вы являетесь экспертом по python плюс эксперт по DBUS... (, как и вышеупомянутый владелец проекта, вероятно, )... тем не менее таким образом был предоставлен только fifo, а не реальное символьное устройство в /dev/... что все остальные программы (, такие как arduino ), могут видеть и работать.
Это частично приложение, частично конфигурация. В зависимости от того, предназначено ли описание терминала для имитации VT220 или ПК -, клавиатура редактирования -может иметь разные имена, присвоенные клавишам. В то же время приложение curses увидит только первое, поэтому дубликаты помечаются (тиковыми предупреждениями )и вообще удаляются.
Emacs не является приложением curses, но использует описание терминала, предоставленное ncurses. Таким образом, в описании вашего терминала будет отображаться тот или иной конец/выбор. Вы можете изменить описание терминала...
Дополнительная литература:Почему моя клавиатура не работает?
(Об этом есть более длинный комментарий в xterm файле terminfo ).
emacs прав. Что является исходной (исходной )управляющей последовательностью для клавиши выбора . Но это, скорее всего, правильно через окольный процесс.
DEC VT102 не имел клавиатуры редактирования. Это прибыло с более новыми моделями. Вот клавиатура DEC VT320 с клавиатурой редактирования, справа от центра над клавиатурой курсора.
Управляющие последовательности DEC VT220 для клавиатуры редактирования, откуда все это пошло, это (с возможностью кодирования модификаторов, добавленных начиная с DEC VT420):
1
~
или CSI1
;
Mods~
)2
~
или CSI2
;
Mods~
)3
~
или CSI3
;
Mods~
)или DEL 4
~
или CSI4
;
Mods~
)5
~
или CSI5
;
Mods~
)6
~
или CSI6
;
Mods~
)Консоль SCO XENIX Multiscreen работала на машинах с клавиатурами IBM Model M и определялась:
H
теоретически расширяемый до CSI1
;
ModsH
)F
теоретически расширяемый до CSI1
;
ModsF
)DEC VT52x скопировал некоторые элементы из консоли SCO, в том числе эти дополнительные последовательности управления. Было два возможных расположения клавиатуры редактирования на DEC VT52x:
Функции переходят к физически другому расположению клавиш под управлением настроек микропрограммы в самом терминале. Но отображения функций в их управляющие последовательности инвариантны .
Проблема в том, что благодаря самиздату и бабушкиным байкам люди перепутали их в нескольких терминальных эмуляторах . Эмулятор терминала, встроенный в ядро Linux, например, имеет ублюдочную смесь этих двух. Он использует «компоновку ПК», но (, несмотря на то, что в другом месте имитирует SCO Multiscreen ), отправляет неверные управляющие последовательности для home и end . Он отправляет управляющие последовательности find и select .
Эта ошибка теперь встроена. И оттуда она распространилась.
Это постоянно вызывает легкую икоту.
Наиболее частая проблема связана с неправильным типом терминала. В базе данных terminfo есть записи для putty
, mintty
,linux
и др.которые определяют соответствующие возможности kend
/ khome
/ kfnd
/ kslt
со значениями, выдаваемыми этими типами терминалов. Но если кто-то ошибочно вместо этого использует vt220
, так как mintty можно дополнительно установить в качестве TERM
переменной окружения , что minty отправляет как home и end понять приложения как найти и выбрать .
Это, вероятно, то, что происходит в вашем случае. Незначительная проблема заключается в том, что приложение, выполняющее понимание, — это tmux, которое распознает управляющую последовательность как select , в соответствии с унаследованным TERM
, установленным на что-то вроде vt220
, а затем повторно -кодирует его и передает дальше.
keyboard
. «Аппаратно-зависимый». Справочник системных администраторов SCO Unix . 1993 -02 -01. Операция Санта-Крус. архив.орг.