Как я могу получить вход через уведомления в ударе?

[1120576] Если вы [1120941]действительно [1120942] хотите сделать это с помощью bash, вы можете:

tell application "System Events" to tell (process 1 where it is frontmost)
    click menu bar 1's menu bar item 3 -- File
end tell
Хотя это работает для простой целочисленной арифметики, bash не может работать с числами с плавающей точкой, так что если вы попробуете арифметическую операцию, которая приводит к появлению неинтегрированных чисел, то она будет неудачной. Ужасно. Бэш действительно не самый лучший инструмент для этой работы.[1120579]
2
09.06.2014, 08:36
1 ответ

Нет, это невозможно. По крайней мере, без использования расширения GNOME Shell.

Вот почему. GNOME, наряду с другими рабочими столами, использует стандарт рабочего стола из (не) группы стандартов FreeDesktop. Этот конкретный стандарт называется телепатией.

По сути, Telepathy предоставляет абстрактный способ работы с чатом для сеансов рабочего стола, таких как GNOME. Таким образом, в Telepathy клиент Telepathy (например, Empathy) не должен заботиться о том, по какому протоколу он обращается. Он просто разговаривает с Telepathy, а затем Telepathy пересылает этот запрос какому-нибудь демону, который на самом деле отвечает за передачу любого протокола, который вы используете. Эти демоны называются провайдерами телепатии. Все это связано с помощью магии D-Bus.

Эмпатия - это клиент телепатии, который представляет собой традиционное «приложение». Однако клиенты Telepathy не обязательно должны быть «приложениями» с окнами, строками меню, кнопками и всем остальным. Они также могут быть, о, я не знаю ... компонентом системы уведомлений.

Да, входные данные, которые вы видите, на самом деле являются подсистемой уведомлений оболочки GNOME, являющейся потребителем Telepathy. Уведомление вообще не связано с эмпатией: оно исходит от телепатии, а не от эмпатии.

Это означает, что «уведомление о вводе» не является общей структурой для ввода в уведомлениях. Не работает для произвольных вещей. Он только работает для Telepathy, и поэтому мы приходим к печальному ответу на ваш вопрос ... нет способа запросить ввод, подобный этому, из сценария оболочки.

Может быть, изучите zenity (1) ?

0
27.01.2020, 23:00

Теги

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