use-grammars = { only = [
  "rust",
  "powershell",
  "nu",
  "bash",
  "yaml",
  "toml",
  "json",
  "xml",
  "html",
  "php",
  "markdown",
  "jsonc",
  "java",
  "dockerfile",
  "diff",
  "css",
  "c-sharp"
]}

[[language]]
name = "powershell"
language-servers = [ "powershell-editor-services" ]

[language-server.powershell-editor-services]
command = "pwsh"
args = ["-NoLogo", "-NoProfile", "-Command", "~/.local/opt/PowerShellEditorServices/PowerShellEditorServices/Start-EditorServices.ps1 -BundledModulesPath ~/.local/opt/PowerShellEditorServices/PowerShellEditorServices -SessionDetailsPath $env:XDG_RUNTIME_DIR/PowerShellEditorServices.sessions.lsp.json -LogPath $env:HOME/.local/opt/PowerShellEditorServices/PowerShellEditorServices.log -FeatureFlags @() -AdditionalModules @() -HostName helix -HostProfileId 0 -HostVersion 1.0.0 -Stdio -LogLevel Normal"]

[language.debugger]
name = 'powershell-editor-services'
transport = 'stdio'
command = 'pwsh'
args = ['-NoLogo', '-NoProfile', '-Command', '~/.local/opt/PowerShellEditorServices/PowerShellEditorServices/Start-EditorServices.ps1 -SessionDetailsPath $env:XDG_RUNTIME_DIR/PowerShellEditorServices.sessions.dap.json -DebugServiceOnly -Stdio']

[[language.debugger.templates]]
name = 'Attach to existing Powershell Process'
request = 'attach'
completion = [ 'PID' ]
args = { processId = '{0}', runspaceId = '1' }

[[language.debugger.templates]]
name = 'Launch Script (Script runs in Background)'
request = 'launch'
completion = [ 'Full Script Path' ]
args = { script = '{0}', runspaceId = '1' }

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

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

[[language]]
name = "markdown"
formatter = { command = 'prettier', args = [
  "--parser",
  "markdown",
  "--prose-wrap",
  "never", # <always|never|preserve>
] }
auto-format = true

[[language]]
name = "rust"
formatter = { command = 'rustfmt' }
auto-format = true

[[language]]
name = "html"
formatter = { command = 'prettier', args = ["--parser", "html"] }

[[language]]
name = "json"
formatter = { command = 'prettier', args = ["--parser", "json"] }

[[language]]
name = "css"
formatter = { command = 'prettier', args = ["--parser", "css"] }

[[language]]
name = "yaml"
formatter = { command = 'prettier', args = ["--parser", "yaml"] }
auto-format = true