×

MECmags 

Home Über mich Impressum Kontakt Theme-Projekt
© 2017. Alle Rechte vorbehalten.

MECmags

Matthias Eckardt

Bildschirmfotos von Fenstern mit sprechenden Dateinamen erstellen (2. Version)

Bildschirmfotos von Fenstern mit sprechenden Dateinamen erstellen (2. Version)

15.03.2015     me

Die Funktionalität zum Erstellen von Bildschirmfotos ist in OS X schon recht komfortabel. Doch die Dateinamen beginnen alle mit dem Präfix Bildschirmfoto und irgendwann verliert man den Überblick. Irgendwann stellte sich mir daher die Frage, wieso man nicht gleich Programmnamen und Fenstertitel in den Dateinamen des Bildschirmfotos integrieren kann.

Wer häufig mit Software-Dokumentation zu tun hat oder gar ein Fachbuch zu OS X schreibt, benennt also mühsam von Hand seine Bildschirmfotos um. Dieses Problem stellt sich natürlich nur dann, wenn man sich keine Software wie Ember von Realmac für diesen Zweck zulegen will, das mit knapp 50€ zu Buche schlägt.

Nachfolgend beschreibe ich Ihnen den kostenlosen Weg, um Bildschirmfotos (von Fenstern) nach dem Schema “Programmname_Fenstertitel_Datum_Uhrzeit.png” zu erstellen. Der Programmname und der Fenstertitel stehen damit als Präfixe im Dateinamen des Bildschirmfotos. Die Umsetzung erfolgt mit AppleScript. Das war gar kein großer Aufwand. Ich hatte es mir komplizierter vorgestellt.

Funktionsweise

Über UI-Scripting ermittelt das AppleScript den Namen des aktiven Programms und den Namen des vordersten Fensters dieses Programmes. Sie müssen die Fenster schon vor dem Aufruf des Tastenkürzels so angeordnet haben, dass das gewünschte Fenster ganz vorne liegt. Sie können zwar weiterhin teilweise verdeckte Fenster als Bildschirmfoto festhalten, aber mit einer Einschränkung.

Nur wenige Zeilen UI-Scripting erforderlichDas vorgestellte AppleScript in der Übersicht. Nun auch mit Bereinigung ungültiger Zeichen, wie Klammern, Anführungszeichen, etc. Download weiter unten

Mit dem vorliegenden Skript erhält der Schnappschuss als Teilnamen immer den Namen des vorderen Fensters. Ist das Bildschirmfoto gespeichert wird wieder der in OS X übliche Name für Bildschirmfotos eingestellt. Würde man dies hier nicht machen, dann würde bei den Standardkürzeln ⌘-⇧-3 und ⌘-⇧-4 auch der zuletzt mit unserem Skript verwendete Namenszusatz gespeichert.

Da mit den Bordmitteln von OS X keine globalen Skripte über Tastenkürzel aufgerufen werden können, muss auf ein Hilfsprogramm wie FastScripts oder Keyboard Maestro zurückgreifen.
<h3>Infos und Download unter:</h3> FastScripts (empfohlen) oder Keyboard Maestro (30-Tage-Demo)

Ich empfehle für den Anfang FastScripts, da es für bis zu 10 Skripte kostenlos in der Anwendung ist und als Lite-Version läuft.

Konfiguration

Sie müssen nichts abtippen. Laden Sie sich hier das Skript herunter.<h4>Download Skript</h4>

Legen Sie die Skriptdatei ScreenShotNamer.scpt in Ihrem Benutzerordner unter ~/Library/Scripts ab. Starten Sie FastScripts, das ein eigenes Skriptmenü darstellt. Falls Sie das Skriptmenü von Apple als Menüextra eingeblendet haben, können Sie darauf künftig verzichten. FastScripts ist zwar nur Englisch, Siw müssen aber nur zum Menüeintrag “Preferences” navigieren und dort im Reiter “Script Shortcuts” ~/Library/Scripts aufklappen. Doppelklicken Sie hinter dem Eintrag Ihres Skripts un der Spalte “Shortcut” auf (none), um die drei Tasten ⌘-⇧-5 für unseren neuen Befehl für die Aufnahme von Bildschirmfenstern festzulegen. Sie sind nicht darauf festgelegt und können auch einen anderen wählen, falls Ihnen dieser Vorschlag nicht zusagt. Wer gerne Ordnung auf dem Schreibtisch mag, kann mittels defaults write com.apple.screencapture location -Pfad einen eigenen Speicherort für die Dateien festlegen. Der Ordner muss bereits vorhanden sein, sonst landen die Bildschirmfotos weiter auf dem Schreibstisch. Man könnte also mit etwas Mehraufwand das Sktipt erweitern und damit diese Ordnernamen anhand des Namens der aktiven Anwendung erzeugen.

![FastScripts: Konfiguration des Skripts] (/assets/ScreenshotNamer_setup.png “Einrichten des neuen globalen Tastenkürzels für das Bildschirmfoto-Skript”) Einrichten des neuen globalen Tastenkürzels für das Bildschirmfoto-Skript

Damit ist das Skript installiert und das Tastenkürzel steht zur Verfügung, solange FastScripts läuft. In den Einstellungen des Programms lässt sich festlegen, dass FastScripts bei jedem Login als Startobjekt automatisch gestartet wird. Im Gegensatz zum bekannten ⌘-⇧-4 wird im Skript gleich die Leertaste betätigt und es startet gleich im Kameramodus, um einen Fensterinhalt aufzunehmen. Wenn Sie nun die Maustaste drücken, wird das Bildschirmfoto auf den Schreibtisch gespeichert. Möchten Sie verhindern, dass das Fenster mit einem Schatten aufgenommen wird, halten Sie während des Mausklicks zur Aufnahme gleichzeitig die Optionstaste (alt) gedrückt. Betätigen Sie die Leertaste, um in den Fadenkreuzmodus zu gelangen. Damit wird der aufgezogene Bildschirmausschnitt aufgenommen, erhält jedoch seinen Dateinamen ebenfalls nach dem festgelegten Namensschema.

Hinweise:
Das Skript kann bei Schwebepaletten nicht den Fensternamen ermitteln, da diese unabhängig von der Anwendung immer vor allen anderen Fenstern im Vordergrund stehen. Sollte sich einmal ein ungültiges Zeichen im Dateinamen ergeben, etwa bei Klammern jeglicher Art ([{}]) im Namen des aufzunehmenden Fensters, dann wird dieses vom Skript mit dem Unix-Kommando sed per Regex automatisch in einen harmloses Leerzeichen umgewandelt.