update helix config for web development
This commit is contained in:
parent
c6a246a73b
commit
fb9f7e4997
3 changed files with 87 additions and 32 deletions
|
@ -1,12 +1,13 @@
|
|||
theme = "heisenberg2"
|
||||
theme = "everforest_dark"
|
||||
|
||||
[editor]
|
||||
line-number = "absolute"
|
||||
bufferline = "multiple"
|
||||
text-width = 120
|
||||
cursorline = true
|
||||
mouse = true
|
||||
rulers = [120]
|
||||
bufferline = "multiple"
|
||||
|
||||
[editor.statusline]
|
||||
left = ["mode", "file-name", "spinner"]
|
||||
center = ["diagnostics"]
|
||||
right = ["selections", "primary-selection-length", "file-type", "file-encoding", "position-percentage", "position"]
|
||||
|
||||
[editor.cursor-shape]
|
||||
insert = "bar"
|
||||
|
@ -25,8 +26,8 @@ render = "all"
|
|||
space = "·"
|
||||
nbsp = "⍽"
|
||||
tab = "→"
|
||||
tabpad = "·" # Tabs will look like "→···" (depending on tab width)
|
||||
newline = "¬" #"⏎"
|
||||
tabpad = "·" # Tabs will look like "→···" (depending on tab width)
|
||||
|
||||
[editor.lsp]
|
||||
enable = true
|
||||
|
@ -43,29 +44,12 @@ max-indent-retain = 40
|
|||
wrap-indicator = "↪"
|
||||
wrap-at-text-width = false
|
||||
|
||||
[editor.file-picker]
|
||||
hidden = false
|
||||
|
||||
[editor.statusline]
|
||||
left = ["mode", "spinner", "version-control", "file-name", "file-type", "file-encoding"]
|
||||
center = ["diagnostics"]
|
||||
right = ["selections", "primary-selection-length", "position-percentage", "position"]
|
||||
|
||||
|
||||
[keys.normal]
|
||||
"A-," = "goto_previous_buffer"
|
||||
"A-." = "goto_next_buffer"
|
||||
"A-w" = ":buffer-close"
|
||||
"A-/" = "repeat_last_motion"
|
||||
|
||||
A-x = "extend_to_line_bounds"
|
||||
X = ["extend_line_up", "extend_to_line_bounds"]
|
||||
X = "extend_line_above"
|
||||
D = "delete_char_backward"
|
||||
q = "move_prev_word_start"
|
||||
Q = "move_prev_long_word_start"
|
||||
|
||||
[keys.select]
|
||||
A-x = "extend_to_line_bounds"
|
||||
X = ["extend_line_up", "extend_to_line_bounds"]
|
||||
q = "extend_prev_word_start"
|
||||
Q = "extend_prev_long_word_start"
|
||||
|
|
2
dot.config/helix/install_language_servers.sh
Normal file
2
dot.config/helix/install_language_servers.sh
Normal file
|
@ -0,0 +1,2 @@
|
|||
#!/bin/sh
|
||||
npm i -g vscode-langservers-extracted typescript-language-server emmet-ls @vue/language-server yaml-language-server
|
|
@ -9,22 +9,91 @@ name = "html"
|
|||
'`' = '`'
|
||||
'<' = '>'
|
||||
|
||||
[language-server.efm]
|
||||
command = "efm-langserver"
|
||||
config.documentFormatting = true
|
||||
[language-server.emmet-ls]
|
||||
command = "emmet-ls"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language-server.eslint]
|
||||
command = "vscode-eslint-language-server"
|
||||
args = ["--stdio"]
|
||||
|
||||
[language-server.eslint.config]
|
||||
codeActionsOnSave = { mode = "all", "source.fixAll.eslint" = true }
|
||||
format = { enable = true }
|
||||
nodePath = ""
|
||||
quiet = false
|
||||
rulesCustomizations = []
|
||||
run = "onType"
|
||||
validate = "on"
|
||||
experimental = {}
|
||||
problems = { shortenToSingleLine = false }
|
||||
|
||||
[language-server.eslint.config.codeAction]
|
||||
disableRuleComment = { enable = true, location = "separateLine" }
|
||||
showDocumentation = { enable = false }
|
||||
|
||||
[language-server.vscode-json-language-server.config]
|
||||
json = { validate = { enable = true }, format = { enable = true } }
|
||||
provideFormatter = true
|
||||
|
||||
[language-server.vscode-css-language-server.config]
|
||||
css = { validate = { enable = true } }
|
||||
scss = { validate = { enable = true } }
|
||||
less = { validate = { enable = true } }
|
||||
provideFormatter = true
|
||||
|
||||
[language-server.typescript-language-server]
|
||||
command = "typescript-language-server"
|
||||
args = ["--stdio"]
|
||||
config.hostInfo = "helix"
|
||||
config.plugins = [
|
||||
{ name = "@vue/typescript-plugin", location = "/home/normankoehring/.nvm/versions/node/v20.9.0/lib/node_modules/@vue/typescript-plugin", languages = ["javascript", "typescript", "vue"] }
|
||||
]
|
||||
|
||||
[language-server.vue-language-server]
|
||||
command = "vue-language-server"
|
||||
args = ["--stdio"]
|
||||
config.hostInfo = "helix"
|
||||
config.typescript = { tsdk = "/home/normankoehring/.nvm/versions/node/v20.9.0/lib/node_modules/typescript/lib" }
|
||||
|
||||
[[language]]
|
||||
name = "typescript"
|
||||
auto-format = true
|
||||
language-servers = [
|
||||
{ name = "efm", only-features = ["format", "diagnostics"] },
|
||||
{ name = "typescript-language-server", except-features = ["format", "diagnostics"] },
|
||||
]
|
||||
language-servers = [ "typescript-language-server", "eslint", "emmet-ls" ]
|
||||
formatter = { command = "prettier", args = [ "--parser", "typescript" ] }
|
||||
|
||||
[[language]]
|
||||
name = "javascript"
|
||||
language-servers = [ "typescript-language-server", "eslint", "emmet-ls" ]
|
||||
formatter = { command = "prettier", args = [ "--parser", "typescript" ] }
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "json"
|
||||
formatter = { command = "prettier", args = [ "--parser", "json" ] }
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "html"
|
||||
language-servers = [ "vscode-html-language-server", "emmet-ls" ]
|
||||
formatter = { command = 'prettier', args = ["--parser", "html"] }
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "css"
|
||||
language-servers = [ "vscode-css-language-server", "emmet-ls" ]
|
||||
formatter = { command = 'prettier', args = ["--parser", "css"] }
|
||||
auto-format = true
|
||||
|
||||
[[language]]
|
||||
name = "vue"
|
||||
auto-format = true
|
||||
scope = "source.vue"
|
||||
injection-regex = "vue"
|
||||
file-types = ["vue"]
|
||||
language-servers = [ "vue-language-server", "eslint"]
|
||||
formatter = {command = 'prettier', args= ["--parser", "vue"]}
|
||||
roots = ["package.json", "vue.config.js", ".prettierrc.json"]
|
||||
|
||||
[[language]]
|
||||
name = "v"
|
||||
|
|
Loading…
Reference in a new issue