Rimuovi il testo specifico da descrizioni multiple

1

Di recente ho eseguito l'aggiornamento a iPhoto '11 (non ho potuto resistere al prezzo sul nuovo app store) e mentre aggiungo altri metadati alla mia libreria e generalmente organizzo le cose (luoghi, volti, ecc. Non mi sono aggiornato dal '08) ho notato qualcosa di strano nelle mie foto. Ogni foto nella mia biblioteca ha una descrizione (anche se molti sono brevi), ma sembrerebbe che in qualche modo la descrizione di una delle foto sia stata aggiunta a molti.

Non so se, forse, ho accidentalmente rovinato un cambio di batch ad un certo punto nel passato, o se l'aggiornamento della libreria è in qualche modo incasinato, o cos'altro può essere accaduto. Ma quello che devo fare è correggerli in qualche modo.

Ora, la modifica manuale è un compito scoraggiante. All'interno di una biblioteca di 21.248 foto, 18.858 di queste hanno questo testo aggiuntivo. L'unica cosa che ho per me è che è una stringa specifica. Se esiste un modo per "rimuovere questa stringa da qualsiasi punto della libreria senza rimuovere il resto di una descrizione", sarebbe perfetto.

C'è qualcosa che posso fare in questo modo? Forse anche modificare manualmente un file di libreria in un editor di testo? (Questo spezzerebbe qualcos'altro in iPhoto se la sua libreria è stata modificata all'esterno dell'applicazione, anche se non è in esecuzione?) Qualcuno ha qualche idea?

    
posta David 16.01.2011 - 04:40
fonte

1 risposta

1

Considera l'utilizzo di un AppleScript per eseguire questa operazione. Il seguente AppleScript ti aiuterà a iniziare:

tell application "iPhoto"

    repeat with i from 1 to number of items in photos

        set myPhoto to item i of photos

        set comment of myPhoto to replaceText("find this", "replace with this", comment of myPhoto)

    end repeat

end tell

-- replaceText from Bruce Phillips (http://brucep.net/2007/replace-text/)
on replaceText(find, replace, subject)
    set prevTIDs to text item delimiters of AppleScript
    set text item delimiters of AppleScript to find
    set subject to text items of subject

    set text item delimiters of AppleScript to replace
    set subject to "" & subject
    set text item delimiters of AppleScript to prevTIDs

    return subject
end replaceText

Per utilizzare questo AppleScript, copialo e incollalo in un nuovo documento AppleScript Editor .

In questa situazione, si desidera trovare e rimuovere una parte di testo specifica. Modifica il precedente AppleScript come segue:

  1. Modifica il segmento " trova questo " e inserisci il testo da trovare.
  2. Cambia il segmento " sostituisci con questo " in bianco, "".

Con questi cambiamenti, salva il documento e fai clic su Esegui nella barra degli strumenti. A seconda del numero di foto, questo AppleScript impiegherà molto tempo; potenzialmente ore.

    
risposta data 02.02.2011 - 22:24
fonte

Leggi altre domande sui tag