Esiste un modo semplice per non rimuovere gli spazi iniziali e la formattazione di una poesia?

Sto gestendo un gruppo su Discourse, facendo delle prove per la comunità Gene Keys, e un partecipante mi ha chiesto se fosse possibile consentire la formattazione nella poesia. La FAQ sulla formattazione descrive le opzioni HTML e altri codici, ma queste non sono semplici per gli utenti.

Fatemi sapere se esiste una soluzione facile.

Grazie, David

ciao @pinetree1111 :wave: benvenuto

non sono sicuro che tu lo consideri “facile”, ma io lo trovo semplice perché li uso occasionalmente nei miei post lol.

puoi usare   per gli spazi bianchi:
così

ciao mondo
 questa è una riga con uno spazio iniziale
  questa è una riga con 2 spazi iniziali
   questa è una riga con 3 spazi iniziali

codice:

ciao mondo
 questa è una riga con uno spazio iniziale
  questa è una riga con 2 spazi iniziali
    questa è una riga con 3 spazi iniziali

puoi anche mettere spazi tra di loro

ciao mondo
  questa è una riga con 2 spazi iniziali
    questa è una riga con 4 spazi iniziali
      questa è una riga con 6 spazi iniziali

ciao mondo
  questa è una riga con 2 spazi iniziali
    questa è una riga con 4 spazi iniziali
      questa è una riga con 6 spazi iniziali

Sarebbe bello averlo nella barra degli strumenti, soprattutto per chi non usa il Markdown, eh?

non sono sicuro, ma penso che questo componente possa aggiungere pulsanti personalizzati? in ogni caso, non è difficile per chiunque abbia alcune competenze di programmazione creare un componente per il tema. non ne ho bisogno personalmente, ma suppongo che potrei aiutare qualcuno se vuole. non sono sicuro riguardo al compositore WYSIWYG, non lo uso mai.

È anche possibile usare i backtick (```), che mantengono la formattazione, ma potresti non apprezzarne lo stile

hello world
 this is a line with a leading space
  this is a line with 2 leading spaces
   this is a line with 3 leading spaces

E se hai accesso a TC, potresti aggiungere un piccolo CSS per mitigare il problema:

code.lang-plaintext {
  font-family: cursive;
  font-size: inherit;
  background: transparent;
  color: inherit;
}
pre:has(code.lang-plaintext) {
  background: transparent;
  border: none;
  padding: 0;
}

Il risultato è simile a questo (per esempio):

Ma ovviamente questa è una buona soluzione solo se nessuno pubblica veri frammenti di codice (per cui i backtick sono tradizionalmente usati), ma immagino che la probabilità di questo sia bassa in un forum di poesia :slight_smile:

Penso che le 2 soluzioni più semplici siano:

  1. Usare il “Testo preformattato”:
    Basta digitare il testo con gli spazi, selezionarlo e poi usare il pulsante image per formattare il testo.
    In alternativa, puoi selezionare le righe e digitare CTRL+E.
    Questo è esattamente lo stesso della soluzione con i backtick suggerita sopra.

  2. Usare il tag HTML <pre> (So che hai chiesto soluzioni che evitino l’HTML, ma questa è molto semplice):
    Circonda il testo con i tag HTML, come segue:

    <pre>
    Testo
        con
            spazi
                iniziali.
    </pre>    
    

    Il risultato apparirà così:

     Testo
         con
             spazi
                 iniziali.
     

Grazie mille per i tuoi commenti. Ho esperienza di programmazione che non utilizzo da molto tempo (e che avevo dimenticato &nbsp), vedrò se potrò sperimentare con questo al mattino. Abbiamo un team tecnico che integrerebbe il forum nel nuovo sito web se decidessimo di utilizzarlo permanentemente, quindi sembra che potrebbero essere in grado di creare un pulsante per l’utente medio.