Ich möchte ein einfaches Tool schreiben, das Screenshots bei Wayland macht. Habe ich recht mit meinem Verständnis, dass es komplett anders als Xorg wäre? Kann mir jemand irgendwelche Beispiele geben?Wie man Screenshot unter Wayland macht?
Antwort
Ihre Frage ist ein bisschen unterspezifiziert. Sie müssen kein Werkzeug schreiben, solange Sie den Referenzkompositor Weston
für Wayland
verwenden. Es verfügt über diese Funktion eingebaut. Sie können Super + S
verwenden, um einen Screenshot und Super + R
zu erstellen, um ein Video in *.wcap
Form aufzunehmen, die Sie dann in ein *.webm
Video konvertieren können.
Wenn Sie wirklich daran interessiert sein sollten, ein solches Werkzeug zu schreiben, dann sollten Sie sich den Quellcode von Weston
hier ansehen: http://cgit.freedesktop.org/wayland/weston und finden Sie die relevanten Teile.
Ja Screenshot funktioniert unter Wayland völlig anders als unter Xorg.
von Entwurf ist Wayland viel sicherer als X11 und erlaubt es nicht, eine Anwendung den Inhalt von anderen Anwendungen Fenster zu erfassen, meanignath ein X11 basierten Screenshot-Tool kann nicht underWayland/Xwayland arbeiten.
https://bugs.freedesktop.org/show_bug.cgi?id=98672
Leider kann ich Ihnen nicht sagen, wie es anders ist, nur, dass es anders ist.
Ich benutzte Shutter, aber es schlägt mit Wayland.
gnome-screenshot funktioniert mit Wayland, aber an sich ist klobig, wenn es darum geht, Dateien direkt nach dem Grabben umzubenennen.
Ich habe 2 Skripte: shut.sh
#!/bin/sh
# call me shut.sh
gnome-screenshot -a -f /path/to/temp/grabcache.png
gnome-terminal -e "bash grabname.sh"
und grabname.sh
#!/bin/sh
# call me grabname.sh
read -p "Name for grab? " grab
cp /path/to/temp/grabcache.png /where/you/want/it/$grab.png
nautilus /path/to/temp
nun einen Hotkey definieren shut.sh auszuführen. Sie müssen die genauen Pfade zu jedem Skript angeben, es sei denn, Sie speichern die Skripts an einem Speicherort in Ihrer $ PATH-Variablen für die Shell.
Wenn Sie dann Ihre Taste drücken, erscheint ein Fadenkreuz auf dem Bildschirm, auf dem Sie ein Ziel auswählen können. Dies speichert grabcache.png in/path/to/temp.
Wenn Sie fertig sind, wird das Terminal geöffnet und Sie werden nach einem Dateinamen gefragt, um grabcache.png nach $ grab in/wo/Sie/wollen/it zu kopieren. Dann sollte sich Nautilus öffnen, um Ihnen den neuen umbenannten Greifer zu zeigen. Wenn Nautilus bereits geöffnet ist, müssen Sie möglicherweise manuell ALT-TAB dazu.