From d508b676cfb9c94b5f5e8b176f3116840f717da5 Mon Sep 17 00:00:00 2001
From: "Tadashi G. Takaoka" <takaoka@google.com>
Date: Fri, 14 Feb 2014 16:11:50 +0900
Subject: [PATCH] Special punctuations for Arabic and Persian

This change also removes duplications from tablet punctuation suggestions

Bug: 12640318
Change-Id: I221922484027d6b91e2f23a6bf60a18766f3a13c
---
 .../config-spacing-and-punctuations.xml       |  7 ++---
 .../config-spacing-and-punctuations.xml       |  6 +++--
 .../config-spacing-and-punctuations.xml       | 27 +++++++++++++++++++
 .../config-spacing-and-punctuations.xml       |  6 +++--
 .../config-spacing-and-punctuations.xml       | 23 ++++++++++++++++
 .../config-spacing-and-punctuations.xml       |  4 +--
 6 files changed, 63 insertions(+), 10 deletions(-)
 rename java/res/{values-iw => values-ar-sw600dp}/config-spacing-and-punctuations.xml (83%)
 create mode 100644 java/res/values-fa-sw600dp/config-spacing-and-punctuations.xml
 create mode 100644 java/res/values-sw600dp/config-spacing-and-punctuations.xml

diff --git a/java/res/values-iw/config-spacing-and-punctuations.xml b/java/res/values-ar-sw600dp/config-spacing-and-punctuations.xml
similarity index 83%
rename from java/res/values-iw/config-spacing-and-punctuations.xml
rename to java/res/values-ar-sw600dp/config-spacing-and-punctuations.xml
index 8d4d4bfc73..56296361f9 100644
--- a/java/res/values-iw/config-spacing-and-punctuations.xml
+++ b/java/res/values-ar-sw600dp/config-spacing-and-punctuations.xml
@@ -2,7 +2,7 @@
 <!--
 /*
 **
-** Copyright 2012, The Android Open Source Project
+** Copyright 2014, 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.
@@ -21,6 +21,7 @@
     <!-- The all letters need to be mirrored are found at
          http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt -->
     <!-- Symbols that are suggested between words -->
-    <!-- TODO: Use !text resources to merge LTR and RTL punctuations. -->
-    <string name="suggested_punctuations" translatable="false">!,?,\\,,:,;,\",(|),)|(,\',-,/,@,_</string>
+    <!-- U+061F: "ØŸ" ARABIC QUESTION MARK
+         U+061B: "Ø›" ARABIC SEMICOLON -->
+    <string name="suggested_punctuations" translatable="false">!,&#x061F;,:,&#x061B;,\",\',(|),)|(,-,/,@,_</string>
 </resources>
diff --git a/java/res/values-ar/config-spacing-and-punctuations.xml b/java/res/values-ar/config-spacing-and-punctuations.xml
index 8d4d4bfc73..d33a104df6 100644
--- a/java/res/values-ar/config-spacing-and-punctuations.xml
+++ b/java/res/values-ar/config-spacing-and-punctuations.xml
@@ -21,6 +21,8 @@
     <!-- The all letters need to be mirrored are found at
          http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt -->
     <!-- Symbols that are suggested between words -->
-    <!-- TODO: Use !text resources to merge LTR and RTL punctuations. -->
-    <string name="suggested_punctuations" translatable="false">!,?,\\,,:,;,\",(|),)|(,\',-,/,@,_</string>
+    <!-- U+061F: "ØŸ" ARABIC QUESTION MARK
+         U+060C: "،" ARABIC COMMA
+         U+061B: "Ø›" ARABIC SEMICOLON -->
+    <string name="suggested_punctuations" translatable="false">!,&#x061F;,&#x060C;,:,&#x061B;,\",(|),)|(,\',-,/,@,_</string>
 </resources>
diff --git a/java/res/values-fa-sw600dp/config-spacing-and-punctuations.xml b/java/res/values-fa-sw600dp/config-spacing-and-punctuations.xml
new file mode 100644
index 0000000000..56296361f9
--- /dev/null
+++ b/java/res/values-fa-sw600dp/config-spacing-and-punctuations.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2014, 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.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- The all letters need to be mirrored are found at
+         http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt -->
+    <!-- Symbols that are suggested between words -->
+    <!-- U+061F: "ØŸ" ARABIC QUESTION MARK
+         U+061B: "Ø›" ARABIC SEMICOLON -->
+    <string name="suggested_punctuations" translatable="false">!,&#x061F;,:,&#x061B;,\",\',(|),)|(,-,/,@,_</string>
+</resources>
diff --git a/java/res/values-fa/config-spacing-and-punctuations.xml b/java/res/values-fa/config-spacing-and-punctuations.xml
index 8d4d4bfc73..d33a104df6 100644
--- a/java/res/values-fa/config-spacing-and-punctuations.xml
+++ b/java/res/values-fa/config-spacing-and-punctuations.xml
@@ -21,6 +21,8 @@
     <!-- The all letters need to be mirrored are found at
          http://www.unicode.org/Public/6.1.0/ucd/BidiMirroring.txt -->
     <!-- Symbols that are suggested between words -->
-    <!-- TODO: Use !text resources to merge LTR and RTL punctuations. -->
-    <string name="suggested_punctuations" translatable="false">!,?,\\,,:,;,\",(|),)|(,\',-,/,@,_</string>
+    <!-- U+061F: "ØŸ" ARABIC QUESTION MARK
+         U+060C: "،" ARABIC COMMA
+         U+061B: "Ø›" ARABIC SEMICOLON -->
+    <string name="suggested_punctuations" translatable="false">!,&#x061F;,&#x060C;,:,&#x061B;,\",(|),)|(,\',-,/,@,_</string>
 </resources>
diff --git a/java/res/values-sw600dp/config-spacing-and-punctuations.xml b/java/res/values-sw600dp/config-spacing-and-punctuations.xml
new file mode 100644
index 0000000000..9c12cf49af
--- /dev/null
+++ b/java/res/values-sw600dp/config-spacing-and-punctuations.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+/*
+**
+** Copyright 2014, 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.
+*/
+-->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- Symbols that are suggested between words -->
+    <string name="suggested_punctuations" translatable="false">:,;,\",!text/keyspec_left_parenthesis,!text/keyspec_right_parenthesis,\',-,/,@,_</string>
+</resources>
diff --git a/java/res/values/config-spacing-and-punctuations.xml b/java/res/values/config-spacing-and-punctuations.xml
index 5b2918fe80..9099f4c45a 100644
--- a/java/res/values/config-spacing-and-punctuations.xml
+++ b/java/res/values/config-spacing-and-punctuations.xml
@@ -21,9 +21,7 @@
     <!-- TODO: these settings depend on the language. They should be put either in the dictionary
          header, or in the subtype maybe? -->
     <!-- Symbols that are suggested between words -->
-    <!-- TODO: Use !text resources to merge LTR and RTL punctuations. -->
-    <!-- TODO: We should have different punctuations list for tablet. -->
-    <string name="suggested_punctuations" translatable="false">!,?,\\,,:,;,\",(,),\',-,/,@,_</string>
+    <string name="suggested_punctuations" translatable="false">!,?,\\,,:,;,\",!text/keyspec_left_parenthesis,!text/keyspec_right_parenthesis,\',-,/,@,_</string>
     <!-- Symbols that are normally preceded by a space (used to add an auto-space before these) -->
     <string name="symbols_preceded_by_space" translatable="false">([{&amp;</string>
     <!-- Symbols that are normally followed by a space (used to add an auto-space after these) -->
-- 
GitLab