-
-
Notifications
You must be signed in to change notification settings - Fork 3k
Description
Summary
Basically the title;
Typing CJK characters would toss helix in a infinite loop.
I attached a debugger and found that termina-0.1.0/src/event/reader.rs:Shared.poll
was not able to poll anything after typing in CJK characters. I dig a bit deeper and it seems that termina-0.1.0/src/terminal/windows.rs:get_number_of_input_events
, which jsut make a call to windows_sys::Win32::System::Console::GetNumberOfConsoleInputEvents
, always bails. I believe this is not intended behavior because it used to work prior to Termina migration. However I am not too familiar with Termina nor Crossterm to investigate further. Please let me know if there's more I can do to help triage the issue.
Reproduction Steps
I tried this:
hx
, switch to CJK input method and start typing.
I expected this to happen: characters appears on the screen
Instead, this happened: nothing happened, hx does not respond to typing nor commands or even the ESC
Helix log
~/.cache/helix/helix.log
2025-09-04T11:57:36.638 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 1 literals: [E("properties")]
2025-09-04T11:57:36.638 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.638 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted before optimization: Seq[E("robots-txt"), E("robots.txt")]
2025-09-04T11:57:36.638 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=false) extracted after optimization: Seq[I("robots")]
2025-09-04T11:57:36.638 regex_cursor::engines::meta::strategy [DEBUG] creating prefilter from 1 literals: [I("robots")]
2025-09-04T11:57:36.638 regex_cursor::engines::meta::wrappers [DEBUG] PikeVM built
2025-09-04T11:57:36.639 regex_cursor::engines::meta::wrappers [DEBUG] fully compiled forward and reverse DFAs built, 2680 bytes
2025-09-04T11:57:36.639 regex_cursor::engines::meta::strategy [DEBUG] skipping lazy DFA because we have a full DFA
2025-09-04T11:57:36.640 regex_cursor::engines::meta::strategy [DEBUG] skipping reverse anchored optimization because the regex is not always anchored at the end
2025-09-04T11:57:36.640 regex_cursor::engines::meta::strategy [DEBUG] using core strategy
2025-09-04T11:57:36.640 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(4), exact=true) extracted before optimization: Seq[E("pip-requirements.txt"), E("pip-requirements"), E("requirements.txt"), E("requirements")]
2025-09-04T11:57:36.640 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(4), exact=true) extracted after optimization: Seq[E("pip-requirements.txt"), E("pip-requirements"), E("requirements.txt"), E("requirements")]
2025-09-04T11:57:36.640 regex_cursor::engines::meta::strategy [DEBUG] creating prefilter from 4 literals: [E("pip-requirements.txt"), E("pip-requirements"), E("requirements.txt"), E("requirements")]
2025-09-04T11:57:36.641 regex_cursor::engines::meta::wrappers [DEBUG] PikeVM built
2025-09-04T11:57:36.641 regex_cursor::engines::meta::wrappers [DEBUG] skipping full DFA because NFA has 31 states, which exceeds the heuristic limit of 30
2025-09-04T11:57:36.641 regex_cursor::engines::meta::wrappers [DEBUG] lazy DFA built
2025-09-04T11:57:36.641 regex_cursor::engines::meta::strategy [DEBUG] skipping reverse anchored optimization because the regex is not always anchored at the end
2025-09-04T11:57:36.641 regex_cursor::engines::meta::strategy [DEBUG] using core strategy
2025-09-04T11:57:36.641 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted before optimization: Seq[E("Doxyfile"), E("doxyfile")]
2025-09-04T11:57:36.641 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted after optimization: Seq[E("Doxyfile"), E("doxyfile")]
2025-09-04T11:57:36.641 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 2 literals: [E("Doxyfile"), E("doxyfile")]
2025-09-04T11:57:36.642 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.642 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted before optimization: Seq[E("cross-config")]
2025-09-04T11:57:36.642 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted after optimization: Seq[E("cross-config")]
2025-09-04T11:57:36.642 regex_cursor::engines::meta::strategy [DEBUG] creating prefilter from 1 literals: [E("cross-config")]
2025-09-04T11:57:36.642 regex_cursor::engines::meta::wrappers [DEBUG] PikeVM built
2025-09-04T11:57:36.644 regex_cursor::engines::meta::wrappers [DEBUG] fully compiled forward and reverse DFAs built, 5944 bytes
2025-09-04T11:57:36.644 regex_cursor::engines::meta::strategy [DEBUG] skipping lazy DFA because we have a full DFA
2025-09-04T11:57:36.644 regex_cursor::engines::meta::strategy [DEBUG] skipping reverse anchored optimization because the regex is not always anchored at the end
2025-09-04T11:57:36.644 regex_cursor::engines::meta::strategy [DEBUG] using core strategy
2025-09-04T11:57:36.644 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted before optimization: Seq[E("git-cliff-config")]
2025-09-04T11:57:36.644 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted after optimization: Seq[E("git-cliff-config")]
2025-09-04T11:57:36.644 regex_cursor::engines::meta::strategy [DEBUG] creating prefilter from 1 literals: [E("git-cliff-config")]
2025-09-04T11:57:36.644 regex_cursor::engines::meta::wrappers [DEBUG] PikeVM built
2025-09-04T11:57:36.646 regex_cursor::engines::meta::wrappers [DEBUG] fully compiled forward and reverse DFAs built, 7480 bytes
2025-09-04T11:57:36.646 regex_cursor::engines::meta::strategy [DEBUG] skipping lazy DFA because we have a full DFA
2025-09-04T11:57:36.646 regex_cursor::engines::meta::strategy [DEBUG] skipping reverse anchored optimization because the regex is not always anchored at the end
2025-09-04T11:57:36.646 regex_cursor::engines::meta::strategy [DEBUG] using core strategy
2025-09-04T11:57:36.646 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted before optimization: Seq[E("shellcheckrc"), E("shellcheck")]
2025-09-04T11:57:36.646 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=false) extracted after optimization: Seq[I("shellcheck")]
2025-09-04T11:57:36.646 regex_cursor::engines::meta::strategy [DEBUG] creating prefilter from 1 literals: [I("shellcheck")]
2025-09-04T11:57:36.647 regex_cursor::engines::meta::wrappers [DEBUG] PikeVM built
2025-09-04T11:57:36.648 regex_cursor::engines::meta::wrappers [DEBUG] fully compiled forward and reverse DFAs built, 2948 bytes
2025-09-04T11:57:36.648 regex_cursor::engines::meta::strategy [DEBUG] skipping lazy DFA because we have a full DFA
2025-09-04T11:57:36.648 regex_cursor::engines::meta::strategy [DEBUG] skipping reverse anchored optimization because the regex is not always anchored at the end
2025-09-04T11:57:36.648 regex_cursor::engines::meta::strategy [DEBUG] using core strategy
2025-09-04T11:57:36.648 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted before optimization: Seq[E("strictdoc")]
2025-09-04T11:57:36.648 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted after optimization: Seq[E("strictdoc")]
2025-09-04T11:57:36.648 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 1 literals: [E("strictdoc")]
2025-09-04T11:57:36.648 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.648 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted before optimization: Seq[E("rs"), E("rust")]
2025-09-04T11:57:36.648 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted after optimization: Seq[E("rs"), E("rust")]
2025-09-04T11:57:36.648 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 2 literals: [E("rs"), E("rust")]
2025-09-04T11:57:36.649 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.649 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted before optimization: Seq[E("lua")]
2025-09-04T11:57:36.649 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted after optimization: Seq[E("lua")]
2025-09-04T11:57:36.649 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 1 literals: [E("lua")]
2025-09-04T11:57:36.649 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.649 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted before optimization: Seq[E("c-sharp"), E("csharp")]
2025-09-04T11:57:36.649 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(2), exact=true) extracted after optimization: Seq[E("c-sharp"), E("csharp")]
2025-09-04T11:57:36.649 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 2 literals: [E("c-sharp"), E("csharp")]
2025-09-04T11:57:36.650 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.650 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted before optimization: Seq[E("glsl")]
2025-09-04T11:57:36.650 regex_cursor::util::prefilter [DEBUG] prefixes (len=Some(1), exact=true) extracted after optimization: Seq[E("glsl")]
2025-09-04T11:57:36.650 regex_cursor::engines::meta::strategy [DEBUG] trying to bypass regex engine by creating prefilter from 1 literals: [E("glsl")]
2025-09-04T11:57:36.651 regex_cursor::engines::meta::strategy [DEBUG] found that the regex can be broken down to a literal search, avoiding the regex engine entirely
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/*SConstruct", re: "(?-u)^.*/.*SConstruct$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), ZeroOrMore, Literal('S'), Literal('C'), Literal('o'), Literal('n'), Literal('s'), Literal('t'), Literal('r'), Literal('u'), Literal('c'), Literal('t')]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/*SConscript", re: "(?-u)^.*/.*SConscript$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), ZeroOrMore, Literal('S'), Literal('C'), Literal('o'), Literal('n'), Literal('s'), Literal('c'), Literal('r'), Literal('i'), Literal('p'), Literal('t')]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/*sconstruct", re: "(?-u)^.*/.*sconstruct$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), ZeroOrMore, Literal('s'), Literal('c'), Literal('o'), Literal('n'), Literal('s'), Literal('t'), Literal('r'), Literal('u'), Literal('c'), Literal('t')]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/Dockerfile.*", re: "(?-u)^.*/Dockerfile\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('D'), Literal('o'), Literal('c'), Literal('k'), Literal('e'), Literal('r'), Literal('f'), Literal('i'), Literal('l'), Literal('e'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/dockerfile.*", re: "(?-u)^.*/dockerfile\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('d'), Literal('o'), Literal('c'), Literal('k'), Literal('e'), Literal('r'), Literal('f'), Literal('i'), Literal('l'), Literal('e'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/Containerfile.*", re: "(?-u)^.*/Containerfile\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('C'), Literal('o'), Literal('n'), Literal('t'), Literal('a'), Literal('i'), Literal('n'), Literal('e'), Literal('r'), Literal('f'), Literal('i'), Literal('l'), Literal('e'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/containerfile.*", re: "(?-u)^.*/containerfile\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('c'), Literal('o'), Literal('n'), Literal('t'), Literal('a'), Literal('i'), Literal('n'), Literal('e'), Literal('r'), Literal('f'), Literal('i'), Literal('l'), Literal('e'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/.*ignore", re: "(?-u)^.*/\\..*ignore$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('.'), ZeroOrMore, Literal('i'), Literal('g'), Literal('n'), Literal('o'), Literal('r'), Literal('e')]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/BUILD.*", re: "(?-u)^.*/BUILD\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('B'), Literal('U'), Literal('I'), Literal('L'), Literal('D'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/*.tm[Tt]heme", re: "(?-u)^.*/.*\\.tm[Tt]heme$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), ZeroOrMore, Literal('.'), Literal('t'), Literal('m'), Class { negated: false, ranges: [('T', 'T'), ('t', 't')] }, Literal('h'), Literal('e'), Literal('m'), Literal('e')]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/.env.*", re: "(?-u)^.*/\\.env\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('.'), Literal('e'), Literal('n'), Literal('v'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/.envrc.*", re: "(?-u)^.*/\\.envrc\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('.'), Literal('e'), Literal('n'), Literal('v'), Literal('r'), Literal('c'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/conf/*/*.{inc,conf}", re: "(?-u)^.*/conf/.*/.*\\.(?:conf|inc)$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('c'), Literal('o'), Literal('n'), Literal('f'), Literal('/'), ZeroOrMore, Literal('/'), ZeroOrMore, Literal('.'), Alternates([Tokens([Literal('c'), Literal('o'), Literal('n'), Literal('f')]), Tokens([Literal('i'), Literal('n'), Literal('c')])])]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/Jenkinsfile.*", re: "(?-u)^.*/Jenkinsfile\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('J'), Literal('e'), Literal('n'), Literal('k'), Literal('i'), Literal('n'), Literal('s'), Literal('f'), Literal('i'), Literal('l'), Literal('e'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/debian/**/control", re: "(?-u)^.*/debian(?:/|/.*/)control$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('d'), Literal('e'), Literal('b'), Literal('i'), Literal('a'), Literal('n'), RecursiveZeroOrMore, Literal('c'), Literal('o'), Literal('n'), Literal('t'), Literal('r'), Literal('o'), Literal('l')]) }
2025-09-04T11:57:36.653 globset [DEBUG] glob converted to regex: Glob { glob: "*/kconfig.*", re: "(?-u)^.*/kconfig\\..*$", opts: GlobOptions { case_insensitive: false, literal_separator: false, backslash_escape: false, empty_alternates: false }, tokens: Tokens([ZeroOrMore, Literal('/'), Literal('k'), Literal('c'), Literal('o'), Literal('n'), Literal('f'), Literal('i'), Literal('g'), Literal('.'), ZeroOrMore]) }
2025-09-04T11:57:36.653 globset [DEBUG] built glob set; 1 literals, 0 basenames, 0 extensions, 0 prefixes, 172 suffixes, 14 required extensions, 16 regexes
2025-09-04T11:57:36.762 helix_loader [DEBUG] runtime dir: E:\prjs\helix\runtime
2025-09-04T11:57:36.781 helix_tui::backend::termina [DEBUG] Detected terminal capabilities in 1.3795ms: Capabilities { kitty_keyboard: None, synchronized_output: false, true_color: false, extended_underlines: false }
2025-09-04T11:57:36.807 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:36.808 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:36.844 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:36.844 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:37.052 helix_term::application [DEBUG] received editor event: IdleTimer
2025-09-04T11:57:37.205 helix_term::application [DEBUG] received editor event: Redraw
2025-09-04T11:57:37.206 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:37.206 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.292 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.292 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.424 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.424 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.467 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.468 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.539 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.540 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.673 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.674 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.700 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.700 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.823 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.824 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.835 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.836 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.964 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.965 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.999 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:38.999 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.131 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.132 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.256 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.256 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.269 regex_cursor::util::prefilter [DEBUG] prefixes (len=None, exact=false) extracted before optimization: Seq[∞]
2025-09-04T11:57:39.269 regex_cursor::util::prefilter [DEBUG] prefixes (len=None, exact=false) extracted after optimization: Seq[∞]
2025-09-04T11:57:39.279 regex_cursor::engines::meta::wrappers [DEBUG] PikeVM built
2025-09-04T11:57:39.289 regex_cursor::engines::meta::wrappers [DEBUG] skipping full DFA because NFA has 2295 states, which exceeds the heuristic limit of 30
2025-09-04T11:57:39.289 regex_cursor::engines::meta::wrappers [DEBUG] lazy DFA built
2025-09-04T11:57:39.289 regex_cursor::engines::meta::strategy [DEBUG] using reverse anchored strategy
2025-09-04T11:57:39.292 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.292 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 0
2025-09-04T11:57:39.295 helix_term::application [DEBUG] received editor event: IdleTimer
2025-09-04T11:57:39.355 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:39.356 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:39.613 helix_term::application [DEBUG] received editor event: IdleTimer
2025-09-04T11:57:39.907 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:39.907 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:40.030 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:40.030 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:40.170 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:40.170 helix_view::document [DEBUG] id 1 modified - last saved: 0, current: 1
2025-09-04T11:57:40.173 helix_term::application [DEBUG] received editor event: IdleTimer
Platform
Windows
Terminal Emulator
alacritty 0.17.0-dev (97fde106)
Installation Method
source
Helix Version
helix 25.07.1 (4967229)