diff --git a/content/news/2024-03-30-release-24.03-highlights.md b/content/news/2024-03-30-release-24.03-highlights.md new file mode 100644 index 0000000..4f211dd --- /dev/null +++ b/content/news/2024-03-30-release-24.03-highlights.md @@ -0,0 +1,111 @@ ++++ +title = "Release 24.03 Highlights" +date = 2024-03-30T00:00:00Z +type = "post" +description = "Highlights of the 24.03 release." +in_search_index = true ++++ + +The Helix 24.03 release has arrived! First, a very big _thank you_ to everyone +who made this release possible. This release saw changes from 125 contributors. + +New to Helix? +Helix is a modal text editor with built-in support for multiple selections, +Language Server Protocol (LSP), tree-sitter, and experimental support for Debug +Adapter Protocol (DAP). + +Let's check out this release's highlights. + +## Amp-like jumping + +{{ asciinema(id="amp-jump", width="94", height="25") }} + +Jumping features are popular in the (Neo)Vim plugin space and there are even +plugins to add the same functionality to other tools like browsers. They allow +you to move your selection efficiently across even large parts of the view, +like you could by clicking with a mouse, but by entering "labels" instead. +24.03 introduces jumping commands inspired by the [Amp editor]'s [jump mode]. +Press `gw` to add the jump labels and then enter one of the labels to jump to +the word under that label. Using `gw` in select mode (`v`) extends the +selection. + +## Block comments + +In the past, Helix has only been able to toggle line comments like `//` and `#` +and languages like OCaml have been left with workarounds like a "line" comment +token of `(*`. In 24.03 Helix can now toggle block comments as well. Use `C-c` +or `c` to smartly add or remove line or block comments around the current +selection based on the language's comment token configuration, `c` to +toggle block comments around the current selection, or `` to toggle +only line comments on the current line. + +## Improvements to tree-sitter injections + +Helix uses [`tree-sitter`] incremental parsing for syntax highlighting, +textobjects, indentation and some motions and commands. 24.03 improves how we +handle _[injections]_ - a powerful tree-sitter feature for parsing documents +with multiple languages. For example you might have JavaScript, CSS or other +languages within a `\u001b[38;2;80;73;69m \u001b[39m "] +[2.092705, "o", " \u001b[9;1H \u001b[38;2;124;111;100m 9\u001b[39m \u001b[38;2;189;174;147m\u001b[38;2;80;73;69m \u001b[39m \u001b[10;1H \u001b[38;2;124;111;100m ~\u001b[39m \u001b[38;2;80;73;69m \u001b[39m \u001b[11;1H \u001b[12;1H \u001b[13;1H \u001b[14;1H \u001b[15;1H \u001b[16;1H \u001b[17;1H "] +[2.09274, "o", " \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html 1 sel 1:1 \u001b[25;1H\u001b[48;2;40;40;40mLoaded 1 file.\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[1;8H\u001b[?25l"] +[3.444742, "o", "\u001b[1;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 1\u001b[1;8H\u001b[38;2;189;174;147m<\u001b[1;22H>\u001b[2;3H\u001b[38;2;250;189;47m 2\u001b[2;8H\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m<\u001b[2;13H\u001b[48;2;40;40;40m>\u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m2\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[2;8H\u001b[?25l"] +[3.740562, "o", "\u001b[2;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 2\u001b[2;8H\u001b[38;2;189;174;147m<\u001b[2;13H>\u001b[3;3H\u001b[38;2;250;189;47m 3\u001b[3;8H\u001b[38;2;80;73;69m\u001b[48;2;102;92;84m\u001b[4m \u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m3\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;8H\u001b[?25l"] +[4.380875, "o", "\u001b[3;8H\u001b[7m\u001b[38;2;80;73;69m\u001b[48;2;40;40;40m \u001b[27m\u001b[48;2;102;92;84m\u001b[4m \u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m2\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;9H\u001b[?25l"] +[4.549032, "o", "\u001b[3;8H\u001b[38;2;80;73;69m\u001b[48;2;40;40;40m \u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m<\u001b[3;12H\u001b[48;2;40;40;40m>\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m3\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;10H\u001b[?25l"] +[4.74059, "o", "\u001b[3;10H\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m<\u001b[48;2;102;92;84m\u001b[4mp\u001b[48;2;40;40;40m\u001b[24m>\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m4\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;11H\u001b[?25l"] +[4.941556, "o", "\u001b[3;10H\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m\u001b[4m<\u001b[24mp\u001b[48;2;102;92;84m\u001b[4m>\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m5\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;12H\u001b[?25l"] +[4.981025, "o", "\u001b[3;10H\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m<\u001b[3;12H>\u001b[38;2;235;219;178m\u001b[48;2;102;92;84m\u001b[4mA\u001b[24;93H\u001b[48;2;80;73;69m\u001b[24m6\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;13H\u001b[?25l"] +[5.021172, "o", "\u001b[3;13H\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mA\u001b[38;2;80;73;69m\u001b[48;2;102;92;84m\u001b[4m \u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;14H\u001b[?25l"] +[5.061483, "o", "\u001b[3;14H\u001b[38;2;80;73;69m\u001b[48;2;40;40;40m \u001b[38;2;235;219;178m\u001b[48;2;102;92;84m\u001b[4mr\u001b[24;93H\u001b[48;2;80;73;69m\u001b[24m8\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;15H\u001b[?25l"] +[5.101105, "o", "\u001b[3;15H\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mr\u001b[48;2;102;92;84m\u001b[4me\u001b[24;93H\u001b[48;2;80;73;69m\u001b[24m9\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;16H\u001b[?25l"] +[5.141151, "o", "\u001b[3;16H\u001b[38;2;235;219;178m\u001b[48;2;40;40;40me\u001b[48;2;102;92;84m\u001b[4mg\u001b[24;83H\u001b[48;2;80;73;69m\u001b[24m1 sel \u001b[24;90H3:10\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;17H\u001b[?25l"] +[5.181313, "o", "\u001b[3;17H\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mg\u001b[48;2;102;92;84m\u001b[4mu\u001b[24;93H\u001b[48;2;80;73;69m\u001b[24m1\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;18H\u001b[?25l"] +[5.221385, "o", "\u001b[3;18H\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mu\u001b[48;2;102;92;84m\u001b[4ml\u001b[24;93H\u001b[48;2;80;73;69m\u001b[24m2\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;19H\u001b[?25l"] +[5.948619, "o", "\u001b[3;13H\u001b[7m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mA\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mregular,\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mole'\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mHTML\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mdocumen\u001b[27m\u001b[48;2;102;92;84m\u001b[4mt\u001b[24;92H\u001b[48;2;80;73;69m\u001b[24m34\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;41H\u001b[?25l"] +[6.573017, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[6.573076, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[6.732802, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mshow-clipboard-provider\u001b[15;32Hr\u001b[15;34Hn-shell-command\u001b[15;63Hclipboard-paste-after\u001b[16;1Hshow-directory\u001b[16;32Hbuff\u001b[16;37Hr-close\u001b[16;63Hcl\u001b[16;66Hpboard-paste-before\u001b[17;1Hset-language\u001b[17;32Hbuff\u001b[17;37Hr-close!\u001b[17;63Hcl\u001b[17;66Hpboard-paste-replace\u001b[18;1Hset-option \u001b[18;32Hbuff\u001b[18;37Hr-close\u001b[18;45Hothers\u001b[18;63Hp\u001b[18;66Hmary-clipboard-paste-after\u001b[19;1Hsort \u001b[19;32Hbuff\u001b[19;37Hr-close\u001b[19;45Hothers!\u001b[19;63Hp\u001b[19;66Hmary-clipboard-paste-befor\u001b[20;1Hindent\u001b[20;8Hstyl\u001b[20;13H \u001b[20;32Hbuffer-close-all\u001b[20;63Hp\u001b[20;66Hmary-clipboard-paste-repla\u001b[21;1Htree-sitter-scop\u001b[21;18Hs \u001b[21;32Hbuffer-close-all!\u001b[21;63Hlsp-workspace-command\u001b[22;1Htree-sitter-highlight-name\u001b[22;32Hbuffer\u001b[22;39Hprevious\u001b[22;63Hlsp-restart\u001b[23;1Hdebug-start \u001b[23;32Hwrite-buffer-close\u001b[23;63Hlsp-stop \u001b[24;1Htree-sitter-subtree\u001b[24;32Hwrite-buffer-close!\u001b[24;63Hvsplit\u001b[25;2H\u001b[48;2;40;40;40ms\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[6.852653, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mset-language \u001b[24;63Hinser\u001b[24;69H-output\u001b[25;3H\u001b["] +[6.852714, "o", "48;2;40;40;40mu\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;4H\u001b[?25h\u001b[2 q"] +[6.948591, "o", "\u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m \u001b[24;63H \u001b[25;4H\u001b[48;2;40;40;40mb\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;5H\u001b[?25h\u001b[2 q"] +[7.012744, "o", "\u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[21;1H│ Display tree sitter subtree under cursor, primarily for debugging queries. │\u001b[22;1H│ Aliases: ts-subtree │\u001b[23;1H└────────────────────────────────────────────────────────────────────────────────────────┘\u001b[24;1H\u001b[1m\u001b[38;2;80;73;69m\u001b[48;2;131;165;152mtree-sitter-subtree\u001b[25;2H\u001b[22m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;21H\u001b[?25h\u001b[2 q"] +[7.469249, "o", "\u001b[20;1H\u001b[48;2;40;40;40m \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;83H1\u001b[24;85Hsel\u001b[24;90H3:34\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;41H\u001b[?25l"] +[7.46998, "o", "\u001b[4;41H\u001b[48;2;60;56;54m \u001b[5;41H \u001b[38;2;189;174;147m(text)\u001b[39m \u001b[6;41H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;41H\u001b[?25l"] +[8.884807, "o", "\u001b[3;10H\u001b[7m\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m

