|
|
|
@ -302,8 +302,8 @@ will move the selection over to the "func" <code>identifier</code>.</p
|
|
|
|
|
<p><img src="https://user-images.githubusercontent.com/23398472/124231131-81a4bb00-db2d-11eb-9d10-8e577ca7b177.gif" alt="textobject-demo" />
|
|
|
|
|
<img src="https://user-images.githubusercontent.com/23398472/132537398-2a2e0a54-582b-44ab-a77f-eb818942203d.gif" alt="textobject-treesitter-demo" /></p>
|
|
|
|
|
<ul>
|
|
|
|
|
<li><code>ma</code> - Select around the object (<code>va</code> in vim, <code><alt-a></code> in kakoune)</li>
|
|
|
|
|
<li><code>mi</code> - Select inside the object (<code>vi</code> in vim, <code><alt-i></code> in kakoune)</li>
|
|
|
|
|
<li><code>ma</code> - Select around the object (<code>va</code> in Vim, <code><alt-a></code> in Kakoune)</li>
|
|
|
|
|
<li><code>mi</code> - Select inside the object (<code>vi</code> in Vim, <code><alt-i></code> in Kakoune)</li>
|
|
|
|
|
</ul>
|
|
|
|
|
<div class="table-wrapper"><table><thead><tr><th>Key after <code>mi</code> or <code>ma</code></th><th>Textobject selected</th></tr></thead><tbody>
|
|
|
|
|
<tr><td><code>w</code></td><td>Word</td></tr>
|
|
|
|
@ -378,7 +378,7 @@ and therefore requires the corresponding query file to work properly.</p>
|
|
|
|
|
<h2 id="normal-mode"><a class="header" href="#normal-mode">Normal mode</a></h2>
|
|
|
|
|
<h3 id="movement"><a class="header" href="#movement">Movement</a></h3>
|
|
|
|
|
<blockquote>
|
|
|
|
|
<p>NOTE: Unlike vim, <code>f</code>, <code>F</code>, <code>t</code> and <code>T</code> are not confined to the current line.</p>
|
|
|
|
|
<p>NOTE: Unlike Vim, <code>f</code>, <code>F</code>, <code>t</code> and <code>T</code> are not confined to the current line.</p>
|
|
|
|
|
</blockquote>
|
|
|
|
|
<div class="table-wrapper"><table><thead><tr><th>Key</th><th>Description</th><th>Command</th></tr></thead><tbody>
|
|
|
|
|
<tr><td><code>h</code>, <code>Left</code></td><td>Move left</td><td><code>move_char_left</code></td></tr>
|
|
|
|
@ -563,7 +563,7 @@ and <a href="./usage.html#textobject">textobject</a> usage.</p>
|
|
|
|
|
</div>
|
|
|
|
|
<p>TODO: Mappings for selecting syntax nodes (a superset of <code>[</code>).</p>
|
|
|
|
|
<h4 id="window-mode"><a class="header" href="#window-mode">Window mode</a></h4>
|
|
|
|
|
<p>This layer is similar to vim keybindings as kakoune does not support window.</p>
|
|
|
|
|
<p>This layer is similar to Vim keybindings as Kakoune does not support window.</p>
|
|
|
|
|
<div class="table-wrapper"><table><thead><tr><th>Key</th><th>Description</th><th>Command</th></tr></thead><tbody>
|
|
|
|
|
<tr><td><code>w</code>, <code>Ctrl-w</code></td><td>Switch to next window</td><td><code>rotate_view</code></td></tr>
|
|
|
|
|
<tr><td><code>v</code>, <code>Ctrl-v</code></td><td>Vertical right split</td><td><code>vsplit</code></td></tr>
|
|
|
|
@ -736,7 +736,7 @@ you to selectively add search terms to your selections.</p>
|
|
|
|
|
<tr><td><code>Enter</code></td><td>Open selected</td></tr>
|
|
|
|
|
</tbody></table>
|
|
|
|
|
</div><div style="break-before: page; page-break-before: always;"></div><h1 id="commands"><a class="header" href="#commands">Commands</a></h1>
|
|
|
|
|
<p>Command mode can be activated by pressing <code>:</code>, similar to vim. Built-in commands:</p>
|
|
|
|
|
<p>Command mode can be activated by pressing <code>:</code>, similar to Vim. Built-in commands:</p>
|
|
|
|
|
<div class="table-wrapper"><table><thead><tr><th>Name</th><th>Description</th></tr></thead><tbody>
|
|
|
|
|
<tr><td><code>:quit</code>, <code>:q</code></td><td>Close the current view.</td></tr>
|
|
|
|
|
<tr><td><code>:quit!</code>, <code>:q!</code></td><td>Force close the current view, ignoring unsaved changes.</td></tr>
|
|
|
|
@ -939,8 +939,8 @@ Languages</a> guide for more language configuration information.</p>
|
|
|
|
|
<tr><td>zig</td><td>✓</td><td></td><td>✓</td><td><code>zls</code></td></tr>
|
|
|
|
|
</tbody></table>
|
|
|
|
|
</div><div style="break-before: page; page-break-before: always;"></div><h1 id="migrating-from-vim"><a class="header" href="#migrating-from-vim">Migrating from Vim</a></h1>
|
|
|
|
|
<p>Helix's editing model is strongly inspired from vim and kakoune, and a notable
|
|
|
|
|
difference from vim (and the most striking similarity to kakoune) is that Helix
|
|
|
|
|
<p>Helix's editing model is strongly inspired from Vim and Kakoune, and a notable
|
|
|
|
|
difference from Vim (and the most striking similarity to Kakoune) is that Helix
|
|
|
|
|
follows the <code>selection → action</code> model. This means that the whatever you are
|
|
|
|
|
going to act on (a word, a paragraph, a line, etc) is selected first and the
|
|
|
|
|
action itself (delete, change, yank, etc) comes second. A cursor is simply a
|
|
|
|
@ -1627,7 +1627,7 @@ language with the path <code>runtime/queries/<name>/</code>. The tree-sitt
|
|
|
|
|
gives more info on how to write queries.</p>
|
|
|
|
|
<blockquote>
|
|
|
|
|
<p>NOTE: When evaluating queries, the first matching query takes
|
|
|
|
|
precedence, which is different from other editors like neovim where
|
|
|
|
|
precedence, which is different from other editors like Neovim where
|
|
|
|
|
the last matching query supersedes the ones before it. See
|
|
|
|
|
<a href="https://github.com/helix-editor/helix/pull/1170#issuecomment-997294090">this issue</a> for an example.</p>
|
|
|
|
|
</blockquote>
|
|
|
|
|