Sto cercando di creare un servizio che faccia quanto segue:
- Se alcuni file / cartelle sono selezionati in Finder, copia (tutti) i percorsi negli appunti
- Se non è selezionato nulla, copia il "Percorso" della finestra.
Avvicinarsi e trarre ispirazione da post come Copia di il percorso della directory corrente negli appunti e Copia il percorso del file o della cartella negli Appunti in Mac OS X Lion Devo il punto in cui posso ottenere i percorsi della selezione, ma mi sembra di essere bloccato quando cerco di ottenere il percorso della finestra corrente se la selezione è vuota.
AGGIORNAMENTO 13-Dec-2013. Ho alcuni feedback utili (vedi link ; grazie @Flavin) così ho aggiornato il codice a quello qui di seguito:
on run {input, parameters}
set l to {}
tell application "Finder"
set sel to (get selection)
if not sel = {} then -- there are some file/folders selected
repeat with f in (get selection)
set end of l to POSIX path of (f as alias)
end repeat
else --no stuff is selected, get the current location path
set end of l to POSIX path of (insertion location as alias)
end if
end tell
set text item delimiters to linefeed
set the clipboard to (l as text)
end run
La logica sembra solida e funziona fintanto che ho selezionato "qualcosa" in Finder.
Sospetto che il Servizio potrebbe non essere "Attivo" quando non è selezionato nulla, (cioè, quando il risultato desiderato sarebbe copiare il percorso corrente negli Appunti).
In questa situazione, la finestra del Finder appare così:
Macercandodiattivareilserviziomostraunelencodiservizi"vuoto":
Quandohoselezionatoqualcosa,l'elencoServizièpopolato:
Il "Percorso file copia" che ho definito è associato a "File e cartelle" nelle Preferenze servizi - quale potrebbe essere il problema?