Screenshot mit Drucktaste
Aus Gentoo Linux Wiki
| Terminals / Shells • X • Portage • System • Dateisysteme • Kernel • Netzwerk• Sonstiges • alphabetischer Tipp Index |
Inhaltsverzeichnis |
[Bearbeiten] Einen Screenshot erstellen
Es gibt mehrere Programme, um Screenshots zu erstellen. ImageMagick stellt ein Tool namens import zur Verfügung, welches jeden sichtbaren Bereich des X-Servers in eine Bilddatei schreiben kann. Man kann damit ein einzelnes Fenster, den ganzen Bildschirm oder auch nur irgendeinen viereckigen Bereich des Bildschirms aufnehmen.
Zuerst einmal imagemagick installieren
$ emerge -av imagemagick
Jetzt kann man mithilfe von import einen Screenshot erstellen. Um ein einzelnes Fenster ganz zu "capturen" einfach hineinklicken oder mit der Maus den gewünschten Bereich markieren
$ import screenshot.png
Wenn man den gesamten Bilschirminhalt braucht, hilft der Parameter -window root
$ import -window root screenshot.png
[Bearbeiten] Das ganze mit einem Script vereinfachen
Hier ist ein Script, das je nach Wunsch einen Screenshot eines Fenster, des ganzen Bildschirms oder eines gewünschten Bereichs erstellt:
| Datei: /usr/bin/screenshot |
#!/bin/bash
DIR="${HOME}/screenshots"
DATE="$(date +%Y%m%d@%H%M%S)"
NAME="${DIR}/screenshot-${DATE}.png"
LOG="${DIR}/screenshots.log"
# Testen, ob das Verzeichniss zum speichern der Screenshots existiert, andernfalls wird es erstellt
if [ ! -d "${DIR}" ]; then mkdir "${DIR}"; fi
# Screenshot von einem Fenster
if [ "$1" = "win" ]; then import "${NAME}"; fi
# Screenshot des gesamten Bildschirms
if [ "$1" = "scr" ]; then import -window root "${NAME}"; fi
# Screenshot von einem Bereich
if [ "$1" = "area" ]; then import "${NAME}"; fi
# Hänge den Dateinamen an die Logdatei an
echo "${NAME}" >> "${LOG}"
|
Nicht vergessen, das Script ausführbar zu machen
$ chmod +x /usr/bin/screenshot
Nun kann man das script mit "win" (für ein Fenster), "scr" (für den ganzen Bildschirm) oder "area" (für einen bestimmten Bereich) ausführen
Beispiele:
$ screenshot scr
$ screenshot win
$ screenshot area
Die Screenshots werden im Verzeichniss ~/screenshots gespeichert als screenhot-yyyymmdd@hhmmss.png.(Verzeichniss wird automatisch erstellt, falls es noch nicht existiert) (z.B. screenshot-20051203@130115.png)
Wenn man einen Bildbetrachter (z.B. gThumb) hat, kann man einfach eine Zeile an das Ende des Scripts anhängen, damit die Screenshots automatisch gleich geöffnet werden, nachdem sie erstellt worden sind.
Für gThumb, braucht man nur folgende Zeile ans Ende des Scripts anhängen:
gthumb "${NAME}"
[Bearbeiten] Integration in Window-Manager und Desktop-Umgebungen
In diesem Kapitel kannst du lernen, wie man Screenshots mit der "Drucktaste" oder durch das jeweilige Window-Manager Menü erstellt.
[Bearbeiten] Die Drucktaste belegen
Um den Keycode für die Drucktaste herauszufinden, kann man xmodmap -pke | grep -i print verwenden:
| Code: $ xmodmap -pke | grep -i print |
keycode 111 = Print Sys_Req |
Jetzt legen wir den Keycode 111 auf eine Funktionstaste (F13 in diesem Beispiel, aber es gehen auch andere), dannach bewirkt ein Druck auf die Drucktaste, dass das System meint, die Taste F13 ist gedrückt.
$ xmodmap -e "keycode 111 = F13"
Den Befehl auch in deine ~/.xinitrc Datei schreiben:
| Datei: ~/.xinitrc |
... xmodmap -e "keycode 111 = F13" ... |
[Bearbeiten] Spezifische WMs/DEs
[Bearbeiten] Fluxbox
Wenn du Fluxbox hast, kannst du folgendes in dein Menü schreiben
| Datei: ~/.fluxbox/menu |
...
[exec] (Screenshot Scr) {screenshot scr}
[exec] (Screenshot Win) {screenshot win}
[exec] (Screenshot Area) {screenshot area}
...
|
Man kann auch Tastenbindungen anlegen
| Datei: ~/.fluxbox/keys |
None Print :execCommand screenshot area Control Print :execCommand screenshot win Shift Control Print :execCommand screenshot scr |
Speichern, Konfiguration neu laden und benutzen
[Bearbeiten] Openbox
Wenn du Openbox hast:
| Datei: ~/.config/openbox/rc.xml |
<keybind key="Print"> <action name="Execute"><execute>/usr/bin/screenshot scr</execute></action> </keybind> <keybind key="C-Print"> <action name="Execute"><execute>/usr/bin/screenshot win</execute></action> </keybind> |
Speichern, Konfiguration neu laden und benutzen
[Bearbeiten] Enlightenment
Wenn du Enlightenment hast:
| Datei: ~/.enlightenment/keybindings.cfg |
...
__KEY F13
__EVENT __KEY_PRESS
__MODIFIER_KEY __NONE
__ACTION __A_EXEC /usr/bin/screenshot scr
__NEXT_ACTION
__KEY F13
__EVENT __KEY_PRESS
__MODIFIER_KEY __CTRL
__ACTION __A_EXEC /usr/bin/screenshot win
__NEXT_ACTION
...
|
Speichern, Enlightenment neustarten und genießen.
[Bearbeiten] IceWM
Die Tasten sind in ~/.icewm/keys gespeichert.
Dieses Beispiel benutzt Ctrl und die Drucktaste und führt screenshot aus.
key "Ctrl+Print" screenshot
Nicht vergessen IceWM neuzustarten, damit die Änderungen aktiv werden
[Bearbeiten] fvwm2
Die Konfigurationsdatei ist ~/.fvwm2rc.
Um mit der Drucktaste einen screenshot vom gesamten Bildschirm anzufertigen, folgende Zeile in die Konfigurationsdatei eintragen:
Key Print A N Exec /usr/bin/screenshot src
Um mit Steuerung-Drucktaste ein Fenster abzuspeichern ist folgende Zeile da:
Key Print A C Exec /usr/bin/screenshot win
Nicht vergessen fvwm2 neuzustarten, damit die Änderungen aktiv werden.
[Bearbeiten] Xfce
Im Einstellungs-Menü, Fenster-Manager auswählen und zum Tastatur Register wechseln
Wenn die Tastenkürzel ausgegraut sind, kann man ein neues Tastatur-Layout mit "Hinzufügen" anlegen und einen Namen dafür vergeben.
Jetzt in der Kommando-Kürzel Box nach unten bis zu einer leeren Befehlszeile scrollen und Doppelklicken. In der Eingabeauforderung kann man den Befehl, z.B. 'screenshot scr' hinzufügen. Ok drücken und die gewünschte Taste drücken
[Bearbeiten] Andere
Wenn du keinen oben genannten Window-Manager benutzt, kannst du ebenso xbindkeys verwenden:
$ emerge -av xbindkeys
Dann folgendes zu ~/.xbindkeysrc hinzufügen:
| Datei: ~/.xbindkeysrc |
"screenshot scr" F13 "screenshot win" control + F13 |
Speichern, xbindkeys ausführen/neustarten und genießen.
[Bearbeiten] Links
Aus dem Gentoo Forum (Englisch):
Places where to upload screenshots:
