#!/usr/bin/env python # # Copyright (C) 2019 The Android Open Source Project # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. """ Helper script to generate tedious strings.xml permutations """ from string import Template verbs = ["write","trash","untrash","delete"] datas = [("audio","audio file"),("video","video"),("image","photo"),("generic","item")] print ''' <!-- ========================= BEGIN AUTO-GENERATED BY gen_strings.py ========================= -->''' for verb in verbs: verblabel = verb if verb == "write": verblabel = "modify" print ''' <!-- ========================= %s STRINGS ========================= --> ''' % (verb.upper()) for data, datalabel in datas: if verb == "trash": print Template(''' <!-- Dialog title asking if user will allow $verb permission to the $data item displayed below this string. [CHAR LIMIT=128] --> <plurals name="permission_${verb}_${data}"> <item quantity="one">Allow <xliff:g id="app_name" example="Gmail">^1</xliff:g> to move this $datalabel to trash?</item> <item quantity="other">Allow <xliff:g id="app_name" example="Gmail">^1</xliff:g> to move <xliff:g id="count" example="42">^2</xliff:g> ${datalabel}s to trash?</item> </plurals> ''').substitute(vars()).strip("\n") print Template(''' <!-- Progress dialog message after user allows $verb permission to the $data item [CHAR LIMIT=128] --> <plurals name="permission_progress_${verb}_${data}"> <item quantity="one">Moving $datalabel to trash…</item> <item quantity="other">Moving <xliff:g id="count" example="42">^1</xliff:g> ${datalabel}s to trash…</item> </plurals> ''').substitute(vars()).strip("\n") elif verb == "untrash": print Template(''' <!-- Dialog title asking if user will allow $verb permission to the $data item displayed below this string. [CHAR LIMIT=128] --> <plurals name="permission_${verb}_${data}"> <item quantity="one">Allow <xliff:g id="app_name" example="Gmail">^1</xliff:g> to move this $datalabel out of trash?</item> <item quantity="other">Allow <xliff:g id="app_name" example="Gmail">^1</xliff:g> to move <xliff:g id="count" example="42">^2</xliff:g> ${datalabel}s out of trash?</item> </plurals> ''').substitute(vars()).strip("\n") print Template(''' <!-- Progress dialog message after user allows $verb permission to the $data item [CHAR LIMIT=128] --> <plurals name="permission_progress_${verb}_${data}"> <item quantity="one">Moving $datalabel out of trash…</item> <item quantity="other">Moving <xliff:g id="count" example="42">^1</xliff:g> ${datalabel}s out of trash…</item> </plurals> ''').substitute(vars()).strip("\n") else: print Template(''' <!-- Dialog title asking if user will allow $verb permission to the $data item displayed below this string. [CHAR LIMIT=128] --> <plurals name="permission_${verb}_${data}"> <item quantity="one">Allow <xliff:g id="app_name" example="Gmail">^1</xliff:g> to $verblabel this $datalabel?</item> <item quantity="other">Allow <xliff:g id="app_name" example="Gmail">^1</xliff:g> to $verblabel <xliff:g id="count" example="42">^2</xliff:g> ${datalabel}s?</item> </plurals> ''').substitute(vars()).strip("\n") if verb == "write": actionLabel = "Modifying" else: actionLabel = "Deleting" print Template(''' <!-- Progress dialog message after user allows $verb permission to the $data item [CHAR LIMIT=128] --> <plurals name="permission_progress_${verb}_${data}"> <item quantity="one">$actionLabel $datalabel…</item> <item quantity="other">$actionLabel <xliff:g id="count" example="42">^1</xliff:g> ${datalabel}s…</item> </plurals> ''').substitute(vars()).strip("\n") print ''' <!-- ========================= END AUTO-GENERATED BY gen_strings.py ========================= --> '''