Set direction of text depending on text itself

Facebook has it !

When Writing with an RTL language the ticker goes to the other way which gives a very intuitive experience.

I need this for my community because we are bilingual.
Thanks Discourse … Love

6 Mi Piace

@codinghorror, Hi Jeff, do you think this is something we can have in the short term ?

Have a look at an old topic here about RTL support.

https://meta.discourse.org/t/rtl-support/1784

There is a library that automatically sets the direction of each paragraph based on the content.

https://github.com/hasenj/bidiweb

1 Mi Piace

Sure, submit a pull request with the work if you want it. This is how open source works.

Is there any update for this feature? I desperately need it.

Even if there is a button to change direction of text, when we write english/arabic/persian, would be great.

I just added pr-welcome on this, hopefully a bilingual developer looking for a contribution will look at this one day.

1 Mi Piace

I just found that there is an html5 tag dir=auto that simply works in most situations.

For example I wrote this html

<html>
<body>

<p dir="auto">Write this جمله چپ به راست text left-to-right!</p>

<p dir="auto">این RTL sentence  جمله را از راست به چپ بنویس</p>

</body>
</html>

And pasted it in a simple html editor and it works perfectly fine

Could we use the same thing in discourse @sam?

btw I tried dir="auto" with firebug on <p> tags in discourse. However it didn’t do anything. I don’t know why.

1 Mi Piace

Anni dopo, questo è ancora un problema. Anche quando un post è scritto interamente in una lingua RTL, non viene allineato automaticamente.

Screenshot_20251114_122348
(questo è l’editor, ma l’anteprima a destra è una rappresentazione accurata del prodotto finale)
L’unica soluzione funzionante è aggiungere tag <div>. Come ha notato @hnaseri, <p> non funziona, funziona solo <div>.
Screenshot_20251114_122656
Screenshot_20251114_122429

Devo essere onesto, questo è piuttosto pessimo. Sicuramente c’è un modo migliore che richiedere agli utenti di aggiungere <div>. Infatti non è una soluzione abbastanza buona, perché se apri solo il tuo div ma non lo chiudi, il resto del testo sarà forzato nella direzione della primissima riga, piuttosto che su base paragrafo per paragrafo. Aver bisogno di aggiungere un altro <div> prima di ogni paragrafo non è davvero una soluzione.
Screenshot_20251114_122937
Screenshot_20251114_122959

image

Confermo solo che questo è un problema particolare nei forum in inglese dove a volte pubblichi in ebraico? (luoghi con lingua mista)

Perché con la localizzazione ebraica tutto sembra essere a posto

Una cosa che potrebbe aiutare qui è:

image

Con quel pulsante abilitato nella barra degli strumenti è molto più facile come aiuto qui. Per abilitarlo, dovresti abilitare l’impostazione support mixed text direction