Text Expander III Scripting Fill Ins

TextExpander è una potente app per la produttività Mac. Espande automaticamente le scorciatoie da tastiera o Abbreviazioni-in più blocchi di testo-snippet

Se invii ripetutamente le stesse email di base o scrivi le stesse informazioni, ad esempio un indirizzo o un numero di telefono, TextExpander rende la vita più facile.

Nei precedenti due tutorial, in questa serie, ho cercato di iniziare TextExpander e come utilizzare le funzioni più avanzate come i riempimenti e le macro di data e ora.

In questo tutorial, cercherò di utilizzare linguaggi di scripting come JavaScript e AppleScript riempire.

screencast

TextExpander e linguaggi di scripting

TextExpander supporta tre linguaggi di scripting: Shell Script, JavaScript e AppleScript. Ai fini di questo tutorial mi concentrerò sugli ultimi due in quanto sono i più flessibili. Con i linguaggi di scripting puoi aggiungere logica al tuo TextExpander riempire.

Ad esempio, in uno dei frammenti di esempio in questo tutorial, utilizzo il riempimento in restituisce un risultato diverso a seconda di che giorno è quando lo si utilizza. Un altro snippet di esempio restituisce una risposta casuale da una matrice di più risposte possibili. Questi sono entrambi impossibili da fare TextExpander senza un linguaggio di scripting.

Dei tre offerti, JavaScript è il più utile in quanto funziona anche con TextExpander Touch, l'app iOS complementare che vedrò nel prossimo tutorial di questa serie.

Prerequisiti

Per utilizzare questo tutorial avrai bisogno dell'ultima versione di TextExpander installato. Il costo è di $ 44,95, anche se è disponibile una prova gratuita di 30 giorni e può essere scaricato dal sito Web dello sviluppatore.

Dovrai anche avere familiarità con TextExpander e riempire Se non lo sei già, il modo migliore per aggiornarti è controllare i due tutorial precedenti di questa serie:

  • TextExpander: un'introduzione
  • TextExpander II: Fill In e Macro

Inoltre, in questo tutorial, sto usando alcuni JavaScript e AppleScript molto semplici. Non è necessario avere familiarità con entrambe le lingue anche se aiuta. 

Per ulteriori informazioni su JavaScript, consulta questo tutorial su Code.Tuts + e per saperne di più su AppleScript puoi consultare questo tutorial proprio qui su Computers.Tuts+.

Utilizzo della logica semplice con JavaScript

Il primo frammento che sto creando restituisce entrambi Ti risponderò domani o Ti risponderò dopo il fine settimana a seconda che si tratti di un giorno feriale o di un giorno del fine settimana, compreso il venerdì.

Per questo snippet sto usando la funzione di data built-in di JavaScripts. Per ulteriori informazioni sulle specifiche, è possibile trovare la documentazione qui.

Crea un nuovo snippet e impostane il suo Soddisfare a JavaScript. Assegnare un'abbreviazione semplice e pertinente.

Successivamente, è necessario creare una variabile per conservare le informazioni sulla data di oggi. Per farlo, entra var today = new Date (); come prima riga del frammento.

Nella riga successiva, inserisci today.setDate (TextExpander.baseDate.getDate ());. Questo imposta il oggi variabile alla data corrente.

Il risultato di uno snippet che utilizza un linguaggio di scripting per impostazione predefinita è l'ultima istruzione eseguita nello snippet. 

Per finire, è necessario verificare se oggi è un venerdì, sabato o domenica. Il seguente se il ciclo lo fa e, a seconda del risultato, restituisce una delle due possibili frasi. Aggiungi il codice qui sotto allo snippet per terminare.

if (today.getDay () == 5 || today.getDay () == 6 || today.getDay () == 0) 'Ti ricontatterò dopo il fine settimana. ';  else 'ti risponderò domani. '; 

Quando inserisci l'abbreviazione, a seconda del giorno, dovrai dire alle persone che risponderai domani o dopo il fine settimana.

Mancia: Ricorda che gli snippet possono essere incorporati in altri frammenti. Lo snippet di risposta dipendente da questo giorno può essere utilizzato all'interno di snippet di posta elettronica più lunghi di cui disponi.

Creazione di un riempimento casuale con JavaScript

Un problema con i frammenti è che possono essere molto rigidi. Se ognuna delle tue e-mail ha la stessa struttura con poca o nessuna variazione, apparirai soffocante e eccessivamente formale. Con i linguaggi di scripting puoi superare questo problema aggiungendo un po 'di casualità ai tuoi snippet.

Il TextExpander la squadra suggerisce uno snippet che seleziona casualmente un saluto di chiusura da un numero di accettabili come Cordialmente, Cordiali saluti e Pace fuori. Questo è un ottimo uso per questo metodo. Per questo tutorial, tuttavia, lo sto usando per qualcosa di leggermente diverso.

