ワンクリックで
add-unicode-block
Add a new Unicode script/block to the Terrarum Sans Bitmap font engine.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Add a new Unicode script/block to the Terrarum Sans Bitmap font engine.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | add-unicode-block |
| description | Add a new Unicode script/block to the Terrarum Sans Bitmap font engine. |
The user must supply:
Ogham, LatinExtE)ogham_variable.tga)U+1680..U+169F)If any of these are missing, ask for them before proceeding. Extra directions can be given after Unicode range.
Read the sheet index constants from both files to find the current highest index (excluding SHEET_UNKNOWN = 254):
src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kt — grep for internal const val SHEET_OTFbuild/sheet_config.py — grep for ^SHEET_The new index = highest existing index + 1.
From the script name, derive:
SHEET_<UPPER_SNAKE>_VARW (e.g. SHEET_OGHAM_VARW)<camelCase>IndexY (e.g. oghamIndexY)0x-prefixed Kotlin/Python literalMake all 6 edits. Read each section before editing.
src/net/torvald/terrarumsansbitmap/gdx/TerrarumSansBitmap.kta) Sheet index constant — find the block of internal const val SHEET_* constants (just before SHEET_UNKNOWN = 254) and append:
internal const val SHEET_<NAME>_VARW = <INDEX>
b) fileList entry — find internal val fileList array and append before the closing ):
"<tga_filename>",
c) codeRange entry — find internal val codeRange array and append before the closing ):
0x<START>..<0x<END>, // SHEET_<NAME>_VARW
Use + to combine non-contiguous ranges if needed.
d) getSheetwisePosition when-branch — find the when block that dispatches to indexY functions (just before else -> ch / 16) and append:
SHEET_<NAME>_VARW -> <camelCase>IndexY(ch)
e) indexY function — find the block of private *IndexY functions near the bottom of the companion object and append:
private fun <camelCase>IndexY(c: CodePoint) = (c - 0x<START>) / 16
OTFbuild/sheet_config.pyf) Sheet index constant — find the block of SHEET_* = <n> constants (just before SHEET_UNKNOWN = 254) and append:
SHEET_<NAME>_VARW = <INDEX>
g) FILE_LIST entry — find FILE_LIST = [ array and append before the closing ]:
"<tga_filename>",
h) CODE_RANGE entry — find CODE_RANGE = [ array and append before the closing ]:
list(range(0x<START>, 0x<END+1>)), # <INDEX>: <ScriptName>
i) index_y lambda — find the dict in get_index_y(sheet_index, c) (just before SHEET_HANGUL: lambda: 0) and append:
SHEET_<NAME>_VARW: lambda: (c - 0x<START>) // 16,
After all edits, confirm:
CODE_RANGE is end + 1 (Python range is exclusive).