Un AppleScript può scrivere su un documento Notes.app?

2

Vorrei scrivere un testo su una "Nota" (al contrario di un file .txt o .rtf standard), perché Mac Notes si sincronizza automaticamente su un account iCloud, su tutti i dispositivi.

(Capisco che si possano usare vari mezzi per ottenere lo stesso effetto con documenti di testo standard, cioè non proprietari, ad esempio con un servizio come Dropbox. Note.app è semplicemente molto più conveniente.)

Tuttavia, sembra che non ci sia modo di scrivere su una nota in AppleScript. Dico questo perché, non sembra che le note siano effettivamente salvate ovunque sul Mac come file .rtf (o simile). Per questo domanda (ma, nota che la domanda è stata posta nel 2013), ho controllato le seguenti directory:

  • ~/Library/Group Containers/group.com.apple.notes/

    • e
  • ~/Library/Containers/com.apple.Notes/Data/Library/Notes/

Non ho trovato nulla che assomigliasse a un documento di testo leggibile. Ho aperto alcuni di questi file in TextEdit.app e ho scoperto che questi file contengono puro testo gobbledygook.

Immagino di poter efficace codificare un AppleScript per "scrivere su un documento di Notes," attivando i clic del mouse e la pressione dei tasti. Ma sono curioso di sapere se è possibile scrivere su una nota in modo "corretto".

    
posta rubik's sphere 18.08.2017 - 03:49
fonte

1 risposta

6

Notes è uno script e il dizionario può essere aperto con Script Editor per i dettagli.

C'è anche un lungo tutorial qui .

Sebbene non l'abbia provato con iCloud, dovresti essere in grado di impostare l'account e creare una nota in quell'account.

Semplificando l'esempio su quella pagina e usando il mio account Exchange, sono stato in grado di creare la nota usando questo script:

tell application "Notes"
  tell account "Exchange"
    make new note at folder "Notes" with properties {name:"this is a test", body:"and more text"}
  end tell
end tell

Per ottenere il contenuto di una nota esistente, per modificarlo:

tell application "Notes"
  tell account "Exchange"
    tell folder "Notes"
      get body of note "this is a test"
    end tell
  end tell
end tell

E, per modificare il contenuto:

tell application "Notes"
  tell account "Exchange"
    tell folder "Notes"
      set body of note "this is a test" to "reset the body text"
    end tell
  end tell
end tell
    
risposta data 18.08.2017 - 04:12
fonte

Leggi altre domande sui tag