Terminal Frame Generator Reference
tool::cterm::CommonBoxFrameStyleTool and tool::cterm::FrameBorderJointCharsTool share one verified character
source and stroke model.
See Generate Common Box-Frame Style and
Generate Frame-Border Joint Characters for the command workflows.
Configuration and Source Contract
The required [generate_common_box_frame_style] and [generate_frame_border_joint_chars] sections each have an
output_file text setting.
Their defaults are src/erbsland/cterm/impl/CommonBoxFrameBlockCombinationStyle_data.cpp and
src/erbsland/cterm/impl/FrameBorder_data.hpp.
--output-file (-o) overrides the destination for one run; --check (-c) fails for missing or different
output without writing.
The [box_frame] section selects input_file, defaulting to tool/data/cterm/box_frame_characters.txt.
It lists one Unicode scalar per line in selection order.
Its sibling manifest records the line-ending-independent SHA3-256 hash.
UnicodeSource verifies the shared UCD snapshot and supplies names from UnicodeData.txt.
No Python Unicode database or compiled Core character table supplies selection facts.
Selection and Representation
BoxFrameData interprets the verified UCD names as seven stroke attributes: right, down, left, up, the two diagonals,
and center.
It preserves repertoire order.
Exact attribute matches use the last matching source character; scored matches keep the first character at an equal
score.
Combination favors an exact merged character and otherwise uses the established score and overlay threshold.
The common box-frame command emits source-order characters and attributes, exact lookup arrays, position weights, and
special character indexes.
The frame-border command selects a 5 by 5 by 5 by 5 joint table, with named round-corner characters from the same
source.
Render templates under tool/resources/cterm own both C++ layouts.
Verification
BoxFrameToolTest checks UCD name interpretation, combination, ordered ties, malformed repertoire entries,
source-hash failures, and both commands’ check mode.
The affected Core terminal tests verify runtime selection.