mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-05 00:29:48 +03:00
Spell checking in markdown editor #566
Closed
opened 2026-02-04 21:04:22 +03:00 by OVERLORD
·
15 comments
No Branch/Tag Specified
development
l10n_development
further_theme_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
No Label
🛠️ Enhancement
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#566
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @backwardspy on GitHub (Feb 2, 2018).
We would like to use spell checking, however it does not seem to work in the markdown editor. I have confirmed that the WYSIWYG editor works as intended.
Is it possible to add spell checking for markdown? I realise that this is probably non-trivial, given the formatting of markdown as compared to plain text.
@domainzero commented on GitHub (Feb 2, 2018):
There is https://github.com/sparksuite/codemirror-spell-checker but I haven't tried to implement it. The Markdown editor uses CodeMirror for the editor portion so this should apply.
@Abijeet commented on GitHub (Jun 3, 2018):
I spent some time looking into this.
So one problem with that spell checker linked by @domainzero is that it supports only English.
A PR was created to add support for multiple languages here but was never merged.
We could fork that repo, merge that PR and then use the dictionaries maintained here
@ssddanbrown - What do you think?
@Abijeet commented on GitHub (Jun 3, 2018):
Note there is also another implementation of spellchecker for codemirror here.
Demo - https://codepen.io/anon/pen/veGzWN?editors=1000
@thomasjsn commented on GitHub (Oct 15, 2018):
Ideally I'd like to use the browser spell checker, as it would support all languages and allow me to use my own added words. This however doesn't work with CodeMirror; discussion here: https://github.com/codemirror/CodeMirror/issues/1017
It's a pretty big drawback to have no spellchecking with the markdown editor, are there other editors can that be integrated which are more browser spellchecker friendly?
@sadger commented on GitHub (Feb 26, 2020):
Any update on this? Would really like spell check in markdown mode or at least to use my browser spell checker.
@guiglass commented on GitHub (Jan 2, 2021):
I hope this is relevant but I just looked at the page HTML source code for the CodeMirror "Edit File" input area. And using Firefox I could clearly see on line:
<div class="CodeMirror-code" role="presentation" autocorrect="off" autocapitalize="off" tabindex="0" style="" spellcheck="off" contenteditable="true">I noticed the attribute:
spellcheck="off"After changing the value to:
spellcheck="on"my browser is now highlighting all misspellings.
However when refreshing the page of committing changes the default value must be changed again. I am not sure if there is an automated way to set the spellcheck attribute to enabled whenever the page is loaded so that the CodeMirror-code Div will always take the form of:
<div class="CodeMirror-code" role="presentation" autocorrect="off" autocapitalize="off" tabindex="0" style="" spellcheck="on" contenteditable="true">[edit]
I could not find any extensions for FireFox for automatically modifying the
spellcheckattributes whenever the page loads. So I spent 15 minutes and wrote my first Firefox extension to add this automated functionality for my needs, but anyone is welcome to use it or improve it: https://github.com/guiglass/Firefox-Spellcheck-for-Github@bamhm182 commented on GitHub (May 26, 2021):
For what it's worth, this fix no longer works. I tried running your code and also just tried slapping spellcheck on every single div. Neither worked.
Blows my mind that it's so hard to allow the browser's spellchecking to be passed through.
@MattAbrs commented on GitHub (Apr 13, 2022):
Hi,
Sorry to bring back this subject, but my team and I are interest by a Spell Checker on the Markdown Editor.
Some of you found a method to have spell checker on Markdown Editor ?
Thanks in advance.
Regards.
@guiglass commented on GitHub (Apr 14, 2022):
I just tested the Firefox-Spellcheck-for-Github plugin I wrote and it seems to still be working okay:

@MattAbrs commented on GitHub (Apr 23, 2022):
I tried to use your extension for Bookstack, and it didn't work… Did you test on the bookstack markdown editor?
@biswalneelam commented on GitHub (Apr 29, 2024):
Is there any solution for having spell checker in GitHub Markdown online how we get to see in MS Word document while writing? I tried the above the Firefox temp plugin, but it does not work.
@aaronnewsome commented on GitHub (Jul 17, 2024):
Any update on this? I absolutely love Bookstack and it's my primary tool for all writing. Not allowing the browser to do spell check in the markdown editor is a bit of a disappointment. I tried my own bit of hacking using the above hints as a guide. Since my instance sits behind a nginx proxy, I tried to use an nginx sub_filter to rewrite the page content, replacing spellcheck="off" to spellcheck="on", but it didn't work because spellcheck="off" never appears in the markdown editor page response.
Has anyone else been able to solve this?
I find it amusing that the markdown editor I'm using to type this comment DOES support spell check, but Bookstack itself doesn't.
@KilledByAPixel commented on GitHub (Nov 22, 2024):
Hello! This was also bugging me so I tried the spellcheck fix mentioned by @guiglass. At first it looked like it was working fine, but now I see that it is only partially working. It does do spell checking, but not for the entire document. It seems like once I start typing in one area it will update the spell check around there. Still, even this is super useful, I would really like a way to enable it until there is a better solution.
I tested this in the Chrome browser on Windows 10.
@ssddanbrown commented on GitHub (Jul 23, 2025):
Within #5725 I have added an option in the markdown editor to toggle a plain textarea view instead of the codemirror editor, where you'd then be able to use normal browser spellchecking functionality.
That will be part of the next feature release.
@ssddanbrown commented on GitHub (Sep 4, 2025):
As per my comment above, it should be possible to now use spell-checking via the plain-text option in the MD editor.
I'll therefore close this off.