Прежде всего, согласно лицензии, вы можете использовать Calibri только при работе с Microsoft Office. Во-вторых, Calibri был разработан, чтобы сохранить информацию о показателях только с Microsoft Office, поэтому результат, который вы получаете, является преднамеренным. В-третьих, LibreOffice устанавливает бесплатный шрифт Carlito, который метрически совместим с Calibri, но не имеет тех же юридических ограничений, и вы должны настроить LibreOffice для замены Calibri Carlito (и Cambria с Caladea), чтобы сохранить визуальный аспект документа. Calibri не является частью MS Core Fonts и недоступен для Linux любым законным способом. MS C-Fonts или шрифты ClearType следует избегать, насколько это возможно, даже пользователям MS Office. Пожалуйста, ознакомьтесь с патентами, которые охватывают шрифты ClearType, и вы поймете, почему.
Я не знаю ни одного из готового решения.
Если вы используете X Window, вы можете легко написать сценарий оболочки на основе этого ответа. У вас будет цикл, в котором вы запускаете xprop -root _NET_ACTIVE_WINDOW, вырезаете из него идентификатор окна, затем передаете его на xprop -id ..., обрабатываете его вывод (например, grep для нескольких релевантных ключей) и храните его где-нибудь (например, добавьте в текстовый файл). Наконец, sleep, возможно, за 10 секунд в цикле.
Между тем, напишите несколько сценариев, которые обрабатывают файлы журнала (или загружают их в базу данных и т. Д.).
подход не может работать под Wayland из-за его модели безопасности, я боюсь, что вам нужно будет взломать компоновщик, чтобы сделать это для вас.
Чтобы проверить, какие окна имеют фокус, вы можете запустить это в терминале:
[romano:~] 3s 130 % while true; do
xprop -root _NET_ACTIVE_WINDOW
sleep 3
done
_NET_ACTIVE_WINDOW(WINDOW): window id # 0x3600006
_NET_ACTIVE_WINDOW(WINDOW): window id # 0x3a00010
(Обратите внимание, что если вы укажете команду xprop... при наборе текста, у вас, очевидно, будет ID оконечное окно, в которое вы печатаете ...)
Затем вы можете видеть , какие окна имеют фокус , с помощью:
[romano:~] % xprop -id 0x3a00010 _NET_WM_PID
_NET_WM_PID(CARDINAL) = 18522
... и затем выполните поиск с помощью любого из инструментов ps.
[romano:~] % ps -p 18522
PID TTY TIME CMD
18522 ? 00:04:55 firefox
Обратите внимание, что это работает с X11 --- нет представления о Wayland.
Я не знаю ни одного из готового решения.
Если вы используете X Window, вы можете легко написать сценарий оболочки на основе этого ответа. У вас будет цикл, в котором вы запускаете xprop -root _NET_ACTIVE_WINDOW, вырезаете из него идентификатор окна, затем передаете его на xprop -id ..., обрабатываете его вывод (например, grep для нескольких релевантных ключей) и храните его где-нибудь (например, добавьте в текстовый файл). Наконец, sleep, возможно, за 10 секунд в цикле.
Между тем, напишите несколько сценариев, которые обрабатывают файлы журнала (или загружают их в базу данных и т. Д.).
подход не может работать под Wayland из-за его модели безопасности, я боюсь, что вам нужно будет взломать компоновщик, чтобы сделать это для вас.
Чтобы проверить, какие окна имеют фокус, вы можете запустить это в терминале:
[romano:~] 3s 130 % while true; do
xprop -root _NET_ACTIVE_WINDOW
sleep 3
done
_NET_ACTIVE_WINDOW(WINDOW): window id # 0x3600006
_NET_ACTIVE_WINDOW(WINDOW): window id # 0x3a00010
(Обратите внимание, что если вы укажете команду xprop... при наборе текста, у вас, очевидно, будет ID оконечное окно, в которое вы печатаете ...)
Затем вы можете видеть , какие окна имеют фокус , с помощью:
[romano:~] % xprop -id 0x3a00010 _NET_WM_PID
_NET_WM_PID(CARDINAL) = 18522
... и затем выполните поиск с помощью любого из инструментов ps.
[romano:~] % ps -p 18522
PID TTY TIME CMD
18522 ? 00:04:55 firefox
Обратите внимание, что это работает с X11 --- нет представления о Wayland.