15 febbraio 2009

Mostrare il percorso di uno o più files con il finder mediante un azione automator

Gli sviluppatori quotidianamente compiono le stesse operazioni una miriade di volte, e velocizzarne l'esecuzione permette un risparmio di tempo considerevole. Per questo motivo tendo a creare facilitazioni mediante cui potermi facilitare il lavoro e farlo in maniera più veloce. Per uno sviluppatore, o per chiunque si trovi a dover recuperare in maniera istantanea il percorso assoluto di uno o più files sul proprio file system, questo post potrebbe risultare alquanto utile.
Per questo motivo ho creato uno script mediante cui, una volta aggiunto, è possibile selezionare uno o più file tramite il finder, premere il tasto destro del mouse e trovare sotto la voce Automator -> Mostra percorso la funzionalità adatta a tale scopo (visualizzare il path assoluto del file).
I passi da seguire sono i seguenti passi:
Aprire Automator
Creare un nuovo Script ad Hoc
Incollare il seguente script :
on run {input, parameters}
global textString

if (count of input) is equal to 1 then
repeat with theItem in input
set textString to POSIX path of (theItem as alias)
tell application "Finder"
set choice to display dialog "Percorso" default answer textString buttons {"Copia", "OK"} default button 1
set textString to text returned of the result
if the button returned of choice is not equal to "OK" then
set the clipboard to textString
end if
end tell
end repeat
else
tell application "TextEdit"
make new document at the beginning of documents
end tell
tell application "TextEdit"
make new paragraph at the end of document 1 with data ("Percorso file: " & return) with properties {font:titleFont, size:titleSize}
end tell
repeat with theItem in input

tell application "TextEdit"
make new paragraph at the end of document 1 with data (theItem)
make new paragraph at the end of document 1 with data (return) with properties {font:titleFont, size:titleSize}
end tell
end repeat
end if
return input
end run

Scegliere dal menù Archivio->Registra come plugin
Inserire come nome : Mostra percorso
Scegliere nella combobox "Plugin in" la voce : Finder.

Il comportamento dello script si differenzia nel caso stiate selezionando una o più voci. Guardiamo insieme il caso in cui viene selezionato un solo file :

Mediante la pressione del tasto Copia è possibile copiare il percorso nella clipboard.
Nel caso in cui invece si siano selezionati più files il risultato sarà visualizzato all'interno di una finestra di textEdit così come in figura:

Nel caso abbiate suggerimenti o commenti su questo script vi prego di contattarmi.Alla prossima!

1 commento:

GT ha detto...

Grazie !!!
Sei un grande... Impazzivo ma non sapendo niente di script &Co, con il solo automator non riuscivo a venirne a capo.
Note che potrebbero essere utili:
Io ho Snow leopard e la versione di Automator non mi da la possibilità di salvare come plug in, quello che devo fare è
1)creare un nuovo e scelgo come modello un "Servizio"
2)setto i 2 campi a tendina che ci propone su "documenti" e su "finder"
3)tra le "Azioni", dentro "Libreria"scelgo la categoria "Utility" e quindi l'azione "esegui AppleScript"
4) si apre AppleScript (dentro ad Atomator) e adesso ci copio lo script
5)salvo normalmente e mi chiede il nome del servizio (che sarà il testo che compare nel menu a tendina es: "mostra percorso file")
6)non provare a far girare lo script dentro ad Automator perchè tanto non funziona... chiudi automator e dovrebbe comparire il nuovo comando nel menu "tasto destro".
:)

Per capire il tutto ho usato questa guida "Creare script per il menu contestuale del Finder"

ecco il link: http://www.faqintosh.com/risorse/it/guides/as/guide/findermenu/

Grazie ancora spero vi siano utili quete indicazioni aggiuntive.