sDesk – Virtueller Desktop für Windows

Unter Unix werden virtuelle Desktops schon seit langem von vielen Window-Managern unterstützt. Auf der Suche nach einer vergleichbaren Lösung für Windows bin ich vor einigen Jahren auf sDesk von Jan Tomášek gestoßen.

Das Programm wurde zwar bereits im Jahr 2000 entwickelt und seitdem nur marginal verändert, trotzdem ist es funktional immer noch dem virtuellen Desktop meines Windows 7 überlegen.

Mit sDesk lassen sich auf einfache Weise beliebig viele virtuelle Bildschirme erzeugen, auf denen man seine Fenster übersichtlich verteilen kann. Per Mausklick oder Tastenkombination kann man zwischen ihnen wechseln. Das Programm erzeugt ein Übersichtsbild im Stile von fvwm, das es nur unter Unix bzw. X11 gibt.

Hat man sich einmal an sDesk gewöhnt, möchte man es nie mehr missen.

Ein einziges mal gab es ein Problem mit sDesk: Bei meinem Laptop mit angeschlossener Dockingstation ist die Auflösung der beiden Monitore unterschiedlich. Dadurch passte nach einem Wechsel zwischen Laptop und Dockingstation die Position des Vorschaufensters nicht mehr.

Nach langem Nachdenken und kurzem Googeln – eine Kombination, die auch beim Lösen anderer Probleme helfen kann – habe ich mit Hilfe von AutoIt ein Script erstellt, das mir das Vorschaufenster immer in die richtige Ecke setzt, egal ob ich am Laptop oder an der Dockingstation arbeite.

Hier der Quelltext mit Hinweisen, wie man das Script anpasst.

#cs -----------------------------------------------------------------
 AutoIt Version: 3.3.0.0
 Author:         Kurt Výjezd 
 
 Script Function:
	Template AutoIt script.
#ce ----------------------------------------------------------
 
sDeskPlace()
 
Func sDeskPlace();
  ; So lautet der Fenstertitel von sDesk
  $winname = "Semik's desktop"
 
  ; Mein Vorschaufenster liegt in der rechten unteren Ecke
  ; des Bildschirms. Daher muss ich 271 Pixel nach "links" und
  ; 110 Pixel nach "oben"
  ; Hier an die eigene Größe des Vorschaufensters anpassen!
  $x_offset = -271;
  $y_offset = -110;
 
  ; sDesk schließen, sonst funktioniert die Bestimmung der
  ; Bildschirmgröße nicht mehr
  WinClose($winname)
  ; Die Größe des aktuellen Bildschirms bestimmen
  $size = WinGetPos("Program Manager")
 
  ; sDesk starten
  ; Hier den Pfad anpassen!
  Run ( "d:\tools\sDesk\sDesk.exe" )
 
  ; Warten (maximal 5 Sekunden, das muss reichen) bis sDesk
  ; wirklich gestartet wurde
  WinWaitActive ($winname, "" , 5)
 
  ; So und jetzt das Vorschaufenster $x_offset Pixel in x- und
  ; $y_offset Pixel in y-Richtung verschieben, je nachdem
  ; in welcher Ecke man das Vorschaufenster platzieren will
  WinMove($winname, "",
    ($size[2] + $x_offset), ($size[3] + $y_offset))
 
  ; Fertig ist das Mondgesicht!
EndFunc

Jetzt muss man im Ordner „Autostart“ nur noch in einen Link auf das Script oder dessen compilierte Version erzeugen und schon – den vielen Nullen und Einsen sei Dank – liegt das Vorschaufenster von sDesk immer da, wo man es haben möchte.

Euer Kurt

P.S. AutoIt ist auch für andere Sachen gut.

Dieser Beitrag wurde unter Technik abgelegt und mit , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Kommentieren

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">