💾 Archived View for it.omarpolo.com › articoli › text-gemini-a-testo-semplice › index.txt captured on 2022-04-29 at 13:45:10.

View Raw

More Information

⬅️ Previous capture (2022-03-01)

-=-=-=-=-=-=-

Convertire text/gemini in testo semplice
========================================

Mi sono imbattuto su un post interessante su antenna poco fa che mi ha
fatto tornare in mente l'idea di servire, eventualmente, una qualche
variante delle mie capsule anche nel gopherspace.

~ Formatting Gemtext for Gopher
gemini://ruario.flounder.online/gemlog/2022-01-04_Formatting_Gemtext_for_Gopher.gmi

~ Antenna (un aggregatore)
gemini://warmedal.se/~antenna/

Non ho ancora provato a servire nulla via gopher, ma avere un qualche
sistema per formattare i post automaticamente non mi dispiace e, quindi,
ispirato dall'articolo (grazie Ruario!) ho aperto sam (cosa dire? mi
piace cambiare editor in questo periodo) e buttato un piccolo script in
AWK.

NB: sto usando la versione di awk presente su OpenBSD che, se non ho
capito male, dovrebbe essere più o meno il "One and True AWK". Non credo
di aver fatto uso di funzionalità non standard però, quindi dovrebbe
funzionare anche con altre implementazioni.

Ho usato il mio convertitore text/gemini => HTML come base. La novità
questa volta è l'uso delle pipe in awk che sapevo esistessero ma non
avevo mai avuto l'occasione di usarle.

~ text/gemini to html with AWK
gemini://gemini.omarpolo.com/post/text-gemini-to-html-with-awk.gmi

L'idea delle pipe in awk è utile e strana allo stesso tempo. La sintassi
è la seguente

expression | cmd

close(cmd)


La funzione `close' va chiamata con la stessa stringa usata per avviare
il processo, questo perchè AWK non aspetta la terminazione di `cmd'
altrimenti.

Ho avuto anche l'occasione di giocare un po' con par, una piccala
utility per formattare il testo. Funziona in modo simile a fmt(1), solo
con una valanga di opzioni in più e una pagina di manuale decisamente
più complessa. Dopo un po' di tentativi ed errori, e con l'aiuto di sed,
sono riuscito a domarlo e fargli produrre l'output desiderato.

~ par, una piccola utility per formattare il testo.
http://www.nicemice.net/par/

Senza ulteriori indugi, lo script nella sua interezza. Probabilmente
bisogna aggiustare lo shebang e marcare il file come eseguibile:
~ gmi2txt
gmi2txt

Inoltre, per fornire un esempio del suo operato, ecco una versione
trasformata di questa pagina:
~ index.txt
index.txt

$BlogIt: index.txt,v 1.2 2022/01/13 10:46:56 op Exp $