Script: Mache eine Liste, in welchen Alben sich ein Foto befindet - Modifikation von Jacques Rioux's Script

von: 
Zuletzt geändert: 07. Mai 2017 01:19
4 1119 Zuletzt geändert 07. Mai 2017 01:19

Fotos hat leider kein Kommando in den Menüs, um die Alben zu finden, in denen ein Foto ist.


Eine einfache Abhilfe, die aber etwas Arbeit erfordert: Damit ich in der Information für ein Foto sehen kann, in welchem Album es ist, füge ich immer ein Schlagwort mit dem Namen des Albums zu. Das erscheint in der Information. Und ich verwende dann einfach ein Intelligentes Album mit der Regel "Schlagwort ist 'Bär'" oder ähnlich anstelle eines Standaralbums "Bären".


Es ist aber möglich, mithilfe eines Scripts alle Alben zu finden, in denen ein Album ist. Jacques Rioux hat ein einfaches Apple Script veröffentlicht, das für ein Foto, das in Fotos ausgewählt ist, alle Alben sucht, in denen das Foto vorkommt. In Photos 2.0 sucht das Skript sowohl nach Standardalben als auch nach intelligenten Alben.

Ich habe Jacques Script hier in einem Benutzer-Tipp auf Englisch veröffentlicht :

https://discussions.apple.com/docs/DOC-9261


Hier ist eine modifizierte version Version von Jacques Skript. Ich habe ein paar Fehlerabfragen eingebaut, um es etwas sicherer zu machen.

Um das Skript zu verwenden, öffne den Script Editor - der Script Editor ist in Programme > Dienstprogramme


  • Kopiere das Skript in den Script Editor, sichere es.
  • Wähle das Foto in Fotos aus, für das Du die Alben wissen willst.
  • Dann drücke den "Run" Knopf im Skript Editor.
  • Du kannst das Skript auch mit "Ablage > Export" als Programm sichern lassen (Format: compiled version). Dan kann es dem Dock hinzugefügt werden und von da gestartet.

Wenn das Skript läuft, wird die Miniatur im Dock zu hüpfen beginnen. Klicke auf die Miniatur, um die Dialoge sehen zu können, die es zeigt. Das Skript wird kurz ein Dialogpanel anzeigen, nach welchem Foto es sucht. Klicke auf dieses Panel, damit es weitergeht.

Dann erscheint ein Dialogfenster mit der Liste der Alben. Das dauert ziemlich lange für eine grosse Mediathek, da die Suche nach den intelligenten Alben aufwendig ist. . Die Liste der Alben wird im Clipboard gespeichert, so dass Du sie mit "Paste" irgendwo sichern kannst.


✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎

--- Ab hier kopieren ---

-- Jacques Rioux's script https://discussions.apple.com/message/29601534#29601534

-- modified by leonie


-- Select the photo in Photos, then run this script by pressing the "Run" button in the script editor or from the scripts menu.


tell application "Photos"


activate


-- Add the photo you want to search for to a top level album as the first item in the album


set resultcaption to "Searching for: "

try


set sel to selection

if sel is {} then error "The selection is empty" -- no selection


on error errTexttwonumbererrNumtwo

display dialog "No photos selected " & errNumtwo & return & errTexttwo

return

end try


set imagename to "unknown filename"

try

set target to item 1 of sel-- the image to seach for

tell target

set imagename to the filename of target

end tell

on error errTexttwonumbererrNumtwo

display dialog "Cannot get the filename of the first image: " & errNumtwo & return & errTexttwo

end try

set resultcaption to (resultcaption & imagename)

end tell


try


display alertresultcaptionbuttons {"Cancel", "OK"} asinformationalgiving up after 2

on error errTextnumbererrNum

if (errNum is equal to -128) then


-- User cancelled.

return

end if

end try

-- From Jacques Rioux's script:

tell application "Photos"


-- set sel to selection

if sel is {} then return -- no selection

try

set thisId to id of item 1 of sel

on error errTextnumbererrNum

display dialog "Error: cannot get the image ID" & errNum & return & errText & "Trying again"


try

delay 2

set thisId to id of item 1 of sel

on error errTexttwonumbererrNumtwo

display dialog "Skipping image due to repeated error: " & errNumtwo & return & errTexttwo

error "giving up"

return

end try --second attempt

end try


set theseNames to {}

try

set theseNames to name of (albums whose id of media items contains thisId)

on error errTextnumbererrNum

display dialog "Error: cannot get the albums" & errNum & return & errText & "Trying again"

try

delay 2

set theseNames to name of (albums whose id of media items contains thisId)

on error errTexttwonumbererrNumtwo

display dialog "Skipping image due to repeated error: " & errNumtwo & return & errTexttwo

error "giving up"

return

end try

end try

end tell


if theseNames is not {} then

set {oTid, text item delimiters} to {text item delimiters, return}

set {t, text item delimiters} to {theseNames as string, oTid}


-- return oTid

else

set t to "No album"

end if

activate


set resultcaption to resultcaption & ", found it in these albums:

" & t as string

set the clipboard toresultcaption

display dialogresultcaptionbuttons {"OK"} default button "OK" -- you can press the Enter key or the return Key to close the dialog

return resultcaption-- léonie


--- bis hier kopieren

-- ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎ ✂︎


Dieses Dokument wurde anhand der folgenden Diskussion generiert: Wie kann ich rausfinden, in welchen Alben sich ein Foto überall befindet?

Willkommen in der Apple Support Community
Ein Forum, in dem Apple-Kunden sich gegenseitig mit ihren Produkten helfen. Melde dich mit deinem Apple Account an, um Mitglied zu werden.