BenTalagan / glaemscribe

Glaemscribe, the tolkienian languages/writings transcription engine.
https://glaemscrafu.jrrvf.com/english/glaemscribe.html
Other
43 stars 8 forks source link
cirth glaemscribe sarati tengwar tolkien transcription

Glǽmscribe

Glǽmscribe (also written Glaemscribe) is a software dedicated to the transcription of texts between writing systems, and more specifically dedicated to the transcription of J.R.R. Tolkien's invented languages to some of his devised writing systems (Tengwar, Sarati, Cirth, ...).

The current stable version is 1.3.1 (November 2022).

Official integration

Here is the official integration of Glǽmscribe's engine.

Glaemscribe's UI Screenshot

Features

Programming Language

Glaemscribe has two separate implementations : a javascript library and a ruby library.

Mode development

If you're interested in developing a mode for Glǽmscribe, please read the mode development documentation.

Installation and integration

Here is the installation and integration documentation, for advanced users.

Changelog

Version Date Comment
1.3.2 Not released [English] [Espeak] Spelling and transcription for 'of a'. Thanks to Damien Bador for noticing !
1.3.1 11/07/2022 Better handling of tengwa+sarince+tehta combinations for old fonts
1.3.0 09/23/2022 Text-To-Speak engine based on eSpeakNG / emscripten
[English] Phonemic tengwar mode
[English] Phonemic cirth mode
1.2.1 Unreleased [Japanese] Corrected 億 to 10^8, added support for セィ and ゼィ. Thanks to Roman Rausch for his feedback!
Refactored JS array functions to prevent interactions with other libraries. Thanks to Troy Alford for the fix!
Refactored charset virtual chars in a more git friendly format.
[Lang Belta] Added Tengwar mode by Da Def (exotic experiment!)
1.2.0 08/04/2019 Added support for hybrid unicode 'GlaemUnicode' fonts (see the font directory for details).
Added support for the Free Tengwar Font project fonts (experimental).
Added support for {UNI_XXX} unicode entry variables in rule source member.
Added "sequence" type for virtual chars.
Added "pointer" (dynamic) variable type using the '<=>' syntax.
Added macro/deploy directives for declaring and using macros and avoid code repetition.
Cross rules can now use a variable as cross schema.
[Khuzdul] : Added missing long o.
[Sindarin][All Modes] Reworked and uniformized phonology disambiguation (median dot, hyphen, ng, ngw).
[Japanese] Added japanese tengwar mode.
Bug fixes.
1.1.14 12/17/2017 Minor bug fix on 1.1.13
1.1.13 12/17/2017 [Quenya] Adding support for palatalized geminates (requested exotic feature)
1.1.12 11/28/2017 Minor bug fix on 1.1.11
1.1.11 11/28/2017 Minor bug fix on 1.1.10
1.1.10 11/28/2017 Adding small toolbar in the editor. Rewrote the glaeml arg parser to handle escaped unicode chars such as '\u00a0'
1.1.9 11/26/2017 Bug fix targeting handling of NBSP.
1.1.8 11/25/2017 Bug fixes and charset enhancings.
1.1.7 07/21/2017 Merged handling of /aw/ & /au/ in the Beleriand mode for Sindarin.
1.1.6 07/17/2017 Enhanced handling of /aw/ in the Beleriand mode for Sindarin. Thanks a lot to Dmitry Kourmyshov for noticing!
1.1.5 06/14/2017 Fixing Quenya/Sarati issues (hl/hr/qui). Adding Quenya/Sarati punctuation basic handling. Thanks a lot to Roman Rausch for noticing these bugs & missing features !
1.1.4 06/11/2017 Fixing font problems and adding font features, enhancing charsets : adding some missing pustar punctuation, adding consonant modification signs for narrow bearer tengwar, refactoring the virtual charset tool, creating font repo for better tracking (thanks @Laicasaane for reporting all these issues!).
1.1.3 05/27/2017 [Tengwar] Added support for inlined, raw, spelled tengwar through the raw tengwar mode and the {{ ... }} syntax within any tengwar mode (thanks @Shihali for the discussion leading to that feature).
Major bug fix on crossrules (thanks @Laicasaane for noticing that bug!)
Reworked charsets and moved the reversed a tehta that was mapped on U+00AD (soft hyphen) (thanks @Laicasaane for noticing that bug too!)
1.1.2 05/04/2017 Npm repackaging.
1.1.1 05/04/2017 [Quenya] Added Vanyarin ldy, rdy, lg, rg, ff.
Added npm packaging.
Minor bug fixes.
1.1.0 03/24/2017 [Quenya] Added double tehtar option.
Added reversed virtual chars (for ligatures).
Added charset for Annatar.
Added LAMBE ligature for Annatar charset.
Enhanced existing charsets for better diacritic placement.
Merged Blackspeech modes.
Added support for FreeMonoTengwar.
Added custom, independent charset for Tengwar Parmaite.
Added charset for Tengwar Elfica.
New runic modes for Old Norse and Old English.
Lots of minor fixes.
Added small options in tengwar modes (consonant modification diacritic style, o/u curl direction, etc.)
1.0.19 09/06/2016 [Quenya] Removed unutixe under óre for coherency in implicit a submode.
[Sindarin Angerthas Daeron] Fixed h,ch,hw.
1.0.18 09/02/2016 Fixed 'implicit a' option for quenya mode broken in 1.0.17. Thanks to Dmitry Kourmyshov for noticing.
1.0.17 08/26/2016 Ported modes to virtual chars, added a dedicated charset for tengwar eldamar for better rendering of tehtar and diacritics.
1.0.16 08/16/2016 Introduces virtual chars in charsets for easier tehtar and diacritic variant uses.
1.0.15 ... Unlogged (see mode changelogs)

Prior todos

License

Glǽmscribe is released under the terms of the GNU Affero General Public License :

Glǽmscribe (also written Glaemscribe) is a software dedicated to
the transcription of texts between writing systems, and more 
specifically dedicated to the transcription of J.R.R. Tolkien's 
invented languages to some of his devised writing systems.

Copyright (C) 2015 Benjamin Babut (Talagan).

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <http://www.gnu.org/licenses/>.

Contributions, acknowledgments and thanks

TTS Engine

Glaemscribe uses eSpeakNG for english phonemic modes, as a back layer to transcribe from english to IPA. Glaemscribe's fork of eSpeakNG as a certain number of modifications that are necessary to handle features that were important to Tolkien. Thanks a lot to all contributors of the eSpeak and eSpeakNG projects !

Other third party components acknowledgements

Author

Glǽmscribe is written and maintained by Benjamin Talagan Babut.