diff --git a/CMakeL10n.txt b/CMakeL10n.txt new file mode 100644 index 00000000..5aa13f20 --- /dev/null +++ b/CMakeL10n.txt @@ -0,0 +1,28 @@ +################################################# +# +# (C) 2018 Slávek Banko +# slavek.banko (AT) axis.cz +# +# Improvements and feedback are welcome +# +# This file is released under GPL >= 2 +# +################################################# + +cmake_minimum_required( VERSION 2.8 ) + + +##### include our cmake modules ################# + +set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) +include( TDEL10n ) + + +##### set directory for POT files ############### + +set( POT_SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../tde-i18n/template/messages/tdeedu" ) + + +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories() diff --git a/blinken/CMakeL10n.txt b/blinken/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/blinken/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/blinken/src/CMakeL10n.txt b/blinken/src/CMakeL10n.txt new file mode 100644 index 00000000..25ded057 --- /dev/null +++ b/blinken/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "blinken" ) diff --git a/kalzium/CMakeL10n.txt b/kalzium/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kalzium/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kalzium/src/CMakeL10n.txt b/kalzium/src/CMakeL10n.txt new file mode 100644 index 00000000..d15678c5 --- /dev/null +++ b/kalzium/src/CMakeL10n.txt @@ -0,0 +1,30 @@ +##### prepare xml files ######################### + +tde_l10n_prepare_xml( + SOURCE data/data.xml + TAGS name +) + +tde_l10n_prepare_xml( + SOURCE data/knowledge.xml + TAGS name desc refitem +) + +tde_l10n_prepare_xml( + SOURCE data/tools.xml + TAGS name desc +) + + +##### create translation templates ############## + +tde_l10n_create_template( + CATALOG "kalzium" + SOURCES + "." + "data/data.xml.tde_l10n" + "data/knowledge.xml.tde_l10n" + "data/tools.xml.tde_l10n" + ATTRIBUTES + "data/data.xml:name,origin" +) diff --git a/kanagram/CMakeL10n.txt b/kanagram/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kanagram/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kanagram/src/CMakeL10n.txt b/kanagram/src/CMakeL10n.txt new file mode 100644 index 00000000..d147482c --- /dev/null +++ b/kanagram/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kanagram" ) diff --git a/kbruch/CMakeL10n.txt b/kbruch/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kbruch/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kbruch/src/CMakeL10n.txt b/kbruch/src/CMakeL10n.txt new file mode 100644 index 00000000..33af2b20 --- /dev/null +++ b/kbruch/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kbruch" ) diff --git a/keduca/CMakeL10n.txt b/keduca/CMakeL10n.txt new file mode 100644 index 00000000..a5935c38 --- /dev/null +++ b/keduca/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "keduca" ) diff --git a/kgeography/CMakeL10n.txt b/kgeography/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kgeography/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kgeography/src/CMakeL10n.txt b/kgeography/src/CMakeL10n.txt new file mode 100644 index 00000000..2c931c82 --- /dev/null +++ b/kgeography/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kgeography" ) diff --git a/khangman/CMakeL10n.txt b/khangman/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/khangman/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/khangman/khangman/CMakeL10n.txt b/khangman/khangman/CMakeL10n.txt new file mode 100644 index 00000000..4c1710c6 --- /dev/null +++ b/khangman/khangman/CMakeL10n.txt @@ -0,0 +1,6 @@ +##### create translation templates ############## + +tde_l10n_create_template( + CATALOG "khangman" + SOURCES "data.i18n" "." +) diff --git a/kig/CMakeL10n.txt b/kig/CMakeL10n.txt new file mode 100644 index 00000000..e63464d3 --- /dev/null +++ b/kig/CMakeL10n.txt @@ -0,0 +1,39 @@ +##### prepare kig templates ##################### + +file( GLOB_RECURSE _kigt_files + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/macros/*.kigt +) +list( SORT _kigt_files ) +unset( _kigt_l10n ) +foreach( _kigt_file ${_kigt_files} ) + tde_l10n_prepare_xml( + SOURCE ${_kigt_file} + TAGS "Name" "Description" "UseText" "SelectStatement" + C_FORMAT + ) + list( APPEND _kigt_l10n "${_kigt_file}.tde_l10n" ) +endforeach( ) + + +##### create translation templates ############## + +tde_l10n_create_template( + CATALOG "kig" + SOURCES + "." + "data/tips" + ${_kigt_l10n} + EXCLUDES + "^tdefile/" +) + +tde_l10n_create_template( + CATALOG "tdefile_drgeo" + SOURCES "tdefile/tdefile_drgeo.cpp" "tdefile/tdefile_drgeo.h" +) + +tde_l10n_create_template( + CATALOG "tdefile_kig" + SOURCES "tdefile/tdefile_kig.cpp" "tdefile/tdefile_kig.h" +) diff --git a/kiten/CMakeL10n.txt b/kiten/CMakeL10n.txt new file mode 100644 index 00000000..c01d203f --- /dev/null +++ b/kiten/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kiten" ) diff --git a/klatin/CMakeL10n.txt b/klatin/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/klatin/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/klatin/klatin/CMakeL10n.txt b/klatin/klatin/CMakeL10n.txt new file mode 100644 index 00000000..93b3ed56 --- /dev/null +++ b/klatin/klatin/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "klatin" ) diff --git a/klettres/CMakeL10n.txt b/klettres/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/klettres/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/klettres/klettres/CMakeL10n.txt b/klettres/klettres/CMakeL10n.txt new file mode 100644 index 00000000..1af89757 --- /dev/null +++ b/klettres/klettres/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "klettres" ) diff --git a/kmplot/CMakeL10n.txt b/kmplot/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kmplot/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kmplot/kmplot/CMakeL10n.txt b/kmplot/kmplot/CMakeL10n.txt new file mode 100644 index 00000000..29d59f9e --- /dev/null +++ b/kmplot/kmplot/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kmplot" ) diff --git a/kpercentage/CMakeL10n.txt b/kpercentage/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kpercentage/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kpercentage/kpercentage/CMakeL10n.txt b/kpercentage/kpercentage/CMakeL10n.txt new file mode 100644 index 00000000..d9eee4a4 --- /dev/null +++ b/kpercentage/kpercentage/CMakeL10n.txt @@ -0,0 +1,17 @@ +##### prepare right and wrong files ############# + +unset( _answers_l10n ) +foreach( _answers right.txt wrong.txt ) + file( READ "${CMAKE_CURRENT_SOURCE_DIR}/${_answers}" _file_data ) + string( REGEX REPLACE "(^|\n)([^\n]+)" "\\1i18n(\"\\2\");" _file_l10n "${_file_data}" ) + file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/${_answers}.tde_l10n" "${_file_l10n}" ) + list( APPEND _answers_l10n "${_answers}.tde_l10n" ) +endforeach( ) + + +##### create translation templates ############## + +tde_l10n_create_template( + CATALOG "kpercentage" + SOURCES "." ${_answers_l10n} +) diff --git a/kstars/CMakeL10n.txt b/kstars/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kstars/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kstars/kstars/CMakeL10n.txt b/kstars/kstars/CMakeL10n.txt new file mode 100644 index 00000000..b666e209 --- /dev/null +++ b/kstars/kstars/CMakeL10n.txt @@ -0,0 +1,155 @@ +##### prepare strings from data files ########### + +message( STATUS "Prepare to extract strings from kstars data files..." ) + +## extract constellations +file( READ "${CMAKE_CURRENT_SOURCE_DIR}/data/cnames.dat" _cnames ) +string( REGEX REPLACE " +(\n|\$)" "\\1" _cnames "${_cnames}" ) +string( REGEX REPLACE + "(^|\n)[0-9][^ ]* ([^\n]+)" + "\\1i18n(\"Constellation name (optional)\", \"\\2\");" + _cnames "${_cnames}" ) +file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/data/cnames.dat.tde_l10n" "${_cnames}" ) + +## extract cities, regions and countries +file( READ "${CMAKE_CURRENT_SOURCE_DIR}/data/Cities.dat" _cities ) +string( REGEX REPLACE "(^|\n)([^:]*): *([^:]*): *([^:]*):[^\n]*" "\\1\\2:\\3:\\4:" _cities "${_cities}" ) +string( REGEX REPLACE " +:" ":" _cities "${_cities}" ) +string( REGEX REPLACE + "([^:]+):([^:]*):([^:]*):(\n|\$)" + "i18n(\"City name (optional, probably does not need a translation)\", \"\\1\"):\\2:\\3:\\4" + _cities "${_cities}" ) +string( REGEX REPLACE + "([^:]*):([^:]+):([^:]*):(\n|\$)" + "\\1:i18n(\"Region/state name (optional, rarely needs a translation)\", \"\\2\"):\\3:\\4" + _cities "${_cities}" ) +string( REGEX REPLACE + "([^:]*):([^:]*):([^:]+):(\n|\$)" + "\\1:\\2:i18n(\"Country name (optional, but should be translated)\", \"\\3\"):\\4" + _cities "${_cities}" ) +string( REPLACE ":" ";" _cities "${_cities}" ) +file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/data/Cities.dat.tde_l10n" "${_cities}" ) + +## extract image/info menu items +file( READ "${CMAKE_CURRENT_SOURCE_DIR}/data/image_url.dat" _image_url ) +string( REGEX REPLACE + "([^:\n]*):([^:\n]+):http[^\n]*\n" + "i18n(\"Image/info menu item (should be translated)\", \"\\2\");\n" + _image_url "${_image_url}" ) +string( REGEX REPLACE "(^|\n)#" "\\1//" _image_url "${_image_url}" ) +file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/data/image_url.dat.tde_l10n" "${_image_url}" ) + +file( READ "${CMAKE_CURRENT_SOURCE_DIR}/data/info_url.dat" _info_url ) +string( REGEX REPLACE + "([^:\n]*):([^:\n]+):http[^\n]*\n" + "i18n(\"Image/info menu item (should be translated)\", \"\\2\");\n" + _info_url "${_info_url}" ) +string( REGEX REPLACE "(^|\n)#" "\\1//" _info_url "${_info_url}" ) +file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/data/info_url.dat.tde_l10n" "${_info_url}" ) + +## star names : some might be different in other languages, +## or they might have to be adapted to non-Latin alphabets +file( GLOB_RECURSE _hip_files + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/data/hip*.dat +) +list( SORT _hip_files ) +unset( _hip_files_l10n ) +foreach( _hip_file ${_hip_files} ) + # read file + file( READ "${CMAKE_CURRENT_SOURCE_DIR}/${_hip_file}" _hip_data ) + string( REGEX REPLACE "[^\n]" "" _hip_len ${_hip_data} ) + string( LENGTH "+${_hip_len}" _hip_len ) + + # process lines + set( _hip_pos 0 ) + unset( _hip_l10n ) + while( _hip_pos LESS ${_hip_len} ) + # pick line + string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\1" _hip_line "${_hip_data}" ) + string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\2" _hip_data "${_hip_data}" ) + math( EXPR _hip_pos "${_hip_pos}+1" ) + + string( LENGTH "${_hip_line}" _hip_line_len ) + if( _hip_line_len LESS 72 OR "${_hip_line}" MATCHES "^#" ) + set( _hip_line "" ) + else( ) + string( SUBSTRING "${_hip_line}" 72 -1 _hip_line ) + string( REGEX MATCH "^([^:]+)" _hip_line "${_hip_line}" ) + string( STRIP "${_hip_line}" _hip_line ) + if( NOT "${_hip_line}" STREQUAL "" ) + set( _hip_line "i18n(\"star name\", \"${_hip_line}\");" ) + endif( ) + endif( ) + set( _hip_l10n "${_hip_l10n}${_hip_line}\n" ) + endwhile( ) + + # write file + file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/${_hip_file}.tde_l10n" "${_hip_l10n}" ) + list( APPEND _hip_files_l10n "${_hip_file}.tde_l10n" ) +endforeach( ) + +## extract deep-sky object names +file( GLOB_RECURSE _ngcic_files + RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/data/ngcic*.dat +) +list( SORT _ngcic_files ) +unset( _ngcic_files_l10n ) +foreach( _ngcic_file ${_ngcic_files} ) + # read file + file( READ "${CMAKE_CURRENT_SOURCE_DIR}/${_ngcic_file}" _ngcic_data ) + string( REGEX REPLACE "[^\n]" "" _ngcic_len ${_ngcic_data} ) + string( LENGTH "+${_ngcic_len}" _ngcic_len ) + + # process lines + set( _ngcic_pos 0 ) + unset( _ngcic_l10n ) + while( _ngcic_pos LESS ${_ngcic_len} ) + # pick line + string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\1" _ngcic_line "${_ngcic_data}" ) + string( REGEX REPLACE "^([^\n]*)\n(.*)" "\\2" _ngcic_data "${_ngcic_data}" ) + math( EXPR _ngcic_pos "${_ngcic_pos}+1" ) + + string( LENGTH "${_ngcic_line}" _ngcic_line_len ) + if( _ngcic_line_len LESS 76 OR "${_ngcic_line}" MATCHES "^#" ) + set( _ngcic_line "" ) + else( ) + string( SUBSTRING "${_ngcic_line}" 76 -1 _ngcic_line ) + string( STRIP "${_ngcic_line}" _ngcic_line ) + if( NOT "${_ngcic_line}" STREQUAL "" ) + set( _ngcic_line "i18n(\"object name (optional)\", \"${_ngcic_line}\");" ) + endif( ) + endif( ) + set( _ngcic_l10n "${_ngcic_l10n}${_ngcic_line}\n" ) + endwhile( ) + + # write file + file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/${_ngcic_file}.tde_l10n" "${_ngcic_l10n}" ) + list( APPEND _ngcic_files_l10n "${_ngcic_file}.tde_l10n" ) +endforeach( ) + +## extract strings from file containing advanced URLs: +file( READ "${CMAKE_CURRENT_SOURCE_DIR}/data/advinterface.dat" _kslabel ) +string( REGEX REPLACE + "\\[KSLABEL\\]([^\n]*)(\n|\$)" + "i18n(\"Advanced URLs: description or category\", \"\\1\");\\2" + _kslabel "${_kslabel}" ) +file( WRITE "${CMAKE_CURRENT_SOURCE_DIR}/data/advinterface.dat.tde_l10n" "${_kslabel}" ) + + +##### create translation templates ############## + +tde_l10n_create_template( + CATALOG "kstars" + SOURCES + "." + "data/tips" + "data/cnames.dat.tde_l10n" + "data/Cities.dat.tde_l10n" + "data/image_url.dat.tde_l10n" + "data/info_url.dat.tde_l10n" + ${_hip_files_l10n} + ${_ngcic_files_l10n} + "data/advinterface.dat.tde_l10n" +) diff --git a/ktouch/CMakeL10n.txt b/ktouch/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/ktouch/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/ktouch/src/CMakeL10n.txt b/ktouch/src/CMakeL10n.txt new file mode 100644 index 00000000..049793ef --- /dev/null +++ b/ktouch/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "ktouch" ) diff --git a/kturtle/CMakeL10n.txt b/kturtle/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kturtle/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kturtle/src/CMakeL10n.txt b/kturtle/src/CMakeL10n.txt new file mode 100644 index 00000000..057a889b --- /dev/null +++ b/kturtle/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kturtle" ) diff --git a/kverbos/CMakeL10n.txt b/kverbos/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kverbos/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kverbos/kverbos/CMakeL10n.txt b/kverbos/kverbos/CMakeL10n.txt new file mode 100644 index 00000000..a717c69a --- /dev/null +++ b/kverbos/kverbos/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kverbos" ) diff --git a/kvoctrain/CMakeL10n.txt b/kvoctrain/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kvoctrain/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kvoctrain/kvoctrain/CMakeL10n.txt b/kvoctrain/kvoctrain/CMakeL10n.txt new file mode 100644 index 00000000..ec9205db --- /dev/null +++ b/kvoctrain/kvoctrain/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kvoctrain" ) diff --git a/kwordquiz/CMakeL10n.txt b/kwordquiz/CMakeL10n.txt new file mode 100644 index 00000000..b585ce4a --- /dev/null +++ b/kwordquiz/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_auto_add_subdirectories( ) diff --git a/kwordquiz/src/CMakeL10n.txt b/kwordquiz/src/CMakeL10n.txt new file mode 100644 index 00000000..9f64b513 --- /dev/null +++ b/kwordquiz/src/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "kwordquiz" ) diff --git a/libtdeedu/CMakeL10n.txt b/libtdeedu/CMakeL10n.txt new file mode 100644 index 00000000..7cfc095e --- /dev/null +++ b/libtdeedu/CMakeL10n.txt @@ -0,0 +1,3 @@ +##### create translation templates ############## + +tde_l10n_create_template( "libtdeedu" )