private string FormatSense(JMDictSense s) { var sb = new StringBuilder(); if (s.Informational.Any()) { sb.Append("("); bool first = true; foreach (var info in s.Informational) { if (!first) { sb.Append("/"); } sb.Append(info); first = false; } sb.Append(") "); } { bool first = true; foreach (var gloss in s.Glosses) { if (!first) { sb.Append("/"); } sb.Append(gloss); first = false; } } return(sb.ToString()); }
private GlossNote CreateGloss(WordInfo foreign, string format, IEnumerable <JMDictEntry> notInflected) { string senseString = ""; if (notInflected != null) { JMDictSense sense = notInflected.SelectMany(e => e.Senses).FirstOrDefault(e => e.Type.HasValue && e.Type == foreign.Type); sense = sense ?? notInflected.SelectMany(e => e.Senses).First(); senseString = sense.Description; } return(new GlossNote( foreign.RawWord, (string.Format(format, senseString) + (foreign.RawWord != foreign.NotInflected && foreign.NotInflected != null ? " + inflections" : "")).Trim())); }