dotfiles/dot_config/helix/languages.toml
2026-01-28 17:46:39 +00:00

126 lines
5.2 KiB
TOML

# Helix Language Server Configuration
# Auto-format on save and LSP settings per language
# ─────────────────────────────────────────────────────────────
# Rust
# ─────────────────────────────────────────────────────────────
[[language]]
name = "rust"
auto-format = true
[language-server.rust-analyzer.config]
check.command = "clippy"
cargo.features = "all"
# ─────────────────────────────────────────────────────────────
# Python
# ─────────────────────────────────────────────────────────────
[[language]]
name = "python"
auto-format = true
language-servers = ["ruff", "pyright"]
[language-server.ruff]
command = "ruff"
args = ["server"]
[language-server.pyright]
command = "pyright-langserver"
args = ["--stdio"]
# ─────────────────────────────────────────────────────────────
# JavaScript/TypeScript
# ─────────────────────────────────────────────────────────────
[[language]]
name = "javascript"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "javascript"] }
[[language]]
name = "typescript"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "typescript"] }
[[language]]
name = "tsx"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "typescript"] }
[[language]]
name = "jsx"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "javascript"] }
# ─────────────────────────────────────────────────────────────
# Web Languages
# ─────────────────────────────────────────────────────────────
[[language]]
name = "html"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "html"] }
[[language]]
name = "css"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "css"] }
[[language]]
name = "json"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "json"] }
# ─────────────────────────────────────────────────────────────
# Go
# ─────────────────────────────────────────────────────────────
[[language]]
name = "go"
auto-format = true
# ─────────────────────────────────────────────────────────────
# Shell
# ─────────────────────────────────────────────────────────────
[[language]]
name = "bash"
auto-format = true
formatter = { command = "shfmt", args = ["-i", "4"] }
[[language]]
name = "fish"
auto-format = false
# ─────────────────────────────────────────────────────────────
# Markdown
# ─────────────────────────────────────────────────────────────
[[language]]
name = "markdown"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "markdown"] }
# ─────────────────────────────────────────────────────────────
# TOML/YAML
# ─────────────────────────────────────────────────────────────
[[language]]
name = "toml"
auto-format = true
[[language]]
name = "yaml"
auto-format = true
formatter = { command = "prettier", args = ["--parser", "yaml"] }
# ─────────────────────────────────────────────────────────────
# Nix
# ─────────────────────────────────────────────────────────────
[[language]]
name = "nix"
auto-format = true
formatter = { command = "nixfmt" }