fluxbox
может соответствовать окнам, основанным на определенных шаблонах самостоятельно. С, по крайней мере, fluxbox-1.1.1
это возможно:
Mod4 r :If {Some Matches (title=.*bash) (class=XTerm)} {NextWindow (xterm)} {Exec xterm}
(переводит в: on press windows-key + r: check, if there is a xterm with its title ending in 'bash'. if there is, go to that window; if not, open a new one
. С новейшей версией (мерзавец) можно даже перейти к окнам на другой рабочей области.
Единственная вещь, которую необходимо сделать, состоит в том, чтобы изменить заголовок (или любое другое свойство окна, несущего удар) в зависимости от того, что Вы делаете. при рассмотрении подсказки, необходимо установить свойство при запуске команды необходимо устранить то свойство. fluxbox
не может посмотреть в приложениях, это только знает об окнах.
В то время как создание блокировки может быть, покончили lockfile
команда или flock
системный вызов или путем создания каталога (который является uninterupptable действием) вторая часть более хитер.
Если блокировка существует - как Вы определяете, если блокировка принадлежит все еще рабочему процессу?
Наиболее распространенное решение состоит в том, чтобы поместить PID процесса в файл блокировки.
Прежде, чем попытаться создать блокировку необходимо проверить, существует ли файл блокировки уже. Если так, проверьте, соответствует ли PID рабочему процессу, который напоминает процесс, который должен создать блокировку. Если дело обстоит не так, удалите блокировку и воссоздайте ее.