💾 Archived View for it.omarpolo.com › articoli › text-gemini-a-testo-semplice › index.txt captured on 2022-01-08 at 15:09:45.

View Raw

More Information

➡️ Next 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.

gemini://ruario.flounder.online/gemlog/2022-01-04_Formatting_Gemtext_for_Gopher.gmi
~ Formatting Gemtext for Gopher
gemini://warmedal.se/~antenna/
~ Antenna (un aggregatore)

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.

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

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.

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

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.1 2022/01/04 16:32:32 op Exp $