Helix IDE
- Doc, repo.
- Tutorial is available as
hx --tutoror:tutor. - Modes:
C-wwindow (C-w wnext window)]right bracket goto next (]ddiagnostic;]ffunction)ggoto (gddefinition;gsfirst non-blank in line;gnnext buffer)iinsert (C-cclose popup;C-kdelete to end of line)mmatch (mimselect inside matching pair;mi"select inside double quotes;ms"surround selection with double quotes);mafselect function definition;matselect type (class) definitionspace?open searchable command palette (%[col]followed by string to restrict search to a column)kdocumentationffile picker (C-nnext;C-pprevious;C-vopen vertical;C-sopen horizontal)'Reopen previous picker/Global multi-file search;rGlobal multi-file replace symbol (place cursor on symbol first)
vvisual selectzview (ztalign to window top)
- Normal mode:
[n]xselect lines; Undo by switching to visual select and moving- Tree-sitter:
A-p(previous),A-o(extend),A-i(reduce) andA-n(next) allow you to move the selection according to its location in the syntax tree Ainsert at end of line;Iinsert at first non-whitespace in lineA-;Goto other end of selection- Create cursor on next line:
C - Make selection the search string:
* - Collapse selection onto a single cursor
; - Swap case:
~; Lowercase:` wstart of next word;eend of current word;bbeginning of current word (WEBfor WORD movement)ffind next occurance of character (Ffor previous);tandTare similar but does not include character- Jumplist/history:
C-iin/forwards;C-oout/backwards;C-sadd C-ctoggle commentQtoggle recording;qplay recording
- Commands:
- Deduplicate:
%;:pipe sort;:pipe uniq(wrap selected text::pipe fmt -w 80) - Make whitespace visible:
:set whitespace.render all - Open an arbitrary file:
:o - Replace all:
%select allsselect matches, followed by old string/regex and<CR>creplace all with cursors, followed by new string<ESC>,deactivate and deselect cursors
:insert-outputto run shell command and insert its output.
- Deduplicate:
Configuration
Uses https://github.com/ahernp/config/tree/master/files/helix.
Language servers
Check: hx --health [python|javascript|html|css]
- Python (
pylsp):pip install python-lsp-server - Javascript:
sudo npm install -g typescript typescript-language-server - CSS, HTML and JSON:
sudo npm i -g vscode-langservers-extracted