lang-clean.sh 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. #!/bin/bash
  2. #
  3. # Version 1.0.1 Build 9
  4. #
  5. # clean.sh - multi-language support script
  6. # Remove all language output files from lang folder.
  7. #
  8. #############################################################################
  9. # Change log:
  10. # 1 Nov. 2018, XPila, Initial
  11. # 17 Dec. 2021, 3d-gussner, Use one config file for all languages
  12. # 11 Jan. 2022, 3d-gussner, Also remove temporally files which have been
  13. # generated for message and size count comparison
  14. # Added version and Change log
  15. # colored output
  16. # Add Community language support
  17. # Use `git rev-list --count HEAD lang-clean.sh`
  18. # to get Build Nr
  19. #############################################################################
  20. # Config:
  21. if [ -z "$CONFIG_OK" ]; then eval "$(cat config.sh)"; fi
  22. if [ -z "$CONFIG_OK" ] | [ $CONFIG_OK -eq 0 ]; then echo "$(tput setaf 1)Config NG!$(tput sgr0)" >&2; exit 1; fi
  23. if [ ! -z "$COMMUNITY_LANGUAGES" ]; then
  24. LANGUAGES+=" $COMMUNITY_LANGUAGES"
  25. fi
  26. result=0
  27. rm_if_exists()
  28. {
  29. if [ -e $1 ]; then
  30. echo -n "$(tput sgr0) removing $(tput setaf 3)'$1'$(tput sgr0)..." >&2
  31. if rm $1; then
  32. echo "$(tput setaf 2)OK$(tput sgr0)" >&2
  33. else
  34. echo "$(tput setaf 1)NG!$(tput sgr0)" >&2
  35. result=1
  36. fi
  37. fi
  38. }
  39. clean_lang()
  40. {
  41. if [ "$1" = "en" ]; then
  42. rm_if_exists lang_$1.tmp
  43. rm_if_exists lang_$1.cnt
  44. rm_if_exists lang_$1.max
  45. else
  46. rm_if_exists lang_$1.tmp
  47. rm_if_exists lang_en_$1.tmp
  48. rm_if_exists lang_en_$1.dif
  49. rm_if_exists lang_$1.ofs
  50. rm_if_exists lang_$1.txt
  51. fi
  52. rm_if_exists lang_$1_check.dif
  53. rm_if_exists lang_$1.bin
  54. rm_if_exists lang_$1.dat
  55. rm_if_exists lang_$1_1.tmp
  56. rm_if_exists lang_$1_2.tmp
  57. }
  58. echo "$(tput setaf 2)lang-clean.sh started$(tput sgr0)" >&2
  59. #Clean English
  60. clean_lang en
  61. #Clean languages
  62. echo "lang-clean languages:$(tput setaf 2)$LANGUAGES$(tput sgr0)" >&2
  63. for lang in $LANGUAGES; do
  64. clean_lang $lang
  65. done
  66. if [ $result -eq 0 ]; then
  67. echo "$(tput setaf 2) lang-clean.sh with success$(tput sgr0)" >&2
  68. else
  69. echo "$(tput setaf 1) lang-clean.sh with errors!$(tput sgr0)" >&2
  70. fi
  71. case "$-" in
  72. *i*) echo "press enter key" >&2; read ;;
  73. esac
  74. exit $result