IDE

Keywords: #IDE #shell #lavoro

Ricordate il toot citato nel post di ieri? @eamon@social.coop sostiene che

the POSIX.2 shell and utilities (find, grep, sed, vi, and friends) provide a fairly complete “integrated development environment”, and Vim is a (major but optional) upgrade to one of its components.

Condivido la sua opinione, ma con un caveat. Per poter fare tutto in questo modo bisogna studiare molto. Oggi in ambienti lavorativi dove la produttività, leggi “fai presto, bene e impegnati per almeno 50 ore a settimana, è il tabu da non bestemmiare, dedicarsi anche allo studio diventa utopico.

Ma qualcosa sta cambiando e una riduzione dell’orario di lavoro non è più qualcosa di nemmeno da discuterne come, tanto per fare un esempio, era successo nel 1919 a Glasgow. Per una visione d’insieme consiglio la lettura di questo articolo pubblicato su lavoce.info. Ma qui stiamo parlando solo da un punto di vista economico e industriale, ma per quanto riguarda la salute? Divertitevi su Semantic Scholar o su PubMed a cercare articoli che ne trattano. Letteratura vastissima.

Per chiudere questa digressione, ma un po’ di tempo da dedicare allo studio non si può pagare?1 È vero che oggi la domanda è come si risolve praticamente questo problema e non come lo analizzo e risolvo. Visione pragmatica?

Passando oltre e tornando agli ambienti di sviluppo e shell, avevo accennato che quarto non ha incorporato un comando per creare nuovi post al posto giusto e con l’intestazione yaml preriempita. Così mi sono scritto una serie di comandi per ottenere il risultato:

#!/bin/sh
#
# quarto non ha un comando come hugo new post/...
# nuovopost.sh
#
printf "Titolo del nuovo post? " 
read -r titolo
if [ -z "$titolo" ]; then        # stringa vuota esce
  exit  
fi
cartella=`date -I`"-"${titolo}     # nome cartella post 
mkdir -p posts/$cartella           # nuova cartella
cd posts/$cartella                 # cambio cartella
touch index.qmd                    # inizio file index.qmd
#intestazione yaml del post
printf "%s\n" "---" "title: ${titolo}" "date: `date -I`" "categories: []" "draft: false" "image: " "---" >> index.qmd 
nvim index.qmd      # redazione del post

La linea 6 chiede il titolo del post. La linea 7 legge l’input e crea una variabile titolo. Linee 8-10, se non si è data una risposta alla domanda iniziale lo script si interrompe. Alla linea 11 ho introdotto una nuva variabile che contiene il nome della cartella del post. Con la linea 12 la cartella viene creata e alla linea 13 si cambia directory. La linea 14 crea un file vuoto che si chiama index.qmd, come da convenzione di quarto. la linea 16 sistema lo header yaml del post. A printf segue il pattern di formattazione che verrà applicato agli argomenti che seguono. La linea 17 è autoesplicativa. Al posto di nvim ci può andare anche nano o vi o emacs e con una piccola modifica BBEdit o altro editor di testo.

Fine dello sproloquio e una lettura interessante.


  1. In realtà esistono in Italia istituti contrattuali che prevedono ore dedicate all’aggiornamento. ↩︎