/// <summary> /// 추적하고 있는 단어에서 Backspace 입력을 처리합니다. /// </summary> /// <param name="args">없음</param> private static void BackspaceWord(object[] args) { if (!MainForm.ENABLE_SENTIMENT_ANALYZER) { return; } #pragma warning disable CS0162 // 접근할 수 없는 코드가 있습니다. if (wordState.Length > 0) { if (IsIMESetToEnglish()) { wordState = wordState.Substring(0, wordState.Length - 1); } else { if (backspaceState is null) { backspaceState = Hangul.Assemble(wordState); backspaceState = backspaceState.Substring(0, backspaceState.Length - 1) + Hangul.Disassemble(backspaceState.Substring(backspaceState.Length - 1, 1)); } if (backspaceState.Length > 0) { backspaceState = backspaceState.Substring(0, backspaceState.Length - 1); wordState = backspaceState; } } } #pragma warning restore CS0162 // 접근할 수 없는 코드가 있습니다. }
/// <summary> /// 현재까지 추적한 단어를 감정 분석기에 넘기고 초기화합니다. /// </summary> /// <param name="args">없음</param> private static void ResetWord(object[] args) { if (!MainForm.ENABLE_SENTIMENT_ANALYZER) { return; } #pragma warning disable CS0162 // 접근할 수 없는 코드가 있습니다. if (wordState.Length > 0) { if (IsIMESetToEnglish()) { Console.WriteLine("wordState: " + wordState); EnglishSentimentAnalyzer.instance.Analyze(wordState); EnglishSentimentAnalyzer.instance.GetSentimentAndFlush().Print(); // TODO 음악 생성기에 넘기기 } else { Console.WriteLine("wordState: " + Hangul.Assemble(wordState)); KoreanSentimentAnalyzer.instance.Analyze(Hangul.Assemble(wordState)); KoreanSentimentAnalyzer.instance.GetSentimentAndFlush().Print(); // TODO 음악 생성기에 넘기기 } } wordState = ""; #pragma warning restore CS0162 // 접근할 수 없는 코드가 있습니다. }