Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6145b735 authored by Jean Chalard's avatar Jean Chalard
Browse files

Add shortcut only to xml output.

Change-Id: I23b53826ce30b0ac81962d2f916514cb60bea6ff
parent d64b8c97
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -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();
+3 −1
Original line number Diff line number Diff line
@@ -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;
    }

    /**
+4 −1
Original line number Diff line number Diff line
@@ -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) {