34 lines
2.0 KiB
Plaintext
34 lines
2.0 KiB
Plaintext
lang_upgrade - scripts for migration to new multilanguage support design
|
|
|
|
upgrade.sh - entire process:
|
|
Run scripts: clean.sh, make_msgs.sh, find_msgs.sh, make_source.sh.
|
|
Backup (move) all language*.h and language*.cpp files from source to folder '../lang_backup'.
|
|
Copy folder ./source/*.* to ../Firmware, new files will be messages.h, messages.c, language.h, language.c and other source will be replaced.
|
|
After this step should be source compilable in english version, LANG_MODE in config.h is set to 0 (primary language only)
|
|
|
|
|
|
0. clean.sh
|
|
delete all output files
|
|
|
|
1. make_msgs.sh
|
|
Process all language_xx.h files and extract informations to msgs_xx.txt files in simple format.
|
|
Every line in msgs_en.txt has following format: MSG_xx c=cc r=rr "text".
|
|
Every line in other msgs_xx.txt has simpler format: MSG_xx "text".
|
|
MSG_xx is original message identifier, cc is column count (originaly length) and rr is row count (originaly lines).
|
|
Output files msgs_xx.txt are sorted by message identifier (ascending order).
|
|
make_msgs.sh also reports number of messages in each language_xx.h file and total number of characters in program memory.
|
|
|
|
2. find_msgs.sh
|
|
Find usage of each message and output listing in to file msgs_usage.txt in format: MSG_xx nn.
|
|
MSG_xx is identifier, nn is number of occurrences. Output is sorted by number of occurrences (ascending order).
|
|
Generate filtered msgs_en.txt and msgs_common.txt files. Each file is sorted to three output files - unused, used once and used more.
|
|
Output files will be:
|
|
msgs_common_unused.txt, msgs_common_used_more.txt, msgs_common_used_once.txt
|
|
msgs_en_unused.txt, msgs_en_used_more.txt, msgs_en_used_once.txt
|
|
|
|
3. make_source.sh
|
|
Copy all source files to folder ./source
|
|
Replace all messages used once in all ./source/*.c* files directly with the english version string constant and comment at end of line.
|
|
Generate messages.h and messages.c source files with messages used twice and more.
|
|
Replace line '' in Marlin_main.cpp with comment.
|