I risultati dell'esecuzione della domanda a caso si sommano più volte.

Ho cercato di migliorare il mantenimento di un diario, tuttavia, abbastanza spesso non è successo nulla durante il giorno di cui vale la pena scrivere. Quando ciò accade, non scrivo, rompendo così l'abitudine. 

Per superare questo, ho creato il seguente frammento che mi suggerisce di scrivere qualcosa a caso ogni volta che ho bisogno di qualcosa.

Di nuovo, inizia creando un nuovo frammento e impostandone il relativo Soddisfare a JavaScript. Assegnagli un'abbreviazione come xjournal.

Questo frammento richiede due parti, un array che memorizza tutti i valori possibili e la logica per selezionarne uno a caso. Per prima cosa creerò l'array. Questo è solo il metodo più semplice per dichiarare un array con JavaScript.

Copia e incolla il codice qui sotto nel tuo snippet. Sentiti libero di cambiare il contenuto dell'array in qualsiasi raccolta di frammenti da selezionare casualmente.

var qLista = ["_Scrivi una delle tue più grandi ispirazioni._", "_Scrivi di uno dei tuoi più grandi influencer._", "_Scrivi uno dei posti migliori che tu abbia mai visto._", "_Write about a crazy adventure._ "," _Write su una foto che hai scattato._ "," _Write su uno dei giorni migliori della tua vita._ "," _Write su uno dei giorni peggiori della tua vita._ "," _Che cosa cambieresti su te stesso? _ "," _Scrivi uno dei tuoi più grandi successi "," _Scrivi uno dei tuoi più grandi rimpianti. "", "Dove vuoi essere un anno da oggi? _", "_Che cosa vuoi vuoi fare un anno da oggi? _ "," _Write su una delle tue persone preferite._ "," _Write su uno dei tuoi libri preferiti._ "," _Write su uno dei tuoi film preferiti._ "," _Write su uno dei tuoi artisti musicali preferiti._ "]

Con l'array creato, è il momento di scegliere casualmente da esso. Ciò richiede tre righe di codice: una per contare quanti frammenti ci sono, una per selezionare un numero casuale tra meno o uguale a quello, e una per selezionare lo snippet che cade alla posizione del numero casuale nell'array.

Aggiungi le seguenti tre righe allo snippet per farlo.

var qLength = qList.length var qRandom = Math.floor ((Math.random () * qLength)); QList [qRandom]

Ora quando si inserisce l'abbreviazione, verrà restituita una domanda casuale.

Mancia: I caratteri di sottolineatura rendono le domande in corsivo quando si scrive in un'app di journaling, ad esempio Giorno uno-che supporta Markdown.

Lo stesso frammento con AppleScript

Anche se preferisco usare JavaScript perché funziona con TextExpander Touch, AppleScript ha anche i suoi fan. Di seguito è riportato il codice per la domanda del journal casuale scritta in AppleScript. Puoi vedere che usa la stessa identica logica, l'unica differenza è la lingua usata.

imposta qLista su "_Write su una delle tue più grandi ispirazioni._", "_Scrivi di uno dei tuoi più grandi influencer._", "_Scrivi uno dei migliori luoghi che tu abbia mai visto._", "_Write about a crazy adventure._ "," _Write su una foto che hai scattato._ "," _Write su uno dei giorni migliori della tua vita._ "," _Write su uno dei giorni peggiori della tua vita._ "," _Che cosa cambieresti su te stesso? _ "," _Scrivi uno dei tuoi più grandi successi "," _Scrivi uno dei tuoi più grandi rimpianti. "", "Dove vuoi essere un anno da oggi? _", "_Che cosa vuoi vuoi fare un anno da oggi? _ "," _Write su una delle tue persone preferite._ "," _Write su uno dei tuoi libri preferiti._ "," _Write su uno dei tuoi film preferiti._ "," _Write su uno dei tuoi artisti musicali preferiti. " set listLength to count qList set randomNumber to (numero casuale da 1 a listLength) imposta selectedQ sull'elemento randomNumber di qList restituisce selectedQ

Conclusione

In questo tutorial ho esaminato l'uso dei linguaggi di scripting per aggiungere una semplice logica ai frammenti. Mentre ti ho mostrato come fare in modo che uno snippet restituisca valori diversi a caso o a seconda del giorno, questo è solo il fondamento di ciò che puoi fare con i linguaggi di scripting e TextExpander. Se puoi scriverlo in JavaScript, puoi eseguirlo TextExpander.

Mi piacerebbe sapere come gli altri usano i linguaggi di scripting TextExpander quindi, se lo fai, per favore fammi sapere nei commenti qui sotto.