Здесь используется KDE, но может быть решение, которое работает и в других средах рабочих столов. Я часто имею дело со многими многими окнами. Большинство окон содержат много вкладок (например, окно Dolphin с множеством вкладок или Firefox, Konsole и т. Д.). Название окна будет меняться в зависимости от моей текущей вкладки (которая по большей части полезна в большинстве случаев), но при работе с таким количеством окон я бы хотел немного упорядочить их и иметь возможность вручную переименовать окно , переопределяя заголовок окна, который дает приложение . Я мог бы назвать одно окно Firefox «Исследования», а другое окно Firefox «Документация», чтобы можно было легко различать окна, которые я использовал для организации и группировать различные вкладки соответственно.
В идеале я мог бы щелкнуть строку заголовка окна и легко присвоить ей произвольное имя, но я бы согласился на решение, которое будет несколько более громоздким, если оно работает.
Я пытался, wmctrl -r :SELECT: -T "Research"
но это работает только временно (заголовок возвращается, когда приложение меняет его, например, при переключении вкладок).
--caption
опция командной строки, которая позволяет вам устанавливать заголовок окна, но я не думаю, что это именно то, что вы ищете.Ответы:
У меня была точно такая же проблема.
Поэтому я написал сценарий оболочки, который привязал к горячей клавише.
Когда я нажимаю горячую клавишу, он получает идентификатор окна текущего активного окна (того, которое имеет фокус).
Затем он дает вам всплывающее диалоговое окно, где вы вводите заголовок, который вы хотите, чтобы это окно было.
Затем каждый раз, когда это окно меняет свое имя, оно меняет его на нужный вам заголовок.
Чтобы использовать скрипт, вам необходимо:
fish
оболочки(я написал его в рыбе , а не Баш ПОТОМУ Баш дает мне головную боль)
kdialog
какой-то способ привязать скрипт к горячей клавише
(я использую
xbindkeys
, потому что все, что мне нужно было сделать, чтобы заставить его работать, было добавить:"[PATH TO SCRIPT]/[NAME OF SCRIPT]" Mod4 + t
(то есть клавиша окна + т)
к моему
/home/o1/.xbindkeysrc
)Спасибо этому чуваку , который дал мне информацию о волшебных вещах xprop.
(Например, год назад, а потом я так и не смог написать сценарий до сегодняшнего дня. XD)
PS Если любой новичок найдет этот ответ и не знает, как его использовать, просто спросите меня, и я проведу вас через него. ^^
РЕДАКТИРОВАТЬ: я обновил его, чтобы вы могли использовать его из командной строки с переключателями
-t
дляtitle_i_want
и-w
дляwindow_id
.Вот сценарий:
РЕДАКТИРОВАТЬ: я на самом деле больше не использую этот сценарий Fish;
Я переписал это в Ruby:
источник
То, что вы ищете, звучит как средство пометки окон . Я сомневаюсь, что KDE поддерживает это, другие WM (такие как XMonad, DWM и т. Д.) Делают .
Таким образом, одной из возможностей добиться этого повышения производительности было бы обменять
kwin
на XMonad и настроить XMonad для выполнения тегов . Механизм тегов XMonad, описанный во второй ссылке, должен был связать комбинацию клавиш, чтобы открыть подсказку, позволяющую пометить сфокусированное окно. (Конфигурация XMonad на самом деле является программой на Haskell, поэтому не стесняйтесь обращаться за помощью в #xmonad.Редактировать: Хотя я бы посоветовал всем хотя бы попробовать плиточный WM, я забыл указать, что, хотя XMonad обычно называют плиточным WM, существует режим "простого плавающего числа". Конечно, есть другие WM, которые поддерживают разметку и макеты без листов, но я не знаю об их совместимости с KDE.
источник
Поскольку нет способа установить заголовок окна для защиты от записи, не будет никакого решения этой проблемы, так как многие программы сбрасывают свой заголовок при различных действиях, как вы уже обнаружили.
Но, возможно, хорошее предложение для людей KDE и Gnome ;-)
источник
Я искал то же самое и по той же причине. Закончил тратить слишком много времени на этот сценарий из 70 строк.
Как это работает?
Затем он запустит цикл в фоновом режиме, проверяет каждые 3 секунды и устанавливает заголовок, если он меняется.
Предупреждение: не запускайте дважды в одном окне, скрипт не идеален.
пример имени скрипта:
sticky-title
источник