Helix IDE

Use case

Code Editor. Full keyboard. Search. Autocompletions. Suggestions.

Set up Helix IDE

flatpak install flathub com.helix_editor.Helix

Open Helix and Config

hx
:config-open

Config inline suggestions

# config.toml
theme = "base16_terminal"

[editor]
color-modes = true
end-of-line-diagnostics = "hint"

[editor.inline-diagnostics]
cursor-line = "warning"

[editor.lsp]
display-inlay-hints = true

[keys.normal]
C-g = [":new", ":insert-output lazygit", ":buffer-close!", ":redraw"]

Language Server Protocol

  • After install of language servers preferred preferred.
  • Modify languages config and use:
# languages.toml
[language-server.astro-ls]
command = "astro-ls"
args = ["--stdio"]
config = {typescript = {tsdk = "/Users/user/.bun/install/global/node_modules/typescript/lib"}, environment = "node"}

[[language]]
name = "astro"
auto-format = true
language-servers = [ "astro-ls" ]

[[language]]
name = "go"
auto-format = true
formatter = { command = "goimports" }

[[language]]
name = "python"
language-servers = ["pyrefly", "pyright", "ruff", "pylyzer"]
roots = ["pyrefly.toml", "pyproject.toml", ".git"]
formatter = { command = "ruff", args = ["format", "-"] }
[language-server.pyright.config.python.analysis]
typeCheckingMode = "basic"
[language-server.ruff]
command = "ruff"
args = ["server"]
[language-server.pylyzer]
command = "pylyzer"
args = ["--server"]
[language-server.pyrefly]
command = "pyrefly"
args = ["lsp"]


[language-server.rust-analyzer.config.check]
command = "clippy"

[language-server.rust-analyzer.config.cargo]
features = "all"

[language-server.sql-language-server]
command = "sql-language-server"
args = ["up", "--method", "stdio"]

[[language]]
name = "sql"
language-servers = [ "sql-language-server" ]

[[language]]
name = "toml"
formatter = { command = "taplo", args = ["fmt", "-"] }

Features Overview

  • Multiple selections
  • Tree-sitter integration
  • Powerful code manipulation
  • Language server support
  • Built in Rust, for the terminal
  • Modern builtin features

Key Board COMMANDS

Hightlights:

  • SPACE (workspace)
  • ESC : write_command (general commands)
  • g (file commands)

In command logic loader mode:

  • Autocomplete: CTRL + x
  • Show Docs: SPACE + k
  • Scroll Docs: CTRL+D and CTRL + U
  • Go to definition: gd
  • Go Backwards and Forward: CTRL + O and CTRL+I
  • Debug: SPACE + G

In Kate IDE to use Helix IDE from integrated terminal Konsole and enter in "normal_mode" usually with key "esc" after enter in insert mode with "i" to return to "normal_mode"" use instead

  • Ctrl + esc

Advantage?

Plug and play, ready to use.