Перейти к содержимому
Mineforgian

Glomphosche

View composed glyphs or ligatures in Minecraft. (Alpha)

Загрузки
114
Подписчики
2
Обновлён
13 ноября 2025 г.
Лицензия
MIT

Опубликован 8 ноября 2025 г.

Glomphosche

Glomphosche is a simple mod that visually ligates or compose supported character or Unicode code point sequences into supported ligatures.

Alpha Usage

This mod is currently in Alpha testing. The composition system is already working, though needing polishing and possibly improved capabilities that can be built on top with.

Characters

Item Pre-composed Unicode Unifont Extension Custom Font Notes
Tagalog Block N/A WIP Since 0.1.0. To display characters with vowel markers, viramas, and pamudpod, a custom font is used. The base characters are also replaced, overriding the default from Unifont.
Modern Hangul Jamo TBD Since 0.2.0. Visually handles valid jamo sequence as pre-composed syllable, which the in-game Unifont supports.
Hanuno'o Block N/A WIP Since 0.2.1. Custom font relacement and to support displaying vowel markers and pamudpod.

Technicals

The internals are still being polished. You can check the first few lines of the GlomphoscheImpl class and even the mentioned Node classes there that you may find of interest.

import io.github.startsmercury.glomphosche.impl.client.GlomphoscheImpl;
import io.github.startsmercury.glomphosche.impl.client.node.DiscreteNode;
import io.github.startsmercury.glomphosche.impl.client.node.hangul_jamo.composable.ComposableHangulJamoNode;
import net.minecraft.network.chat.FontDescription;

class Example
{

void initialize()
{
// register modern Hangul Jamo handler, or your own handler
// for a different use, if you implemented one
GlomphoscheImpl.ROOT
    .inner()
    .add(new ComposableHangulJamoNode());

// the letter 'f'
DiscreteNode node1 = GlomphoscheImpl.LOOKUP.withDiscrete('f');
// the theoretical glyph 'fi'
DiscreteNode node2 = node1.withDiscrete('i');
// register the font that retextures 'f' as the glyph representing 'fi'
node2.fontOverride(FontDescription.DEFAULT); // replace with your own

// This one is for 'ffi' by retexturing 'f'
GlomphoscheImpl.ROOT
    .withDiscrete('f')
    .withDiscrete('f')
    .withDiscrete('i')
    // replace with your own
    .fontOverride(FontDescription.DEFAULT);
}

}

The shortest path to test with an editable text box is through the Add Server screen found in Title Screen > Multiplayer > Add Server.

Ченджлог

0.2.1+mc1.21.10Альфа1.21.10 · 13 ноября 2025 г.

Hanuno'o and Fixes

  • Hanuno'o Unicode Block support with custom font textures. This should bring the shared dandas: ᜵ and ᜶
  • Delete (reversed backspace) will now delete the glyph/composed codepoints instead of deleting the first and leaving the deconstructed chars
  • Fix glomphosche not properly working in some places such as non-editable texts and multiline fields found in stuff like editing Books

0.2.0+mc1.21.10Альфа1.21.10 · 8 ноября 2025 г.

Modern Hangul Jamo Composed Syllables

Support for composing modern Hangul Jamo into Hangul syllables. This only supports modern jamo and follows the composition calculation to map proper jamo sequences to pre-composed Unicode characters.

Also now includes fabric-resource-loader-v0 just in case so textures will for sure show. Would have silently needed Fabric API.

Technicals (updated)

The internals are still being polished. You can check the first few lines of the GlomphoscheImpl class and even the mentioned Node classes there that you may find of interest.

import io.github.startsmercury.glomphosche.impl.client.GlomphoscheImpl;
import net.minecraft.network.chat.FontDescription;

class Example
{

void initialize()
{
// register modern Hangul Jamo handler, or your own handler
// for a different use, if you implemented one
GlomphoscheImpl.ROOT
    .inner()
    .add(new ComposableHangulJamoNode());

// the letter 'f'
Node node1 = GlomphoscheImpl.LOOKUP
    .computeDiscreteIfAbsent('f');
// the theoretical glyph 'fi'
Node node2 = node1.getOrCreate('i');
// register the font that retextures 'f' as the glyph representing 'fi'
node2.register(FontDescription.DEFAULT); // replace with your own

// This one is for 'ffi' by retexturing 'f'
GlomphoscheImpl.ROOT
    .getOrCreate('f')
    .getOrCreate('f')
    .getOrCreate('i')
    // replace with your own
    .register(FontDescription.DEFAULT);
}

}

Acknowledgements

Great help from https://steve-p.org/korean/. Explained the concepts and had the formula to calculate the precomposed syllables!

0.1.0+mc1.21.10Альфа1.21.10 · 8 ноября 2025 г.

Initial Alpha Release of Glomphosche

A mod that 'hacks' in composed glyphs since chars weren't enough.

Alpha Usage

This mod is currently in Alpha testing. The vital feature is realized, that is a system that could somehow combine characters or codepoints into a singular glyph.

Currently, only Baybayin, also known as the Tagalog script in Unicode, is pre-included and there currently is no convenient way to register additional sequences aside from creating a helper mod. You also need to somehow have the capability to enter Tagalog/Baybayin characters, either using a keyboard mapper or simply find one that can convert Latin strings into Tagalog/Baybayin.

You may register the first level characters with Minecraft's default font or your own if it'll work better for what you are achieving. Do note that you want to retexture the first character and likely use separate textures. You are required to already know how to manage fonts through vanilla Minecraft
resource packs.

// the letter 'f'
var node1 = GlomphoscheImpl.ROOT.getOrCreate('f');
// the theoretical glyph 'fi'
var node2 = node1.getOrCreate('i');
// register the font that retextures 'f' as the glyph representing 'fi'
node2.register(/* FontDescription.Source here */);

// This one is for 'ffi' by retexturing 'f'
GlomphoscheImpl.ROOT
    .getOrCreate('f')
    .getOrCreate('f')
    .getOrCreate('i')
    .register(/* FontDescription.Source here */);

The shortest path to test with an editable text box is through the Add Server screen found in Title Screen > Multiplayer > Add Server.

Комментарии

Загружаем…