mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-05-04 18:08:46 +03:00
Discussion: Re-Usable Glossary #369
Closed
opened 2026-02-04 19:06:44 +03:00 by OVERLORD
·
16 comments
No Branch/Tag Specified
development
l10n_development
release
v26-03
ci_fixing
codeberg-actions
lexical_may_2026
MilnerMart/development
sort_rule_text
GamerClassN7/impersonations-for-admin
Zhey-on/feature/csp-image-css-controls-6033
tortillas5/development
clauvaldez/mfaReset
llm_only
vectors
McTom234/oidc-key-algorithms
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v26.03.4
v26.03.3
v26.03.2
v26.03.1
v26.03
v25.12.9
v25.12.8
v25.12.7
v25.12.6
v25.12.5
v25.12.4
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
☕ Open to discussion
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#369
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 @Shackelford-Arden on GitHub (Jul 7, 2017).
So, I was writing up some documentation and noticed that I use acronyms rather often. While I know that the audience who would be reading my content are likely to understand what they all mean, I also like ensuring that there is no room for assumptions.
I got to thinking. What could I do to help ensure that acronyms (or even other uncommon words/phrases) are understood by all readers, regardless of background?
I thought of a re-usable set of terms that would be stored with their respective definition.
I imagine this being implemented in a way that you'd simply highlight the word or phrase and then link it to an item in the glossary. Users could then click on the acronym and a small pop up (in context, not a new window) would show with the term and it's respective definition.
Thoughts?
@Ethanb00 commented on GitHub (Sep 28, 2017):
I really like this idea. And can see a few potential iterations/questions for how it would look.
Would I use it to define acronyms system-wide, book-wide, chapter-wide, page-wide?
How extensive can the explanation be? For example, can I use the same tool to expand the acronym WSUS as I would use for a brief explanation of AuthPrimary as my primary Domain Controller with its IP address and basic configs, etc.
@Shackelford-Arden commented on GitHub (Sep 29, 2017):
@Ethanb00 Personally, I was looking at more like global level words or acronyms. That's just my use case though.
As for the explanations, I'd look at something no more than a few sentences. Potentially with a link to another page that is more of a glossary page or something that includes more information?
@Ethanb00 commented on GitHub (Sep 30, 2017):
I think my preference would be for a book level glossary...or appendix I guess.
I also like the idea of a mouse-over tooltip style HUD for the info. And agreed regarding a strict, short text limit.
@mainmachine commented on GitHub (Jul 3, 2019):
Could you do this via custom CSS...?
@ssddanbrown commented on GitHub (May 20, 2022):
There's been very little demand/requirement for this since it was originally requested, so I'm going to close this off.
I think an official implementation would raise questions, such as scope of glossary terms, as reflected above, and this could essentially be achieved via an additional page at whatever level was desired.
@demlak commented on GitHub (Sep 23, 2023):
the world keeps turning.. bookstack, too.
6 Years later in a World, where "Accessibility" on the web has more focus then ever.. we use a similar Glossary on our website.. since we want to extend our project more and more with bookstack, we would love to see this on bookstack, too.
In our case, predefined/tagged Text is highlighted in a specific color to show "this phrase has a glossary entry". People can mouse-over to get a popup with a very short description.
We released this with Drop-Component of UIKit..
https://getuikit.com/docs/drop
Since Bookstack seem to have some components from Bootstrap.. whatabout the "popovers"-component?
https://getbootstrap.com/docs/5.0/components/popovers/
See Video for example:
https://github.com/BookStackApp/BookStack/assets/11285006/c4f035cc-7eb1-46b4-8a42-bb9b559c3570
In our case the predefining is centralised and we can use a Tag in our CMS to call the entry.
Example from the Video above:
Wesentlich ist dafür das Bemühen um einen (glossary: suffizienz text: genügsamer Lebensstil).Thats how we can access entries of the glossary on our website:
(starts the tagglossary:is the Name of the tagsuffizienzis the name of the glossary-entrytext:is an attributegenügsamer Lebensstilis the highlighted phrase to show)closes the tagMaybe you can reopen this issue? I would like to see if the interest in 2023 got grown.
@nmdemarco commented on GitHub (Oct 18, 2023):
@demlak your video doesn't play, so I can't be sure what you're proposing.
At one point, our team used a Confluence add-in similar to this one. We didn't solicit formal feedback from our wiki users. My sense, however, was that people found the inline links and hover tooltips distracting.
This might be a case where the feature sounds excellent, but all implementations fall short of expectations.
@demlak commented on GitHub (Oct 18, 2023):
thx for the info.. i just uploaded a converted version of the video..
@JNR8 commented on GitHub (Apr 29, 2024):
I would greatly use something like this. For my purposes I would require certain words or phrases in Japanese to automatically link to a centralised glossary entry which would provide an explanation in English.
I would like two methods of displaying this on a page with an option to choose which display option to be default either by page or by book:
[English])Currently I end up having to type the English directly after the Japanese on the page and keep a separate page listing all terms.
This is very time consuming and difficult to make adjustments should I need to change a translation.
Alternatively, being able to utilise the Tagging System for this purpose would also be suitable. (i.e. creating a Tag with a value on the page and being able to add that tag on line of text that uses the display options I previous mentioned.
@kristiandg commented on GitHub (Nov 11, 2024):
I just created an FR for this very thing. Funny, when I did my initial search, I was searching for "in-line definitions". Only as I was writing out the FR, did I realize the term Glossary, and updated my FR to have that terminology.
But I see great use for this feature... Here's the FR I created - based on the different comments about how to implement, maybe folks would like what I proposed, as it would seem to cover most use cases mentioned above. :)
https://github.com/BookStackApp/BookStack/issues/5316
@ssddanbrown commented on GitHub (Nov 13, 2024):
If anyone here still desires this, in #5316 with @kristiandg I played around with the idea of achieving the core goal of this via just added JavaScript + CSS, and have cleaned this up into a hack here:
https://www.bookstackapp.com/hacks/dynamic-glossary/
It allows a global glossary, with the option to override-via/use a book-level glossary.
glossary-terms.webm
@JNR8 commented on GitHub (Nov 15, 2024):
Thank you so much. Annoyingly I do need to use multiple words as I need to translate japanses phrases to english using this method. but will work with hyphen for now to avoid spaces.
Do the Gloarry pages (either global or bok based) need to be visible to the end users in order for them to see the term explainations in the hover popup text or can they be hidden by permissions, but still viewable?
@kristiandg commented on GitHub (Nov 15, 2024):
I’m betting they do because their browser needs to index it and can only do that if being viewed. Kristian GuntzelmanSent from my mobile device...On Nov 15, 2024, at 12:16 PM, Jennerate @.***> wrote:
Thank you so much. Annoyingly I do need to use multiple words as I need to translate japanses phrases to english using this method. but will work with hyphen for now to avoid spaces.
Do the Gloarry pages (either global or bok based) need to be visible to the end users in order for them to see the term explainations in the hover popup text or can they be hidden by permissions, but still viewable?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were mentioned.Message ID: @.***>
@JNR8 commented on GitHub (Nov 18, 2024):
I am trying to get my head around how to implement this for my use case.
I have a shelf with many books related to Karate. Each book contains Japanese terms and phrases that I would like to be referenced by a single dynamic glossary page at the shelf level. Right now it seems I can create a page per book or globally, but not per shelf. Each book on this shelf contains shared terms and phrases which when using the current model I would either need to repeat in a glassary page per book (resulting in duplicating the glossary mutiple times) or create a global glosssary.
Creating a Global Glossary could lead to problems where there may be duplicate terms with different descriptions depending the topic of the book. For example terms or phrases in a book about Karate could over lap (although unlinkely) with books about IT related support processes. I.e. A description for a Japanses term being could be displayed in a book about scripting in PowerShell, (unlikely, but possible).
Would it be possible to modify the script to look for glossaries at the Shelf level asl well?
@JNR8 commented on GitHub (Nov 20, 2024):
After implementting a global glossary to test this out I have come across a few issues:
1: Terms in a header are highlighted, when perhaps they should not be.

2: The term being highlighted is duplicated (but not all the time, see attached image).
3: Terms are not always displayed. Different browsers have different results. MS Edge for example throws an exception:
@ssddanbrown commented on GitHub (Nov 22, 2024):
@JNR8 Yeah, this is only a quick hack implementation so there can be limitations/issues. I updated the hack yesterday to avoid issues when the term is the first word in a line, which is maybe what you're running into there. The hack does not target specific content types, it just targets all page content.
Anything is possible with enough time, but it's not something I'd offer as it does complicate things further, especially with content not belonging to specific shelves, and since I don't want to increase the scope of the hack any wider and/or spend too much further time on it.