Merge "Add shortcut only to xml output."
commit
382f44f359
|
@ -619,7 +619,8 @@ public class FusionDictionary implements Iterable<Word> {
|
|||
}
|
||||
if (currentGroup.mFrequency >= 0)
|
||||
return new Word(mCurrentString.toString(), currentGroup.mFrequency,
|
||||
currentGroup.mShortcutTargets, currentGroup.mBigrams);
|
||||
currentGroup.mShortcutTargets, currentGroup.mBigrams,
|
||||
currentGroup.mIsShortcutOnly);
|
||||
} else {
|
||||
mPositions.removeLast();
|
||||
currentPos = mPositions.getLast();
|
||||
|
|
|
@ -28,16 +28,18 @@ import java.util.ArrayList;
|
|||
public class Word implements Comparable<Word> {
|
||||
final String mWord;
|
||||
final int mFrequency;
|
||||
final boolean mIsShortcutOnly;
|
||||
final ArrayList<WeightedString> mShortcutTargets;
|
||||
final ArrayList<WeightedString> mBigrams;
|
||||
|
||||
public Word(final String word, final int frequency,
|
||||
final ArrayList<WeightedString> shortcutTargets,
|
||||
final ArrayList<WeightedString> bigrams) {
|
||||
final ArrayList<WeightedString> bigrams, final boolean isShortcutOnly) {
|
||||
mWord = word;
|
||||
mFrequency = frequency;
|
||||
mShortcutTargets = shortcutTargets;
|
||||
mBigrams = bigrams;
|
||||
mIsShortcutOnly = isShortcutOnly;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -45,6 +45,7 @@ public class XmlDictInputOutput {
|
|||
private static final String SHORTCUT_TAG = "shortcut";
|
||||
private static final String FREQUENCY_ATTR = "f";
|
||||
private static final String WORD_ATTR = "word";
|
||||
private static final String SHORTCUT_ONLY_ATTR = "shortcutOnly";
|
||||
|
||||
/**
|
||||
* SAX handler for a unigram XML file.
|
||||
|
@ -264,9 +265,11 @@ public class XmlDictInputOutput {
|
|||
}
|
||||
// TODO: use an XMLSerializer if this gets big
|
||||
destination.write("<wordlist format=\"2\">\n");
|
||||
destination.write("<!-- Warning: there is no code to read this format yet. -->\n");
|
||||
for (Word word : set) {
|
||||
destination.write(" <" + WORD_TAG + " " + WORD_ATTR + "=\"" + word.mWord + "\" "
|
||||
+ FREQUENCY_ATTR + "=\"" + word.mFrequency + "\">");
|
||||
+ FREQUENCY_ATTR + "=\"" + word.mFrequency + "\" " + SHORTCUT_ONLY_ATTR
|
||||
+ "=\"" + word.mIsShortcutOnly + "\">");
|
||||
if (null != word.mShortcutTargets) {
|
||||
destination.write("\n");
|
||||
for (WeightedString target : word.mShortcutTargets) {
|
||||
|
|
Loading…
Reference in New Issue