Как настроить громкость VLC с помощью qdbus?

Вы не можете.

Терминалы отправляют символы, а не ключи. (См. Как работает ввод с клавиатуры и вывод текста? для более подробной информации. )Но не все клавиши имеют соответствующий символ. Когда вы нажимаете клавишу или аккорд, у которого нет соответствующего символа, терминал отправляет последовательность символов, представляющую его, или, в некоторых случаях, непечатаемый -управляющий символ). Эти последовательности всегда начинаются с определенного символа, который называется escape-символом .Этот символ также является тем, что посылает Ctrl + [ .

Таким образом, если бы вы могли связать^[(Ctrl + [ ), это сломало бы все клавиши, которые отправляют управляющие последовательности. Например, Up отправляет либо три символа (^[, [, A), либо три символа (^[, O, A), в зависимости от терминала. Если бы вы могли переназначить ^[, то клавиша Вверх выполнила бы действие ^[, а затем вставила бы [и A.

Alt +charотправляет escape-символ, за которым следует char . Таким образом, если вы переназначаете M-[, вы действительно перепривязываете две -последовательности символов (^[, [), что может привести к поломке некоторых курсорных и функциональных клавиш.

Nano технически допускает повторную привязку^[(начиная с версии 2.5.3 ), но это не имеет никакого эффекта, потому что когда он читает ^[, он классифицирует это как начало управляющей последовательности (Я упрощаю бит )и никогда не ищет привязку для ^[. Nano явно запрещает повторное связывание M-[.

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

1
01.05.2020, 21:21
1 ответ

Лучше поздно, чем никогда :Немного погуглив, я наткнулся на эту ветку , где какой-то умный парень опубликовал не столь очевидное решение:

dbus-send --print-reply --session --dest=org.mpris.MediaPlayer2.vlc /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Set string:org.mpris.MediaPlayer2.Player string:Volume variant:double:1.0
0
28.04.2021, 23:16

Теги

Похожие вопросы