Jediná instance gnome-terminal

Ahoj.

Co jsem začal používat tmux, chtěl bych také používat výchozí GNOME Terminál. Zatím ale zůstávám u Tilixu, protože se mi ho podařilo nastavit tak, aby:

  1. se otevřel na klávesovou zkratku Ctrl+Alt+T
  2. otevřel se na velikost celé obrazovky
  3. pokud už je otevřený, zkratka Ctrl+Alt+T přepnul na existující okno

Ty první dva požadavky nejsou problém a dokážu je jak pomocí nastavení GNOME a přepínačů s Tilixem i GNOME Terminálem. Ten poslední mi vlastně nefunguje pořádně ani v jednom.

V Tilixu alespoň jde nastavit pomocí --focus-window, aby se při Ctrl+Alt+T neotevřelo nové okno a vyskoči mi notifikace, že už ho někde mám.

S GNOME Terminálem mi nejde ale ani to. Našel jsem https://askubuntu.com/questions/82273/single-instance-of-the-gnome-terminal, ale přijde mi strašně nešikovné kvůli tomu instalovat nějaké další utility a psát další skripty.

1 Like

Tak bohužel, wmctrl nefunguje, protože GNOME Terminál běží pod Waylandem a taková okna wmctrl nevidí.

Poslední bod se mi tedy úplně splnit nepodařilo, ale alespoň ta notifikace podobně jako S Tilixem pomocí tohoto skriptu:

#!/bin/sh
PROCESS="$@"

if ps ax | grep -v "$(basename "$0")" | grep -v "grep" | grep "$PROCESS" > /dev/null
then
  notify-send "$PROCESS" "Process '$PROCESS' is already running"
else
  sh -c "$PROCESS"
fi

A komplet výsledek s nastavení zkratek atd. https://github.com/MikkCZ/ansible-fedora/commit/c0480c9118c412e3f4967a63c52be898813c7169.