public TransferEngine(IMorphologicalAnalyzer sourceAnalyzer, ITransferer transferer, IMorphologicalGenerator targetGenerator) { _sourceAnalyzer = sourceAnalyzer; _transferer = transferer; _targetGenerator = targetGenerator; }
public void SetUp() { ipadicMecab = new MeCabIpadic(new MeCabParam { DicDir = TestDataPaths.Ipadic }); }
public AddCategoriesHandler( MemContext dbContext, IMorphologicalAnalyzer <IpadicEntry> analyzer, ICurrentTimeProvider currentTimeProvider) { this.dbContext = dbContext; this.analyzer = analyzer; this.currentTimeProvider = currentTimeProvider; }
public SentenceParser( IMorphologicalAnalyzer <IEntry> analyzer, JMDictLookup lookup, IKanaProperties kanaProperties) { this.analyzer = analyzer; this.lookup = lookup; this.kanaProperties = kanaProperties; }
public UpdateTranslationHandler( MemContext dbContext, IMorphologicalAnalyzer <IpadicEntry> analyzer, ICurrentTimeProvider currentTimeProvider) { this.dbContext = dbContext; this.analyzer = analyzer; this.currentTimeProvider = currentTimeProvider; }
public void SetUp() { jmdict = JDict.JMDictLookup.Create(TestDataPaths.JMDict, TestDataPaths.JMDictCache); ipadicMecab = new MeCabIpadic(new MeCabParam { DicDir = TestDataPaths.Ipadic }); idiomDetector = new IdiomDetector(jmdict, ipadicMecab, TestDataPaths.IdiomsCache); }
public AddContextHandler( MemContext dbContext, IMorphologicalAnalyzer <IpadicEntry> analyzer, ICurrentTimeProvider currentTimeProvider, UserManager <User> userManager) { this.dbContext = dbContext; this.analyzer = analyzer; this.currentTimeProvider = currentTimeProvider; this.userManager = userManager; }
public static string Normalize(this IMorphologicalAnalyzer <IpadicEntry> analyzer, string input) { var morphemes = analyzer .ParseToEntries(input) .Where(e => e.IsRegular) .Where(IsNotStopWord) .Select(e => e.DictionaryForm); var text = string.Join(" ", morphemes); return(text); }
public void SetUp() { var baseDir = TestDataPaths.BaseDir; mecab = new MeCabIpadic(new MeCabParam { DicDir = TestDataPaths.Ipadic, }); kanaProperties = new KanaProperties2( TestDataPaths.Kana, Encoding.UTF8); }
public TanakaUpdaterProcess( HttpClient httpClient, string url, string oldPath, string newPath, string oldCachePath, string newCachePath, IMorphologicalAnalyzer <IpadicEntry> analyzer) : base("Tanaka Corpus") { this.httpClient = httpClient; this.url = url; this.oldPath = oldPath; this.newPath = newPath; this.oldCachePath = oldCachePath; this.newCachePath = newCachePath; this.analyzer = analyzer; }
public void SetUp() { var kanjidict = JDict.KanjiDict.Create(TestDataPaths.KanjiDic); var kradfile = new JDict.Kradfile(TestDataPaths.Kradfile, Encoding.UTF8); var radkfile = new Radkfile(TestDataPaths.Radkfile, Encoding.UTF8); var kanaProperties = new KanaProperties2( TestDataPaths.Kana, Encoding.UTF8); this.mecab = new MeCabIpadic(new MeCabParam { DicDir = TestDataPaths.Ipadic, UseMemoryMappedFile = true }); this.jmdict = JDict.JMDictLookup.Create(TestDataPaths.JMDict, TestDataPaths.JMDictCache); var parser = new SentenceParser(mecab, jmdict, kanaProperties); glosser = new AutoGlosserNext(parser, jmdict, kanaProperties); }
public static (string sentence, string?highlighter) Highlight(this IMorphologicalAnalyzer <IpadicEntry> analyzer, string haystack, string needle) { var needleMorphemes = analyzer .ParseToEntries(needle) .Where(e => e.IsRegular) .ToList(); var haystackMorphemes = analyzer .ParseToEntries(haystack) .Where(e => e.IsRegular) .ToList(); if (haystackMorphemes.Count == 0 || needleMorphemes.Count == 0) { return(haystack, null); } var values = new List <int>(haystackMorphemes.Count); for (int i = 0; i < haystackMorphemes.Count; ++i) { var count = Enumerable .Zip(haystackMorphemes.Skip(i), needleMorphemes) .Count(pair => pair.First.DictionaryForm == pair.Second.DictionaryForm); values.Add(count); } var start = EnumerableExt.MaxBy(values.Indexed(), p => p.element).index; var highlighter = GetHighlighterFor(haystack); var haystackStrings = haystackMorphemes.Select(m => m.SurfaceForm).Materialize(); var strings = haystackStrings .Take(start) .Append(highlighter) .Concat(haystackStrings.Skip(start).Take(values[start])) .Append(highlighter) .Concat(haystackStrings.Skip(start + values[start])); return(string.Concat(strings), highlighter); }
public static void AddAnalyses(this IMorphologicalAnalyzer sourceAnalyzer, string word, params WordAnalysis[] analyses) { sourceAnalyzer.AnalyzeWord(Arg.Is(word)).Returns(analyses); }
public ModifiedHepburn(IMorphologicalAnalyzer <IEntry> mecab, IKanaProperties props) { this.mecab = mecab; this.props = props; }