crowdin: Use crowdin3
* crowdin3 requires changes to the config files:
- yaml won't work anymore due to an error:
"Number of aliases for non-scalar nodes exceeds the specified max=50"
- %original_path% is currently broken, so we don't use it
- "api_token" instead of "api_key" and
"project_id" instead of "project_identifier"
* The script itself requires a few other changes:
- Parse stdout for the actual extracted files so we can work with those,
that way we don't have to "guess" the downloaded files
- Add a little spinner to indicate that there is still stuff happening
- Rename a few variables so debugging will be easier next time...
* The script now also deletes empty folders when it removes the last
file without translations
Change-Id: Iada741cfa3276675b23ea3cbe1bd57f6e81f108f
diff --git a/README.mkdn b/README.mkdn
index e0a535a..4ce0c81 100644
--- a/README.mkdn
+++ b/README.mkdn
@@ -12,22 +12,27 @@
wget -qO - https://artifacts.crowdin.com/repo/GPG-KEY-crowdin | sudo apt-key add -
echo 'deb https://artifacts.crowdin.com/repo/deb/ /' | sudo tee /etc/apt/sources.list.d/crowdin.list > /dev/null
- sudo apt-get update && sudo apt-get install crowdin
+ sudo apt-get update && sudo apt-get install crowdin3
The following tools are also required to run the tool:
sudo apt-get install python3-git python3-yaml python3-lxml
+Run the following command:
+
+ pip install -r requirements.txt
+
Copy <lineage_version>_extra_packages.xml to .repo/local_manifests of each <lineage_version> tree
to make sure you sync all the extra packages not included in the main manifest.
+Create a personal access token on https://crowdin.com/settings#api-key and store it safely.
+
Executing
---------
Export the following environment variables to set the API keys and the base path.
Each LineageOS version requires a different environment variable set for the base path that depends on the branch name:
- export LINEAGE_CROWDIN_API_KEY=your_api_key
- export LINEAGE_AOSP_CROWDIN_API_KEY=your_aosp_api_key
+ export LINEAGE_CROWDIN_API_TOKEN=your_api_token
export LINEAGE_CROWDIN_BASE_PATH_CM_13_0=your_13.0_base_path
export LINEAGE_CROWDIN_BASE_PATH_CM_14_1=your_14.1_base_path
export LINEAGE_CROWDIN_BASE_PATH_LINEAGE_15_1=your_15.1_base_path
@@ -37,8 +42,7 @@
Example:
- export LINEAGE_CROWDIN_API_KEY=1234567890
- export LINEAGE_AOSP_CROWDIN_API_KEY=0987654321
+ export LINEAGE_CROWDIN_API_TOKEN=1234567890
export LINEAGE_CROWDIN_BASE_PATH_CM_13_0=/mnt/android/lineageos/cm-13.0
export LINEAGE_CROWDIN_BASE_PATH_CM_14_1=/mnt/android/lineageos/cm-14.1
export LINEAGE_CROWDIN_BASE_PATH_LINEAGE_15_1=/mnt/android/lineageos/lineage-15.1
diff --git a/config/cm-13.0.yaml b/config/cm-13.0.yaml
index f591089..be967da 100644
--- a/config/cm-13.0.yaml
+++ b/config/cm-13.0.yaml
@@ -3,7 +3,7 @@
# Crowdin configuration file for LineageOS
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2018 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,607 +17,370 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_CM_13_0
-project_identifier: lineageos
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_CM_13_0
+"project_id": 237414
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- af: af
- am: am
- ar: ar
- as: as-rIN
- ast: ast-rES
- az: az-rAZ
- be: be
- bg: bg
- bn: bn-rBD
- ca: ca
- cs: cs
- cy: cy
- da: da
- de: de
- el: el
- en-AU: en-rAU
- en-GB: en-rGB
- en-IN: en-rIN
- en-PT: en-rPT
- eo: eo
- es-ES: es
- es-MX: es-rMX
- es-US: es-rUS
- et: et-rEE
- eu: eu-rES
- fa: fa
- fi: fi
- fr: fr
- fr-CA: fr-rCA
- fy-NL: fy-rNL
- gl: gl-rES
- gu-IN: gu-rIN
- he: iw
- hi: hi
- hr: hr
- hu: hu
- hy-AM: hy-rAM
- id: in
- is: is-rIS
- it: it
- ja: ja
- ka: ka-rGE
- kab: kab-rDZ
- kk: kk-rKZ
- km: km-rKH
- kn: kn-rIN
- ko: ko
- ku: ku
- ky: ky-rKG
- lb: lb
- lo: lo-rLA
- lt: lt
- lv: lv
- mk: mk-rMK
- ml-IN: ml-rIN
- mn: mn-rMN
- mr: mr-rIN
- ms: ms-rMY
- my: my-rMM
- nb: nb
- ne-NP: ne-rNP
- nl: nl
- or: or-rIN
- pa-IN: pa-rIN
- pl: pl
- pt-PT: pt-rPT
- pt-BR: pt-rBR
- rm-CH: rm
- ro: ro
- ru: ru
- sc: sc-rIT
- si-LK: si-rLK
- sk: sk
- sl: sl
- sq: sq-rAL
- sr: sr
- sv-SE: sv
- sw: sw
- ta: ta-rIN
- te: te-rIN
- th: th
- tl: tl
- tr: tr
- ug: ug
- uk: uk
- ur-PK: ur-rPK
- uz: uz-rUZ
- vi: vi
- zh-CN: zh-rCN
- zh-HK: zh-rHK
- zh-TW: zh-rTW
- zu: zu
-
- # Keyguard
- -
- source: '/frameworks/base/packages/Keyguard/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BluetoothExt
- -
- source: '/packages/apps/BluetoothExt/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/BluetoothExt/res/values/strings_dun.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/BluetoothExt/res/values/strings_ftp.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/BluetoothExt/res/values/strings_map.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/BluetoothExt/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Browser
- -
- source: '/packages/apps/Browser/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calculator
- -
- source: '/packages/apps/Calculator/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calendar
- -
- source: '/packages/apps/Calendar/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Calendar/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMBugReport
- -
- source: '/packages/apps/CMBugReport/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMFileManager
- -
- source: '/packages/apps/CMFileManager/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/CMFileManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMUpdater
- -
- source: '/packages/apps/CMUpdater/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/CMUpdater/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMWallpapers
- -
- source: '/packages/apps/CMWallpapers/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Contacts/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsCommon
- -
- source: '/packages/apps/ContactsCommon/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/ContactsCommon/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Eleven
- -
- source: '/packages/apps/Eleven/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Eleven/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/codeaurora_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gello
- -
- source: '/packages/apps/Gello/res/raw/incognito_mode_start_page.html'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gello/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InCallUI
- -
- source: '/packages/apps/InCallUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/InCallUI/res/values/qtistrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LockClock
- -
- source: '/packages/apps/LockClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Profiles
- -
- source: '/packages/apps/Profiles/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Screencast
- -
- source: '/packages/apps/Screencast/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SetupWizard
- -
- source: '/packages/apps/SetupWizard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Snap
- -
- source: '/packages/apps/Snap/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/qcomstrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SoundRecorder
- -
- source: '/packages/apps/SoundRecorder/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Terminal
- -
- source: '/packages/apps/Terminal/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Terminal/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ThemeChooser
- -
- source: '/packages/apps/ThemeChooser/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Trebuchet/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # DataUsageProvider
- -
- source: '/packages/providers/DataUsageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ThemesProvider
- -
- source: '/packages/providers/ThemesProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WeatherProvider
- -
- source: '/packages/providers/WeatherProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # CMAudioService
- -
- source: '/packages/services/CMAudioService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LiveLockScreenService
- -
- source: '/packages/services/LiveLockScreenService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Mms
- -
- source: '/packages/services/Mms/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/res/values/qtistrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ThemeManagerService
- -
- source: '/packages/services/ThemeManagerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WeatherService
- -
- source: '/packages/services/WeatherService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # Galaxy4
- -
- source: '/packages/wallpapers/Galaxy4/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhaseBeam
- -
- source: '/packages/wallpapers/PhaseBeam/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoPhase
- -
- source: '/packages/wallpapers/PhotoPhase/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/wallpapers/PhotoPhase/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Vendor
-
- # CM SDK
- -
- source: '/vendor/cmsdk/cm/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMSettingsProvider
- -
- source: '/vendor/cmsdk/packages/CMSettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # OpenWeatherMapProvider
- -
- source: '/vendor/cmsdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Device specific
-
- # fmapp2
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRecord
- -
- source: '/hardware/qcom/fm/FMRecord/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SamsungServiceMode
- -
- source: '/packages/apps/SamsungServiceMode/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung qcom-common doze
- -
- source: '/device/samsung/qcom-common/doze/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung AdvancedDisplay
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Keyguard/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/Keyguard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_arrays.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/cm_strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/BluetoothExt/res/values/strings.xml",
+ "translation": "/packages/apps/BluetoothExt/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/BluetoothExt/res/values/strings_dun.xml",
+ "translation": "/packages/apps/BluetoothExt/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/BluetoothExt/res/values/strings_ftp.xml",
+ "translation": "/packages/apps/BluetoothExt/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/BluetoothExt/res/values/strings_map.xml",
+ "translation": "/packages/apps/BluetoothExt/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/BluetoothExt/res/values/strings_sap.xml",
+ "translation": "/packages/apps/BluetoothExt/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Browser/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Browser/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calculator/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Calculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/cm_strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMBugReport/res/values/strings.xml",
+ "translation": "/packages/apps/CMBugReport/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMFileManager/res/values/plurals.xml",
+ "translation": "/packages/apps/CMFileManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMFileManager/res/values/strings.xml",
+ "translation": "/packages/apps/CMFileManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMUpdater/res/values/plurals.xml",
+ "translation": "/packages/apps/CMUpdater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMUpdater/res/values/strings.xml",
+ "translation": "/packages/apps/CMUpdater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMWallpapers/res/values/strings.xml",
+ "translation": "/packages/apps/CMWallpapers/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ContactsCommon/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/ContactsCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ContactsCommon/res/values/cm_strings.xml",
+ "translation": "/packages/apps/ContactsCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cm_strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/plurals.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/strings.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/codeaurora_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gello/res/raw/incognito_mode_start_page.html",
+ "translation": "/packages/apps/Gello/res/raw-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gello/res/values/strings.xml",
+ "translation": "/packages/apps/Gello/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/InCallUI/res/values/cm_strings.xml",
+ "translation": "/packages/apps/InCallUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/InCallUI/res/values/qtistrings.xml",
+ "translation": "/packages/apps/InCallUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LockClock/res/values/strings.xml",
+ "translation": "/packages/apps/LockClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/cm_strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Profiles/res/values/strings.xml",
+ "translation": "/packages/apps/Profiles/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Screencast/res/values/strings.xml",
+ "translation": "/packages/apps/Screencast/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SetupWizard/res/values/strings.xml",
+ "translation": "/packages/apps/SetupWizard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/qcomstrings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SoundRecorder/res/values/cm_strings.xml",
+ "translation": "/packages/apps/SoundRecorder/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/arrays.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/strings.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ThemeChooser/res/values/strings.xml",
+ "translation": "/packages/apps/ThemeChooser/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/cm_strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DataUsageProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DataUsageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_plurals.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ThemesProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ThemesProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/WeatherProvider/res/values/strings.xml",
+ "translation": "/packages/providers/WeatherProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/cm_strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/CMAudioService/res/values/strings.xml",
+ "translation": "/packages/services/CMAudioService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/LiveLockScreenService/res/values/strings.xml",
+ "translation": "/packages/services/LiveLockScreenService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Mms/res/values/cm_strings.xml",
+ "translation": "/packages/services/Mms/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/cm_strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/cm_strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/qtistrings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/ThemeManagerService/res/values/strings.xml",
+ "translation": "/packages/services/ThemeManagerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/WeatherService/res/values/strings.xml",
+ "translation": "/packages/services/WeatherService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/Galaxy4/res/values/strings.xml",
+ "translation": "/packages/wallpapers/Galaxy4/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/PhaseBeam/res/values/cm_strings.xml",
+ "translation": "/packages/wallpapers/PhaseBeam/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/PhotoPhase/res/values/plurals.xml",
+ "translation": "/packages/wallpapers/PhotoPhase/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/PhotoPhase/res/values/strings.xml",
+ "translation": "/packages/wallpapers/PhotoPhase/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/cmsdk/cm/res/res/values/strings.xml",
+ "translation": "/vendor/cmsdk/cm/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/cmsdk/packages/CMSettingsProvider/res/values/strings.xml",
+ "translation": "/vendor/cmsdk/packages/CMSettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/cmsdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml",
+ "translation": "/vendor/cmsdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/arrays.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/FMRecord/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/FMRecord/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SamsungServiceMode/res/values/strings.xml",
+ "translation": "/packages/apps/SamsungServiceMode/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/samsung/qcom-common/doze/res/values/strings.xml",
+ "translation": "/device/samsung/qcom-common/doze/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/arrays.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/strings.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/cm-13.0_aosp.yaml b/config/cm-13.0_aosp.yaml
index afd8fc4..28214d1 100644
--- a/config/cm-13.0_aosp.yaml
+++ b/config/cm-13.0_aosp.yaml
@@ -4,7 +4,7 @@
# additional languages not supported by AOSP
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2018 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,523 +18,358 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_AOSP_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_CM_13_0
-project_identifier: lineageos-aosp
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_CM_13_0
+"project_id": 238011
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- as: as-rIN
- ast: ast-rES
- be: be
- cy: cy
- en-PT: en-rPT
- es-MX: es-rMX
- eo: eo
- fy-NL: fy-rNL
- kab: kab-rDZ
- ku: ku
- lb: lb
- or: or-rIN
- sc: sc-rIT
- ug: ug
-
- # BackupRestoreConfirmation
- -
- source: '/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CaptivePortalLogin
- -
- source: '/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DefaultContainerService
- -
- source: '/frameworks/base/packages/DefaultContainerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DocumentsUI
- -
- source: '/frameworks/base/packages/DocumentsUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExternalStorageProvider
- -
- source: '/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FusedLocation
- -
- source: '/frameworks/base/packages/FusedLocation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InputDevices
- -
- source: '/frameworks/base/packages/InputDevices/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Keyguard
- -
- source: '/frameworks/base/packages/Keyguard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PrintSpooler
- -
- source: '/frameworks/base/packages/PrintSpooler/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsProvider
- -
- source: '/frameworks/base/packages/SettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Shell
- -
- source: '/frameworks/base/packages/Shell/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StatementService
- -
- source: '/frameworks/base/packages/StatementService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # VpnDialogs
- -
- source: '/frameworks/base/packages/VpnDialogs/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperCropper
- -
- source: '/frameworks/base/packages/WallpaperCropper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BasicSmsReceiver
- -
- source: '/packages/apps/BasicSmsReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_pbap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Browser
- -
- source: '/packages/apps/Browser/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calendar
- -
- source: '/packages/apps/Calendar/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Calendar/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Camera2/res_p/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CertInstaller
- -
- source: '/packages/apps/CertInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsCommon
- -
- source: '/packages/apps/ContactsCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/array.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/DeskClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExactCalculator
- -
- source: '/packages/apps/ExactCalculator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Exchange
- -
- source: '/packages/apps/Exchange/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/filtershow_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HTMLViewer
- -
- source: '/packages/apps/HTMLViewer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InCallUI
- -
- source: '/packages/apps/InCallUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # KeyChain
- -
- source: '/packages/apps/KeyChain/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ManagedProvisioning
- -
- source: '/packages/apps/ManagedProvisioning/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Messaging/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Nfc
- -
- source: '/packages/apps/Nfc/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PackageInstaller
- -
- source: '/packages/apps/PackageInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SoundRecorder
- -
- source: '/packages/apps/SoundRecorder/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Tag
- -
- source: '/packages/apps/Tag/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/TvSettings/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker
- -
- source: '/packages/apps/WallpaperPicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # BookmarkProvider
- -
- source: '/packages/providers/BookmarkProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CalendarProvider
- -
- source: '/packages/providers/CalendarProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CallLogProvider
- -
- source: '/packages/providers/CallLogProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsProvider
- -
- source: '/packages/providers/ContactsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/ui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MediaProvider
- -
- source: '/packages/providers/MediaProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TelephonyProvider
- -
- source: '/packages/providers/TelephonyProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UserDictionaryProvider
- -
- source: '/packages/providers/UserDictionaryProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # Basic
- -
- source: '/packages/screensavers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/sip/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # Basic
- -
- source: '/packages/wallpapers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HoloSpiral
- -
- source: '/packages/wallpapers/HoloSpiral/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LivePicker
- -
- source: '/packages/wallpapers/LivePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MagicSmoke
- -
- source: '/packages/wallpapers/MagicSmoke/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # NoiseField
- -
- source: '/packages/wallpapers/NoiseField/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhaseBeam
- -
- source: '/packages/wallpapers/PhaseBeam/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/BackupRestoreConfirmation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/CaptivePortalLogin/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DefaultContainerService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DefaultContainerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DocumentsUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DocumentsUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/ExternalStorageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/FusedLocation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/FusedLocation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/InputDevices/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/InputDevices/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Keyguard/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Keyguard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/PrintSpooler/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/PrintSpooler/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/arrays.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Shell/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Shell/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/StatementService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/StatementService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/VpnDialogs/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/VpnDialogs/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/WallpaperCropper/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/WallpaperCropper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/BasicSmsReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/BasicSmsReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_pbap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_sap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Browser/res/values/strings.xml",
+ "translation": "/packages/apps/Browser/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/arrays.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/strings.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res_p/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res_p/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CertInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/CertInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ContactsCommon/res/values/strings.xml",
+ "translation": "/packages/apps/ContactsCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/array.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ExactCalculator/res/values/strings.xml",
+ "translation": "/packages/apps/ExactCalculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Exchange/res/values/strings.xml",
+ "translation": "/packages/apps/Exchange/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/filtershow_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/HTMLViewer/res/values/strings.xml",
+ "translation": "/packages/apps/HTMLViewer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/InCallUI/res/values/strings.xml",
+ "translation": "/packages/apps/InCallUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/KeyChain/res/values/strings.xml",
+ "translation": "/packages/apps/KeyChain/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ManagedProvisioning/res/values/strings.xml",
+ "translation": "/packages/apps/ManagedProvisioning/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/arrays.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Nfc/res/values/strings.xml",
+ "translation": "/packages/apps/Nfc/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PackageInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/PackageInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SoundRecorder/res/values/strings.xml",
+ "translation": "/packages/apps/SoundRecorder/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Tag/res/values/strings.xml",
+ "translation": "/packages/apps/Tag/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker/res/values/strings.xml",
+ "translation": "/packages/apps/WallpaperPicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BookmarkProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BookmarkProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CalendarProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CalendarProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CallLogProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CallLogProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ContactsProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ContactsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/ui/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/ui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/MediaProvider/res/values/strings.xml",
+ "translation": "/packages/providers/MediaProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TelephonyProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TelephonyProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/UserDictionaryProvider/res/values/strings.xml",
+ "translation": "/packages/providers/UserDictionaryProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/Basic/res/values/strings.xml",
+ "translation": "/packages/screensavers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/sip/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/sip/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/Basic/res/values/strings.xml",
+ "translation": "/packages/wallpapers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/HoloSpiral/res/values/strings.xml",
+ "translation": "/packages/wallpapers/HoloSpiral/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/LivePicker/res/values/strings.xml",
+ "translation": "/packages/wallpapers/LivePicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/MagicSmoke/res/values/strings.xml",
+ "translation": "/packages/wallpapers/MagicSmoke/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/NoiseField/res/values/strings.xml",
+ "translation": "/packages/wallpapers/NoiseField/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/PhaseBeam/res/values/strings.xml",
+ "translation": "/packages/wallpapers/PhaseBeam/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/cm-14.1.yaml b/config/cm-14.1.yaml
index 6edade8..8aab13b 100644
--- a/config/cm-14.1.yaml
+++ b/config/cm-14.1.yaml
@@ -3,7 +3,7 @@
# Crowdin configuration file for LineageOS
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2018 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,482 +17,278 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_CM_14_1
-project_identifier: lineageos
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_CM_14_1
+"project_id": 237414
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- af: af
- am: am
- ar: ar
- as: as-rIN
- ast: ast-rES
- az: az-rAZ
- be: be-rBY
- bg: bg
- bn: bn-rBD
- bs: bs-rBA
- ca: ca
- cs: cs
- cy: cy
- da: da
- de: de
- el: el
- en-AU: en-rAU
- en-GB: en-rGB
- en-IN: en-rIN
- en-PT: en-rPT
- eo: eo
- es-ES: es
- es-MX: es-rMX
- es-US: es-rUS
- et: et-rEE
- eu: eu-rES
- fa: fa
- fi: fi
- fr: fr
- fr-CA: fr-rCA
- fy-NL: fy-rNL
- gl: gl-rES
- gu-IN: gu-rIN
- he: iw
- hi: hi
- hr: hr
- hu: hu
- hy-AM: hy-rAM
- id: in
- is: is-rIS
- it: it
- ja: ja
- ka: ka-rGE
- kab: kab-rDZ
- kk: kk-rKZ
- km: km-rKH
- kn: kn-rIN
- ko: ko
- ku: ku
- ky: ky-rKG
- lb: lb
- lo: lo-rLA
- lt: lt
- lv: lv
- mk: mk-rMK
- ml-IN: ml-rIN
- mn: mn-rMN
- mr: mr-rIN
- ms: ms-rMY
- my: my-rMM
- nb: nb
- ne-NP: ne-rNP
- nl: nl
- or: or-rIN
- pa-IN: pa-rIN
- pl: pl
- pt-PT: pt-rPT
- pt-BR: pt-rBR
- rm-CH: rm
- ro: ro
- ru: ru
- sc: sc-rIT
- si-LK: si-rLK
- sk: sk
- sl: sl
- sq: sq-rAL
- sr: sr
- sv-SE: sv
- sw: sw
- ta: ta-rIN
- te: te-rIN
- th: th
- tl: tl
- tr: tr
- ug: ug
- uk: uk
- ur-PK: ur-rPK
- uz: uz-rUZ
- vi: vi
- zh-CN: zh-rCN
- zh-HK: zh-rHK
- zh-TW: zh-rTW
- zu: zu
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calendar
- -
- source: '/packages/apps/Calendar/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Calendar/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMParts
- -
- source: '/packages/apps/CMParts/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/CMParts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsCommon
- -
- source: '/packages/apps/ContactsCommon/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/InCallUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/InCallUI/res/values/qtistrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Eleven
- -
- source: '/packages/apps/Eleven/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Eleven/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/codeaurora_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Jelly
- -
- source: '/packages/apps/Jelly/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LockClock
- -
- source: '/packages/apps/LockClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/qtistrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Profiles
- -
- source: '/packages/apps/Profiles/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Recorder
- -
- source: '/packages/apps/Recorder/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SetupWizard
- -
- source: '/packages/apps/SetupWizard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Snap
- -
- source: '/packages/apps/Snap/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/qcomstrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/quickReader/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Terminal
- -
- source: '/packages/apps/Terminal/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Terminal/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Trebuchet/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Updater
- -
- source: '/packages/apps/Updater/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker
- -
- source: '/packages/apps/WallpaperPicker/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # DataUsageProvider
- -
- source: '/packages/providers/DataUsageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WeatherProvider
- -
- source: '/packages/providers/WeatherProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # CMAudioService
- -
- source: '/packages/services/CMAudioService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/res/values/qtistrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WeatherService
- -
- source: '/packages/services/WeatherService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Vendor
-
- # CM SDK
- -
- source: '/vendor/cmsdk/cm/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CMSettingsProvider
- -
- source: '/vendor/cmsdk/packages/CMSettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # OpenWeatherMapProvider
- -
- source: '/vendor/cmsdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Device specific
-
- # fmapp2
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRecord
- -
- source: '/hardware/qcom/fm/FMRecord/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SamsungServiceMode
- -
- source: '/packages/apps/SamsungServiceMode/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo common configpanel
- -
- source: '/device/oppo/common/configpanel/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # sony huashan devicesettings
- -
- source: '/device/sony/huashan/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung AdvancedDisplay
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # resources devicesettings
- -
- source: '/packages/resources/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FlipFlap
- -
- source: '/packages/apps/FlipFlap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/cm_strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/cm_strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMParts/res/values/plurals.xml",
+ "translation": "/packages/apps/CMParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CMParts/res/values/strings.xml",
+ "translation": "/packages/apps/CMParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ContactsCommon/res/values/cm_strings.xml",
+ "translation": "/packages/apps/ContactsCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cm_strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/InCallUI/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/InCallUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/InCallUI/res/values/qtistrings.xml",
+ "translation": "/packages/apps/Dialer/InCallUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/plurals.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/strings.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/cm_strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/codeaurora_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Jelly/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Jelly/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LockClock/res/values/strings.xml",
+ "translation": "/packages/apps/LockClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/qtistrings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Profiles/res/values/strings.xml",
+ "translation": "/packages/apps/Profiles/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Recorder/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Recorder/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SetupWizard/res/values/strings.xml",
+ "translation": "/packages/apps/SetupWizard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/qcomstrings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/quickReader/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/quickReader/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/arrays.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/strings.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/cm_strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Updater/res/values/strings.xml",
+ "translation": "/packages/apps/Updater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker/res/values/cm_strings.xml",
+ "translation": "/packages/apps/WallpaperPicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DataUsageProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DataUsageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_plurals.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/WeatherProvider/res/values/strings.xml",
+ "translation": "/packages/providers/WeatherProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/CMAudioService/res/values/strings.xml",
+ "translation": "/packages/services/CMAudioService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/cm_strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/qtistrings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/WeatherService/res/values/strings.xml",
+ "translation": "/packages/services/WeatherService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/cmsdk/cm/res/res/values/strings.xml",
+ "translation": "/vendor/cmsdk/cm/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/cmsdk/packages/CMSettingsProvider/res/values/strings.xml",
+ "translation": "/vendor/cmsdk/packages/CMSettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/cmsdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml",
+ "translation": "/vendor/cmsdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/arrays.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/FMRecord/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/FMRecord/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SamsungServiceMode/res/values/strings.xml",
+ "translation": "/packages/apps/SamsungServiceMode/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/common/configpanel/res/values/strings.xml",
+ "translation": "/device/oppo/common/configpanel/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/sony/huashan/devicesettings/res/values/strings.xml",
+ "translation": "/device/sony/huashan/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/arrays.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/strings.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/resources/devicesettings/res/values/strings.xml",
+ "translation": "/packages/resources/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FlipFlap/res/values/strings.xml",
+ "translation": "/packages/apps/FlipFlap/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/cm-14.1_aosp.yaml b/config/cm-14.1_aosp.yaml
index 71558e6..5a2c856 100644
--- a/config/cm-14.1_aosp.yaml
+++ b/config/cm-14.1_aosp.yaml
@@ -4,7 +4,7 @@
# additional languages not supported by AOSP
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2018 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,512 +18,355 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_AOSP_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_CM_14_1
-project_identifier: lineageos-aosp
-preserve_hierarchy: true
-files:
-# Frameworks
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_CM_14_1
+"project_id": 238011
+"preserve_hierarchy": true
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- as: as-rIN
- ast: ast-rES
- cy: cy
- en-PT: en-rPT
- es-MX: es-rMX
- eo: eo
- fy-NL: fy-rNL
- kab: kab-rDZ
- ku: ku
- lb: lb
- or: or-rIN
- sc: sc-rIT
- ug: ug
-
- # BackupRestoreConfirmation
- -
- source: '/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CaptivePortalLogin
- -
- source: '/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DefaultContainerService
- -
- source: '/frameworks/base/packages/DefaultContainerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DocumentsUI
- -
- source: '/frameworks/base/packages/DocumentsUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExternalStorageProvider
- -
- source: '/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FusedLocation
- -
- source: '/frameworks/base/packages/FusedLocation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InputDevices
- -
- source: '/frameworks/base/packages/InputDevices/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Keyguard
- -
- source: '/frameworks/base/packages/Keyguard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MtpDocumentsProvider
- -
- source: '/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PrintSpooler
- -
- source: '/frameworks/base/packages/PrintSpooler/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsProvider
- -
- source: '/frameworks/base/packages/SettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Shell
- -
- source: '/frameworks/base/packages/Shell/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StatementService
- -
- source: '/frameworks/base/packages/StatementService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # VpnDialogs
- -
- source: '/frameworks/base/packages/VpnDialogs/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperCropper
- -
- source: '/frameworks/base/packages/WallpaperCropper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_pbap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calendar
- -
- source: '/packages/apps/Calendar/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Calendar/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Camera2/res_p/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CertInstaller
- -
- source: '/packages/apps/CertInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsCommon
- -
- source: '/packages/apps/ContactsCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/array.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/DeskClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/InCallUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # EmergencyInfo
- -
- source: '/packages/apps/EmergencyInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExactCalculator
- -
- source: '/packages/apps/ExactCalculator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Exchange
- -
- source: '/packages/apps/Exchange/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/filtershow_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HTMLViewer
- -
- source: '/packages/apps/HTMLViewer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # KeyChain
- -
- source: '/packages/apps/KeyChain/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ManagedProvisioning
- -
- source: '/packages/apps/ManagedProvisioning/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Messaging/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Nfc
- -
- source: '/packages/apps/Nfc/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PackageInstaller
- -
- source: '/packages/apps/PackageInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SafetyRegulatoryInfo
- -
- source: '/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StorageManager
- -
- source: '/packages/apps/StorageManager/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/StorageManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Tag
- -
- source: '/packages/apps/Tag/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/TvSettings/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker
- -
- source: '/packages/apps/WallpaperPicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # BlockedNumberProvider
- -
- source: '/packages/providers/BlockedNumberProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BookmarkProvider
- -
- source: '/packages/providers/BookmarkProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CalendarProvider
- -
- source: '/packages/providers/CalendarProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CallLogProvider
- -
- source: '/packages/providers/CallLogProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsProvider
- -
- source: '/packages/providers/ContactsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/ui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MediaProvider
- -
- source: '/packages/providers/MediaProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TelephonyProvider
- -
- source: '/packages/providers/TelephonyProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvProvider
- -
- source: '/packages/providers/TvProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UserDictionaryProvider
- -
- source: '/packages/providers/UserDictionaryProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # Basic
- -
- source: '/packages/screensavers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/sip/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # LivePicker
- -
- source: '/packages/wallpapers/LivePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/BackupRestoreConfirmation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/CaptivePortalLogin/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DefaultContainerService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DefaultContainerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DocumentsUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DocumentsUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/ExternalStorageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/FusedLocation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/FusedLocation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/InputDevices/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/InputDevices/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Keyguard/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Keyguard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/MtpDocumentsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/PrintSpooler/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/PrintSpooler/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/arrays.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Shell/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Shell/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/StatementService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/StatementService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/VpnDialogs/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/VpnDialogs/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/WallpaperCropper/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/WallpaperCropper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_pbap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_sap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/arrays.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/strings.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res_p/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res_p/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CertInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/CertInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ContactsCommon/res/values/strings.xml",
+ "translation": "/packages/apps/ContactsCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/array.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/InCallUI/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/InCallUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/EmergencyInfo/res/values/strings.xml",
+ "translation": "/packages/apps/EmergencyInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ExactCalculator/res/values/strings.xml",
+ "translation": "/packages/apps/ExactCalculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Exchange/res/values/strings.xml",
+ "translation": "/packages/apps/Exchange/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/filtershow_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/HTMLViewer/res/values/strings.xml",
+ "translation": "/packages/apps/HTMLViewer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/KeyChain/res/values/strings.xml",
+ "translation": "/packages/apps/KeyChain/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ManagedProvisioning/res/values/strings.xml",
+ "translation": "/packages/apps/ManagedProvisioning/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/arrays.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Nfc/res/values/strings.xml",
+ "translation": "/packages/apps/Nfc/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PackageInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/PackageInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml",
+ "translation": "/packages/apps/SafetyRegulatoryInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/arrays.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/strings.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Tag/res/values/strings.xml",
+ "translation": "/packages/apps/Tag/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker/res/values/strings.xml",
+ "translation": "/packages/apps/WallpaperPicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BlockedNumberProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BlockedNumberProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BookmarkProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BookmarkProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CalendarProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CalendarProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CallLogProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CallLogProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ContactsProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ContactsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/ui/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/ui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/MediaProvider/res/values/strings.xml",
+ "translation": "/packages/providers/MediaProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TelephonyProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TelephonyProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TvProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TvProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/UserDictionaryProvider/res/values/strings.xml",
+ "translation": "/packages/providers/UserDictionaryProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/Basic/res/values/strings.xml",
+ "translation": "/packages/screensavers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/sip/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/sip/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/LivePicker/res/values/strings.xml",
+ "translation": "/packages/wallpapers/LivePicker/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-15.1.yaml b/config/lineage-15.1.yaml
index e10e26e..16167bf 100644
--- a/config/lineage-15.1.yaml
+++ b/config/lineage-15.1.yaml
@@ -3,7 +3,7 @@
# Crowdin configuration file for LineageOS
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2018 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,557 +17,255 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_15_1
-project_identifier: lineageos
-preserve_hierarchy: true
-files:
-# Frameworks
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_15_1
+"project_id": 237414
+"preserve_hierarchy": true
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Afrikaans
- af: af
- # Albanian
- sq: sq
- # Amharic
- am: am
- # Arabic
- ar: ar
- # Armenian
- hy-AM: hy
- # Arpitan - LineageOS
- frp: frp
- # Assamese - LineageOS
- as: as-rIN
- # Asturian - LineageOS
- ast: ast-rES
- # Azerbaijani
- az: az
- # Basque
- eu: eu
- # Belarusian
- be: be
- # Bengali
- bn: bn
- # Bosnian
- bs: bs
- # Breton - LineageOS
- br-FR: br-rFR
- # Bulgarian
- bg: bg
- # Burmese
- my: my
- # Catalan
- ca: ca
- # Chinese Simplified
- zh-CN: zh-rCN
- # Chinese Traditional
- zh-TW: zh-rTW
- # Chinese Traditional, Hong Kong
- zh-HK: zh-rHK
- # Croatian
- hr: hr
- # Czech
- cs: cs
- # Danish
- da: da
- # Dutch
- nl: nl
- # English, Australia
- en-AU: en-rAU
- # English, Canada
- en-CA: en-rCA
- # English, India
- en-IN: en-rIN
- # English, United Kingdom
- en-GB: en-rGB
- # Esperanto - LineageOS
- eo: eo
- # Estonian
- et: et
- # Filipino - LineageOS
- fil: fil
- # Finnish
- fi: fi
- # French
- fr: fr
- # French, Canada
- fr-CA: fr-rCA
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Galician
- gl: gl
- # Georgian
- ka: ka
- # German
- de: de
- # Greek
- el: el
- # Gujarati
- gu-IN: gu
- # Hebrew
- he: iw
- # Hindi
- hi: hi
- # Hungarian
- hu: hu
- # Icelandic
- is: is
- # Indonesian
- id: in
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Italian
- it: it
- # Japanese
- ja: ja
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kannada
- kn: kn
- # Kashubian - LineageOS
- csb: csb
- # Kazakh
- kk: kk
- # Khmer
- km: km
- # Korean
- ko: ko
- # Kurdish - LineageOS
- ku: ku
- # Kyrgyz
- ky: ky
- # Lao
- lo: lo
- # Latvian
- lv: lv
- # Lithuanian
- lt: lt
- # Luxembourgish - LineageOS
- lb: lb
- # Macedonian (FYROM)
- mk: mk
- # Malay
- ms: ms
- # Malayalam
- ml-IN: ml
- # Marathi
- mr: mr
- # Mongolian
- mn: mn
- # Nepali
- ne-NP: ne
- # Norwegian Bokmal
- nb: nb
- # Occitan - LineageOS
- oc: oc
- # Oriya - LineageOS
- or: or-rIN
- # Persian
- fa: fa
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Polish
- pl: pl
- # Portuguese
- pt-PT: pt-rPT
- # Portuguese, Brazilian
- pt-BR: pt-rBR
- # Punjabi
- pa-IN: pa
- # Romanian
- ro: ro
- # Romansh - LineageOS
- rm-CH: rm
- # Russian
- ru: ru
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Serbian (Cyrillic)
- sr: sr
- # Serbian (Latin)
- sr-CS: b+sr+Latn
- # Sinhala
- si-LK: si
- # Slovak
- sk: sk
- # Slovenian
- sl: sl
- # Spanish
- es-ES: es
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Spanish, United States
- es-US: es-rUS
- # Swahili
- sw: sw
- # Swedish
- sv-SE: sv
- # Tagalog
- tl: tl
- # Tamil
- ta: ta
- # Telugu
- te: te
- # Thai
- th: th
- # Turkish
- tr: tr
- # Ukrainian
- uk: uk
- # Urdu (Pakistan)
- ur-PK: ur
- # Uyghur - LineageOS
- ug: ug
- # Uzbek
- uz: uz
- # Venetian - LineageOS
- vec: vec
- # Vietnamese
- vi: vi
- # Welsh - LineageOS
- cy: cy
- # Zulu
- zu: zu
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Eleven
- -
- source: '/packages/apps/Eleven/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Eleven/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Exchange
- -
- source: '/packages/apps/Exchange/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/FMRadio/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/codeaurora_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Jelly
- -
- source: '/packages/apps/Jelly/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageParts
- -
- source: '/packages/apps/LineageParts/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/LineageParts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LockClock
- -
- source: '/packages/apps/LockClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Profiles
- -
- source: '/packages/apps/Profiles/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Recorder
- -
- source: '/packages/apps/Recorder/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SetupWizard
- -
- source: '/packages/apps/SetupWizard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Snap
- -
- source: '/packages/apps/Snap/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/qcomstrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/quickReader/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Terminal
- -
- source: '/packages/apps/Terminal/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Terminal/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Updater
- -
- source: '/packages/apps/Updater/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker
- -
- source: '/packages/apps/WallpaperPicker/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WeatherProvider
- -
- source: '/packages/providers/WeatherProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # Mms
- -
- source: '/packages/services/Mms/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Lineage SDK
-
- # Lineage SDK
- -
- source: '/lineage-sdk/lineage/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageSettingsProvider
- -
- source: '/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # OpenWeatherMapProvider
- -
- source: '/lineage-sdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Device specific
-
- # fmapp2
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRecord
- -
- source: '/hardware/qcom/fm/FMRecord/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo common configpanel
- -
- source: '/device/oppo/common/configpanel/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo r5 otgtoggle
- -
- source: '/device/oppo/r5/otgtoggle/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung AdvancedDisplay
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # resources devicesettings
- -
- source: '/packages/resources/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FlipFlap
- -
- source: '/packages/apps/FlipFlap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/cm_strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cm_strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/plurals.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/strings.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Exchange/res/values/strings.xml",
+ "translation": "/packages/apps/Exchange/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/cm_strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/codeaurora_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Jelly/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Jelly/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/plurals.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/strings.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LockClock/res/values/strings.xml",
+ "translation": "/packages/apps/LockClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Profiles/res/values/strings.xml",
+ "translation": "/packages/apps/Profiles/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Recorder/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Recorder/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SetupWizard/res/values/strings.xml",
+ "translation": "/packages/apps/SetupWizard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/qcomstrings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/quickReader/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/quickReader/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/arrays.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/strings.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Updater/res/values/strings.xml",
+ "translation": "/packages/apps/Updater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker/res/values/cm_strings.xml",
+ "translation": "/packages/apps/WallpaperPicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_plurals.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/WeatherProvider/res/values/strings.xml",
+ "translation": "/packages/providers/WeatherProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Mms/res/values/cm_strings.xml",
+ "translation": "/packages/services/Mms/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/cm_strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/lineage/res/res/values/strings.xml",
+ "translation": "/lineage-sdk/lineage/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml",
+ "translation": "/lineage-sdk/packages/LineageSettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml",
+ "translation": "/lineage-sdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/arrays.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/FMRecord/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/FMRecord/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/common/configpanel/res/values/strings.xml",
+ "translation": "/device/oppo/common/configpanel/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/r5/otgtoggle/res/values/strings.xml",
+ "translation": "/device/oppo/r5/otgtoggle/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/arrays.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/strings.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/resources/devicesettings/res/values/strings.xml",
+ "translation": "/packages/resources/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FlipFlap/res/values/strings.xml",
+ "translation": "/packages/apps/FlipFlap/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-15.1_aosp.yaml b/config/lineage-15.1_aosp.yaml
index 455a1c1..e1b899e 100644
--- a/config/lineage-15.1_aosp.yaml
+++ b/config/lineage-15.1_aosp.yaml
@@ -4,7 +4,7 @@
# additional languages not supported by AOSP
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2018 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,679 +18,494 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_AOSP_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_15_1
-project_identifier: lineageos-aosp
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_15_1
+"project_id": 238011
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Arpitan - LineageOS
- frp: frp
- # Assamese - LineageOS
- as: as-rIN
- # Asturian - LineageOS
- ast: ast-rES
- # Breton - LineageOS
- br-FR: br-rFR
- # Esperanto - LineageOS
- eo: eo
- # Filipino - LineageOS
- fil: fil
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kashubian - LineageOS
- csb: csb
- # Kurdish - LineageOS
- ku: ku
- # Luxembourgish - LineageOS
- lb: lb
- # Occitan - LineageOS
- oc: oc
- # Oriya - LineageOS
- or: or-rIN
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Romansh - LineageOS
- rm-CH: rm
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Uyghur - LineageOS
- ug: ug
- # Venetian - LineageOS
- vec: vec
- # Welsh - LineageOS
- cy: cy
-
- # BackupRestoreConfirmation
- -
- source: '/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CaptivePortalLogin
- -
- source: '/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DefaultContainerService
- -
- source: '/frameworks/base/packages/DefaultContainerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExternalStorageProvider
- -
- source: '/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FusedLocation
- -
- source: '/frameworks/base/packages/FusedLocation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InputDevices
- -
- source: '/frameworks/base/packages/InputDevices/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MtpDocumentsProvider
- -
- source: '/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PrintSpooler
- -
- source: '/frameworks/base/packages/PrintSpooler/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsProvider
- -
- source: '/frameworks/base/packages/SettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Shell
- -
- source: '/frameworks/base/packages/Shell/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StatementService
- -
- source: '/frameworks/base/packages/StatementService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # VpnDialogs
- -
- source: '/frameworks/base/packages/VpnDialogs/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperCropper
- -
- source: '/frameworks/base/packages/WallpaperCropper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_pbap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calendar
- -
- source: '/packages/apps/Calendar/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Calendar/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Camera2/res_p/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CertInstaller
- -
- source: '/packages/apps/CertInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/array.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/DeskClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DocumentsUI
- -
- source: '/packages/apps/DocumentsUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # EmergencyInfo
- -
- source: '/packages/apps/EmergencyInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExactCalculator
- -
- source: '/packages/apps/ExactCalculator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/filtershow_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HTMLViewer
- -
- source: '/packages/apps/HTMLViewer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # KeyChain
- -
- source: '/packages/apps/KeyChain/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ManagedProvisioning
- -
- source: '/packages/apps/ManagedProvisioning/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Messaging/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Nfc
- -
- source: '/packages/apps/Nfc/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PackageInstaller
- -
- source: '/packages/apps/PackageInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SafetyRegulatoryInfo
- -
- source: '/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StorageManager
- -
- source: '/packages/apps/StorageManager/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/StorageManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Tag
- -
- source: '/packages/apps/Tag/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/TvSettings/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker
- -
- source: '/packages/apps/WallpaperPicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # BlockedNumberProvider
- -
- source: '/packages/providers/BlockedNumberProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BookmarkProvider
- -
- source: '/packages/providers/BookmarkProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CalendarProvider
- -
- source: '/packages/providers/CalendarProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CallLogProvider
- -
- source: '/packages/providers/CallLogProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsProvider
- -
- source: '/packages/providers/ContactsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/ui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MediaProvider
- -
- source: '/packages/providers/MediaProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TelephonyProvider
- -
- source: '/packages/providers/TelephonyProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvProvider
- -
- source: '/packages/providers/TvProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UserDictionaryProvider
- -
- source: '/packages/providers/UserDictionaryProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # Basic
- -
- source: '/packages/screensavers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # BuiltInPrintService
- -
- source: '/packages/services/BuiltInPrintService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/sip/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # LivePicker
- -
- source: '/packages/wallpapers/LivePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/BackupRestoreConfirmation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/CaptivePortalLogin/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DefaultContainerService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DefaultContainerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/ExternalStorageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/FusedLocation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/FusedLocation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/InputDevices/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/InputDevices/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/MtpDocumentsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/PrintSpooler/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/PrintSpooler/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/arrays.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Shell/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Shell/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/StatementService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/StatementService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res-keyguard/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/VpnDialogs/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/VpnDialogs/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/WallpaperCropper/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/WallpaperCropper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_pbap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_sap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/arrays.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/strings.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res_p/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res_p/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CertInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/CertInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/array.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/contacts/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/about/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/util/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DocumentsUI/res/values/strings.xml",
+ "translation": "/packages/apps/DocumentsUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/EmergencyInfo/res/values/strings.xml",
+ "translation": "/packages/apps/EmergencyInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ExactCalculator/res/values/strings.xml",
+ "translation": "/packages/apps/ExactCalculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/filtershow_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/HTMLViewer/res/values/strings.xml",
+ "translation": "/packages/apps/HTMLViewer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/KeyChain/res/values/strings.xml",
+ "translation": "/packages/apps/KeyChain/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ManagedProvisioning/res/values/strings.xml",
+ "translation": "/packages/apps/ManagedProvisioning/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/arrays.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Nfc/res/values/strings.xml",
+ "translation": "/packages/apps/Nfc/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PackageInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/PackageInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml",
+ "translation": "/packages/apps/SafetyRegulatoryInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/arrays.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/strings.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Tag/res/values/strings.xml",
+ "translation": "/packages/apps/Tag/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker/res/values/strings.xml",
+ "translation": "/packages/apps/WallpaperPicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BlockedNumberProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BlockedNumberProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BookmarkProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BookmarkProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CalendarProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CalendarProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CallLogProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CallLogProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ContactsProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ContactsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/ui/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/ui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/MediaProvider/res/values/strings.xml",
+ "translation": "/packages/providers/MediaProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TelephonyProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TelephonyProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TvProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TvProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/UserDictionaryProvider/res/values/strings.xml",
+ "translation": "/packages/providers/UserDictionaryProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/Basic/res/values/strings.xml",
+ "translation": "/packages/screensavers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/BuiltInPrintService/res/values/strings.xml",
+ "translation": "/packages/services/BuiltInPrintService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/sip/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/sip/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/LivePicker/res/values/strings.xml",
+ "translation": "/packages/wallpapers/LivePicker/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-16.0.yaml b/config/lineage-16.0.yaml
index becf685..bdb1c18 100644
--- a/config/lineage-16.0.yaml
+++ b/config/lineage-16.0.yaml
@@ -3,7 +3,7 @@
# Crowdin configuration file for LineageOS
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2019 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,567 +17,258 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_16_0
-project_identifier: lineageos
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_16_0
+"project_id": 237414
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Afrikaans
- af: af
- # Albanian
- sq: sq
- # Amharic
- am: am
- # Arabic
- ar: ar
- # Armenian
- hy-AM: hy
- # Arpitan - LineageOS
- frp: frp
- # Assamese
- as: as
- # Asturian - LineageOS
- ast: ast-rES
- # Azerbaijani
- az: az
- # Basque
- eu: eu
- # Belarusian
- be: be
- # Bengali
- bn: bn
- # Bosnian
- bs: bs
- # Breton - LineageOS
- br-FR: br-rFR
- # Bulgarian
- bg: bg
- # Burmese
- my: my
- # Catalan
- ca: ca
- # Chinese Simplified
- zh-CN: zh-rCN
- # Chinese Traditional
- zh-TW: zh-rTW
- # Chinese Traditional, Hong Kong
- zh-HK: zh-rHK
- # Croatian
- hr: hr
- # Czech
- cs: cs
- # Danish
- da: da
- # Dutch
- nl: nl
- # English, Australia
- en-AU: en-rAU
- # English, Canada
- en-CA: en-rCA
- # English, India
- en-IN: en-rIN
- # English, United Kingdom
- en-GB: en-rGB
- # Esperanto - LineageOS
- eo: eo
- # Estonian
- et: et
- # Filipino - LineageOS
- fil: fil
- # Finnish
- fi: fi
- # French
- fr: fr
- # French, Canada
- fr-CA: fr-rCA
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Galician
- gl: gl
- # Georgian
- ka: ka
- # German
- de: de
- # Greek
- el: el
- # Gujarati
- gu-IN: gu
- # Hebrew
- he: iw
- # Hindi
- hi: hi
- # Hungarian
- hu: hu
- # Icelandic
- is: is
- # Indonesian
- id: in
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Italian
- it: it
- # Japanese
- ja: ja
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kannada
- kn: kn
- # Kashubian - LineageOS
- csb: csb
- # Kazakh
- kk: kk
- # Khmer
- km: km
- # Korean
- ko: ko
- # Kurdish - LineageOS
- ku: ku
- # Kyrgyz
- ky: ky
- # Lao
- lo: lo
- # Latvian
- lv: lv
- # Lithuanian
- lt: lt
- # Luxembourgish - LineageOS
- lb: lb
- # Macedonian (FYROM)
- mk: mk
- # Malay
- ms: ms
- # Malayalam
- ml-IN: ml
- # Marathi
- mr: mr
- # Mongolian
- mn: mn
- # Nepali
- ne-NP: ne
- # Norwegian Bokmal
- nb: nb
- # Occitan - LineageOS
- oc: oc
- # Oriya
- or: or
- # Persian
- fa: fa
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Polish
- pl: pl
- # Portuguese
- pt-PT: pt-rPT
- # Portuguese, Brazilian
- pt-BR: pt-rBR
- # Punjabi
- pa-IN: pa
- # Romanian
- ro: ro
- # Romansh - LineageOS
- rm-CH: rm
- # Russian
- ru: ru
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Serbian (Cyrillic)
- sr: sr
- # Serbian (Latin)
- sr-CS: b+sr+Latn
- # Sinhala
- si-LK: si
- # Slovak
- sk: sk
- # Slovenian
- sl: sl
- # Spanish
- es-ES: es
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Spanish, United States
- es-US: es-rUS
- # Sundanese - LineageOS
- su: su
- # Swahili
- sw: sw
- # Swedish
- sv-SE: sv
- # Tagalog
- tl: tl
- # Tamil
- ta: ta
- # Telugu
- te: te
- # Thai
- th: th
- # Turkish
- tr: tr
- # Ukrainian
- uk: uk
- # Urdu (Pakistan)
- ur-PK: ur
- # Uyghur - LineageOS
- ug: ug
- # Uzbek
- uz: uz
- # Venetian - LineageOS
- vec: vec
- # Vietnamese
- vi: vi
- # Welsh - LineageOS
- cy: cy
- # Zulu
- zu: zu
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Backgrounds
- -
- source: '/packages/apps/Backgrounds/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Eleven
- -
- source: '/packages/apps/Eleven/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Eleven/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Exchange
- -
- source: '/packages/apps/Exchange/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/FMRadio/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/codeaurora_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Jelly
- -
- source: '/packages/apps/Jelly/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageParts
- -
- source: '/packages/apps/LineageParts/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/LineageParts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LockClock
- -
- source: '/packages/apps/LockClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Profiles
- -
- source: '/packages/apps/Profiles/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Recorder
- -
- source: '/packages/apps/Recorder/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SetupWizard
- -
- source: '/packages/apps/SetupWizard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Snap
- -
- source: '/packages/apps/Snap/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/qcomstrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/quickReader/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Terminal
- -
- source: '/packages/apps/Terminal/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Terminal/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Updater
- -
- source: '/packages/apps/Updater/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WeatherProvider
- -
- source: '/packages/providers/WeatherProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # BuiltInPrintService
- -
- source: '/packages/services/BuiltInPrintService/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Mms
- -
- source: '/packages/services/Mms/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Lineage SDK
-
- # Lineage SDK
- -
- source: '/lineage-sdk/lineage/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageSettingsProvider
- -
- source: '/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # OpenWeatherMapProvider
- -
- source: '/lineage-sdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Device specific
-
- # fmapp2
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/qcom/fm/fmapp2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # I01WD CameraTile
- -
- source: '/device/asus/I01WD/CameraTile/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # kuntao devicesettings
- -
- source: '/device/lenovo/kuntao/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oneplus guacamole camera helper
- -
- source: '/device/oneplus/guacamole/camera_helper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo common configpanel
- -
- source: '/device/oppo/common/configpanel/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo r5 otgtoggle
- -
- source: '/device/oppo/r5/otgtoggle/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung AdvancedDisplay
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # resources devicesettings
- -
- source: '/packages/resources/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FlipFlap
- -
- source: '/packages/apps/FlipFlap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/cm_strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Backgrounds/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Backgrounds/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cm_strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/plurals.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/strings.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Exchange/res/values/strings.xml",
+ "translation": "/packages/apps/Exchange/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/cm_strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/codeaurora_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Jelly/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Jelly/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/plurals.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/strings.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LockClock/res/values/strings.xml",
+ "translation": "/packages/apps/LockClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Profiles/res/values/strings.xml",
+ "translation": "/packages/apps/Profiles/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Recorder/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Recorder/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SetupWizard/res/values/strings.xml",
+ "translation": "/packages/apps/SetupWizard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/qcomstrings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/quickReader/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/quickReader/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/arrays.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/strings.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Updater/res/values/strings.xml",
+ "translation": "/packages/apps/Updater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_plurals.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/WeatherProvider/res/values/strings.xml",
+ "translation": "/packages/providers/WeatherProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/BuiltInPrintService/res/values/lineage_strings.xml",
+ "translation": "/packages/services/BuiltInPrintService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Mms/res/values/cm_strings.xml",
+ "translation": "/packages/services/Mms/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/lineage/res/res/values/strings.xml",
+ "translation": "/lineage-sdk/lineage/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml",
+ "translation": "/lineage-sdk/packages/LineageSettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values/strings.xml",
+ "translation": "/lineage-sdk/samples/weatherproviderservice/OpenWeatherMapProvider/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/arrays.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/qcom/fm/fmapp2/res/values/strings.xml",
+ "translation": "/hardware/qcom/fm/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/asus/I01WD/CameraTile/res/values/strings.xml",
+ "translation": "/device/asus/I01WD/CameraTile/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/lenovo/kuntao/devicesettings/res/values/strings.xml",
+ "translation": "/device/lenovo/kuntao/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oneplus/guacamole/camera_helper/res/values/strings.xml",
+ "translation": "/device/oneplus/guacamole/camera_helper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/common/configpanel/res/values/strings.xml",
+ "translation": "/device/oppo/common/configpanel/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/r5/otgtoggle/res/values/strings.xml",
+ "translation": "/device/oppo/r5/otgtoggle/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/arrays.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/strings.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/resources/devicesettings/res/values/strings.xml",
+ "translation": "/packages/resources/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FlipFlap/res/values/strings.xml",
+ "translation": "/packages/apps/FlipFlap/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-16.0_aosp.yaml b/config/lineage-16.0_aosp.yaml
index 31b2946..59f69fb 100644
--- a/config/lineage-16.0_aosp.yaml
+++ b/config/lineage-16.0_aosp.yaml
@@ -4,7 +4,7 @@
# additional languages not supported by AOSP
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2019 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,677 +18,494 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_AOSP_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_16_0
-project_identifier: lineageos-aosp
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_16_0
+"project_id": 238011
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Arpitan - LineageOS
- frp: frp
- # Asturian - LineageOS
- ast: ast-rES
- # Breton - LineageOS
- br-FR: br-rFR
- # Esperanto - LineageOS
- eo: eo
- # Filipino - LineageOS
- fil: fil
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kashubian - LineageOS
- csb: csb
- # Kurdish - LineageOS
- ku: ku
- # Luxembourgish - LineageOS
- lb: lb
- # Occitan - LineageOS
- oc: oc
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Romansh - LineageOS
- rm-CH: rm
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Sundanese - LineageOS
- su: su
- # Uyghur - LineageOS
- ug: ug
- # Venetian - LineageOS
- vec: vec
- # Welsh - LineageOS
- cy: cy
-
- # BackupRestoreConfirmation
- -
- source: '/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CaptivePortalLogin
- -
- source: '/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DefaultContainerService
- -
- source: '/frameworks/base/packages/DefaultContainerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExternalStorageProvider
- -
- source: '/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FusedLocation
- -
- source: '/frameworks/base/packages/FusedLocation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InputDevices
- -
- source: '/frameworks/base/packages/InputDevices/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MtpDocumentsProvider
- -
- source: '/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PrintSpooler
- -
- source: '/frameworks/base/packages/PrintSpooler/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsProvider
- -
- source: '/frameworks/base/packages/SettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Shell
- -
- source: '/frameworks/base/packages/Shell/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StatementService
- -
- source: '/frameworks/base/packages/StatementService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # VpnDialogs
- -
- source: '/frameworks/base/packages/VpnDialogs/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperCropper
- -
- source: '/frameworks/base/packages/WallpaperCropper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_pbap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Calendar
- -
- source: '/packages/apps/Calendar/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Calendar/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Camera2/res_p/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CertInstaller
- -
- source: '/packages/apps/CertInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cities.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/DeskClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DocumentsUI
- -
- source: '/packages/apps/DocumentsUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # EmergencyInfo
- -
- source: '/packages/apps/EmergencyInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExactCalculator
- -
- source: '/packages/apps/ExactCalculator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/filtershow_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HTMLViewer
- -
- source: '/packages/apps/HTMLViewer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # KeyChain
- -
- source: '/packages/apps/KeyChain/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ManagedProvisioning
- -
- source: '/packages/apps/ManagedProvisioning/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Messaging/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Nfc
- -
- source: '/packages/apps/Nfc/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PackageInstaller
- -
- source: '/packages/apps/PackageInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SafetyRegulatoryInfo
- -
- source: '/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StorageManager
- -
- source: '/packages/apps/StorageManager/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/StorageManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Tag
- -
- source: '/packages/apps/Tag/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/TvSettings/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker
- -
- source: '/packages/apps/WallpaperPicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # BlockedNumberProvider
- -
- source: '/packages/providers/BlockedNumberProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BookmarkProvider
- -
- source: '/packages/providers/BookmarkProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CalendarProvider
- -
- source: '/packages/providers/CalendarProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CallLogProvider
- -
- source: '/packages/providers/CallLogProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsProvider
- -
- source: '/packages/providers/ContactsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/ui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MediaProvider
- -
- source: '/packages/providers/MediaProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TelephonyProvider
- -
- source: '/packages/providers/TelephonyProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvProvider
- -
- source: '/packages/providers/TvProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UserDictionaryProvider
- -
- source: '/packages/providers/UserDictionaryProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # Basic
- -
- source: '/packages/screensavers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # BuiltInPrintService
- -
- source: '/packages/services/BuiltInPrintService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/sip/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # LivePicker
- -
- source: '/packages/wallpapers/LivePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/BackupRestoreConfirmation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/CaptivePortalLogin/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/CaptivePortalLogin/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DefaultContainerService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DefaultContainerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/ExternalStorageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/FusedLocation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/FusedLocation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/InputDevices/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/InputDevices/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/MtpDocumentsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/PrintSpooler/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/PrintSpooler/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/arrays.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Shell/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Shell/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/StatementService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/StatementService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res-keyguard/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/VpnDialogs/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/VpnDialogs/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/WallpaperCropper/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/WallpaperCropper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_pbap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_sap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/arrays.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Calendar/res/values/strings.xml",
+ "translation": "/packages/apps/Calendar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res_p/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res_p/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CertInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/CertInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cities.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/contacts/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/about/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/util/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DocumentsUI/res/values/strings.xml",
+ "translation": "/packages/apps/DocumentsUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/EmergencyInfo/res/values/strings.xml",
+ "translation": "/packages/apps/EmergencyInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ExactCalculator/res/values/strings.xml",
+ "translation": "/packages/apps/ExactCalculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/filtershow_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/HTMLViewer/res/values/strings.xml",
+ "translation": "/packages/apps/HTMLViewer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/KeyChain/res/values/strings.xml",
+ "translation": "/packages/apps/KeyChain/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ManagedProvisioning/res/values/strings.xml",
+ "translation": "/packages/apps/ManagedProvisioning/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/arrays.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Nfc/res/values/strings.xml",
+ "translation": "/packages/apps/Nfc/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PackageInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/PackageInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml",
+ "translation": "/packages/apps/SafetyRegulatoryInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/arrays.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/strings.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Tag/res/values/strings.xml",
+ "translation": "/packages/apps/Tag/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker/res/values/strings.xml",
+ "translation": "/packages/apps/WallpaperPicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BlockedNumberProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BlockedNumberProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BookmarkProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BookmarkProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CalendarProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CalendarProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CallLogProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CallLogProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ContactsProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ContactsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/ui/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/ui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/MediaProvider/res/values/strings.xml",
+ "translation": "/packages/providers/MediaProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TelephonyProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TelephonyProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TvProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TvProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/UserDictionaryProvider/res/values/strings.xml",
+ "translation": "/packages/providers/UserDictionaryProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/Basic/res/values/strings.xml",
+ "translation": "/packages/screensavers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/BuiltInPrintService/res/values/strings.xml",
+ "translation": "/packages/services/BuiltInPrintService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/sip/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/sip/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/LivePicker/res/values/strings.xml",
+ "translation": "/packages/wallpapers/LivePicker/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-17.1.yaml b/config/lineage-17.1.yaml
index a7f599c..caaff74 100644
--- a/config/lineage-17.1.yaml
+++ b/config/lineage-17.1.yaml
@@ -3,7 +3,7 @@
# Crowdin configuration file for LineageOS
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2020 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,559 +17,254 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_17_1
-project_identifier: lineageos
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_17_1
+"project_id": 237414
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Afrikaans
- af: af
- # Albanian
- sq: sq
- # Amharic
- am: am
- # Arabic
- ar: ar
- # Armenian
- hy-AM: hy
- # Arpitan - LineageOS
- frp: frp
- # Assamese
- as: as
- # Asturian - LineageOS
- ast: ast-rES
- # Azerbaijani
- az: az
- # Basque
- eu: eu
- # Belarusian
- be: be
- # Bengali
- bn: bn
- # Bosnian
- bs: bs
- # Breton - LineageOS
- br-FR: br-rFR
- # Bulgarian
- bg: bg
- # Burmese
- my: my
- # Catalan
- ca: ca
- # Chinese Simplified
- zh-CN: zh-rCN
- # Chinese Traditional
- zh-TW: zh-rTW
- # Chinese Traditional, Hong Kong
- zh-HK: zh-rHK
- # Croatian
- hr: hr
- # Czech
- cs: cs
- # Danish
- da: da
- # Dutch
- nl: nl
- # English, Australia
- en-AU: en-rAU
- # English, Canada
- en-CA: en-rCA
- # English, India
- en-IN: en-rIN
- # English, United Kingdom
- en-GB: en-rGB
- # Esperanto - LineageOS
- eo: eo
- # Estonian
- et: et
- # Filipino - LineageOS
- fil: fil
- # Finnish
- fi: fi
- # French
- fr: fr
- # French, Canada
- fr-CA: fr-rCA
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Galician
- gl: gl
- # Georgian
- ka: ka
- # German
- de: de
- # Greek
- el: el
- # Gujarati
- gu-IN: gu
- # Hebrew
- he: iw
- # Hindi
- hi: hi
- # Hungarian
- hu: hu
- # Icelandic
- is: is
- # Indonesian
- id: in
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Italian
- it: it
- # Japanese
- ja: ja
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kannada
- kn: kn
- # Kashubian - LineageOS
- csb: csb
- # Kazakh
- kk: kk
- # Khmer
- km: km
- # Korean
- ko: ko
- # Kurdish - LineageOS
- ku: ku
- # Kyrgyz
- ky: ky
- # Lao
- lo: lo
- # Latvian
- lv: lv
- # Lithuanian
- lt: lt
- # Luxembourgish - LineageOS
- lb: lb
- # Macedonian (FYROM)
- mk: mk
- # Malay
- ms: ms
- # Malayalam
- ml-IN: ml
- # Marathi
- mr: mr
- # Mongolian
- mn: mn
- # Nepali
- ne-NP: ne
- # Norwegian Bokmal
- nb: nb
- # Occitan - LineageOS
- oc: oc
- # Oriya
- or: or
- # Persian
- fa: fa
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Polish
- pl: pl
- # Portuguese
- pt-PT: pt-rPT
- # Portuguese, Brazilian
- pt-BR: pt-rBR
- # Punjabi
- pa-IN: pa
- # Romanian
- ro: ro
- # Romansh - LineageOS
- rm-CH: rm
- # Russian
- ru: ru
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Serbian (Cyrillic)
- sr: sr
- # Serbian (Latin)
- sr-CS: b+sr+Latn
- # Sinhala
- si-LK: si
- # Slovak
- sk: sk
- # Slovenian
- sl: sl
- # Spanish
- es-ES: es
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Spanish, United States
- es-US: es-rUS
- # Sundanese - LineageOS
- su: su
- # Swahili
- sw: sw
- # Swedish
- sv-SE: sv
- # Tagalog
- tl: tl
- # Tamil
- ta: ta
- # Telugu
- te: te
- # Thai
- th: th
- # Turkish
- tr: tr
- # Ukrainian
- uk: uk
- # Urdu (Pakistan)
- ur-PK: ur
- # Uyghur - LineageOS
- ug: ug
- # Uzbek
- uz: uz
- # Venetian - LineageOS
- vec: vec
- # Vietnamese
- vi: vi
- # Welsh - LineageOS
- cy: cy
- # Zulu
- zu: zu
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Backgrounds
- -
- source: '/packages/apps/Backgrounds/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Eleven
- -
- source: '/packages/apps/Eleven/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Eleven/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Etar
- -
- source: '/packages/apps/Etar/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Etar/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Exchange
- -
- source: '/packages/apps/Exchange/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/FMRadio/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/codeaurora_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Jelly
- -
- source: '/packages/apps/Jelly/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageParts
- -
- source: '/packages/apps/LineageParts/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/LineageParts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Profiles
- -
- source: '/packages/apps/Profiles/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Recorder
- -
- source: '/packages/apps/Recorder/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SetupWizard
- -
- source: '/packages/apps/SetupWizard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Snap
- -
- source: '/packages/apps/Snap/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/qcomstrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/quickReader/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Terminal
- -
- source: '/packages/apps/Terminal/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Terminal/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Updater
- -
- source: '/packages/apps/Updater/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # BuiltInPrintService
- -
- source: '/packages/services/BuiltInPrintService/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Mms
- -
- source: '/packages/services/Mms/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Lineage SDK
-
- # Lineage SDK
- -
- source: '/lineage-sdk/lineage/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageSettingsProvider
- -
- source: '/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Device specific
-
- # I01WD CameraTile
- -
- source: '/device/asus/I01WD/CameraTile/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # kuntao devicesettings
- -
- source: '/device/lenovo/kuntao/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oneplus sm8150-common camera helper
- -
- source: '/device/oneplus/sm8150-common/camera_helper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo common configpanel
- -
- source: '/device/oppo/common/configpanel/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung AdvancedDisplay
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # sony ModemConfig
- -
- source: '/hardware/sony/SonyOpenTelephony/ModemConfig/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # resources devicesettings
- -
- source: '/packages/resources/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FlipFlap
- -
- source: '/packages/apps/FlipFlap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # fmapp2
- -
- source: '/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
\ No newline at end of file
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/cm_strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Backgrounds/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Backgrounds/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cm_strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/plurals.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/strings.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Etar/res/values/arrays.xml",
+ "translation": "/packages/apps/Etar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Etar/res/values/strings.xml",
+ "translation": "/packages/apps/Etar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Exchange/res/values/strings.xml",
+ "translation": "/packages/apps/Exchange/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/cm_strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/codeaurora_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Jelly/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Jelly/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/plurals.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/strings.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Profiles/res/values/strings.xml",
+ "translation": "/packages/apps/Profiles/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Recorder/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Recorder/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SetupWizard/res/values/strings.xml",
+ "translation": "/packages/apps/SetupWizard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/qcomstrings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/quickReader/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/quickReader/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/arrays.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/strings.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Updater/res/values/strings.xml",
+ "translation": "/packages/apps/Updater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_plurals.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/BuiltInPrintService/res/values/lineage_strings.xml",
+ "translation": "/packages/services/BuiltInPrintService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Mms/res/values/cm_strings.xml",
+ "translation": "/packages/services/Mms/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/lineage/res/res/values/strings.xml",
+ "translation": "/lineage-sdk/lineage/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml",
+ "translation": "/lineage-sdk/packages/LineageSettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/asus/I01WD/CameraTile/res/values/strings.xml",
+ "translation": "/device/asus/I01WD/CameraTile/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/lenovo/kuntao/devicesettings/res/values/strings.xml",
+ "translation": "/device/lenovo/kuntao/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oneplus/sm8150-common/camera_helper/res/values/strings.xml",
+ "translation": "/device/oneplus/sm8150-common/camera_helper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/common/configpanel/res/values/strings.xml",
+ "translation": "/device/oppo/common/configpanel/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/arrays.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/strings.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/sony/SonyOpenTelephony/ModemConfig/res/values/strings.xml",
+ "translation": "/hardware/sony/SonyOpenTelephony/ModemConfig/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/resources/devicesettings/res/values/strings.xml",
+ "translation": "/packages/resources/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FlipFlap/res/values/strings.xml",
+ "translation": "/packages/apps/FlipFlap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/arrays.xml",
+ "translation": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/strings.xml",
+ "translation": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-17.1_aosp.yaml b/config/lineage-17.1_aosp.yaml
index b0c183e..924f5b1 100644
--- a/config/lineage-17.1_aosp.yaml
+++ b/config/lineage-17.1_aosp.yaml
@@ -4,7 +4,7 @@
# additional languages not supported by AOSP
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2020 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,681 +18,494 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_AOSP_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_17_1
-project_identifier: lineageos-aosp
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_17_1
+"project_id": 238011
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Arpitan - LineageOS
- frp: frp
- # Asturian - LineageOS
- ast: ast-rES
- # Breton - LineageOS
- br-FR: br-rFR
- # Esperanto - LineageOS
- eo: eo
- # Filipino - LineageOS
- fil: fil
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kashubian - LineageOS
- csb: csb
- # Kurdish - LineageOS
- ku: ku
- # Luxembourgish - LineageOS
- lb: lb
- # Occitan - LineageOS
- oc: oc
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Romansh - LineageOS
- rm-CH: rm
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Sundanese - LineageOS
- su: su
- # Uyghur - LineageOS
- ug: ug
- # Venetian - LineageOS
- vec: vec
- # Welsh - LineageOS
- cy: cy
-
- # BackupRestoreConfirmation
- -
- source: '/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CompanionDeviceManager
- -
- source: '/frameworks/base/packages/CompanionDeviceManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DefaultContainerService
- -
- source: '/frameworks/base/packages/DefaultContainerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExternalStorageProvider
- -
- source: '/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FusedLocation
- -
- source: '/frameworks/base/packages/FusedLocation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InputDevices
- -
- source: '/frameworks/base/packages/InputDevices/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MtpDocumentsProvider
- -
- source: '/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PrintSpooler
- -
- source: '/frameworks/base/packages/PrintSpooler/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsProvider
- -
- source: '/frameworks/base/packages/SettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Shell
- -
- source: '/frameworks/base/packages/Shell/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StatementService
- -
- source: '/frameworks/base/packages/StatementService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # VpnDialogs
- -
- source: '/frameworks/base/packages/VpnDialogs/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperCropper
- -
- source: '/frameworks/base/packages/WallpaperCropper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_pbap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Camera2/res_p/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CertInstaller
- -
- source: '/packages/apps/CertInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cities.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/DeskClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DocumentsUI
- -
- source: '/packages/apps/DocumentsUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Email
- -
- source: '/packages/apps/Email/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # EmergencyInfo
- -
- source: '/packages/apps/EmergencyInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExactCalculator
- -
- source: '/packages/apps/ExactCalculator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/filtershow_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HTMLViewer
- -
- source: '/packages/apps/HTMLViewer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # KeyChain
- -
- source: '/packages/apps/KeyChain/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ManagedProvisioning
- -
- source: '/packages/apps/ManagedProvisioning/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Messaging/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Nfc
- -
- source: '/packages/apps/Nfc/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PermissionController
- -
- source: '/packages/apps/PermissionController/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SafetyRegulatoryInfo
- -
- source: '/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StorageManager
- -
- source: '/packages/apps/StorageManager/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/StorageManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Tag
- -
- source: '/packages/apps/Tag/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ThemePicker
- -
- source: '/packages/apps/ThemePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/TvSettings/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UnifiedEmail
- -
- source: '/packages/apps/UnifiedEmail/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker2
- -
- source: '/packages/apps/WallpaperPicker2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Modules
-
- # CaptivePortalLogin
- -
- source: '/packages/modules/CaptivePortalLogin/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # BlockedNumberProvider
- -
- source: '/packages/providers/BlockedNumberProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BookmarkProvider
- -
- source: '/packages/providers/BookmarkProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CalendarProvider
- -
- source: '/packages/providers/CalendarProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CallLogProvider
- -
- source: '/packages/providers/CallLogProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsProvider
- -
- source: '/packages/providers/ContactsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/ui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MediaProvider
- -
- source: '/packages/providers/MediaProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TelephonyProvider
- -
- source: '/packages/providers/TelephonyProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvProvider
- -
- source: '/packages/providers/TvProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UserDictionaryProvider
- -
- source: '/packages/providers/UserDictionaryProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # Basic
- -
- source: '/packages/screensavers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # BuiltInPrintService
- -
- source: '/packages/services/BuiltInPrintService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/sip/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # LivePicker
- -
- source: '/packages/wallpapers/LivePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/BackupRestoreConfirmation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/CompanionDeviceManager/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/CompanionDeviceManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DefaultContainerService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DefaultContainerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/ExternalStorageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/FusedLocation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/FusedLocation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/InputDevices/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/InputDevices/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/MtpDocumentsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/PrintSpooler/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/PrintSpooler/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/arrays.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Shell/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Shell/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/StatementService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/StatementService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res-keyguard/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/VpnDialogs/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/VpnDialogs/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/WallpaperCropper/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/WallpaperCropper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_pbap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_sap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res_p/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res_p/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CertInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/CertInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cities.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/contacts/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/about/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/util/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DocumentsUI/res/values/strings.xml",
+ "translation": "/packages/apps/DocumentsUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Email/res/values/strings.xml",
+ "translation": "/packages/apps/Email/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/EmergencyInfo/res/values/strings.xml",
+ "translation": "/packages/apps/EmergencyInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ExactCalculator/res/values/strings.xml",
+ "translation": "/packages/apps/ExactCalculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/filtershow_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/HTMLViewer/res/values/strings.xml",
+ "translation": "/packages/apps/HTMLViewer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/KeyChain/res/values/strings.xml",
+ "translation": "/packages/apps/KeyChain/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ManagedProvisioning/res/values/strings.xml",
+ "translation": "/packages/apps/ManagedProvisioning/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/arrays.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Nfc/res/values/strings.xml",
+ "translation": "/packages/apps/Nfc/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PermissionController/res/values/strings.xml",
+ "translation": "/packages/apps/PermissionController/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml",
+ "translation": "/packages/apps/SafetyRegulatoryInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/arrays.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/strings.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Tag/res/values/strings.xml",
+ "translation": "/packages/apps/Tag/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ThemePicker/res/values/strings.xml",
+ "translation": "/packages/apps/ThemePicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/UnifiedEmail/res/values/strings.xml",
+ "translation": "/packages/apps/UnifiedEmail/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker2/res/values/strings.xml",
+ "translation": "/packages/apps/WallpaperPicker2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/modules/CaptivePortalLogin/res/values/strings.xml",
+ "translation": "/packages/modules/CaptivePortalLogin/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BlockedNumberProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BlockedNumberProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BookmarkProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BookmarkProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CalendarProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CalendarProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CallLogProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CallLogProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ContactsProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ContactsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/ui/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/ui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/MediaProvider/res/values/strings.xml",
+ "translation": "/packages/providers/MediaProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TelephonyProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TelephonyProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TvProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TvProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/UserDictionaryProvider/res/values/strings.xml",
+ "translation": "/packages/providers/UserDictionaryProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/Basic/res/values/strings.xml",
+ "translation": "/packages/screensavers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/BuiltInPrintService/res/values/strings.xml",
+ "translation": "/packages/services/BuiltInPrintService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/sip/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/sip/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/LivePicker/res/values/strings.xml",
+ "translation": "/packages/wallpapers/LivePicker/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-18.1.yaml b/config/lineage-18.1.yaml
index 0520786..df004f4 100644
--- a/config/lineage-18.1.yaml
+++ b/config/lineage-18.1.yaml
@@ -3,7 +3,7 @@
# Crowdin configuration file for LineageOS
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2021 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -17,549 +17,250 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_18_1
-project_identifier: lineageos
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_18_1
+"project_id": 237414
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Afrikaans
- af: af
- # Albanian
- sq: sq
- # Amharic
- am: am
- # Arabic
- ar: ar
- # Armenian
- hy-AM: hy
- # Arpitan - LineageOS
- frp: frp
- # Assamese
- as: as
- # Asturian - LineageOS
- ast: ast-rES
- # Azerbaijani
- az: az
- # Basque
- eu: eu
- # Belarusian
- be: be
- # Bengali
- bn: bn
- # Bosnian
- bs: bs
- # Breton - LineageOS
- br-FR: br-rFR
- # Bulgarian
- bg: bg
- # Burmese
- my: my
- # Catalan
- ca: ca
- # Chinese Simplified
- zh-CN: zh-rCN
- # Chinese Traditional
- zh-TW: zh-rTW
- # Chinese Traditional, Hong Kong
- zh-HK: zh-rHK
- # Croatian
- hr: hr
- # Czech
- cs: cs
- # Danish
- da: da
- # Dutch
- nl: nl
- # English, Australia
- en-AU: en-rAU
- # English, Canada
- en-CA: en-rCA
- # English, India
- en-IN: en-rIN
- # English, United Kingdom
- en-GB: en-rGB
- # Esperanto - LineageOS
- eo: eo
- # Estonian
- et: et
- # Filipino - LineageOS
- fil: fil
- # Finnish
- fi: fi
- # French
- fr: fr
- # French, Canada
- fr-CA: fr-rCA
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Galician
- gl: gl
- # Georgian
- ka: ka
- # German
- de: de
- # Greek
- el: el
- # Gujarati
- gu-IN: gu
- # Hebrew
- he: iw
- # Hindi
- hi: hi
- # Hungarian
- hu: hu
- # Icelandic
- is: is
- # Indonesian
- id: in
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Italian
- it: it
- # Japanese
- ja: ja
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kannada
- kn: kn
- # Kashubian - LineageOS
- csb: csb
- # Kazakh
- kk: kk
- # Khmer
- km: km
- # Korean
- ko: ko
- # Kurdish - LineageOS
- ku: ku
- # Kyrgyz
- ky: ky
- # Lao
- lo: lo
- # Latvian
- lv: lv
- # Lithuanian
- lt: lt
- # Luxembourgish - LineageOS
- lb: lb
- # Macedonian (FYROM)
- mk: mk
- # Malay
- ms: ms
- # Malayalam
- ml-IN: ml
- # Marathi
- mr: mr
- # Mongolian
- mn: mn
- # Nepali
- ne-NP: ne
- # Norwegian Bokmal
- nb: nb
- # Occitan - LineageOS
- oc: oc
- # Oriya
- or: or
- # Persian
- fa: fa
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Polish
- pl: pl
- # Portuguese
- pt-PT: pt-rPT
- # Portuguese, Brazilian
- pt-BR: pt-rBR
- # Punjabi
- pa-IN: pa
- # Romanian
- ro: ro
- # Romansh - LineageOS
- rm-CH: rm
- # Russian
- ru: ru
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Serbian (Cyrillic)
- sr: sr
- # Serbian (Latin)
- sr-CS: b+sr+Latn
- # Sinhala
- si-LK: si
- # Slovak
- sk: sk
- # Slovenian
- sl: sl
- # Spanish
- es-ES: es
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Spanish, United States
- es-US: es-rUS
- # Sundanese - LineageOS
- su: su
- # Swahili
- sw: sw
- # Swedish
- sv-SE: sv
- # Tagalog
- tl: tl
- # Tamil
- ta: ta
- # Telugu
- te: te
- # Thai
- th: th
- # Turkish
- tr: tr
- # Ukrainian
- uk: uk
- # Urdu (Pakistan)
- ur-PK: ur
- # Uyghur - LineageOS
- ug: ug
- # Uzbek
- uz: uz
- # Venetian - LineageOS
- vec: vec
- # Vietnamese
- vi: vi
- # Welsh - LineageOS
- cy: cy
- # Zulu
- zu: zu
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Backgrounds
- -
- source: '/packages/apps/Backgrounds/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/helplines/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/helplines/res/values/helpline_categories.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Eleven
- -
- source: '/packages/apps/Eleven/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Eleven/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Etar
- -
- source: '/packages/apps/Etar/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Etar/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FMRadio
- -
- source: '/packages/apps/FMRadio/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/FMRadio/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/codeaurora_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Jelly
- -
- source: '/packages/apps/Jelly/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageParts
- -
- source: '/packages/apps/LineageParts/res/values/plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/LineageParts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Profiles
- -
- source: '/packages/apps/Profiles/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Recorder
- -
- source: '/packages/apps/Recorder/app/src/main/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SetupWizard
- -
- source: '/packages/apps/SetupWizard/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Snap
- -
- source: '/packages/apps/Snap/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/qcomstrings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Snap/quickReader/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Terminal
- -
- source: '/packages/apps/Terminal/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Terminal/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/lineage_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Updater
- -
- source: '/packages/apps/Updater/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_plurals.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # Mms
- -
- source: '/packages/services/Mms/res/values/cm_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Lineage SDK
-
- # Lineage SDK
- -
- source: '/lineage-sdk/lineage/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # LineageSettingsProvider
- -
- source: '/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Device specific
-
- # kuntao devicesettings
- -
- source: '/device/lenovo/kuntao/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oneplus sm8150-common camera helper
- -
- source: '/device/oneplus/sm8150-common/camera_helper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # oppo common configpanel
- -
- source: '/device/oppo/common/configpanel/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # samsung AdvancedDisplay
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/hardware/samsung/AdvancedDisplay/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # sony ModemConfig
- -
- source: '/hardware/sony/SonyOpenTelephony/ModemConfig/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ElmyraService
- -
- source: '/packages/apps/ElmyraService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # resources devicesettings
- -
- source: '/packages/resources/devicesettings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FlipFlap
- -
- source: '/packages/apps/FlipFlap/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # fmapp2
- -
- source: '/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
\ No newline at end of file
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/cm_strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/cm_strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Backgrounds/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Backgrounds/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cm_strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_arrays.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callstats/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/helplines/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/helplines/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/helplines/res/values/helpline_categories.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/helplines/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/lookup/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/plurals.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Eleven/res/values/strings.xml",
+ "translation": "/packages/apps/Eleven/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Etar/res/values/arrays.xml",
+ "translation": "/packages/apps/Etar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Etar/res/values/strings.xml",
+ "translation": "/packages/apps/Etar/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/cm_strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FMRadio/res/values/strings.xml",
+ "translation": "/packages/apps/FMRadio/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/codeaurora_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Jelly/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Jelly/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/plurals.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/LineageParts/res/values/strings.xml",
+ "translation": "/packages/apps/LineageParts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Profiles/res/values/strings.xml",
+ "translation": "/packages/apps/Profiles/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Recorder/app/src/main/res/values/strings.xml",
+ "translation": "/packages/apps/Recorder/app/src/main/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_plurals.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SetupWizard/res/values/strings.xml",
+ "translation": "/packages/apps/SetupWizard/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/cm_strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/qcomstrings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Snap/quickReader/res/values/strings.xml",
+ "translation": "/packages/apps/Snap/quickReader/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/arrays.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Terminal/res/values/strings.xml",
+ "translation": "/packages/apps/Terminal/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/lineage_strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Updater/res/values/strings.xml",
+ "translation": "/packages/apps/Updater/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/cm_strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_plurals.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/cm_strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Mms/res/values/cm_strings.xml",
+ "translation": "/packages/services/Mms/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/lineage/res/res/values/strings.xml",
+ "translation": "/lineage-sdk/lineage/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/lineage-sdk/packages/LineageSettingsProvider/res/values/strings.xml",
+ "translation": "/lineage-sdk/packages/LineageSettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/lenovo/kuntao/devicesettings/res/values/strings.xml",
+ "translation": "/device/lenovo/kuntao/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oneplus/sm8150-common/camera_helper/res/values/strings.xml",
+ "translation": "/device/oneplus/sm8150-common/camera_helper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/device/oppo/common/configpanel/res/values/strings.xml",
+ "translation": "/device/oppo/common/configpanel/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/arrays.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/samsung/AdvancedDisplay/res/values/strings.xml",
+ "translation": "/hardware/samsung/AdvancedDisplay/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/hardware/sony/SonyOpenTelephony/ModemConfig/res/values/strings.xml",
+ "translation": "/hardware/sony/SonyOpenTelephony/ModemConfig/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ElmyraService/res/values/strings.xml",
+ "translation": "/packages/apps/ElmyraService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/resources/devicesettings/res/values/strings.xml",
+ "translation": "/packages/resources/devicesettings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/FlipFlap/res/values/strings.xml",
+ "translation": "/packages/apps/FlipFlap/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/arrays.xml",
+ "translation": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values/strings.xml",
+ "translation": "/vendor/qcom/opensource/fm-commonsys/fmapp2/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/config/lineage-18.1_aosp.yaml b/config/lineage-18.1_aosp.yaml
index 6b40b02..25d359e 100644
--- a/config/lineage-18.1_aosp.yaml
+++ b/config/lineage-18.1_aosp.yaml
@@ -4,7 +4,7 @@
# additional languages not supported by AOSP
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2021 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -18,669 +18,486 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-api_key_env: LINEAGE_AOSP_CROWDIN_API_KEY
-base_path_env: LINEAGE_CROWDIN_BASE_PATH_LINEAGE_18_1
-project_identifier: lineageos-aosp
-preserve_hierarchy: true
+"api_token_env": LINEAGE_CROWDIN_API_TOKEN
+"base_path_env": LINEAGE_CROWDIN_BASE_PATH_LINEAGE_18_1
+"project_id": 238011
+"preserve_hierarchy": true
-files:
-# Frameworks
-
- # framework-res
- -
- source: '/frameworks/base/core/res/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: &anchor
- android_code:
- # Arpitan - LineageOS
- frp: frp
- # Asturian - LineageOS
- ast: ast-rES
- # Breton - LineageOS
- br-FR: br-rFR
- # Esperanto - LineageOS
- eo: eo
- # Filipino - LineageOS
- fil: fil
- # Frisian - LineageOS
- fy-NL: fy-rNL
- # Irish - LineageOS
- ga-IE: ga-rIE
- # Kabyle - LineageOS
- kab: kab-rDZ
- # Kashubian - LineageOS
- csb: csb
- # Kurdish - LineageOS
- ku: ku
- # Luxembourgish - LineageOS
- lb: lb
- # Occitan - LineageOS
- oc: oc
- # Pirate English - LineageOS
- en-PT: en-rPT
- # Romansh - LineageOS
- rm-CH: rm
- # Sardinian - LineageOS
- sc: sc-rIT
- # Scottish Gaelic - LineageOS
- gd: gd
- # Spanish, Colombia - LineageOS
- es-CO: es-rCO
- # Spanish, Mexico - LineageOS
- es-MX: es-rMX
- # Sundanese - LineageOS
- su: su
- # Uyghur - LineageOS
- ug: ug
- # Venetian - LineageOS
- vec: vec
- # Welsh - LineageOS
- cy: cy
-
- # BackupRestoreConfirmation
- -
- source: '/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CompanionDeviceManager
- -
- source: '/frameworks/base/packages/CompanionDeviceManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DefaultContainerService
- -
- source: '/frameworks/base/packages/DefaultContainerService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExternalStorageProvider
- -
- source: '/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # FusedLocation
- -
- source: '/frameworks/base/packages/FusedLocation/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # InputDevices
- -
- source: '/frameworks/base/packages/InputDevices/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MtpDocumentsProvider
- -
- source: '/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PrintSpooler
- -
- source: '/frameworks/base/packages/PrintSpooler/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsLib
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SettingsLib/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SettingsProvider
- -
- source: '/frameworks/base/packages/SettingsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Shell
- -
- source: '/frameworks/base/packages/Shell/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StatementService
- -
- source: '/frameworks/base/packages/StatementService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SystemUI
- -
- source: '/frameworks/base/packages/SystemUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # VpnDialogs
- -
- source: '/frameworks/base/packages/VpnDialogs/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperCropper
- -
- source: '/frameworks/base/packages/WallpaperCropper/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Packages
-
- # AudioFX
- -
- source: '/packages/apps/AudioFX/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Bluetooth
- -
- source: '/packages/apps/Bluetooth/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_pbap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Bluetooth/res/values/strings_sap.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Camera2
- -
- source: '/packages/apps/Camera2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Camera2/res_p/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CellBroadcastReceiver
- -
- source: '/packages/apps/CellBroadcastReceiver/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CertInstaller
- -
- source: '/packages/apps/CertInstaller/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Contacts
- -
- source: '/packages/apps/Contacts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DeskClock
- -
- source: '/packages/apps/DeskClock/res/values/cities.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/DeskClock/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Dialer
- -
- source: '/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DocumentsUI
- -
- source: '/packages/apps/DocumentsUI/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # EmergencyInfo
- -
- source: '/packages/apps/EmergencyInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ExactCalculator
- -
- source: '/packages/apps/ExactCalculator/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Gallery2
- -
- source: '/packages/apps/Gallery2/res/values/filtershow_strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Gallery2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # HTMLViewer
- -
- source: '/packages/apps/HTMLViewer/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # KeyChain
- -
- source: '/packages/apps/KeyChain/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ManagedProvisioning
- -
- source: '/packages/apps/ManagedProvisioning/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Messaging
- -
- source: '/packages/apps/Messaging/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Messaging/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Nfc
- -
- source: '/packages/apps/Nfc/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PermissionController
- -
- source: '/packages/apps/PermissionController/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhoneCommon
- -
- source: '/packages/apps/PhoneCommon/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # SafetyRegulatoryInfo
- -
- source: '/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Settings
- -
- source: '/packages/apps/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Stk
- -
- source: '/packages/apps/Stk/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # StorageManager
- -
- source: '/packages/apps/StorageManager/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/StorageManager/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Tag
- -
- source: '/packages/apps/Tag/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ThemePicker
- -
- source: '/packages/apps/ThemePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Trebuchet
- -
- source: '/packages/apps/Trebuchet/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvSettings
- -
- source: '/packages/apps/TvSettings/Settings/res/values/arrays.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/apps/TvSettings/Settings/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # WallpaperPicker2
- -
- source: '/packages/apps/WallpaperPicker2/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Input methods
-
- # LatinIME
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/inputmethods/LatinIME/java/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Modules
-
- # CaptivePortalLogin
- -
- source: '/packages/modules/CaptivePortalLogin/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Providers
-
- # BlockedNumberProvider
- -
- source: '/packages/providers/BlockedNumberProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # BookmarkProvider
- -
- source: '/packages/providers/BookmarkProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CalendarProvider
- -
- source: '/packages/providers/CalendarProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # CallLogProvider
- -
- source: '/packages/providers/CallLogProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # ContactsProvider
- -
- source: '/packages/providers/ContactsProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # DownloadProvider
- -
- source: '/packages/providers/DownloadProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/providers/DownloadProvider/ui/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # MediaProvider
- -
- source: '/packages/providers/MediaProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TelephonyProvider
- -
- source: '/packages/providers/TelephonyProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # TvProvider
- -
- source: '/packages/providers/TvProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # UserDictionaryProvider
- -
- source: '/packages/providers/UserDictionaryProvider/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Screensavers
-
- # Basic
- -
- source: '/packages/screensavers/Basic/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # PhotoTable
- -
- source: '/packages/screensavers/PhotoTable/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Services
-
- # BuiltInPrintService
- -
- source: '/packages/services/BuiltInPrintService/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telecomm
- -
- source: '/packages/services/Telecomm/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
- # Telephony
- -
- source: '/packages/services/Telephony/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
- -
- source: '/packages/services/Telephony/sip/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
-
-# Wallpapers
-
- # LivePicker
- -
- source: '/packages/wallpapers/LivePicker/res/values/strings.xml'
- translation: '/%original_path%-%android_code%/%original_file_name%'
- languages_mapping: *anchor
+"files": [
+ {
+ "source": "/frameworks/base/core/res/res/values/strings.xml",
+ "translation": "/frameworks/base/core/res/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/BackupRestoreConfirmation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/BackupRestoreConfirmation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/CompanionDeviceManager/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/CompanionDeviceManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/DefaultContainerService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/DefaultContainerService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/ExternalStorageProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/ExternalStorageProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/FusedLocation/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/FusedLocation/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/InputDevices/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/InputDevices/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/MtpDocumentsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/MtpDocumentsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/PrintSpooler/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/PrintSpooler/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/arrays.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsLib/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsLib/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SettingsProvider/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SettingsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/Shell/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/Shell/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/StatementService/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/StatementService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/SystemUI/res-keyguard/values/strings.xml",
+ "translation": "/frameworks/base/packages/SystemUI/res-keyguard/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/VpnDialogs/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/VpnDialogs/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/frameworks/base/packages/WallpaperCropper/res/values/strings.xml",
+ "translation": "/frameworks/base/packages/WallpaperCropper/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/AudioFX/res/values/strings.xml",
+ "translation": "/packages/apps/AudioFX/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_pbap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Bluetooth/res/values/strings_sap.xml",
+ "translation": "/packages/apps/Bluetooth/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Camera2/res_p/values/strings.xml",
+ "translation": "/packages/apps/Camera2/res_p/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CellBroadcastReceiver/res/values/strings.xml",
+ "translation": "/packages/apps/CellBroadcastReceiver/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/CertInstaller/res/values/strings.xml",
+ "translation": "/packages/apps/CertInstaller/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Contacts/res/values/strings.xml",
+ "translation": "/packages/apps/Contacts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/cities.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DeskClock/res/values/strings.xml",
+ "translation": "/packages/apps/DeskClock/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/contacts/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/contacts/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/about/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/about/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/app/voicemail/error/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/blocking/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/cameraui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/callcomposer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calldetails/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/calllogutils/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/common/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/common/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/dialpadview/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/enrichedcall/simulator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/interactions/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/main/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/notification/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/phonenumberutil/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/postcall/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/searchfragment/nearbyplaces/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/shortcuts/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/speeddial/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/theme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/util/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/util/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/voicemailstatus/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/dialer/widget/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/answermethod/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/hint/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/answer/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/audioroute/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/commontheme/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/contactgrid/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/disconnectdialog/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/hold/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/incall/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/sessiondata/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/telecomeventui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/incallui/video/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/configui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values/strings.xml",
+ "translation": "/packages/apps/Dialer/java/com/android/voicemail/impl/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/DocumentsUI/res/values/strings.xml",
+ "translation": "/packages/apps/DocumentsUI/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/EmergencyInfo/res/values/strings.xml",
+ "translation": "/packages/apps/EmergencyInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ExactCalculator/res/values/strings.xml",
+ "translation": "/packages/apps/ExactCalculator/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/filtershow_strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Gallery2/res/values/strings.xml",
+ "translation": "/packages/apps/Gallery2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/HTMLViewer/res/values/strings.xml",
+ "translation": "/packages/apps/HTMLViewer/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/KeyChain/res/values/strings.xml",
+ "translation": "/packages/apps/KeyChain/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ManagedProvisioning/res/values/strings.xml",
+ "translation": "/packages/apps/ManagedProvisioning/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/arrays.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Messaging/res/values/strings.xml",
+ "translation": "/packages/apps/Messaging/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Nfc/res/values/strings.xml",
+ "translation": "/packages/apps/Nfc/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PermissionController/res/values/strings.xml",
+ "translation": "/packages/apps/PermissionController/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/PhoneCommon/res/values/strings.xml",
+ "translation": "/packages/apps/PhoneCommon/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/SafetyRegulatoryInfo/res/values/strings.xml",
+ "translation": "/packages/apps/SafetyRegulatoryInfo/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Stk/res/values/strings.xml",
+ "translation": "/packages/apps/Stk/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/arrays.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/StorageManager/res/values/strings.xml",
+ "translation": "/packages/apps/StorageManager/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Tag/res/values/strings.xml",
+ "translation": "/packages/apps/Tag/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/ThemePicker/res/values/strings.xml",
+ "translation": "/packages/apps/ThemePicker/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/Trebuchet/res/values/strings.xml",
+ "translation": "/packages/apps/Trebuchet/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/arrays.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/TvSettings/Settings/res/values/strings.xml",
+ "translation": "/packages/apps/TvSettings/Settings/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/apps/WallpaperPicker2/res/values/strings.xml",
+ "translation": "/packages/apps/WallpaperPicker2/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-action-keys.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-appname.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-config-important-notice.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-emoji-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-letter-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings-talkback-descriptions.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/inputmethods/LatinIME/java/res/values/strings.xml",
+ "translation": "/packages/inputmethods/LatinIME/java/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/modules/CaptivePortalLogin/res/values/strings.xml",
+ "translation": "/packages/modules/CaptivePortalLogin/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BlockedNumberProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BlockedNumberProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/BookmarkProvider/res/values/strings.xml",
+ "translation": "/packages/providers/BookmarkProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CalendarProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CalendarProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/CallLogProvider/res/values/strings.xml",
+ "translation": "/packages/providers/CallLogProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/ContactsProvider/res/values/strings.xml",
+ "translation": "/packages/providers/ContactsProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/DownloadProvider/ui/res/values/strings.xml",
+ "translation": "/packages/providers/DownloadProvider/ui/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/MediaProvider/res/values/strings.xml",
+ "translation": "/packages/providers/MediaProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TelephonyProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TelephonyProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/TvProvider/res/values/strings.xml",
+ "translation": "/packages/providers/TvProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/providers/UserDictionaryProvider/res/values/strings.xml",
+ "translation": "/packages/providers/UserDictionaryProvider/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/Basic/res/values/strings.xml",
+ "translation": "/packages/screensavers/Basic/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/screensavers/PhotoTable/res/values/strings.xml",
+ "translation": "/packages/screensavers/PhotoTable/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/BuiltInPrintService/res/values/strings.xml",
+ "translation": "/packages/services/BuiltInPrintService/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telecomm/res/values/strings.xml",
+ "translation": "/packages/services/Telecomm/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/services/Telephony/sip/res/values/strings.xml",
+ "translation": "/packages/services/Telephony/sip/res/values-%android_code%/%original_file_name%"
+ },
+ {
+ "source": "/packages/wallpapers/LivePicker/res/values/strings.xml",
+ "translation": "/packages/wallpapers/LivePicker/res/values-%android_code%/%original_file_name%"
+ }
+]
diff --git a/crowdin_sync.py b/crowdin_sync.py
index b72dd02..3cb4ec1 100755
--- a/crowdin_sync.py
+++ b/crowdin_sync.py
@@ -6,7 +6,7 @@
# directly to LineageOS' Gerrit.
#
# Copyright (C) 2014-2016 The CyanogenMod Project
-# Copyright (C) 2017-2020 The LineageOS Project
+# Copyright (C) 2017-2022 The LineageOS Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@@ -23,6 +23,7 @@
# ################################# IMPORTS ################################## #
import argparse
+import itertools
import json
import git
import os
@@ -30,7 +31,8 @@
import shutil
import subprocess
import sys
-import yaml
+import time
+import threading
from lxml import etree
from signal import signal, SIGINT
@@ -39,11 +41,13 @@
_DIR = os.path.dirname(os.path.realpath(__file__))
_COMMITS_CREATED = False
+_DONE = False
# ################################ FUNCTIONS ################################# #
-def run_subprocess(cmd, silent=False):
+def run_subprocess(cmd, silent=False, show_spinner=False):
+ t = start_spinner(show_spinner)
p = subprocess.Popen(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
universal_newlines=True)
comm = p.communicate()
@@ -55,81 +59,66 @@
"stdout: %s\n"
"stderr: %s" % (cmd, exit_code, comm[0], comm[1]),
file=sys.stderr)
+ stop_spinner(t)
return comm, exit_code
-def add_target_paths(config_files, repo, base_path, project_path):
- # Add or remove the files given in the config files to the commit
- count = 0
- file_paths = []
- for f in config_files:
- fh = open(f, "r")
- try:
- config = yaml.safe_load(fh)
- for tf in config['files']:
- if project_path in tf['source']:
- target_path = tf['translation']
- lang_codes = tf['languages_mapping']['android_code']
- for l in lang_codes:
- lpath = get_target_path(tf['translation'], tf['source'],
- lang_codes[l], project_path)
- file_paths.append(lpath)
- except yaml.YAMLError as e:
- print(e, '\n Could not parse YAML.')
- exit()
- fh.close()
+def start_spinner(show_spinner):
+ global _DONE
+ _DONE = False
+ if not show_spinner:
+ return None
+ t = threading.Thread(target=spin_cursor)
+ t.start()
+ return t
- # Strip all comments
- for f in file_paths:
- clean_xml_file(base_path, project_path, f, repo)
+
+def stop_spinner(t):
+ global _DONE
+ if t is None:
+ return
+ _DONE = True
+ t.join(1)
+
+
+def spin_cursor():
+ global _DONE
+ spinner = itertools.cycle([".", "..", "...", "....", "....."])
+ while not _DONE:
+ sys.stdout.write("\x1b[1K\r")
+ output = next(spinner)
+ sys.stdout.write(output)
+ sys.stdout.flush()
+ time.sleep(0.5)
+ sys.stdout.write("\x1b[1K\r ")
+
+
+def add_to_commit(extracted_files, repo, project_path):
+ # Add or remove the files extracted by the download command to the commit
+ count = 0
# Modified and untracked files
modified = repo.git.ls_files(m=True, o=True)
- for m in modified.split('\n'):
- if m in file_paths:
+ for m in modified.split("\n"):
+ path = os.path.join(project_path, m)
+ if path in extracted_files:
repo.git.add(m)
count += 1
deleted = repo.git.ls_files(d=True)
- for d in deleted.split('\n'):
- if d in file_paths:
+ for d in deleted.split("\n"):
+ path = os.path.join(project_path, d)
+ if path in extracted_files:
repo.git.rm(d)
count += 1
return count
-def split_path(path):
- # Split the given string to path and filename
- if '/' in path:
- original_file_name = path[1:][path.rfind("/"):]
- original_path = path[:path.rfind("/")]
- else:
- original_file_name = path
- original_path = ''
-
- return original_path, original_file_name
-
-
-def get_target_path(pattern, source, lang, project_path):
- # Make strings like '/%original_path%-%android_code%/%original_file_name%' valid file paths
- # based on the source string's path
- original_path, original_file_name = split_path(source)
-
- target_path = pattern #.lstrip('/')
- target_path = target_path.replace('%original_path%', original_path)
- target_path = target_path.replace('%android_code%', lang)
- target_path = target_path.replace('%original_file_name%', original_file_name)
- target_path = target_path.replace(project_path, '')
- target_path = target_path.lstrip('/')
- return target_path
-
-
-def clean_xml_file(base_path, project_path, filename, repo):
- path = base_path + '/' + project_path + '/' + filename
-
+def clean_xml_file(path, repo):
# We don't want to create every file, just work with those already existing
if not os.path.isfile(path):
+ print(f"Called clean_xml_file, but not a file: {path}")
return
try:
@@ -150,7 +139,7 @@
try:
tree = etree.fromstring(XML)
except etree.XMLSyntaxError as err:
- print(f'{filename}: XML Error: {err.error_log}')
+ print(f'{path}: XML Error: {err.error_log}')
filename, ext = os.path.splitext(path)
if ext == '.xml':
reset_file(path, repo)
@@ -219,6 +208,12 @@
if len(contentList) == 0:
print(f'\nRemoving {path}')
os.remove(path)
+ # If that was the last file in the folder, we need to remove the folder as well
+ dir_name = os.path.dirname(path)
+ if os.path.isdir(dir_name):
+ if not os.listdir(dir_name):
+ print(f"Removing {dir_name}")
+ os.rmdir(dir_name)
# For files we can't process due to errors, create a backup
@@ -249,22 +244,25 @@
repo.git.checkout(filepath)
-def push_as_commit(config_files, base_path, path, name, branch, username):
+def push_as_commit(extracted_files, base_path, project_path, project_name, branch, username):
global _COMMITS_CREATED
- print(f'\nCommitting {name} on branch {branch}: ', end='')
+ print(f'\nCommitting {project_name} on branch {branch}: ')
# Get path
- project_path = path
- path = os.path.join(base_path, path)
+ path = os.path.join(base_path, project_path)
if not path.endswith('.git'):
path = os.path.join(path, '.git')
# Create repo object
repo = git.Repo(path)
- # Add all files to commit
- count = add_target_paths(config_files, repo, base_path, project_path)
+ # Strip all comments, find incomplete product strings and remove empty files
+ for f in extracted_files:
+ if f.startswith(project_path):
+ clean_xml_file(os.path.join(base_path, f), repo)
+ # Add all files to commit
+ count = add_to_commit(extracted_files, repo, project_path)
if count == 0:
print('Nothing to commit')
return
@@ -278,9 +276,9 @@
# Push commit
try:
- repo.git.push(f'ssh://{username}@review.lineageos.org:29418/{name}',
+ repo.git.push(f'ssh://{username}@review.lineageos.org:29418/{project_name}',
f'HEAD:refs/for/{branch}%topic=translation')
- print('Success')
+ print('Successfully pushed!')
except Exception as e:
print(e, '\nFailed to push!', file=sys.stderr)
return
@@ -411,92 +409,58 @@
# ################################### MAIN ################################### #
-
-def upload_sources_crowdin(branch, config, crowdin_path):
- if config:
- print('\nUploading sources to Crowdin (custom config)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{config}',
- 'upload', 'sources', f'--branch={branch}'])
- else:
- print('\nUploading sources to Crowdin (AOSP supported languages)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{branch}.yaml',
- 'upload', 'sources', f'--branch={branch}'])
-
- print('\nUploading sources to Crowdin (non-AOSP supported languages)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{branch}_aosp.yaml',
- 'upload', 'sources', f'--branch={branch}'])
-
-
-def upload_translations_crowdin(branch, config, crowdin_path):
- if config:
- print('\nUploading translations to Crowdin (custom config)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{config}',
- 'upload', 'translations', f'--branch={branch}',
- '--no-import-duplicates', '--import-eq-suggestions',
- '--auto-approve-imported'])
- else:
- print('\nUploading translations to Crowdin '
- '(AOSP supported languages)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{branch}.yaml',
- 'upload', 'translations', f'--branch={branch}',
- '--no-import-duplicates', '--import-eq-suggestions',
- '--auto-approve-imported'])
-
- print('\nUploading translations to Crowdin '
- '(non-AOSP supported languages)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{branch}_aosp.yaml',
- 'upload', 'translations', f'--branch={branch}',
- '--no-import-duplicates', '--import-eq-suggestions',
- '--auto-approve-imported'])
-
-
-def download_crowdin(base_path, branch, xml, username, config, crowdin_path):
- if config:
- print('\nDownloading translations from Crowdin (custom config)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{config}',
- 'download', '--branch=%s' % branch])
- else:
- print('\nDownloading translations from Crowdin '
- '(AOSP supported languages)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{branch}.yaml',
- 'download', f'--branch={branch}'])
-
- print('\nDownloading translations from Crowdin '
- '(non-AOSP supported languages)')
- check_run([crowdin_path,
- f'--config={_DIR}/config/{branch}_aosp.yaml',
- 'download', f'--branch={branch}'])
-
- print('\nCreating a list of pushable translations')
- # Get all files that Crowdin pushed
- paths = []
- if config:
- files = [f'{_DIR}/config/{config}']
- else:
- files = [f'{_DIR}/config/{branch}.yaml',
- f'{_DIR}/config/{branch}_aosp.yaml']
- for c in files:
- cmd = [crowdin_path, f'--config={c}', 'list', 'project',
- f'--branch={branch}']
- comm, ret = run_subprocess(cmd)
+def upload_sources_crowdin(branch, config_dict, crowdin_path):
+ global _COMMITS_CREATED
+ for i, cfg in enumerate(config_dict["files"]):
+ print(f"\nUploading sources to Crowdin ({config_dict['headers'][i]})")
+ cmd = [
+ crowdin_path,
+ 'upload', 'sources', f'--branch={branch}',
+ f'--config={cfg}',
+ ]
+ comm, ret = run_subprocess(cmd, show_spinner=True)
if ret != 0:
- sys.exit(ret)
- for p in str(comm[0]).split("\n"):
- paths.append(p.replace(f'/{branch}', ''))
+ print(f"Failed to upload:\n{comm[1]}", file=sys.stderr)
+ sys.exit(1)
+ _COMMITS_CREATED = True
- print('\nUploading translations to Gerrit')
+
+def upload_translations_crowdin(branch, config_dict, crowdin_path):
+ for i, cfg in enumerate(config_dict["files"]):
+ print(f"\nUploading translations to Crowdin ({config_dict['headers'][i]})")
+ cmd = [
+ crowdin_path,
+ 'upload', 'translations', f'--branch={branch}',
+ '--no-import-duplicates', '--import-eq-suggestions',
+ '--auto-approve-imported',
+ f'--config={cfg}',
+ ]
+ comm, ret = run_subprocess(cmd, show_spinner=True)
+ if ret != 0:
+ print(f"Failed to upload:\n{comm[1]}", file=sys.stderr)
+ sys.exit(1)
+
+
+def download_crowdin(base_path, branch, xml, username, config_dict, crowdin_path):
+ extracted = []
+ for i, cfg in enumerate(config_dict["files"]):
+ print(f"\nDownloading translations from Crowdin ({config_dict['headers'][i]})")
+ cmd = [crowdin_path, "download", f"--branch={branch}", f"--config={cfg}"]
+ comm, ret = run_subprocess(cmd, show_spinner=True)
+ if ret != 0:
+ print(f"Failed to download:\n{comm[1]}", file=sys.stderr)
+ sys.exit(1)
+ extracted += get_extracted_files(comm[0], branch)
+
+ upload_translations_gerrit(extracted, xml, base_path, branch, username)
+
+
+def upload_translations_gerrit(extracted, xml, base_path, branch, username):
+ print("\nUploading translations to Gerrit")
items = [x for xmlfile in xml for x in xmlfile.findall("//project")]
all_projects = []
- for path in paths:
+ for path in extracted:
path = path.strip()
if not path:
continue
@@ -509,60 +473,75 @@
# but there are special cases where /res is part of the repo name as well
parts = path.split("/res")
if len(parts) == 2:
- result = parts[0]
+ project_path = parts[0]
elif len(parts) == 3:
- result = parts[0] + '/res' + parts[1]
+ project_path = parts[0] + "/res" + parts[1]
else:
print(f'WARNING: Splitting the path not successful for [{path}], skipping')
continue
- result = result.strip('/')
- if result == path.strip('/'):
- print(f'WARNING: Cannot determine project root dir of [{path}], skipping.')
+ project_path = project_path.strip("/")
+ if project_path == path.strip("/"):
+ print(f"WARNING: Cannot determine project root dir of [{path}], skipping.")
continue
- if result in all_projects:
+ if project_path in all_projects:
continue
# When a project has multiple translatable files, Crowdin will
# give duplicates.
# We don't want that (useless empty commits), so we save each
# project in all_projects and check if it's already in there.
- all_projects.append(result)
+ all_projects.append(project_path)
# Search android/default.xml or config/%(branch)_extra_packages.xml
# for the project's name
- resultPath = None
- resultProject = None
+ result_path = None
+ result_project = None
for project in items:
- path = project.get('path')
- if not (result + '/').startswith(path +'/'):
+ path = project.get("path")
+ if not (project_path + "/").startswith(path + "/"):
continue
# We want the longest match, so projects in subfolders of other projects are also
# taken into account
- if resultPath is None or len(path) > len(resultPath):
- resultPath = path
- resultProject = project
+ if result_path is None or len(path) > len(result_path):
+ result_path = path
+ result_project = project
# Just in case no project was found
- if resultPath is None:
+ if result_path is None:
continue
- if result != resultPath:
- if resultPath in all_projects:
+ if project_path != result_path:
+ if result_path in all_projects:
continue
- result = resultPath
- all_projects.append(result)
+ project_path = result_path
+ all_projects.append(project_path)
- br = resultProject.get('revision') or branch
+ branch = result_project.get("revision") or branch
+ project_name = result_project.get("name")
- push_as_commit(files, base_path, result,
- resultProject.get('name'), br, username)
+ push_as_commit(extracted, base_path, project_path,
+ project_name, branch, username)
+
+
+def get_extracted_files(comm, branch):
+ # Get all files that Crowdin pushed
+ # We need to manually parse the shell output
+ extracted = []
+ for p in comm.split("\n"):
+ if "Extracted" in p:
+ path = re.sub(r".*Extracted:\s*", "", p)
+ path = path.replace("'", "").replace(f"/{branch}", "")
+ extracted.append(path)
+ return extracted
def sig_handler(signal_received, frame):
+ global _DONE
print('')
print('SIGINT or CTRL-C detected. Exiting gracefully')
+ _DONE = True
exit(0)
@@ -611,12 +590,20 @@
else:
xml_files = (xml_android, xml_extra)
+ config_dict = {}
if args.config:
- files = [f'{_DIR}/config/{args.config}']
+ config_dict["headers"] = ["custom config"]
+ config_dict["files"] = [f"{_DIR}/config/{args.config}"]
else:
- files = [f'{_DIR}/config/{default_branch}.yaml',
- f'{_DIR}/config/{default_branch}_aosp.yaml']
- if not check_files(files):
+ config_dict["headers"] = [
+ "AOSP supported languages",
+ "non-AOSP supported languages"
+ ]
+ config_dict["files"] = [
+ f"{_DIR}/config/{default_branch}.yaml",
+ f"{_DIR}/config/{default_branch}_aosp.yaml"
+ ]
+ if not check_files(config_dict["files"]):
sys.exit(1)
if args.download and args.username is None:
@@ -624,12 +611,12 @@
sys.exit(1)
if args.upload_sources:
- upload_sources_crowdin(default_branch, args.config, args.path_to_crowdin)
+ upload_sources_crowdin(default_branch, config_dict, args.path_to_crowdin)
if args.upload_translations:
- upload_translations_crowdin(default_branch, args.config, args.path_to_crowdin)
+ upload_translations_crowdin(default_branch, config_dict, args.path_to_crowdin)
if args.download:
download_crowdin(base_path, default_branch, xml_files,
- args.username, args.config, args.path_to_crowdin)
+ args.username, config_dict, args.path_to_crowdin)
if _COMMITS_CREATED:
print('\nDone!')
diff --git a/requirements.txt b/requirements.txt
index e4ff11e..1778100 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,5 +1,2 @@
-gitdb==4.0.5
-GitPython==3.1.8
-lxml==4.5.2
-PyYAML==5.3.1
-smmap==3.0.4
+GitPython==3.1.24
+lxml==4.5.0