They can cause instability, introduce issues and may conflict with future updates. Apply at your own risk!
Custom WYSIWYG Editor Buttons
This hack provides an example of adding custom actions to the WYSIWYG page editor (TinyMCE). By default, this adds an additional “…” overflow menu to the end of the WYSWIYG toolbar, which contains a single new “Insert Cat” button that has a custom icon. When clicked, this adds a placeholder kitten image into the page.
This is only meant to be an example, to be tweaked and modified to your use-case. The code is heavily commented for this reason.
For significant alterations, you’ll likely want to review the TinyMCE documentation to understand the full set of available capabilities and actions within the TinyMCE editor API.
Considerations
- This heavily relies on internal methods of TinyMCE, which may change upon any BookStack release as we update the editor libraries.
Code
head.html
|
|
Request an Update
Hack not working on the latest version of BookStack?
You can request this hack to be updated & tested for a small one-time fee.
This helps keeps these hacks updated & maintained in a sustainable manner.
Latest Hacks
Mermaid Viewer
This hack enables interactive Mermaid diagrams to be rendered within a page on BookStack. The Mermaid diagram code itself can be written & edited using either BookStack’s WYSIWYG editor, by creating a code block and assigning it the language “mermaid”, or via the Markdown editor using standard mermaid code fences like so: »
Interactive Embedded Page Drawings
This hack will, on page view, attempt to convert any drawing images into interactive embedded drawing viewers so that you’ll be able to pan & zoom around the drawings while also being able to interact with things like links within the drawings. »
Dynamic Glossary
This hack adds the ability to write global and book-level glossaries, which will then be utilised when viewing pages by marking those words in page content with a dashed underline. On hover, the set definitions will show in a popup below the word. »
Prune Revisions Command
This hack registers a custom command using the logical theme system, which will prune the revisions of a specific page to just those with a changelog provided (in addition to the current revision), before resetting the revision numbers across the remaining versions to be sequential without gaps. This will also reset the overall revision count on the page. »