mirror of
https://gitlab.com/kicad/code/kicad.git
synced 2025-09-15 10:43:15 +02:00
These help files are created from the .md source files and contain I18n strings, but do not exist if kicad is not built from sources. However they are needed by translators.
29 lines
1.2 KiB
CMake
29 lines
1.2 KiB
CMake
# CMake script file to process a text file by wrapping every line in double quotes.
|
|
# Input file must not abuse quotes, staying with single quotes is probably best.
|
|
# note also empty lines cannot be stripped: they have a meaning (separator) in markdown
|
|
# so we use file( READ ... ) to read the full file content, including empty lines
|
|
|
|
file( READ ${inputFile} buffer )
|
|
|
|
file( WRITE ${outputFile} "// Do not edit this file, it is autogenerated by CMake from the .md file\n" )
|
|
|
|
#Remark: strings can contain semicolon. a semicolon is a separation in cmake.
|
|
#so, to avoid stripping semicolon in variables we have to quote them
|
|
|
|
# Replace each "\" char by "\\". the \ is found in .md files
|
|
# to prepend some chars that are usually control chars
|
|
STRING( REPLACE "\\" "\\\\" linea "${buffer}" )
|
|
|
|
# Replace each " char by \"
|
|
STRING( REPLACE "\"" "\\\"" linem "${linea}" )
|
|
|
|
# Replace each EOL char by "\n" + " + EOL
|
|
STRING( REPLACE "\n" "\\n\"\n\"" buff_m "${linem}" )
|
|
|
|
# create the full string compatible "C":
|
|
# _HKI( "<md string>"\n
|
|
# to make it translatable. We use here the marker _HKI because
|
|
# the translation will be explicitely called in Kicad code
|
|
# Write the buffer between quotes
|
|
file( APPEND ${outputFile} "_HKI( \"" "${buff_m}" "\" );\n" )
|