541 lines
12 KiB
TOML
541 lines
12 KiB
TOML
[[language]]
|
|
name = "rust"
|
|
scope = "source.rust"
|
|
injection-regex = "rust"
|
|
file-types = ["rs"]
|
|
roots = []
|
|
auto-format = true
|
|
comment-token = "//"
|
|
language-server = { command = "rust-analyzer" }
|
|
indent = { tab-width = 4, unit = " " }
|
|
[language.config]
|
|
cargo = { loadOutDirsFromCheck = true }
|
|
procMacro = { enable = false }
|
|
|
|
[language.debugger]
|
|
name = "lldb-vscode"
|
|
transport = "stdio"
|
|
command = "lldb-vscode"
|
|
|
|
[[language.debugger.templates]]
|
|
name = "binary"
|
|
request = "launch"
|
|
completion = [ { name = "binary", completion = "filename" } ]
|
|
args = { program = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "binary (terminal)"
|
|
request = "launch"
|
|
completion = [ { name = "binary", completion = "filename" } ]
|
|
args = { program = "{0}", runInTerminal = true }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "attach"
|
|
request = "attach"
|
|
completion = [ "pid" ]
|
|
args = { pid = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "gdbserver attach"
|
|
request = "attach"
|
|
completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ]
|
|
args = { attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] }
|
|
|
|
[[language]]
|
|
name = "toml"
|
|
scope = "source.toml"
|
|
injection-regex = "toml"
|
|
file-types = ["toml"]
|
|
roots = []
|
|
comment-token = "#"
|
|
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "protobuf"
|
|
scope = "source.proto"
|
|
injection-regex = "protobuf"
|
|
file-types = ["proto"]
|
|
roots = []
|
|
comment-token = "//"
|
|
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "elixir"
|
|
scope = "source.elixir"
|
|
injection-regex = "elixir"
|
|
file-types = ["ex", "exs"]
|
|
shebangs = ["elixir"]
|
|
roots = []
|
|
comment-token = "#"
|
|
|
|
language-server = { command = "elixir-ls" }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "mint"
|
|
scope = "source.mint"
|
|
injection-regex = "mint"
|
|
file-types = ["mint"]
|
|
shebangs = []
|
|
roots = []
|
|
comment-token = "//"
|
|
|
|
language-server = { command = "mint", args = ["ls"] }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "json"
|
|
scope = "source.json"
|
|
injection-regex = "json"
|
|
file-types = ["json"]
|
|
roots = []
|
|
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "c"
|
|
scope = "source.c"
|
|
injection-regex = "c"
|
|
file-types = ["c"] # TODO: ["h"]
|
|
roots = []
|
|
comment-token = "//"
|
|
|
|
language-server = { command = "clangd" }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[language.debugger]
|
|
name = "lldb-vscode"
|
|
transport = "stdio"
|
|
command = "lldb-vscode"
|
|
|
|
[[language.debugger.templates]]
|
|
name = "binary"
|
|
request = "launch"
|
|
completion = [ { name = "binary", completion = "filename" } ]
|
|
args = { console = "internalConsole", program = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "attach"
|
|
request = "attach"
|
|
completion = [ "pid" ]
|
|
args = { console = "internalConsole", pid = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "gdbserver attach"
|
|
request = "attach"
|
|
completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ]
|
|
args = { console = "internalConsole", attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] }
|
|
|
|
[[language]]
|
|
name = "cpp"
|
|
scope = "source.cpp"
|
|
injection-regex = "cpp"
|
|
file-types = ["cc", "hh", "cpp", "hpp", "h", "ipp", "tpp", "cxx", "hxx", "ixx", "txx", "ino"]
|
|
roots = []
|
|
comment-token = "//"
|
|
|
|
language-server = { command = "clangd" }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[language.debugger]
|
|
name = "lldb-vscode"
|
|
transport = "stdio"
|
|
command = "lldb-vscode"
|
|
|
|
[[language.debugger.templates]]
|
|
name = "binary"
|
|
request = "launch"
|
|
completion = [ { name = "binary", completion = "filename" } ]
|
|
args = { console = "internalConsole", program = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "attach"
|
|
request = "attach"
|
|
completion = [ "pid" ]
|
|
args = { console = "internalConsole", pid = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "gdbserver attach"
|
|
request = "attach"
|
|
completion = [ { name = "lldb connect url", default = "connect://localhost:3333" }, { name = "file", completion = "filename" }, "pid" ]
|
|
args = { console = "internalConsole", attachCommands = [ "platform select remote-gdb-server", "platform connect {0}", "file {1}", "attach {2}" ] }
|
|
|
|
[[language]]
|
|
name = "c-sharp"
|
|
scope = "source.csharp"
|
|
injection-regex = "c-?sharp"
|
|
file-types = ["cs"]
|
|
roots = []
|
|
comment-token = "//"
|
|
|
|
indent = { tab-width = 4, unit = "\t" }
|
|
|
|
[[language]]
|
|
name = "go"
|
|
scope = "source.go"
|
|
injection-regex = "go"
|
|
file-types = ["go"]
|
|
roots = ["Gopkg.toml", "go.mod"]
|
|
auto-format = true
|
|
comment-token = "//"
|
|
|
|
language-server = { command = "gopls" }
|
|
# TODO: gopls needs utf-8 offsets?
|
|
indent = { tab-width = 4, unit = "\t" }
|
|
|
|
[language.debugger]
|
|
name = "go"
|
|
transport = "tcp"
|
|
command = "dlv"
|
|
args = ["dap"]
|
|
port-arg = "-l 127.0.0.1:{}"
|
|
|
|
[[language.debugger.templates]]
|
|
name = "source"
|
|
request = "launch"
|
|
completion = [ { name = "entrypoint", completion = "filename", default = "." } ]
|
|
args = { mode = "debug", program = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "binary"
|
|
request = "launch"
|
|
completion = [ { name = "binary", completion = "filename" } ]
|
|
args = { mode = "exec", program = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "test"
|
|
request = "launch"
|
|
completion = [ { name = "tests", completion = "directory", default = "." } ]
|
|
args = { mode = "test", program = "{0}" }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "attach"
|
|
request = "attach"
|
|
completion = [ "pid" ]
|
|
args = { mode = "local", processId = "{0}" }
|
|
|
|
[[language]]
|
|
name = "javascript"
|
|
scope = "source.js"
|
|
injection-regex = "^(js|javascript)$"
|
|
file-types = ["js", "mjs"]
|
|
shebangs = ["node"]
|
|
roots = []
|
|
comment-token = "//"
|
|
# TODO: highlights-jsx, highlights-params
|
|
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[language.debugger]
|
|
name = "node-debug2"
|
|
transport = "stdio"
|
|
# args consisting of cmd (node) and path to adapter should be added to user's configuration
|
|
quirks = { absolute-paths = true }
|
|
|
|
[[language.debugger.templates]]
|
|
name = "source"
|
|
request = "launch"
|
|
completion = [ { name = "main", completion = "filename", default = "index.js" } ]
|
|
args = { program = "{0}" }
|
|
|
|
[[language]]
|
|
name = "typescript"
|
|
scope = "source.ts"
|
|
injection-regex = "^(ts|typescript)$"
|
|
file-types = ["ts"]
|
|
shebangs = []
|
|
roots = []
|
|
# TODO: highlights-jsx, highlights-params
|
|
|
|
language-server = { command = "typescript-language-server", args = ["--stdio"] }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "tsx"
|
|
scope = "source.tsx"
|
|
injection-regex = "^(tsx)$" # |typescript
|
|
file-types = ["tsx"]
|
|
roots = []
|
|
# TODO: highlights-jsx, highlights-params
|
|
|
|
language-server = { command = "typescript-language-server", args = ["--stdio"] }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "css"
|
|
scope = "source.css"
|
|
injection-regex = "css"
|
|
file-types = ["css"]
|
|
roots = []
|
|
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "html"
|
|
scope = "text.html.basic"
|
|
injection-regex = "html"
|
|
file-types = ["html"]
|
|
roots = []
|
|
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "python"
|
|
scope = "source.python"
|
|
injection-regex = "python"
|
|
file-types = ["py"]
|
|
shebangs = ["python"]
|
|
roots = []
|
|
comment-token = "#"
|
|
|
|
language-server = { command = "pylsp" }
|
|
# TODO: pyls needs utf-8 offsets
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "nix"
|
|
scope = "source.nix"
|
|
injection-regex = "nix"
|
|
file-types = ["nix"]
|
|
shebangs = []
|
|
roots = []
|
|
comment-token = "#"
|
|
|
|
language-server = { command = "rnix-lsp" }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "ruby"
|
|
scope = "source.ruby"
|
|
injection-regex = "ruby"
|
|
file-types = ["rb"]
|
|
shebangs = ["ruby"]
|
|
roots = []
|
|
comment-token = "#"
|
|
|
|
language-server = { command = "solargraph", args = ["stdio"] }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "bash"
|
|
scope = "source.bash"
|
|
injection-regex = "bash"
|
|
file-types = ["sh", "bash"]
|
|
shebangs = ["sh", "bash", "dash"]
|
|
roots = []
|
|
comment-token = "#"
|
|
|
|
language-server = { command = "bash-language-server", args = ["start"] }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "php"
|
|
scope = "source.php"
|
|
injection-regex = "php"
|
|
file-types = ["php"]
|
|
shebangs = ["php"]
|
|
roots = []
|
|
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "latex"
|
|
scope = "source.tex"
|
|
injection-regex = "tex"
|
|
file-types = ["tex"]
|
|
roots = []
|
|
comment-token = "%"
|
|
|
|
indent = { tab-width = 4, unit = "\t" }
|
|
|
|
[[language]]
|
|
name = "julia"
|
|
scope = "source.julia"
|
|
injection-regex = "julia"
|
|
file-types = ["jl"]
|
|
roots = []
|
|
comment-token = "#"
|
|
language-server = { command = "julia", args = [
|
|
"--startup-file=no",
|
|
"--history-file=no",
|
|
"--quiet",
|
|
"-e",
|
|
"""
|
|
using LanguageServer;
|
|
using Pkg;
|
|
import StaticLint;
|
|
env_path = dirname(Pkg.Types.Context().env.project_file);
|
|
|
|
server = LanguageServer.LanguageServerInstance(stdin, stdout, env_path, "");
|
|
server.runlinter = true;
|
|
run(server);
|
|
""",
|
|
] }
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "java"
|
|
scope = "source.java"
|
|
injection-regex = "java"
|
|
file-types = ["java"]
|
|
roots = []
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "ledger"
|
|
scope = "source.ledger"
|
|
injection-regex = "ledger"
|
|
file-types = ["ldg", "ledger", "journal"]
|
|
roots = []
|
|
comment-token = ";"
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "ocaml"
|
|
scope = "source.ocaml"
|
|
injection-regex = "ocaml"
|
|
file-types = ["ml"]
|
|
shebangs = []
|
|
roots = []
|
|
comment-token = "(**)"
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "ocaml-interface"
|
|
scope = "source.ocaml.interface"
|
|
file-types = ["mli"]
|
|
shebangs = []
|
|
roots = []
|
|
comment-token = "(**)"
|
|
indent = { tab-width = 2, unit = " "}
|
|
|
|
[[language]]
|
|
name = "lua"
|
|
scope = "source.lua"
|
|
file-types = ["lua"]
|
|
shebangs = ["lua"]
|
|
roots = []
|
|
comment-token = "--"
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "svelte"
|
|
scope = "source.svelte"
|
|
injection-regex = "svelte"
|
|
file-types = ["svelte"]
|
|
roots = []
|
|
indent = { tab-width = 2, unit = " " }
|
|
language-server = { command = "svelteserver", args = ["--stdio"] }
|
|
|
|
|
|
[[language]]
|
|
name = "vue"
|
|
scope = "source.vue"
|
|
injection-regex = "vue"
|
|
file-types = ["vue"]
|
|
roots = []
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "yaml"
|
|
scope = "source.yaml"
|
|
file-types = ["yml", "yaml"]
|
|
roots = []
|
|
comment-token = "#"
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
# [[language]]
|
|
# name = "haskell"
|
|
# scope = "source.haskell"
|
|
# injection-regex = "haskell"
|
|
# file-types = ["hs"]
|
|
# roots = []
|
|
# comment-token = "--"
|
|
#
|
|
# indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "zig"
|
|
scope = "source.zig"
|
|
injection-regex = "zig"
|
|
file-types = ["zig"]
|
|
roots = ["build.zig"]
|
|
auto-format = true
|
|
comment-token = "//"
|
|
|
|
language-server = { command = "zls" }
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "prolog"
|
|
scope = "source.prolog"
|
|
roots = []
|
|
file-types = ["pl", "prolog"]
|
|
shebangs = ["swipl"]
|
|
comment-token = "%"
|
|
|
|
language-server = { command = "swipl", args = [
|
|
"-g", "use_module(library(lsp_server))",
|
|
"-g", "lsp_server:main",
|
|
"-t", "halt", "--", "stdio"] }
|
|
|
|
[[language]]
|
|
name = "tsq"
|
|
scope = "source.tsq"
|
|
file-types = ["scm"]
|
|
roots = []
|
|
comment-token = ";"
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "cmake"
|
|
scope = "source.cmake"
|
|
file-types = ["cmake", "CMakeLists.txt"]
|
|
roots = []
|
|
comment-token = "#"
|
|
indent = { tab-width = 2, unit = " " }
|
|
language-server = { command = "cmake-language-server" }
|
|
|
|
[[language]]
|
|
name = "glsl"
|
|
scope = "source.glsl"
|
|
file-types = ["glsl", "vert", "tesc", "tese", "geom", "frag", "comp" ]
|
|
roots = []
|
|
comment-token = "//"
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "perl"
|
|
scope = "source.perl"
|
|
file-types = ["pl", "pm"]
|
|
shebangs = ["perl"]
|
|
roots = []
|
|
comment-token = "#"
|
|
indent = { tab-width = 2, unit = " " }
|
|
|
|
[[language]]
|
|
name = "racket"
|
|
scope = "source.rkt"
|
|
roots = []
|
|
file-types = ["rkt"]
|
|
shebangs = ["racket"]
|
|
comment-token = ";"
|
|
language-server = { command = "racket", args = ["-l", "racket-langserver"] }
|
|
|
|
[[language]]
|
|
name = "wgsl"
|
|
scope = "source.wgsl"
|
|
file-types = ["wgsl"]
|
|
roots = []
|
|
comment-token = "//"
|
|
indent = { tab-width = 4, unit = " " }
|
|
|
|
[[language]]
|
|
name = "llvm"
|
|
scope = "source.llvm"
|
|
roots = []
|
|
file-types = ["ll"]
|
|
comment-token = ";"
|
|
indent = { tab-width = 2, unit = " " }
|