Re: Über Skript mehrere Tabs in Konsole öffnen
Am Dienstag, 7. August 2012 schrieb Andre Tann:
> Servus zusammen,
Hi Andre,
> mit diesem [¹] Schnippsel versuche ich, eine konsole (also das
> KDE-Konsolen-Programm) und darin dann mehrere Tabs zu öffnen.
> Anschließend sollen ssh-Verbindungen auf allerlei Server hergestellt
> werden.
>
> Das funktioniert im Prinzip auch soweit. Allerdings öffnen sich die
> Tabs nicht in einer neu gestarteten konsole, sondern in irgend einer
> konsole, die gerade irgendwo offen ist.
>
>
> Hat jemand eine Idee, wie ich erreichen kann, daß die Tabs in einer
> bestimmten, extra neu gestarteten Konsole öffnen?
[…]
> [1]
>
> #!/bin/bash
[…]
> #####################################################################
> # Start sessions in konsole.
> function start_sessions()
[…]
> echo "Creating $name: $command"
> # Starting with a specific profile appears to be broken.
> #local session_num=$(qdbus org.kde.konsole /Konsole newSession
> $profile $HOME)
> local session_num=$(qdbus org.kde.konsole /Konsole newSession)
Von den anderen Methoden da, um Sitzungen nach links / rechts zu
verschieben, denke ich, dass hier Tabs gemeint sind
Ein neues Fenster gibts mit
qdbus org.kde.konsole /MainApplication
org.kde.KUniqueApplication.newInstance
Allerdings kommt da immer Null zurück. Ich weiß also noch nicht ganz, wie
sich genau dieses Fenster dann verwenden läßt, zumal die newSession-
Methode offenbar keine Fenster-ID als Argument nimmt und die MainWindows
keine Methode haben, die geeignet erscheint.
Es ist noch möglich an eine Fenster-ID zu kommen:
martin@merkaba:~> qdbus org.kde.konsole /konsole/MainWindow_4
org.kde.KMainWindow.winId
58720533
Allerdings ist MainWindow_4 ja auch geraten. Und wo läßt sich die ID dann
angeben?
Auf den ersten Blick sieht mir das nach einer Lücke in der DBUS-API von
Konsole aus – wenn ich da jetzt nichts übersehe. Vielleicht gibts aber
noch irgendwie ne Möglichkeit, das aktive Fenster zu setzen.
Merkwürdig, da die API ja sonst recht komplett ausschaut.
Ich empfehle einen Feature-Wunsch auf bugs.kde.org – an der Konsole
arbeiten immer wieder KDE-Entwickler, könnte also gut sein, dass jemand da
was einbaut. Ich würd das Skript als Beispiel mit in den Report und meine
Versuche hier mit reinpacken.
Das mit den Profilen geht hier:
martin@merkaba:~> qdbus org.kde.konsole /Konsole profileList
Terminal
Shell
Shell mit hellgelben Hintergrund
Shell mit weißem Hintergrund
martin@merkaba:~> qdbus org.kde.konsole /Konsole newSession "Shell mit
hellgelben Hintergrund" /tmp
28
martin@merkaba:~>
Profil muss allerdings im Menü sein, die anderen sehe ich mit profileList()
nicht. IMHO ein Bug.
Screen ist natürlich auch eine Alternative.
Ciao,
--
Martin 'Helios' Steigerwald - http://www.Lichtvoll.de
GPG: 03B0 0D6C 0040 0710 4AFA B82F 991B EAAC A599 84C7
Reply to: