I use KDE on arch and would like to achieve the following behavior:
Whatever way I launch Konsole, I want it to check whether there already is a Konsole instance. If one exists, it should be brought into focus, and if no instance exists, one should be launched.
I am unable to find such an option in the Konsole settings, even though I found a roughly 1 year old forum entry mentioning such a setting. Was it removed or am I just blind? Or do I need some optional dependency?
Alternatively, it would be fine if this could simply kick in when I use my Super+K shortcut, which I’ve set up. Maybe there’s a way to call Konsole from the terminal like that? I tried using konsole --force-reuse
but it didn’t seem to do the trick, and konsole --new-tab
does not bring Konsole into the foreground.
Edit: Here’s a script that does this, by @Audalin@lemmy.world
#!/bin/bash
WIN="$(kdotool search --class org.kde.konsole | head -1)"
if [[ "$WIN" != "" ]]; then
kdotool windowactivate "$WIN"
else
konsole
fi
kdotool
is available in AUR as kdotool-git
If you don’t find such a setting, you can try writing a script that checks if it’s running already (e.g. with
pgrep
), activates the window if found (no idea how to do that in Wayland properly) and launches a new instance otherwise. Then use a custom.desktop
launcher for Konsole.Thanks for your reply :) I might look into it if I don’t find anything easier
Here’s a KDE-specific script with
kdotool
(Wayland always needs custom solutions for simple things):#!/bin/bash WIN="$(kdotool search --class org.kde.konsole | head -1)" if [[ "$WIN" != "" ]]; then kdotool windowactivate "$WIN" else konsole fi
sweet! thank you so much!
deleted by creator
Well, that’s exactly what I did. My point was rather that there’s no single consistent way to do this across different DEs with different Wayland implementations - and that’s supposedly considered a feature from Wayland design’s perspective.
How have you read the part you quoted without reading the package name right in front of it?