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 d6c03ed70..58e7f2935 100644
--- a/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java
+++ b/tools/makedict/src/com/android/inputmethod/latin/XmlDictInputOutput.java
@@ -46,6 +46,8 @@ public class XmlDictInputOutput {
private static final String FREQUENCY_ATTR = "f";
private static final String WORD_ATTR = "word";
+ private static final int SHORTCUT_ONLY_DEFAULT_FREQ = 1;
+
/**
* SAX handler for a unigram XML file.
*/
@@ -232,6 +234,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;
}