Пример #1
0
        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());
        }
Пример #2
0
        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()));
        }