aboutsummaryrefslogtreecommitdiffstats
path: root/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java
diff options
context:
space:
mode:
Diffstat (limited to 'tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java')
-rw-r--r--tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java11
1 files changed, 11 insertions, 0 deletions
diff --git a/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java b/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java
index a13a3b88f..77c536668 100644
--- a/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java
+++ b/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java
@@ -47,6 +47,8 @@ public class XmlDictInputOutput {
private static final String WORD_ATTR = "word";
private static final String SHORTCUT_ONLY_ATTR = "shortcutOnly";
+ private static final int SHORTCUT_ONLY_DEFAULT_FREQ = 1;
+
/**
* SAX handler for a unigram XML file.
*/
@@ -233,6 +235,15 @@ public class XmlDictInputOutput {
new UnigramHandler(dict, shortcutHandler.getShortcutMap(),
bigramHandler.getBigramMap());
parser.parse(unigrams, unigramHandler);
+
+ final HashMap<String, ArrayList<WeightedString>> shortcutMap =
+ shortcutHandler.getShortcutMap();
+ for (final String shortcut : shortcutMap.keySet()) {
+ if (dict.hasWord(shortcut)) continue;
+ // TODO: list a frequency in the shortcut file and use it here, instead of
+ // a constant freq
+ dict.addShortcutOnly(shortcut, SHORTCUT_ONLY_DEFAULT_FREQ, shortcutMap.get(shortcut));
+ }
return dict;
}