public void PrintLemma(Lemma l) { FlexiaModel flexModel = _flexiaModels[l.FlexModelNo]; AccentModel accentModel = _accentModels[l.AccentModelNo]; UserSession session = _userSessions[l.SessionNo]; Console.WriteLine("=== {0} {1} {2} {3} ===", l.Base, _gramtab.LookupAncode(l.TypeAncode), flexModel.Forms.Count, accentModel.AccentForms.Count); int formNo = 0; foreach (Flexia form in flexModel.Forms) { if (!string.IsNullOrWhiteSpace(form.Prefix)) { Console.ForegroundColor = ConsoleColor.Red; Console.Write(form.Prefix); } Console.ForegroundColor = ConsoleColor.Green; Console.Write(l.Base); Console.ForegroundColor = ConsoleColor.Yellow; Console.Write(form.Flexion); int accent = accentModel.AccentForms[formNo]; Console.Write(" {0} ", accent); string accWord = AccentHelper.SetAccent(form.Prefix + l.Base + form.Flexion, accent); Console.Write(" " + accWord + " "); Console.ForegroundColor = ConsoleColor.Cyan; Console.Write("\t" + _gramtab.LookupAncode(form.Ancode)); Console.ResetColor(); Console.WriteLine(); formNo++; } if (l.PrefixSetNo.HasValue) { PrefixSet prefixSet = _prefixSets[l.PrefixSetNo.Value]; Console.WriteLine("PrefixSets:"); foreach (string pref in prefixSet.Prefixes) { Console.WriteLine(pref); } } Console.WriteLine("-------------------"); }
public void PrintLookup(string word) { FormInterpretations forms = Lookup(word); if (forms != null) { foreach (var kvp in forms.AccentToAncodes) { Console.WriteLine("Accent {0} {1}", kvp.Key, AccentHelper.SetAccent(word, kvp.Key)); foreach (ushort ancodeNo in kvp.Value) { Console.WriteLine(" {0}", _gramtab.LookupByNo(ancodeNo)); } } } else { Console.WriteLine(word + " not found"); } }
public virtual void ProcessWord() { Console.WriteLine(_currentWord); FormInterpretations forms = _morph.Lookup(_currentWord); if (forms != null) { if (forms.AccentToAncodes.Count == 1) { SingleAccentWords.Add(AccentHelper.SetAccent(_currentWord, forms.AccentToAncodes.Keys.First())); } else { ManyAccentWords.Add(_currentWord); } } else { NotFoundWords.Add(_currentWord); } }