# Impossibile impostare il markdown come modalità predefinita

**URL:** https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243
**Category:** Bug
**Tags:** composer, fixed
**Created:** [18 Agosto 2025, 11:49am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243 "2025-08-18T11:49:01Z")
**Posts on this page:** 18
**Page:** 1

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [18 Agosto 2025, 11:49am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/1 "2025-08-18T11:49:01Z")

</div>

Ciao, scopro che anche quando ho impostato “default\_composition\_mode” su Markdown, agli utenti del mio forum viene proposto l’editor Rich Text all’avvio di un nuovo argomento. La versione del forum è “Discourse v3.5.0.beta9-dev — [Commits · discourse/discourse · GitHub](https://github.com/discourse/discourse/commits/08e9f9c00b) — Ember v5.12.0”.

Ogni volta che applico la modifica, mi viene chiesto “Vuoi applicare questa modifica storicamente? Questo cambierà le preferenze per 15 utenti esistenti.” e clicco Sì. Anche allora, agli utenti viene proposto l’editor Rich Text. Si tratta di un bug noto?

**Modifica - nota** : Ho questo problema con gli utenti che non hanno mai utilizzato l’opzione di commutazione per passare dalla modalità editor rich/markdown. Hanno semplicemente effettuato l’accesso oggi dopo che avevo già impostato la modalità di composizione predefinita nel fine settimana, subito dopo l’aggiornamento. Avevo anche nascosto l’opzione di commutazione tramite CSS del tema.

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [19 Agosto 2025, 7:08am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/2 "2025-08-19T07:08:47Z")

</div>

A seguito di ciò, abbiamo un plugin che utilizza i token BBCode “wrap\_open”, che non sono ancora supportati dall’editor di testo avanzato. Pertanto, dobbiamo assicurarci di rimanere in modalità Markdown per ora.

Ho usato Claude Sonnet per generare il seguente codice per garantirlo. Sarei felice di ricevere feedback su come potrei migliorarlo (soprattutto se presenta bug 😅). Condivido anche questo nel caso in cui possa aiutare altri amministratori del forum. Il codice va in Impostazioni tema \> JS (/admin/customize/themes/2/common/js/edit):

```js
import {
  apiInitializer
} from "discourse/lib/api";

export default apiInitializer((api) => {
  // Forza il passaggio dell'editor dell'utente alla modalità markdown
  function switchToMarkdownMode() {
    const currentUser = api.getCurrentUser();

    // L'utente dovrebbe essere connesso se il composer è stato aperto
    if (!currentUser) {
      console.error('Nessun utente trovato');
      return;
    }

    // Ottenuta questa opzione da qui
    // https://github.com/discourse/discourse/blob/f0fc5646dc9bd29b0e814faea490e34800e9b322/app/assets/javascripts/discourse/app/models/user.js#L262C1-L266C4
    const currentMode = currentUser.get('user_option.composition_mode');

    if (currentMode !== 0) {
      // Passa solo se non è già in modalità markdown
      // Esempio di utilizzo: https://github.com/discourse/discourse/blob/87476ce2c18fb8f856dda7ff03804ed5fbb0ff38/app/assets/javascripts/discourse/app/services/user-tips.js#L127
      currentUser.set('user_option.composition_mode', 0);

      // Salva la preferenza dell'utente sul server
      currentUser.save(['composition_mode']).then(() => {
        console.log('Passato con successo alla modalità markdown');
      }).catch((error) => {
        console.error('Impossibile aggiornare la modalità di composizione:', error);
      });

      // Attiva immediatamente l'interfaccia del composer corrente
      setTimeout(() => {
        const toggleButton = document.querySelector('.composer-toggle-switch[data-rich-editor]');
        if (toggleButton) {
          const isRichTextActive = toggleButton.getAttribute('aria-checked') === 'true';
          if (isRichTextActive) {
            toggleButton.click();
            console.log('Attivato il composer corrente in modalità markdown');
          }
        }
      }, 100); // Piccolo ritardo per garantire il rendering completo del composer
    } else {
      console.log('Già in modalità markdown, nessuna modifica necessaria');
    }
  }

  api.onAppEvent('composer:opened', () => {
    switchToMarkdownMode();
  });
});

```

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [19 Agosto 2025, 7:18am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/3 "2025-08-19T07:18:33Z")

</div>

> [@GaurangBlaze](#):
>
> `100); // Piccolo ritardo per garantire il rendering completo del composer`

Questa è generalmente una cattiva pratica, fare affidamento sui tempi per cose del genere è fragile.

Lascia che separi questo, vogliamo certamente consentire agli amministratori di impostare i valori predefiniti in modalità markdown.

Qual è una riproduzione minima qui?

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [19 Agosto 2025, 7:23am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/6 "2025-08-19T07:23:21Z")

</div>

Proverò a riprodurre questo + lavorerò a una correzione domani, ma non sono sicuro del perché ciò accada poiché l’admin imposta per impostazione predefinita tutti i valori delle opzioni utente (se si utilizza l’opzione utente esistente nel prompt), e questo è tutto ciò che usiamo per controllare l’interruttore.

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [19 Agosto 2025, 7:34am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/8 "2025-08-19T07:34:45Z")

</div>

Grazie per le risposte rapide! 🙂 Non sono sicuro di come posso creare una riproduzione minima per questo. Sono felice di condividere qualsiasi informazione aggiuntiva dal mio forum se puoi condividere i passaggi per farlo.

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [20 Agosto 2025, 3:00am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/9 "2025-08-20T03:00:16Z")

</div>

> [@GaurangBlaze](#):
>
> Ogni volta che applico la modifica, mi viene chiesto “Vuoi applicare questa modifica storicamente? Questo cambierà le preferenze per 15 utenti esistenti.” e clicco Sì. Anche allora, agli utenti viene servito l’editor avanzato. Questo è un bug noto?

Ho provato a riprodurlo oggi senza successo. Ho una domanda però: gli utenti aggiornano il browser dopo che hai apportato la modifica? Perché se non lo fanno, abbiamo ancora i loro vecchi dati di preferenza utente nel browser in ember, quindi la nuova preferenza non verrà ancora utilizzata.

Affinché ciò funzioni come previsto, ho fatto questo:

- Verificato sull’utente A che l’editor fosse impostato sulla modalità avanzata
- Come amministratore, ho modificato l’impostazione predefinita sulla modalità markdown e l’ho applicata a tutti gli utenti
- Come utente A, ho ricaricato la pagina e riaperto l’editor, e ho visto che era in modalità markdown

Se non avessi ricaricato al passaggio 3, avrei ancora visto la modalità avanzata.

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [20 Agosto 2025, 6:26am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/10 "2025-08-20T06:26:37Z")

</div>

Grazie per il follow-up, Martin. Avevo già impostato la modalità su Markdown domenica. Avevo poi effettuato l’accesso con un account di prova lunedì, in un profilo browser separato, che ha invece ricevuto l’editor Rich.

Inoltre, se questo può essere d’aiuto, ogni volta che imposto “default\_composition\_mode” su “Markdown”, ricevo l’avviso: “Vuoi applicare questa modifica storicamente? Questo cambierà le preferenze per 61 utenti esistenti.” Capisco che dovrei riceverlo la prima volta, ma sembra un bug che mi venga richiesto ogni volta per un certo numero di utenti.

Per ulteriori test, ho appena effettuato l’accesso anche a un altro account di prova che non effettuava l’accesso da 10 mesi. Anche questo era impostato sulla modalità Rich Text per impostazione predefinita.

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [21 Agosto 2025, 1:37am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/11 "2025-08-21T01:37:50Z")

</div>

> [@GaurangBlaze](#):
>
> Grazie per il follow-up, Martin. Avevo già impostato la modalità su Markdown domenica. Avevo poi effettuato l’accesso con un account di prova lunedì, in un profilo browser separato, che ha invece ricevuto l’editor Rich.

> [@GaurangBlaze](#):
>
> Per ulteriori test, ho anche appena effettuato l’accesso a un altro account di prova che non effettuava l’accesso da 10 mesi. Era anche impostato sulla modalità Rich Text per impostazione predefinita.

Questo è davvero molto strano… quanti utenti ci sono in totale sul tuo sito? Mi chiedo se si blocchi nel passaggio in cui dovrebbe aggiornare tutti gli utenti dalla modifica delle impostazioni del sito, perché ho notato che non c’è nulla nell’interfaccia utente che indichi che il lavoro è ancora in corso.

> [@GaurangBlaze](#):
>
> Inoltre, se questo aiuta, ogni volta che imposto “default\_composition\_mode” su “Markdown”, ricevo l’avviso: “Vuoi applicare questa modifica storicamente? Questo cambierà le preferenze per 61 utenti esistenti”. Capisco che dovrei riceverlo la prima volta, ma sembra un bug che mi venga richiesto ogni volta per un certo numero di utenti.

Dipende da quanti utenti l’hanno modificato con l’interruttore nel frattempo. Sembra che funzioni correttamente per me nei test locali.

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [21 Agosto 2025, 5:24am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/12 "2025-08-21T05:24:34Z")

</div>

> [@martin](#):
>
> quanti utenti ci sono in totale sul tuo sito?

Secondo la nostra pagina /about, abbiamo 20.000 membri.

> [@martin](#):
>
> Dipende da quanti utenti l’hanno modificato con l’interruttore nel frattempo

Chiarirò che i passaggi sono i seguenti:

1. Visita /admin/site\_settings/category/all\_results?filter=default\_composition\_mode
2. Imposta default\_composition\_mode su Modalità Markdown. Anche quando è già in modalità Markdown, puoi aprire il menu a discesa e selezionare l’opzione Markdown.
3. Ricevi l’avviso per XX numero di utenti. Accettalo.
4. Aspetta dieci minuti, quindi ricarica la pagina.
5. Imposta default\_composition\_mode su Modalità Markdown (come al punto 2).
6. Di nuovo, ricevi l’avviso per lo stesso numero di utenti.

Come hai menzionato, anch’io non so quanto tempo ci vuole (più di 10 minuti?) per aggiornare le preferenze storiche degli utenti. Inoltre, non penso che tutti quegli utenti avrebbero aggiornato le loro preferenze in così poco tempo. Potrei star perdendo qualcosa qui.

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [21 Agosto 2025, 5:55am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/13 "2025-08-21T05:55:09Z")

</div>

Ok, certo, decisamente non sembra che molte persone stiano attivando l’opzione in quel lasso di tempo 🤔 Riesci a fare una registrazione dello schermo per mostrare cosa sta succedendo?

Ti consiglio anche di dare un’occhiata alla scheda Network negli strumenti per sviluppatori di Chrome. Dovrebbe mostrare 2 richieste come questa dopo aver salvato (la prima è quella per mostrare il prompt di XX utenti, la seconda è per salvare effettivamente l’impostazione ed eseguire il backfill):

![image](https://cdck-file-uploads-global.s3.dualstack.us-west-2.amazonaws.com/meta/optimized/4X/a/4/2/a426009a4ab1b1bd082ceb1910dc56a0c1a4db35_2_690x27.png)

La seconda deve avere uno stato `200`, altrimenti, se ti sposti altrove, non verrà eseguito il backfill per gli utenti esistenti.

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [21 Agosto 2025, 6:55am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/14 "2025-08-21T06:55:45Z")

</div>

Grazie per le informazioni aggiuntive. Le due richieste sono mostrate nell’immagine sottostante. Entrambe sono state piuttosto veloci.

 ![Screenshot 2025-08-21 at 12.14.57](https://global.discourse-cdn.com/meta/original/4X/a/7/4/a740a5cf9709b8c423a7a130b1988d9f18c25e0c.png)

Una registrazione video è disponibile a [questo link di Drive](https://drive.google.com/file/d/1EMG-M0Y-3BX5_WE8U2krtTu3kxWyFxm6/view?usp=sharing). Ho impostato l’opzione, accettato la finestra di avviso, atteso un po’, ricaricato la pagina e poi l’ho impostata di nuovo. Poi ho ricevuto di nuovo la finestra di avviso.

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [21 Agosto 2025, 7:15am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/15 "2025-08-21T07:15:18Z")

</div>

Ok, la trama se complica… esta parte donde eliges Markdown cuando ya tienes Markdown seleccionado y te ofrece guardar:

 ![image](https://global.discourse-cdn.com/meta/original/4X/1/3/7/13797dd84812c61d5d28bc5e54ccbd497ebfe83d.png)

 ![image](https://global.discourse-cdn.com/meta/original/4X/7/e/d/7ed92fcd01c6cab83118f1832e45451d5e85aec2.png)

No debería suceder… hay un error aquí donde considera que el valor del elemento de la lista (`0`) es diferente del valor de la configuración (`’0’`). Así que creo que el Guardar aquí no hace nada. Puedo corregir ese error, pero ¿puedes hacer esto?:

- Cambia la configuración a “Texto enriquecido”
- Guárdalo, pero elige “No, solo aplica los cambios en el futuro”
- Vuelve a cambiar a “Markdown”
- Guárdalo y elige “Sí” para aplicarlo retroactivamente

Y mira si eso soluciona los problemas que estás teniendo.

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [21 Agosto 2025, 7:35am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/16 "2025-08-21T07:35:43Z")

</div>

Grazie per avermelo fatto sapere. Ho effettuato l’accesso con un vecchio account di prova e sembra che abbia funzionato correttamente: ha attivato la modalità Markdown al primo avvio 🙂

C’è un modo per verificare che tutti gli utenti siano in modalità Markdown, ad esempio utilizzando il [Data Explorer](https://meta.discourse.org/t/32566?silent=true)?

---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [21 Agosto 2025, 11:58pm UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/17 "2025-08-21T23:58:19Z")

</div>

Sono contento che abbia risolto il problema!

> [@GaurangBlaze](#):
>
> C’è un modo per verificare che tutti gli utenti siano in modalità Markdown, ad esempio utilizzando il [Data Explorer](https://meta.discourse.org/t/32566?silent=true)?

Sì, assolutamente, potresti fare una query come:

```plaintext
SELECT composition_mode, COUNT(composition_mode) FROM user_options GROUP BY composition_mode;

```

I valori sono qui:

> <https://github.com/discourse/discourse/blob/5ec98f5cd1b37388e5cf79a264501af699a8633b/app/models/composition_mode_site_setting.rb#L10-L15>

---

<div class="post-metadata">

### Author: ![GaurangBlaze](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gaurangblaze/32/279249_2.png) [@GaurangBlaze](https://meta.discourse.org/u/GaurangBlaze)
#### Post date: [22 Agosto 2025, 2:03am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/18 "2025-08-22T02:03:30Z")

</div>

Grazie, tutti i nostri utenti sono ora in modalità Markdown 🥳

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [17 Settembre 2025, 2:04pm UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/23 "2025-09-17T14:04:18Z")

</div>

> [@martin](#):
>
> c’è un bug qui dove considera il valore per l’elemento dell’elenco (`0`) diverso dal valore dell’impostazione (`’0’`). Quindi penso che il Salvataggio qui non faccia nulla. Posso correggere quel bug

@martin Ho spostato questo argomento dal supporto al bug e lo chiuderò, presumendo che tu abbia corretto il bug. Se non l’hai fatto, puoi riaprirlo?

---

<div class="post-metadata">

### Author: ![tobiaseigen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/tobiaseigen/32/539204_2.png) [@tobiaseigen](https://meta.discourse.org/u/tobiaseigen)
#### Post date: [17 Settembre 2025, 2:04pm UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/24 "2025-09-17T14:04:24Z")

</div>



---

<div class="post-metadata">

### Author: ![martin](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/martin/32/491371_2.png) [@martin](https://meta.discourse.org/u/martin)
#### Post date: [22 Settembre 2025, 7:06am UTC](https://meta.discourse.org/t/unable-to-set-default-to-markdown-mode/379243/25 "2025-09-22T07:06:21Z")

</div>

È stato corretto da [FIX: Don't show setting save/cancel buttons when selecting the current value by OsamaSayegh · Pull Request #34552 · discourse/discourse · GitHub](https://github.com/discourse/discourse/pull/34552)
