Per leggere il contenuto di un file Markdown locale in Comandi Rapidi sul Mac, converti il file in ingresso in testo prima di usarlo. Verifica il risultato con un esempio temporaneo; se la conversione non riesce, leggi il file con cat e passa il suo contenuto a Comandi Rapidi tramite una pipe.
Questa guida spiega come selezionare un singolo file Markdown locale nel Finder e mostrarne il testo sorgente letterale, inclusi i simboli dei titoli e la punteggiatura degli elenchi. È utile distinguere tre elementi: il file selezionato, il suo percorso e il testo che contiene.
Perché Comandi Rapidi riceve un file invece del suo testo?
Il Finder fornisce un file come input. Apple definisce Files e Text come tipi di input distinti in Comandi Rapidi: un file può essere un documento di qualsiasi tipo, mentre il testo è testo semplice senza formattazione applicata. Pertanto, accettare un file Markdown non significa, di per sé, che l’azione successiva ne riceva il contenuto come testo. Informazioni sui tipi di input in Comandi Rapidi sul Mac.
Comandi Rapidi usa il Content Graph per convertire i tipi quando le azioni lo richiedono. Apple documenta anche un controllo esplicito: fai clic su un token variabile e modifica il suo Type. Questa conversione è diversa dalla scelta di una proprietà, come il nome del file. Un nome o un percorso descrivono soltanto il file. Il motore Content Graph, Modificare le variabili in Comandi Rapidi sul Mac.
La guida Apple citata spiega il meccanismo di conversione, ma non garantisce che ogni file con estensione .md venga convertito nel testo sorgente. Verifica la conversione usando un contenuto noto. Il metodo basato sui comandi riportato sotto offre un modo esplicito per leggere il file quando la conversione nativa non produce il testo atteso.
Crea un file Markdown temporaneo con contenuto noto
Usa questo esempio sintetico per evitare di confondere il nome del file con una lettura riuscita. Incolla in Terminale tutta la procedura di configurazione. Crea una nuova cartella temporanea, vi scrive un file di esempio e apre la cartella nel Finder.
demo_dir=$(/usr/bin/mktemp -d /tmp/markdown-shortcuts.XXXXXX) &&
printf '%s\n' '# Sample board' '' '- Blue square' '- Green circle' > "$demo_dir/sample.md" &&
/usr/bin/open "$demo_dir"
Il contenuto atteso del file è:
# Sample board
- Blue square
- Green circle
L’opzione -d dice a mktemp di creare una cartella; i caratteri finali X gli consentono di sceglierne un nome univoco. Ogni configurazione completata con successo crea quindi una cartella nuova. Se la creazione non riesce, la catena && impedisce l’esecuzione dei comandi successivi. Apple distribuisce il relativo manuale di mktemp.
Il comando printf scrive le righe sintetiche, inclusa la riga vuota. Il reindirizzamento dell’output crea sample.md nella nuova cartella. Il normale reindirizzamento > può sovrascrivere un file esistente, quindi lascia invariata questa procedura anziché cambiare la destinazione e puntare a un documento esistente. In questo esempio, la nuova cartella evita le collisioni tra nomi. Manuale Apple di printf, Input e output della shell.
Crea un comando rapido del Finder che richieda esplicitamente il testo
Crea un comando rapido chiamato Read Markdown Text. Apple documenta come creare un comando rapido usando il pulsante Aggiungi nella barra degli strumenti, assegnargli un nome e aggiungere azioni dalla libreria delle azioni. Creare un comando rapido personalizzato sul Mac.
Configura il punto di accesso dal Finder:
- Apri il pannello
Detailsdel comando rapido. - Abilita
Use as Quick Actione selezionaFinder. - Nel blocco di input in cima all’editor, consenti
FileseText. I file supportano il flusso di lavoro nel Finder; il testo serve per il ripiego tramite Terminale illustrato sotto. - Per l’input mancante, scegli
Stop and Responde inserisciSelect one example Markdown file.
Apple documenta l’opzione Finder e specifica che potrebbe essere necessario ricevere in input un file o una cartella per abilitarla. La configurazione dell’input consente anche di interrompere il comando rapido e mostrare una risposta quando non riceve alcun input. Eseguire un comando rapido mentre lavori sul Mac, Limitare l’input di un comando rapido.
Aggiungi ora le azioni di elaborazione del contenuto:
- Aggiungi un’azione
Text. - Inserisci nel relativo campo di testo soltanto la variabile
Shortcut Input. - Fai clic sul token della variabile, apri il menu
Typee selezionaText. Evita di selezionare una proprietà del nome del file. - Aggiungi
Quick Lookdopo l’azioneText, usando il risultato dell’azioneText.
La conversione esplicita della variabile richiede il testo nel punto in cui viene usato l’input. Il risultato dell’azione Text successiva è il valore da usare nei passaggi di elaborazione del testo. Apple documenta la modifica dei tipi di variabile tramite l’editor delle variabili. Modificare le variabili in Comandi Rapidi sul Mac.
Per verificare il comportamento della versione installata, fai clic con il tasto Ctrl sull’icona di un’azione e scegli Show Info. Apple indica che questo è il modo per esaminare gli input accettati da un’azione e i risultati che produce. È particolarmente utile quando modifichi un comando rapido esistente che contiene più variabili file e testo. Esplorare l’elenco delle azioni in Comandi Rapidi sul Mac.
Nel Finder, seleziona solo sample.md, fai clic tenendo premuto il tasto Ctrl e scegli Quick Actions, quindi Read Markdown Text. Apple documenta questo metodo di esecuzione. Se il comando rapido non compare, controlla prima l’impostazione Finder e i tipi di input accettati. Eseguire un comando rapido mentre lavori sul Mac.
Il risultato corretto contiene # Sample board e entrambi gli elementi dell’elenco. Vedere solo sample.md o il percorso della cartella non supera questa verifica. Apple consiglia di inserire Quick Look tra le azioni per esaminare il contenuto che attraversa un comando rapido. Verificare le azioni in Comandi Rapidi sul Mac.
Se la conversione non riesce, leggi il contenuto prima di chiamare Comandi Rapidi
Usa Terminale per rendere esplicita l’operazione di lettura. La guida Apple su Terminale identifica cat come strumento per visualizzare il contenuto dei file di testo. La guida Apple alla riga di comando di Comandi Rapidi distingue l’input file fornito con -i dal testo passato tramite una pipe. Visualizzare file di testo in Terminale sul Mac, Eseguire comandi rapidi dalla riga di comando.
Quanto segue continua l’esempio di configurazione e non è un programma indipendente. Eseguilo nella stessa scheda di Terminale dopo aver completato la configurazione, con il comando rapido salvato esattamente con il nome Read Markdown Text:
(
set -o pipefail
if [ -f "$demo_dir/sample.md" ] && [ -r "$demo_dir/sample.md" ]; then
/bin/cat "$demo_dir/sample.md" |
/usr/bin/shortcuts run "Read Markdown Text"
else
printf '%s\n' 'The example file is missing or unreadable.' >&2
exit 1
fi
)
Qui, cat legge il file e scrive il contenuto nell’output standard. La pipe invia tale contenuto al comando rapido. Racchiudere il percorso tra virgolette lo mantiene unito in un unico argomento. I controlli -f e -r richiedono che esista un file regolare leggibile. Guida introduttiva alla riga di comando, Manuale Apple di test.
Le parentesi limitano la modifica delle opzioni della shell a questo gruppo di comandi. pipefail fa sì che lo stato di uscita del gruppo segnali un eventuale errore in uno dei passaggi della pipe. I controlli preliminari non garantiscono che un file resti disponibile durante una lettura successiva; se cat riscontra un errore di lettura, esamina l’errore invece di considerare completa un’anteprima parziale.
Questo ripiego cambia il contenuto in ingresso al comando rapido da file a testo. Non rinomina il file Markdown né crea un documento convertito. Le azioni Text e Quick Look già presenti possono esaminare il testo in ingresso.
Queste tre forme di comando hanno significati diversi:
| Forma del comando | Input ricevuto dal comando rapido |
|---|---|
shortcuts run \"Read Markdown Text\" -i \"$demo_dir/sample.md\" |
Input file; all’interno del comando rapido serve ancora la conversione. |
printf '%s\n' "$demo_dir/sample.md" | shortcuts run "Read Markdown Text" |
Il percorso come testo. |
| `cat "$demo_dir/sample.md" \ | shortcuts run "Read Markdown Text"` |
La tabella illustra la distinzione documentata da Apple tra il passaggio dei percorsi dei file con -i e il passaggio del testo tramite una pipe. L’operazione che precede la pipe determina se il testo è un percorso o il corpo del documento. Eseguire comandi rapidi dalla riga di comando.
Diagnostica il risultato prima di aggiungere altre azioni
Usa l’esempio noto per capire cosa correggere:
- Compare solo un nome file: Controlla se la variabile estrae una proprietà del nome anziché richiedere il testo.
- Compare solo un percorso: Controlla se il comando stampa il percorso invece di leggere il file.
- La conversione nativa non riesce, ma il metodo tramite Terminale funziona: Per questo flusso di lavoro, usa il metodo di lettura esplicito; la sola modifica di un’etichetta di input non ha risolto la conversione.
- Non viene ricevuto alcun input: Esegui il comando dal file selezionato nel Finder o con il comando documentato in Terminale. Avviare un comando rapido dal Dock non fornisce automaticamente il file selezionato.
- Il testo sorgente è vuoto: Confrontalo con l’esempio. Un file vuoto valido e un file mancante sono condizioni diverse.
Apple documenta separatamente le proprietà delle variabili e la conversione tra tipi di contenuto, e specifica che i comandi rapidi avviati dal Dock possono non ricevere alcun input iniziale. Queste distinzioni aiutano a individuare il problema prima di modificare le azioni successive. Modificare le variabili in Comandi Rapidi sul Mac, Limitare l’input di un comando rapido.
Durante la verifica, limita il flusso di lavoro a un singolo piccolo file di testo locale. Per selezioni multiple serve decidere separatamente se elaborare ogni file o combinarne i contenuti. Questo esempio consente di ottenere testo sorgente leggibile; non serve a copiare i file byte per byte.
Quando l’anteprima mostra il titolo e le righe dell’elenco attesi, collega le azioni successive di elaborazione del testo al risultato dell’azione Text. Conserva l’esempio sintetico finché l’intero percorso non funziona, poi elimina la sua cartella temporanea nel Finder. Il controllo essenziale è semplice: l’azione successiva deve ricevere il corpo del documento che hai verificato.
Fonti
Informazioni sui tipi di input in Comandi Rapidi sul Mac — Supporto Apple.
Il motore Content Graph in Comandi Rapidi sul Mac — Supporto Apple.
Modificare le variabili in Comandi Rapidi sul Mac — Supporto Apple.
Creare un comando rapido personalizzato sul Mac — Supporto Apple.
Eseguire un comando rapido mentre lavori sul Mac — Supporto Apple.
Limitare l’input di un comando rapido eseguito da un’altra app sul Mac — Supporto Apple.
Esplorare l’elenco delle azioni in Comandi Rapidi sul Mac — Supporto Apple.
Verificare le azioni in Comandi Rapidi sul Mac — Supporto Apple.
Visualizzare file di testo in Terminale sul Mac — Supporto Apple.
Eseguire comandi rapidi dalla riga di comando — Supporto Apple.
Guida introduttiva alla riga di comando — Archivio della documentazione per sviluppatori Apple.
Input e output della shell — Archivio della documentazione per sviluppatori Apple.
mktemp(1): crea un nome di file temporaneo univoco — Distribuzioni open source Apple.
printf(1): output formattato — Distribuzioni open source Apple.
test(1): utilità per la valutazione di condizioni — Distribuzioni open source Apple.