Add formatters for Elm, Haskell, Python, and TypeScript

This commit adds `elm-format` for Elm, `ormolu` for Haskell, `ruff`
for Python (with `black` as a backup), and `prettier` (with `biome`
and `deno` as backups) for TypeScript, Javascript, TSX, JSX, etc.
This commit is contained in:
Kyra 2024-11-19 22:18:37 -06:00
parent cbbeca6c52
commit 9ccab1fcc0
No known key found for this signature in database
GPG Key ID: ED211E1E739F738D

View File

@ -750,6 +750,7 @@ roots = [ "package.json" ]
comment-token = "//" comment-token = "//"
block-comment-tokens = { start = "/*", end = "*/" } block-comment-tokens = { start = "/*", end = "*/" }
language-servers = [ "typescript-language-server" ] language-servers = [ "typescript-language-server" ]
formatter = { command = "biome", args = ["format"] }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
[language.debugger] [language.debugger]
@ -778,6 +779,7 @@ roots = [ "package.json" ]
comment-token = "//" comment-token = "//"
block-comment-tokens = { start = "/*", end = "*/" } block-comment-tokens = { start = "/*", end = "*/" }
language-servers = [ "typescript-language-server" ] language-servers = [ "typescript-language-server" ]
formatter = { command = "biome", args = ["format"] }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
grammar = "javascript" grammar = "javascript"
@ -792,6 +794,7 @@ roots = [ "package.json", "tsconfig.json" ]
comment-token = "//" comment-token = "//"
block-comment-tokens = { start = "/*", end = "*/" } block-comment-tokens = { start = "/*", end = "*/" }
language-servers = [ "typescript-language-server" ] language-servers = [ "typescript-language-server" ]
formatter = { command = "biome", args = ["format"] }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
[[grammar]] [[grammar]]
@ -825,6 +828,7 @@ roots = [ "package.json", "tsconfig.json" ]
comment-token = "//" comment-token = "//"
block-comment-tokens = { start = "/*", end = "*/" } block-comment-tokens = { start = "/*", end = "*/" }
language-servers = [ "typescript-language-server" ] language-servers = [ "typescript-language-server" ]
formatter = { command = "biome", args = ["format"] }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
[[grammar]] [[grammar]]
@ -882,6 +886,7 @@ shebangs = ["python"]
roots = ["pyproject.toml", "setup.py", "poetry.lock", "pyrightconfig.json"] roots = ["pyproject.toml", "setup.py", "poetry.lock", "pyrightconfig.json"]
comment-token = "#" comment-token = "#"
language-servers = ["ruff", "jedi", "pylsp"] language-servers = ["ruff", "jedi", "pylsp"]
formatter = { command = "black", args = ["-"]}
# TODO: pyls needs utf-8 offsets # TODO: pyls needs utf-8 offsets
indent = { tab-width = 4, unit = " " } indent = { tab-width = 4, unit = " " }
@ -1354,6 +1359,7 @@ roots = ["Setup.hs", "stack.yaml", "cabal.project"]
comment-token = "--" comment-token = "--"
block-comment-tokens = { start = "{-", end = "-}" } block-comment-tokens = { start = "{-", end = "-}" }
language-servers = [ "haskell-language-server" ] language-servers = [ "haskell-language-server" ]
formatter = { command = "ormolu" }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
[[grammar]] [[grammar]]
@ -1807,6 +1813,7 @@ auto-format = true
comment-token = "--" comment-token = "--"
block-comment-tokens = { start = "{-", end = "-}" } block-comment-tokens = { start = "{-", end = "-}" }
language-servers = [ "elm-language-server" ] language-servers = [ "elm-language-server" ]
formatter = { command = "elm-format", args = ["--stdin"] }
indent = { tab-width = 4, unit = " " } indent = { tab-width = 4, unit = " " }
[[grammar]] [[grammar]]
@ -3793,6 +3800,7 @@ language-servers = [
"vscode-eslint-language-server", "vscode-eslint-language-server",
"ember-language-server", "ember-language-server",
] ]
formatter = { command = "biome", args = ["format"] }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
grammar = "javascript" grammar = "javascript"
@ -3817,6 +3825,7 @@ language-servers = [
"vscode-eslint-language-server", "vscode-eslint-language-server",
"ember-language-server", "ember-language-server",
] ]
formatter = { command = "biome", args = ["format"] }
indent = { tab-width = 2, unit = " " } indent = { tab-width = 2, unit = " " }
grammar = "typescript" grammar = "typescript"