New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RTL support #939

kmoj86 opened this Issue Jul 24, 2018 · 1 comment


2 participants

kmoj86 commented Jul 24, 2018

Desired Feature: RTL support for both the text editor and the application as a whole.


I'm currently working on translating the application into Arabic, but the issue I'm facing is RTL support. specifically in the text editor itself. when writing in arabic (or any rtl language), a number of problems occur:

  • bullet points like these are placed at the end of the sentence instead of at the beginning (they're always on the left side).
  • when writing a word in a LTR language like english in the middle of the sentence, the whole sentence gets split into two segments in backwards order. making the sentence unreadable or very hard to read at best. especially when using more than one word.
  • punctuation marks are placed in the wrong side when used at the end of a sentence.

this is the biggest issue in RTL support. not only in BookStack, but in any other application out there.
I'd like for the entire app to support RTL, but for now, the text editor is the highest priority. if not fixed then the app is unusable for any RTL language.

I'd like to contribute in making the RTL support but I lack the ability to do so. if there are any resources offering guides for adding RTL support then please mention them. also if anyone has the experience to do this then it would be greatly appreciated.

@ssddanbrown ssddanbrown added this to the BookStack Beta v0.24.0 milestone Aug 19, 2018

@ssddanbrown ssddanbrown referenced this issue Aug 19, 2018


RTL support #963

ssddanbrown added a commit that referenced this issue Sep 22, 2018

Added base RTL support
For #939

- Adds way to check if current language is RTL via config system.
- Made TinyMCE default direction be based on current language text
- Fixed bullet points to be RTL compatible.
- Set page content body to have direction based on content.

This comment has been minimized.


ssddanbrown commented Sep 22, 2018

Thanks for opening this @kmoj86.

I've now made some updates that will be in the next release to assist with RTL support and to accompany your Arabic pull request. The updates I've made can be seen here: 1cb6ae3

This brings some basic RTL support groundwork and features.
The main WYSIWYG editor will now have its direction set depending on the direction of your language.
If your language is rtl then you'll also get some extra toolbar buttons to control text direction.

The page content text direction should display correctly depending on the contents. I've made some updates to the bullet point styles to ensure they're rtl-compatible.

This should now mean basic RTL support is now included so I will now close this request. There's definitely going to be further issues but for those it's probably best if they are raised as their own, focused, issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment