QOwnNotes/scripts/add_translation.py
Patrizio Bekerle ba01fd87b6
#3267 i18n: fix translations path again for Fedora and openSUSE
Signed-off-by: Patrizio Bekerle <patrizio@bekerle.com>
2025-05-12 21:44:45 +02:00

74 lines
2.8 KiB
Python
Executable file

#!/usr/bin/python
#
# This script can be used to add a new translation to QOwnNotes
#
import sys
import re
if len(sys.argv) < 3:
print('Usage: {} <iso_crowdin> <iso_qon>\ne.g. {} de_AT de'.format(
sys.argv[0], sys.argv[0]))
sys.exit(1)
# e.g. "he_IL"
iso_crowdin = sys.argv[1]
# e.g. "he"
iso_qon = sys.argv[2]
def insert_in_file(file_name, text, add_text):
with open(file_name) as f:
new_text = f.read()
if text not in new_text:
print('"{}" was not found in file "{}"!'.format(text, file_name))
return
new_text = re.sub(r'^(%s)' % re.escape(text), r'\1\n%s' % add_text,
new_text, flags=re.MULTILINE)
with open(file_name, "w") as f:
f.write(new_text)
return
insert_in_file('crowdin.yaml',
' "he_IL" : "he",',
' "{}" : "{}",'.format(iso_crowdin, iso_qon))
insert_in_file('scripts/download_translations.sh',
'mv QOwnNotes_he_IL.ts QOwnNotes_he.ts',
'mv QOwnNotes_{}.ts QOwnNotes_{}.ts'.format(iso_crowdin,
iso_qon))
insert_in_file('scripts/download_translations.sh',
'|he|',
'|{}|'.format(iso_qon))
# insert_in_file('obs/qownnotes.spec',
# 'install -D -m 0644 languages/QOwnNotes_he.qm $RPM_BUILD_ROOT/%{_datadir}/QOwnNotes/languages/QOwnNotes_he.qm',
# 'install -D -m 0644 languages/QOwnNotes_{}.qm $RPM_BUILD_ROOT/%{{_datadir}}/QOwnNotes/languages/QOwnNotes_{}.qm'.format(iso_qon, iso_qon))
# insert_in_file('obs/qownnotes.spec',
# '%{_datadir}/QOwnNotes/languages/QOwnNotes_he.qm',
# '%{{_datadir}}/QOwnNotes/languages/QOwnNotes_{}.qm'.format(iso_qon))
insert_in_file('src/CMakeLists.txt',
' languages/QOwnNotes_he.ts',
' languages/QOwnNotes_{}.ts'.format(iso_qon))
insert_in_file('src/QOwnNotes.pro',
' languages/QOwnNotes_he.ts \\',
r' languages/QOwnNotes_{}.ts \\'.format(iso_qon))
insert_in_file('src/debian/qownnotes.install',
'languages/QOwnNotes_he.qm usr/share/qt5/translations',
'languages/QOwnNotes_{}.qm usr/share/qt5/translations'.format(
iso_qon))
insert_in_file('CHANGELOG.md',
'# QOwnNotes Changelog',
'\n- added **XXXX translation** (a big thank you to Fabijenna)\n '
' - visit [QOwnNotes Translation]('
'http://docs.qownnotes.org/en/latest/contributing/translation'
'/)\n if you want to make QOwnNotes available in more '
'languages or help with the\n current translation')
print(
'Translation for "{}" was added. Don\'t forget to add the translation to '
'src/dialogs/settingsdialog.ui!'.format(
iso_qon))
sys.exit(0)