\u001b[3;41H\u001b[38;2;235;219;178mt\u001b[38;2;189;174;147m\u001b[4m<\u001b[24m/p\u001b[27m\u001b[48;2;102;92;84m\u001b[4m>\u001b[4;41H\u001b[39m\u001b[48;2;40;40;40m\u001b[24m \u001b[5;41H \u001b[6;41H \u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m8\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;45H\u001b[?25l"] +[9.636837, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[9.636928, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[9.836636, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mshow-clipboard-provider\u001b[15;32Hr\u001b[15;34Hn-shell-command\u001b[15;63Hclipboard-paste-after\u001b[16;1Hshow-directory\u001b[16;32Hbuff\u001b[16;37Hr-close\u001b[16;63Hcl\u001b[16;66Hpboard-paste-before\u001b[17;1Hset-language\u001b[17;32Hbuff\u001b[17;37Hr-close!\u001b[17;63Hcl\u001b[17;66Hpboard-paste-replace\u001b[18;1Hset-option \u001b[18;32Hbuff\u001b[18;37Hr-close\u001b[18;45Hothers\u001b[18;63Hp\u001b[18;66Hmary-clipboard-paste-after\u001b[19;1Hsort \u001b[19;32Hbuff\u001b[19;37Hr-close\u001b[19;45Hothers!\u001b[19;63Hp\u001b[19;66Hmary-clipboard-paste-befor\u001b[20;1Hindent\u001b[20;8Hstyl\u001b[20;13H \u001b[20;32Hbuffer-close-all\u001b[20;63Hp\u001b[20;66Hmary-clipboard-paste-repla\u001b[21;1Htree-sitter-scop\u001b[21;18Hs \u001b[21;32Hbuffer-close-all!\u001b[21;63Hlsp-workspace-command\u001b[22;1Htree-sitter-highlight-name\u001b[22;32Hbuffer\u001b[22;39Hprevious\u001b[22;63Hlsp-restart\u001b[23;1Hdebug-start \u001b[23;32Hwrite-buffer-close\u001b[23;63Hlsp-stop \u001b[24;1Htree-sitter-subtree\u001b[24;32Hwrite-buffer-close!\u001b[24;63Hvsplit\u001b[25;2H\u001b[48;2;40;40;40ms\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[9.933181, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mset-language \u001b[24;63Hinser\u001b[24;69H-output\u001b[25;3H\u001b["] +[9.933245, "o", "48;2;40;40;40mu\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;4H\u001b[?25h\u001b[2 q"] +[10.012765, "o", "\u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m \u001b[24;63H \u001b[25;4H\u001b[48;2;40;40;40mb\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;5H\u001b[?25h\u001b[2 q"] +[10.108627, "o", "\u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[21;1H│ Display tree sitter subtree under cursor, primarily for debugging queries. │\u001b[22;1H│ Aliases: ts-subtree │\u001b[23;1H└────────────────────────────────────────────────────────────────────────────────────────┘\u001b[24;1H\u001b[1m\u001b[38;2;80;73;69m\u001b[48;2;131;165;152mtree-sitter-subtree\u001b[25;2H\u001b[22m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;21H\u001b[?25h\u001b[2 q"] +[10.332776, "o", "\u001b[20;1H\u001b[48;2;40;40;40m \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;83H1\u001b[24;85Hsel\u001b[24;90H3:38\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;45H\u001b[?25l"] +[10.332963, "o", "\u001b[4;45H\u001b[48;2;60;56;54m \u001b[5;45H \u001b[38;2;189;174;147m(element\u001b[39m \u001b[6;45H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(start_tag\u001b[39m \u001b[7;45H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name))\u001b[39m \u001b[8;45H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(text)\u001b[39m \u001b[9;45H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(end_tag\u001b[39m \u001b[10;45H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name)))\u001b[39m \u001b[11;45H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[3;45H\u001b[?25l"] +[11.75688, "o", "\u001b[2;8H\u001b[7m\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m\u001b[38;2;80;73;69m \u001b[3;3H\u001b[27m\u001b[38;2;124;111;100m 3\u001b[3;8H\u001b[7m\u001b[38;2;80;73;69m \u001b[3;42H\u001b[38;2;189;174;147m<\u001b[3;45H>\u001b[38;2;80;73;69m \u001b[4;8H \u001b[38;2;189;174;147m\u001b[38;2;80;73;69m \u001b[8;45H\u001b[27m\u001b[39m \u001b[9;3H\u001b[38;2;250;189;47m 9\u001b[9;8H\u001b[7m\u001b[38;2;189;174;147m\u001b[4m<\u001b[24m/html\u001b[27m\u001b[48;2;102;92;84m\u001b[4m>\u001b[9;45H\u001b[39m\u001b[48;2;40;40;40m\u001b[24m \u001b[10;45H \u001b[11;45H \u001b[24;83H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m 1 sel\u001b[24;90H 9:7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[9;14H\u001b[?25l"] +[12.396875, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;84H \u001b[24;86H \u001b[24;9"] +[12.396958, "o", "1H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[12.65273, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mshow-clipboard-provider\u001b[15;32Hr\u001b[15;34Hn-shell-command\u001b[15;63Hclipboard-paste-after\u001b[16;1Hshow-directory\u001b[16;32Hbuff\u001b[16;37Hr-close\u001b[16;63Hcl\u001b[16;66Hpboard-paste-before\u001b[17;1Hset-language\u001b[17;32Hbuff\u001b[17;37Hr-close!\u001b[17;63Hcl\u001b[17;66Hpboard-paste-replace\u001b[18;1Hset-option \u001b[18;32Hbuff\u001b[18;37Hr-close\u001b[18;45Hothers\u001b[18;63Hp\u001b[18;66Hmary-clipboard-paste-after\u001b[19;1Hsort \u001b[19;32Hbuff\u001b[19;37Hr-close\u001b[19;45Hothers!\u001b[19;63Hp\u001b[19;66Hmary-clipboard-paste-befor\u001b[20;1Hindent\u001b[20;8Hstyl\u001b[20;13H \u001b[20;32Hbuffer-close-all\u001b[20;63Hp\u001b[20;66Hmary-clipboard-paste-repla\u001b[21;1Htree-sitter-scop\u001b[21;18Hs \u001b[21;32Hbuffer-close-all!\u001b[21;63Hlsp-workspace-command\u001b[22;1Htree-sitter-highlight-name\u001b[22;32Hbuffer\u001b[22;39Hprevious\u001b[22;63Hlsp-restart\u001b[23;1Hdebug-start \u001b[23;32Hwrite-buffer-close\u001b[23;63Hlsp-stop \u001b[24;1Htree-sitter-subtree\u001b[24;32Hwrite-buffer-close!\u001b[24;63Hvsplit\u001b[25;2H\u001b[48;2;40;40;40ms\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[12.732695, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mset-language \u001b[24;63Hinser\u001b[24;69H-output\u001b[25;3H\u001b["] +[12.73275, "o", "48;2;40;40;40mu\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;4H\u001b[?25h\u001b[2 q"] +[12.836587, "o", "\u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m \u001b[24;63H \u001b[25;4H\u001b[48;2;40;40;40mb\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;5H\u001b[?25h\u001b[2 q"] +[12.908639, "o", "\u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[21;1H│ Display tree sitter subtree under cursor, primarily for debugging queries. │\u001b[22;1H│ Aliases: ts-subtree │\u001b[23;1H└────────────────────────────────────────────────────────────────────────────────────────┘\u001b[24;1H\u001b[1m\u001b[38;2;80;73;69m\u001b[48;2;131;165;152mtree-sitter-subtree\u001b[25;2H\u001b[22m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;21H\u001b[?25h\u001b[2 q"] +[13.853074, "o", "\u001b[20;1H\u001b[48;2;40;40;40m \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;84H1\u001b[24;86Hsel\u001b[24;91H9:7\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[9;14H\u001b[?25l"] +[13.853472, "o", "\u001b[1;14H\u001b[48;2;60;56;54m \u001b[2;14H \u001b[38;2;189;174;147m(element\u001b[39m \u001b[3;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(start_tag\u001b[39m \u001b[4;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name))\u001b[39m \u001b[5;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(element\u001b[39m \u001b[6;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(start_tag\u001b[39m \u001b[7;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name))\u001b[39m \u001b[8;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(text)\u001b[39m \u001b[9;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(end_tag\u001b[39m \u001b[10;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name)))\u001b[39m \u001b[11;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(script_element\u001b[39m \u001b[12;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(start_tag\u001b[39m \u001b[13;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name))\u001b[39m \u001b[14;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(raw_text)\u001b[39m \u001b[15;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(end_tag\u001b[39m \u001b[16;14H \u001b[38;"] +[13.853529, "o", "2;235;219;178m \u001b[38;2;189;174;147m(tag_name)))\u001b[39m \u001b[17;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(end_tag\u001b[39m \u001b[18;14H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(tag_name)))\u001b[39m \u001b[19;14H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[9;14H\u001b[?25l"] +[17.021266, "o", "\u001b[1;14H\u001b[38;2;211;134;155m\u001b[48;2;40;40;40mYPE\u001b[38;2;80;73;69m \u001b[38;2;211;134;155mhtml\u001b[38;2;189;174;147m>\u001b[38;2;80;73;69m \u001b[39m \u001b[2;14H\u001b[7m\u001b[38;2;80;73;69m \u001b[27m\u001b[39m \u001b[3;14H\u001b[7m\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mregular,\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mole'\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mHTML\u001b[38;2;80;73;69m \u001b[4;14H\u001b[38;2;189;174;147mipt>\u001b[38;2;80;73;69m \u001b[27m\u001b[39m \u001b[5;14H\u001b[7m\u001b[38;2;252;107;89mt\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199mx\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m1\u001b[38;2;189;174;147m;\u001b[38;2;80;73;69m \u001b[27m\u001b[39m \u001b[6;14H\u001b[7m\u001b[38;2;252;107;89mt\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199my\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m2\u001b[38;2;189;174;147m;\u001b[38;2;80;73;69m \u001b[27m\u001b[39m \u001b[7;14H\u001b[7m\u001b[38;2;254;128;25mnsole\u001b[38;2;189;174;147m.\u001b[38;2;235;219;178mlog\u001b[38;2;189;174;147m(\u001b[38;2;184;187;38m\"Hello,\u001b[38;2;80;73;69m \u001b[38;2;184;187;38mJa\u001b[8;14H\u001b[38;2;189;174;147mript>\u001b"] +[17.02131, "o", "[38;2;80;73;69m \u001b[27m\u001b[39m \u001b[9;14H\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m>\u001b[38;2;80;73;69m\u001b[48;2;40;40;40m\u001b[24m \u001b[39m \u001b[10;14H \u001b[11;14H \u001b[12;14H \u001b[13;14H \u001b[14;14H \u001b[15;14H \u001b[16;14H \u001b[17;14H \u001b[18;14H \u001b[19;14H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[9;14H\u001b[?25l"] +[17.596986, "o", "\u001b[2;8H\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m\u001b[38;2;80;73;69m \u001b[3;8H \u001b[38;2;189;174;147m

\u001b[38;2;235;219;178mA\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mregular,\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mole'\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mHTML\u001b[38;2;80;73;69m \u001b[38;2;235;219;178mdocument\u001b[38;2;189;174;147m

\u001b[38;2;80;73;69m \u001b[4;8H \u001b[38;2;189;174;147m\u001b[38;2;80;73;69m \u001b[9;3H\u001b[38;2;1"] +[17.597023, "o", "24;111;100m 9\u001b[9;8H\u001b[38;2;189;174;147m\u001b[10;8H\u001b[38;2;80;73;69m\u001b[48;2;102;92;84m\u001b[4m \u001b[24;83H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m1 sel \u001b[24;90H10\u001b[24;93H1\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[10;8H\u001b[?25l"] +[17.988894, "o", "\u001b[9;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 9\u001b[9;8H\u001b[38;2;189;174;147m\u001b[4m<\u001b[9;14H\u001b[48;2;102;92;84m>\u001b[10;8H\u001b[38;2;80;73;69m\u001b[48;2;40;40;40m\u001b[24m \u001b[24;83H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m 1 sel\u001b[24;90H 9\u001b[24;93H7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[9;14H\u001b[?25l"] +[18.189411, "o", "\u001b[8;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 8\u001b[8;14H\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4mr\u001b[9;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 9\u001b[9;8H\u001b[38;2;189;174;147m<\u001b[9;14H>\u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m8\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[8;14H\u001b[?25l"] +[18.229341, "o", "\u001b[7;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 7\u001b[7;14H\u001b[38;2;254;128;25m\u001b[48;2;102;92;84m\u001b[4mn\u001b[8;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 8\u001b[8;14H\u001b[38;2;189;174;147mr\u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;14H\u001b[?25l"] +[18.269397, "o", "\u001b[6;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 6\u001b[6;14H\u001b[38;2;252;107;89m\u001b[48;2;102;92;84m\u001b[4mt\u001b[7;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 7\u001b[7;14H\u001b[38;2;254;128;25mn\u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m6\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[6;14H\u001b[?25l"] +[18.309534, "o", "\u001b[5;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 5\u001b[5;14H\u001b[38;2;252;107;89m\u001b[48;2;102;92;84m\u001b[4mt\u001b[6;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 6\u001b[6;14H\u001b[38;2;252;107;89mt\u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m5\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;14H\u001b[?25l"] +[18.348666, "o", "\u001b[5;14H\u001b[7m\u001b[38;2;252;107;89m\u001b[48;2;40;40;40mt\u001b[27m\u001b[38;2;80;73;69m\u001b[48;2;102;92;84m\u001b[4m \u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m8\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;15H\u001b[?25l"] +[18.46077, "o", "\u001b[4;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 4\u001b[4;15H\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4mp\u001b[5;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 5\u001b[5;14H\u001b[38;2;252;107;89mt\u001b[38;2;80;73;69m \u001b[24;91H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m4\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[4;15H\u001b[?25l"] +[18.708924, "o", "\u001b[4;15H\u001b[38;2;189;174;147m\u001b[48;2;40;40;40mp\u001b[48;2;102;92;84m\u001b[4mt\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m9\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[4;16H\u001b[?25l"] +[18.748972, "o", "\u001b[4;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 4\u001b[4;16H\u001b[38;2;189;174;147mt\u001b[5;3H\u001b[38;2;250;189;47m 5\u001b[5;16H\u001b[3m\u001b[38;2;251;241;199m\u001b[48;2;102;92;84m\u001b[4mx\u001b[24;91H\u001b[23m\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m5\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;16H\u001b[?25l"] +[19.628972, "o", "\u001b[5;16H\u001b[7m\u001b[3m\u001b[38;2;251;241;199m\u001b[48;2;40;40;40mx\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[27m\u001b[38;2;211;134;155m\u001b[48;2;102;92;84m\u001b[4m1\u001b[24;83H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m1 sel \u001b[24;90H5:13\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;20H\u001b[?25l"] +[20.460824, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[20.460852, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[20.820775, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;32H \u001b[24;63H \u001b[24;83H1\u001b"] +[20.820836, "o", "[24;85Hsel\u001b[24;90H5:13\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;20H\u001b[?25l"] +[20.821032, "o", "\u001b[6;20H\u001b[48;2;60;56;54m \u001b[7;20H \u001b[38;2;189;174;147m(variable_declarator\u001b[39m \u001b[8;20H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mname\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(identifier)\u001b[39m \u001b[9;20H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mvalue\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(number))\u001b[39m \u001b[10;20H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;20H\u001b[?25l"] +[24.365013, "o", "\u001b[5;12H\u001b[7m\u001b[38;2;252;107;89m\u001b[48;2;40;40;40mlet\u001b[38;2;80;73;69m \u001b[5;20H\u001b[38;2;211;134;155m1\u001b[27m\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m;\u001b[6;20H\u001b[38;2;211;134;155m\u001b[48;2;40;40;40m\u001b[24m2\u001b[38;2;189;174;147m;\u001b[38;2;80;73;69m \u001b[39m \u001b[7;20H\u001b[38;2;235;219;178mlog\u001b[38;2;189;174;147m(\u001b[38;2;184;187;38m\"Hello,\u001b[38;2;80;73;69m \u001b[38;2;184;187;38mJavaScript\u001b[8;20H\u001b[39m \u001b[9;20H \u001b[10;20H \u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m4\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;21H\u001b[?25l"] +[24.748811, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[24.748851, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[24.900648, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mshow-clipboard-provider\u001b[15;32Hr\u001b[15;34Hn-shell-command\u001b[15;63Hclipboard-paste-after\u001b[16;1Hshow-directory\u001b[16;32Hbuff\u001b[16;37Hr-close\u001b[16;63Hcl\u001b[16;66Hpboard-paste-before\u001b[17;1Hset-language\u001b[17;32Hbuff\u001b[17;37Hr-close!\u001b[17;63Hcl\u001b[17;66Hpboard-paste-replace\u001b[18;1Hset-option \u001b[18;32Hbuff\u001b[18;37Hr-close\u001b[18;45Hothers\u001b[18;63Hp\u001b[18;66Hmary-clipboard-paste-after\u001b[19;1Hsort \u001b[19;32Hbuff\u001b[19;37Hr-close\u001b[19;45Hothers!\u001b[19;63Hp\u001b[19;66Hmary-clipboard-paste-befor\u001b[20;1Hindent\u001b[20;8Hstyl\u001b[20;13H \u001b[20;32Hbuffer-close-all\u001b[20;63Hp\u001b[20;66Hmary-clipboard-paste-repla\u001b[21;1Htree-sitter-scop\u001b[21;18Hs \u001b[21;32Hbuffer-close-all!\u001b[21;63Hlsp-workspace-command\u001b[22;1Htree-sitter-highlight-name\u001b[22;32Hbuffer\u001b[22;39Hprevious\u001b[22;63Hlsp-restart\u001b[23;1Hdebug-start \u001b[23;32Hwrite-buffer-close\u001b[23;63Hlsp-stop \u001b[24;1Htree-sitter-subtree\u001b[24;32Hwrite-buffer-close!\u001b[24;63Hvsplit\u001b[25;2H\u001b[48;2;40;40;40ms\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[24.941019, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mset-language \u001b[24;63Hinser\u001b[24;69H-output\u001b[25;3H\u001b["] +[24.941068, "o", "48;2;40;40;40mu\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;4H\u001b[?25h\u001b[2 q"] +[25.060692, "o", "\u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m \u001b[24;63H \u001b[25;4H\u001b[48;2;40;40;40mb\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;5H\u001b[?25h\u001b[2 q"] +[25.140943, "o", "\u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[21;1H│ Display tree sitter subtree under cursor, primarily for debugging queries. │\u001b[22;1H│ Aliases: ts-subtree │\u001b[23;1H└────────────────────────────────────────────────────────────────────────────────────────┘\u001b[24;1H\u001b[1m\u001b[38;2;80;73;69m\u001b[48;2;131;165;152mtree-sitter-subtree\u001b[25;2H\u001b[22m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;21H\u001b[?25h\u001b[2 q"] +[25.348919, "o", "\u001b[20;1H\u001b[48;2;40;40;40m \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;83H1\u001b[24;85Hsel\u001b[24;90H5:14\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;21H\u001b[?25l"] +[25.349229, "o", "\u001b[6;21H\u001b[48;2;60;56;54m \u001b[7;21H \u001b[38;2;189;174;147m(lexical_declaration\u001b[39m \u001b[8;21H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(variable_declarator\u001b[39m \u001b[9;21H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mname\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(identifier)\u001b[39m \u001b[10;21H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mvalue\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(number)))\u001b[39m \u001b[11;21H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;21H\u001b[?25l"] +[26.677321, "o", "\u001b[5;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 5\u001b[5;12H\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199mx\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m1\u001b[38;2;189;174;147m;\u001b[6;3H\u001b[38;2;250;189;47m 6\u001b[6;21H\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m;\u001b[38;2;80;73;69m\u001b[48;2;40;40;40m\u001b[24m \u001b[39m \u001b[7;21H\u001b[38;2;235;219;178mog\u001b[38;2;189;174;147m(\u001b[38;2;184;187;38m\"Hello,\u001b[38;2;80;73;69m \u001b[38;2;184;187;38mJavaScript!\"\u001b[38;2;189;174;147m)\u001b[8;21H\u001b[39m \u001b[9;21H \u001b[10;21H \u001b[11;21H \u001b[24;90H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m6\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[6;21H\u001b[?25l"] +[26.868813, "o", "\u001b[6;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 6\u001b[6;21H\u001b[38;2;189;174;147m;\u001b[7;3H\u001b[38;2;250;189;47m 7\u001b[7;21H\u001b[38;2;235;219;178m\u001b[48;2;102;92;84m\u001b[4mo\u001b[24;90H\u001b[48;2;80;73;69m\u001b[24m7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;21H\u001b[?25l"] +[27.196915, "o", "\u001b[7;21H\u001b[7m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mo\u001b[27m\u001b[48;2;102;92;84m\u001b[4mg\u001b[24;93H\u001b[48;2;80;73;69m\u001b[24m5\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;22H\u001b[?25l"] +[27.340885, "o", "\u001b[7;21H\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mog\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m(\u001b[7;44H\u001b[48;2;40;40;40m)\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m6\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;23H\u001b[?25l"] +[27.541589, "o", "\u001b[7;23H\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m(\u001b[38;2;184;187;38m\u001b[48;2;102;92;84m\u001b[4m\"\u001b[7;43H\u001b[48;2;40;40;40m\"\u001b[38;2;189;174;147m\u001b[24m)\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;24H\u001b[?25l"] +[27.58153, "o", "\u001b[7;24H\u001b[38;2;184;187;38m\u001b[48;2;40;40;40m\"\u001b[48;2;102;92;84m\u001b[4mH\u001b[7;43H\u001b[48;2;40;40;40m\u001b[24m\"\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m8\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;25H\u001b[?25l"] +[27.621345, "o", "\u001b[7;25H\u001b[38;2;184;187;38m\u001b[48;2;40;40;40mH\u001b[48;2;102;92;84m\u001b[4me\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m9\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;26H\u001b[?25l"] +[27.661384, "o", "\u001b[7;26H\u001b[38;2;184;187;38m\u001b[48;2;40;40;40me\u001b[48;2;102;92;84m\u001b[4ml\u001b[24;92H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m20\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;27H\u001b[?25l"] +[28.092848, "o", "\u001b[7;25H\u001b[7m\u001b[38;2;184;187;38m\u001b[48;2;40;40;40mHello,\u001b[38;2;80;73;69m \u001b[38;2;184;187;38mJavaScript\u001b[27m\u001b[48;2;102;92;84m\u001b[4m!\u001b[24;92H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m35\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;42H\u001b[?25l"] +[28.340852, "o", "\u001b[7;24H\u001b[7m\u001b[38;2;184;187;38m\u001b[48;2;40;40;40m\u001b[4m\"\u001b[7;42H\u001b[24m!\u001b[27m\u001b[48;2;102;92;84m\u001b[4m\"\u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m6\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;43H\u001b[?25l"] +[29.076907, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[29.07702, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[29.260851, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mshow-clipboard-provider\u001b[15;32Hr\u001b[15;34Hn-shell-command\u001b[15;63Hclipboard-paste-after\u001b[16;1Hshow-directory\u001b[16;32Hbuff\u001b[16;37Hr-close\u001b[16;63Hcl\u001b[16;66Hpboard-paste-before\u001b[17;1Hset-language\u001b[17;32Hbuff\u001b[17;37Hr-close!\u001b[17;63Hcl\u001b[17;66Hpboard-paste-replace\u001b[18;1Hset-option \u001b[18;32Hbuff\u001b[18;37Hr-close\u001b[18;45Hothers\u001b[18;63Hp\u001b[18;66Hmary-clipboard-paste-after\u001b[19;1Hsort \u001b[19;32Hbuff\u001b[19;37Hr-close\u001b[19;45Hothers!\u001b[19;63Hp\u001b[19;66Hmary-clipboard-paste-befor\u001b[20;1Hindent\u001b[20;8Hstyl\u001b[20;13H \u001b[20;32Hbuffer-close-all\u001b[20;63Hp\u001b[20;66Hmary-clipboard-paste-repla\u001b[21;1Htree-sitter-scop\u001b[21;18Hs \u001b[21;32Hbuffer-close-all!\u001b[21;63Hlsp-workspace-command\u001b[22;1Htree-sitter-highlight-name\u001b[22;32Hbuffer\u001b[22;39Hprevious\u001b[22;63Hlsp-restart\u001b[23;1Hdebug-start \u001b[23;32Hwrite-buffer-close\u001b[23;63Hlsp-stop \u001b[24;1Htree-sitter-subtree\u001b[24;32Hwrite-buffer-close!\u001b[24;63Hvsplit\u001b[25;2H\u001b[48;2;40;40;40ms\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[29.332872, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mset-language \u001b[24;63Hinser\u001b[24;69H-output\u001b[25;3H\u001b["] +[29.33292, "o", "48;2;40;40;40mu\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;4H\u001b[?25h\u001b[2 q"] +[29.46078, "o", "\u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m \u001b[24;63H \u001b[25;4H\u001b[48;2;40;40;40mb\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;5H\u001b[?25h\u001b[2 q"] +[29.524792, "o", "\u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[21;1H│ Display tree sitter subtree under cursor, primarily for debugging queries. │\u001b[22;1H│ Aliases: ts-subtree │\u001b[23;1H└────────────────────────────────────────────────────────────────────────────────────────┘\u001b[24;1H\u001b[1m\u001b[38;2;80;73;69m\u001b[48;2;131;165;152mtree-sitter-subtree\u001b[25;2H\u001b[22m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;21H\u001b[?25h\u001b[2 q"] +[29.700827, "o", "\u001b[20;1H\u001b[48;2;40;40;40m \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;83H1\u001b[24;85Hsel\u001b[24;90H7:36\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;43H\u001b[?25l"] +[29.701076, "o", "\u001b[8;43H\u001b[48;2;60;56;54m \u001b[9;43H \u001b[38;2;189;174;147m(string\u001b[39m \u001b[10;43H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(string_fragment))\u001b[39m \u001b[11;43H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;43H\u001b[?25l"] +[30.932945, "o", "\u001b[7;23H\u001b[7m\u001b[38;2;189;174;147m\u001b[48;2;40;40;40m\u001b[4m(\u001b[38;2;184;187;38m\u001b[24m\"\u001b[7;43H\"\u001b[27m\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m)\u001b[8;43H\u001b[39m\u001b[48;2;40;40;40m\u001b[24m \u001b[9;43H \u001b[10;43H \u001b[11;43H \u001b[24;93H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m7\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;44H\u001b[?25l"] +[31.300938, "o", "\u001b[7;12H\u001b[7m\u001b[38;2;254;128;25m\u001b[48;2;40;40;40mconsole\u001b[38;2;189;174;147m.\u001b[38;2;235;219;178mlog\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;44H\u001b[?25l"] +[31.740942, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[31.741025, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[31.908917, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mshow-clipboard-provider\u001b[15;32Hr\u001b[15;34Hn-shell-command\u001b[15;63Hclipboard-paste-after\u001b[16;1Hshow-directory\u001b[16;32Hbuff\u001b[16;37Hr-close\u001b[16;63Hcl\u001b[16;66Hpboard-paste-before\u001b[17;1Hset-language\u001b[17;32Hbuff\u001b[17;37Hr-close!\u001b[17;63Hcl\u001b[17;66Hpboard-paste-replace\u001b[18;1Hset-option \u001b[18;32Hbuff\u001b[18;37Hr-close\u001b[18;45Hothers\u001b[18;63Hp\u001b[18;66Hmary-clipboard-paste-after\u001b[19;1Hsort \u001b[19;32Hbuff\u001b[19;37Hr-close\u001b[19;45Hothers!\u001b[19;63Hp\u001b[19;66Hmary-clipboard-paste-befor\u001b[20;1Hindent\u001b[20;8Hstyl\u001b[20;13H \u001b[20;32Hbuffer-close-all\u001b[20;63Hp\u001b[20;66Hmary-clipboard-paste-repla\u001b[21;1Htree-sitter-scop\u001b[21;18Hs \u001b[21;32Hbuffer-close-all!\u001b[21;63Hlsp-workspace-command\u001b[22;1Htree-sitter-highlight-name\u001b[22;32Hbuffer\u001b[22;39Hprevious\u001b[22;63Hlsp-restart\u001b[23;1Hdebug-start \u001b[23;32Hwrite-buffer-close\u001b[23;63Hlsp-stop \u001b[24;1Htree-sitter-subtree\u001b[24;32Hwrite-buffer-close!\u001b[24;63Hvsplit\u001b[25;2H\u001b[48;2;40;40;40ms\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[31.980832, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H \u001b[18;1H \u001b[19;1H \u001b[20;1H \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mset-language \u001b[24;63Hinser\u001b[24;69H-output\u001b[25;3H\u001b["] +[31.98088, "o", "48;2;40;40;40mu\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;4H\u001b[?25h\u001b[2 q"] +[32.084751, "o", "\u001b[24;32H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m \u001b[24;63H \u001b[25;4H\u001b[48;2;40;40;40mb\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;5H\u001b[?25h\u001b[2 q"] +[32.196826, "o", "\u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[21;1H│ Display tree sitter subtree under cursor, primarily for debugging queries. │\u001b[22;1H│ Aliases: ts-subtree │\u001b[23;1H└────────────────────────────────────────────────────────────────────────────────────────┘\u001b[24;1H\u001b[1m\u001b[38;2;80;73;69m\u001b[48;2;131;165;152mtree-sitter-subtree\u001b[25;2H\u001b[22m\u001b[38;2;235;219;178m\u001b[48;2;40;40;40mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;21H\u001b[?25h\u001b[2 q"] +[32.388932, "o", "\u001b[20;1H\u001b[48;2;40;40;40m \u001b[21;1H \u001b[22;1H \u001b[23;1H \u001b[24;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m NOR example.html\u001b[24;83H1\u001b[24;85Hsel\u001b[24;90H7:37\u001b[25;1H\u001b[39m\u001b[48;2;40;40;40m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;44H\u001b[?25l"] +[32.389277, "o", "\u001b[8;44H\u001b[48;2;60;56;54m \u001b[9;44H \u001b[38;2;189;174;147m(call_expression\u001b[39m \u001b[10;44H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mfunction\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(member_expression\u001b[39m \u001b[11;44H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mobject\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(identifier)\u001b[39m \u001b[12;44H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152mproperty\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(property_identifier))\u001b[39m \u001b[13;44H \u001b[38;2;235;219;178m \u001b[38;2;131;165;152marguments\u001b[38;2;189;174;147m:\u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(arguments\u001b[39m \u001b[14;44H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(string\u001b[39m \u001b[15;44H \u001b[38;2;235;219;178m \u001b[38;2;189;174;147m(string_fragment))))\u001b[39m \u001b[16;44H \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;44H\u001b[?25l"] +[33.645, "o", "\u001b[6;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 6\u001b[6;12H\u001b[7m\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199my\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m2\u001b[27m\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m;\u001b[7;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 7\u001b[7;12H\u001b[38;2;254;128;25mconsole\u001b[38;2;189;174;147m.\u001b[38;2;235;219;178mlog\u001b[38;2;189;174;147m(\u001b[38;2;184;187;38m\"Hello,\u001b[38;2;80;73;69m \u001b[38;2;184;187;38mJavaScript!\"\u001b[38;2;189;174;147m)\u001b[8;44H\u001b[39m \u001b[9;44H \u001b[10;44H \u001b[11;44H \u001b[12;44H \u001b[13;44H \u001b[14;44H \u001b[15;44H \u001b[16;44H \u001b[24;90H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m6\u001b[24;92H14\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[6;21H\u001b[?25l"] +[34.156916, "o", "\u001b[5;3H\u001b[38;2;250;189;47m\u001b[48;2;40;40;40m 5\u001b[5;12H\u001b[7m\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199mx\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m1\u001b[27m\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m;\u001b[6;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m\u001b[24m 6\u001b[6;12H\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199my\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m2\u001b[38;2;189;174;147m;\u001b[24;90H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m5\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[5;21H\u001b[?25l"] +[34.524843, "o", "\u001b[5;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 5\u001b[5;12H\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199mx\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m1\u001b[38;2;189;174;147m;\u001b[6;3H\u001b[38;2;250;189;47m 6\u001b[6;12H\u001b[7m\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199my\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m2\u001b[27m\u001b[38;2;189;174;147m\u001b[48;2;102;92;84m\u001b[4m;\u001b[24;90H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m6\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[6;21H\u001b[?25l"] +[34.780984, "o", "\u001b[6;3H\u001b[38;2;124;111;100m\u001b[48;2;40;40;40m 6\u001b[6;12H\u001b[38;2;252;107;89mlet\u001b[38;2;80;73;69m \u001b[3m\u001b[38;2;251;241;199my\u001b[23m\u001b[38;2;80;73;69m \u001b[38;2;131;165;152m=\u001b[38;2;80;73;69m \u001b[38;2;211;134;155m2\u001b[38;2;189;174;147m;\u001b[7;3H\u001b[38;2;250;189;47m 7\u001b[7;12H\u001b[7m\u001b[38;2;254;128;25mconsole\u001b[38;2;189;174;147m.\u001b[38;2;235;219;178mlog\u001b[38;2;189;174;147m(\u001b[38;2;184;187;38m\"Hello,\u001b[38;2;80;73;69m \u001b[38;2;184;187;38mJavaScript!\"\u001b[38;2;189;174;147m)\u001b[27m\u001b[48;2;102;92;84m\u001b[4m;\u001b[24;90H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69m\u001b[24m7\u001b[24;92H38\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;45H\u001b[?25l"] +[35.260867, "o", "\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[7;45H\u001b[?25l"] +[35.365048, "o", "\u001b[15;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mquit buffer-previous later \u001b[16;1Hquit! write write-quit \u001b[17;1Hopen write! write-quit! \u001b[18;1Hbuffer-close write-buffer-close write-all \u001b[19;1Hbuffer-close! write-buffer-close! write-all! \u001b[20;1Hbuffer-close-others new write-quit-all \u001b[21;1Hbuffer-close-others! format write-quit-all! \u001b[22;1Hbuffer-close-all indent-style quit-all \u001b[23;1Hbuffer-close-all! line-ending quit-all! \u001b[24;1Hbuffer-next \u001b[24;32Hearlier\u001b[24;63Hcquit\u001b[24;83H \u001b[24;85H \u001b[24;9"] +[35.365106, "o", "0H \u001b[25;1H\u001b[48;2;40;40;40m:\u001b[38;2;146;131;116mtree-sitter-subtree\u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;2H\u001b[?25h\u001b[2 q"] +[35.644906, "o", "\u001b[15;1H\u001b[48;2;40;40;40m \u001b[16;1H \u001b[17;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m┌────────────────────────────────────────────────────────────────────────────────────────┐\u001b[39m\u001b[48;2;40;40;40m \u001b[18;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m│ Close the current view. │\u001b[39m\u001b[48;2;40;40;40m \u001b[19;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m│ Aliases: q │\u001b[39m\u001b[48;2;40;40;40m \u001b[20;1H\u001b[38;2;235;219;178m\u001b[48;2;60;56;54m└──────────────────────────────────"] +[35.644959, "o", "──────────────────────────────────────────────────────┘\u001b[39m\u001b[48;2;40;40;40m \u001b[21;1H\u001b[38;2;235;219;178m\u001b[48;2;80;73;69mq\u001b[21;3Hit \u001b[21;32Hwrite-quit\u001b[21;63Hcquit \u001b[22;1Hq\u001b[22;3Hit! \u001b[22;32Hwrite-quit! \u001b[22;63Hcquit! \u001b[23;1Hq\u001b[23;3Hit-all \u001b[23;32Hwrite-qu\u001b[23;41Ht-all\u001b[23;63H \u001b[24;1Hq\u001b[24;3Hit-all! \u001b[24;32Hwrite-quit-all!\u001b[24;63H \u001b[25;2H\u001b[48;2;40;40;40mq\u001b[39m \u001b[59m\u001b[39m\u001b[49m\u001b[0m\u001b[25;3H\u001b[?25h\u001b[2 q"] +[35.781085, "o", "\u001b[?25h\u001b[2 q\u001b[?12l\u001b[?25h\u001b[?1006l\u001b[?1015l\u001b[?1003l\u001b[?1002l\u001b[?1000l\u001b[?2004l\u001b[?1004l\u001b[?1049l"] +[35.785322, "o", "\u001b[2m⏎\u001b(B\u001b[m \r⏎ \r\u001b[K"] +[35.78978, "o", "\u001b[?2004h"] +[35.809087, "o", "\u001b]0;~\u0007\u001b[30m\u001b(B\u001b[m\u001b[92mmichael\u001b(B\u001b[m@\u001b(B\u001b[mmango2\u001b(B\u001b[m \u001b[32m~\u001b(B\u001b[m\u001b(B\u001b[m> \u001b[K\r\u001b[85C \u001b[38;2;85;85;85m09:50:32\u001b(B\u001b[m\r\u001b[85C\r\u001b[18C"] +[36.244634, "o", "\r\n\u001b[30m\u001b(B\u001b[m\u001b[30m\u001b(B\u001b[m"] +[36.244698, "o", "\u001b[?2004l"]