docs: document the code generation scripts - #7604
Merged
Merged
Conversation
make_fonts.sh and cfn_sorter.sh were undocumented, so there was no way to discover that editing radio/src/translations/i18n/*.h requires re-running them, or that their output is committed rather than built. Add a Code Generation page covering all three generators - the LVGL fonts, the custom function sort order and the YAML parsers - with their inputs, prerequisites and the dev container invocation, and cross-link it from the existing YAML parser page. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The page pinned Qt 6.9.0 in the QT_DIR path, the prose and the aqt install-qt command, while CI builds Companion for Windows against 6.9.3 (the qt-version default in .github/actions/build_companion/action.yml). The Linux setup scripts and the dev container image also use 6.9.3. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Three scripts in the tree generate source files that are committed to git, and the build never runs them. Two of the three were completely undocumented — no mention in
docs/, any workflow, or a README:radio/src/fonts/lvgl/make_fonts.shradio/src/fonts/lvgl/{std,sml,lrg}/lv_font_*.ctools/cfn_sorter.shradio/src/cfn_sort.cpptools/generate-yaml.shradio/src/storage/yaml/yaml_datastructs_*.cppSo there was no way to discover that editing
radio/src/translations/i18n/*.hrequires re-running two of them, or that their output is committed rather than built.Adds a Code Generation page covering all three — inputs, prerequisites, and the dev container invocation — and cross-links it from the existing YAML parser page.
The page is deliberately precise about when each generator actually needs re-running, since both translation-driven ones are narrower than they look:
cfn_sorter.cppreads only the 25TR_SF_*special function names, so editing any other translated string leavescfn_sort.cppuntouched.cn/tw/jp/he/ko/ru/ua— Latin-script translations never affect them.Both were verified by editing a string of each kind and re-running the generator.
Second commit
docs/building/windows.mdpinned Qt 6.9.0 in three places (theQT_DIRpath, the prose, and theaqt install-qtcommand). CI builds Companion for Windows against 6.9.3 — theqt-versiondefault in.github/actions/build_companion/action.yml, which no workflow overrides — as do the Linux setup scripts and the dev container image. Updated to match.Note
The new page mentions that
tools/setup_buildenv_ubuntu*.shinstall the required locales, which is true as of #7603. If this merges first, that one sentence is briefly ahead of reality.Testing
mkdocs build --strictpasses, which is what CI runs. No orphaned pages and no broken nav entries.🤖 Generated with Claude Code