mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-05 16:49:47 +03:00
Codemirror Custom mode support #1674
Open
opened 2026-02-05 01:34:03 +03:00 by OVERLORD
·
13 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
pull-request
Mirrored from GitHub Pull Request
No Label
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#1674
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 @Naltaris on GitHub (Apr 21, 2020).
Codemirror supports adding new mode(s) (language syntax) but this is not leveraged here.
Because of javascript sources in this project are minimized it is not possible add new CodeMirror mode outside of full development where new branch for this needs to be kept.
Would it be possible to add support so that we can add new codemirror modes easily as a sort of "plugin"?
@ssddanbrown commented on GitHub (Apr 25, 2020):
Hi @Naltaris,
I could expose some kind of JavaScript hooks if really wished for but they'll only be semi-officially supported. To be honest, as long as the languages you want to add are fairly common i'd be happy to add them in to the core list anyway.
@Naltaris commented on GitHub (Apr 30, 2020):
Hi @ssddanbrown ,
I would really appreciate the hooks.
Company I work for is using Proprietary languages so it is not possible to have them in official release :(
Thank you
@techauthoruk commented on GitHub (Aug 3, 2021):
HI Dan @ssddanbrown
Sorry to bump an old thread, but I was wondering whether .NET is in the core list? I see VBScript is, but using VB.NET (which is how it seems to be specified in the CodeMirror language modes page) doesn't appear to be enabled. I still have to document a lot of VB and .NET code in my work, so this would be very useful if you could enable it.
Thanks!
Mark
@ssddanbrown commented on GitHub (Aug 3, 2021):
Hi @techauthoruk,
Sorry, I'm not too familiar with the world of .net and VBscript, My understanding was that a lot of .net was c#. I see that VB.NET is something else within the .net landscape, Seems popular enough and supported officially by codemirror so feel free to open a new issue for that to be added to the default included options. Not currently included but could be sneaked into the next release quite easily.
@DomiQuentin commented on GitHub (Mar 11, 2022):
Hi, I same request, I was trying to add commonlisp https://codemirror.net/mode/commonlisp/index.html.
Could you expose or add the language please ?
Quentin
@Mazvy commented on GitHub (Apr 8, 2022):
+1 for this feature.
Would love to add an Apache config mode that isn't bundled with codemirror https://github.com/gauthier-th/codemirror-mode-apache
If this is a non trivial thing to include as a base feature in BookStack (easily adding custom modes), perhaps we could get a basic instructional guide on how to do this manually? As it stands I'm confused how this would have to done.
Thanks!
@ssddanbrown commented on GitHub (May 30, 2022):
Very closely related to #844
@momomsr commented on GitHub (Nov 28, 2022):
I also support this feature.
Is there any work beeing done on this topic? We need to have Structured Text, one of the IEC 61131-3 Standardized languages, to be integrated within codemirror. unfortunately it is not part of the official package or offically registered as community-mode on the codemirror-project.
Is there a possibility to integrate it ourselfes (we have a IT-company maintaining our bookstack-app, i would ask them to do so) or would be risk not to be able to update in the future (or similar)?
I love to use bookstack, thanks for the good work, i highly appreciate!
Thank you!
@carlossierra311 commented on GitHub (Jan 13, 2023):
@ssddanbrown, do you have plans to include this in a near version? Thanks
@ssddanbrown commented on GitHub (Jan 13, 2023):
@carlossierra311 Probably not too soon to be honest. Could have added sooner via a hacky way but wanted to think about doings things a bit nicer. #3904 would work towards that. Also need to think about the move away from CodeMirror 5 since that would affect things here, hence no point moving this forward beforehand really.
@carlossierra311 commented on GitHub (Jan 13, 2023):
Too bad. Thanks anyway.
@momomsr commented on GitHub (Jan 17, 2023):
Thanks for the honest answer. If there would be any workaround to get it working with a custom language please let us know.
Thanks for the great work in general!
@lexi-the-cute commented on GitHub (Oct 23, 2024):
I'd really love the ability to add custom languages on the fly, especially since CodeMirror doesn't add new languages anymore. I'm looking to add the ability to highlight AVR Assembly (based on RISC). While I found AVR Asm syntax highlighting for highlight.js, however, I could not find it for CodeMirror.