2012-08-29 16 views
7

quindi sto provando a creare un servizio che si troverà nel menu contestuale del Finder e che consentirebbe di creare un nuovo documento nella directory corrente.Creazione di un servizio di automazione per creare un nuovo documento nella directory corrente

Ho fatto che l'utilizzo di Automator: Automator project dispiace di tutto ^^ francese

Comunque ecco l'AppleScript che sto usando per recuperare la directory di lavoro corrente:

on run {input, parameters} 
    tell application "Finder" 
     set pwdAlias to insertion location as alias 
     if not (exists folder pwdAlias) then 
      set pwdAlias to (container of pwdAlias) as alias 
     end if 
    end tell 
    set pwd to POSIX path of pwdAlias 
    return pwd 
end run 

Poi Sto impostando questo valore su una variabile, quindi creando un nuovo documento di testo usando la variabile come percorso per il documento e infine sto usando il comando Reveal in Finder per mostrare il documento creato.

Tutto funziona bene, tranne che la sceneggiatura sembra essere sempre in ritardo! Quello che voglio dire è che quando apro una nuova finestra del Finder e selezionare il mio servizio, si sta creando sistematicamente il documento sulla finestra precedente come illustrato di seguito: Selecting Create a new document The document is created at the wrong location

Ma se provo una seconda volta, il documento è stato creato correttamente nella posizione prevista: Trying again to create a new document This time the document is created properly!

E questo è molto sistematica succede ogni volta !!

Scusate se non sono molto chiaro, non è così facile da spiegare!

bene altrimenti, sto correndo Mountain Lion ed ecco il progetto Automator allegato: create_new_document

Per aggiungere il servizio basta decomprimere e mettere il file in ~/Library/Servizi/

speranza di ottenere qualche risposte ma temo che questo sia solo un bug di Automator!

+1

A proposito il tuo link al tuo servizio è rotto! – markhunte

risposta

3

E 'un open bug in 10.7 and 10.8

Utilizzare questa soluzione alternativa

on run {input, parameters} 
    activate application "System Events" 
    activate application "Finder" 
    tell application "Finder" 
     set pwdAlias to insertion location as alias 
     set pwdAlias to (container of pwdAlias) as alias 
    end tell 
    return POSIX path of pwdAlias 
end run 
+0

ehi grazie per la rapida risposta! bene ho provato quello script, ma mi dà risultati davvero casuali; Sto cercando di creare un documento in Documenti e il documento verrà creato nella mia cartella utente ~. Quindi sto facendo un po 'diversamente usando il percorso dall'input (s): 'imposta pwd su (il percorso POSIX del primo elemento di input)'. Non è così generico come avrei voluto ma sta facendo il lavoro! – guitio2002

6

Prova questa enter image description here

  • A seconda di ciò che si vuole essere cliccando.

impostare i servizi selezionati per: 'cartelle' o file o cartelle. nel ricercatore '.App '

  • Get prima finestra del Finder percorso d'azione

È possibile scaricare il ottenere il primo Finder Window percorso azione da my blog post here Il download è al bottom del post. L'azione ottiene il percorso posix della finestra del cercatore in primo piano. Poiché si fa clic su una cartella in una finestra. quella finestra sarà quella restituita.

  • Set valore della variabile

  • Scarica il testo specificato

La prossima azione 'Nuovo file di testo' ha bisogno di qualche input. Se non ne riceve, non verrà creato alcun file. È possibile lasciare il campo di testo vuoto. Il solo fatto di agire sul posto funziona.

  • Nuovo file di testo

Trascinare il 'percorso' variabile o che cosa mai avete chiamato è al Dove: menu a discesa.

è possibile fare clic linee blu doppie nella parte inferiore della finestra di Automator per attivare o disattivare la lista delle variabili del flusso di lavoro

workflow Variable List

Salvare il servizio. E provalo. (Potrebbe essere necessario un po 'di tempo per essere visualizzato nel menu contestuale.)

+0

Vedere anche http://superuser.com/questions/106943/os-x-snow-leopard-finder-automator-item-for-creating-a-new-text-file – mems

1

per creare un nuovo file in un clic, si desidera utilizzare un droplet (un pulsante all'interno della barra degli strumenti del Finder, accessibile da qualsiasi finder finestra). Dopo la ricerca sul Web per più di un'ora, ho finalmente trovato il link ULTIMATE:

http://www.screenr.com/cNH e la versione del testo: http://blog.themeforest.net/general/amp-up-productivity-with-os-x-finder-droplets/

siete i benvenuti.

+0

Questa cosa di "TouchDropplet" funziona alla grande! Grazie per avermi salvato un'altra ora di googling (di nuovo) per una soluzione a questo problema. –