1911 lines
44 KiB
Nix
1911 lines
44 KiB
Nix
{pkgs, ...}: {
|
|
programs.helix.languages = [
|
|
{
|
|
auto-format = true;
|
|
auto-pairs = {
|
|
"\"" = "\"";
|
|
"(" = ")";
|
|
"[" = "]";
|
|
"`" = "`";
|
|
"{" = "}";
|
|
};
|
|
comment-token = "//";
|
|
debugger = {
|
|
command = "${pkgs.vscode-extensions.vadimcn.vscode-lldb}/share/vscode/extensions/vadimcn.vscode-lldb/adapter/codelldb";
|
|
name = "lldb-vscode";
|
|
templates = [
|
|
{
|
|
args = {program = "{0}";};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
name = "binary";
|
|
}
|
|
];
|
|
name = "binary";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {
|
|
program = "{0}";
|
|
runInTerminal = true;
|
|
};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
name = "binary";
|
|
}
|
|
];
|
|
name = "binary (terminal)";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {pid = "{0}";};
|
|
completion = ["pid"];
|
|
name = "attach";
|
|
request = "attach";
|
|
}
|
|
{
|
|
args = {attachCommands = ["platform select remote-gdb-server" "platform connect {0}" "file {1}" "attach {2}"];};
|
|
completion = [
|
|
{
|
|
default = "connect://localhost:3333";
|
|
name = "lldb connect url";
|
|
}
|
|
{
|
|
completion = "filename";
|
|
name = "file";
|
|
}
|
|
"pid"
|
|
];
|
|
name = "gdbserver attach";
|
|
request = "attach";
|
|
}
|
|
];
|
|
transport = "stdio";
|
|
};
|
|
file-types = ["rs"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "rust";
|
|
language-server = {command = "${pkgs.rust-analyzer}/bin/rust-analyzer";};
|
|
name = "rust";
|
|
roots = ["Cargo.toml" "Cargo.lock"];
|
|
scope = "source.rust";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["toml"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "toml";
|
|
language-server = {
|
|
args = ["lsp" "stdio"];
|
|
command = "${pkgs.rust-analyzer}/bin/taplo";
|
|
};
|
|
name = "toml";
|
|
roots = [];
|
|
scope = "source.toml";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["awk" "gawk" "nawk" "mawk"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "awk";
|
|
language-server = {command = "awk-language-server";};
|
|
name = "awk";
|
|
roots = [];
|
|
scope = "source.awk";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["proto"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "protobuf";
|
|
name = "protobuf";
|
|
roots = [];
|
|
scope = "source.proto";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
config = {elixirLS = {dialyzerEnabled = false;};};
|
|
file-types = ["ex" "exs" "mix.lock"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(elixir|ex)";
|
|
language-server.command = "${pkgs.elixir_ls}/bin/elixir-ls";
|
|
name = "elixir";
|
|
roots = [];
|
|
scope = "source.elixir";
|
|
shebangs = ["elixir"];
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["fish"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "fish";
|
|
name = "fish";
|
|
roots = [];
|
|
scope = "source.fish";
|
|
shebangs = ["fish"];
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["mint"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "mint";
|
|
language-server = {
|
|
args = ["ls"];
|
|
command = "mint";
|
|
};
|
|
name = "mint";
|
|
roots = [];
|
|
scope = "source.mint";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
auto-format = true;
|
|
config = {provideFormatter = true;};
|
|
file-types = ["json"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "json";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.vscode-json-languageserver}/bin/vscode-json-languageserver";
|
|
};
|
|
name = "json";
|
|
roots = [];
|
|
scope = "source.json";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
debugger = {
|
|
command = "${pkgs.vscode-extensions.vadimcn.vscode-lldb}/share/vscode/extensions/vadimcn.vscode-lldb/adapter/codelldb";
|
|
name = "lldb-vscode";
|
|
templates = [
|
|
{
|
|
args = {
|
|
console = "internalConsole";
|
|
program = "{0}";
|
|
};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
name = "binary";
|
|
}
|
|
];
|
|
name = "binary";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {
|
|
console = "internalConsole";
|
|
pid = "{0}";
|
|
};
|
|
completion = ["pid"];
|
|
name = "attach";
|
|
request = "attach";
|
|
}
|
|
{
|
|
args = {
|
|
attachCommands = ["platform select remote-gdb-server" "platform connect {0}" "file {1}" "attach {2}"];
|
|
console = "internalConsole";
|
|
};
|
|
completion = [
|
|
{
|
|
default = "connect://localhost:3333";
|
|
name = "lldb connect url";
|
|
}
|
|
{
|
|
completion = "filename";
|
|
name = "file";
|
|
}
|
|
"pid"
|
|
];
|
|
name = "gdbserver attach";
|
|
request = "attach";
|
|
}
|
|
];
|
|
transport = "stdio";
|
|
};
|
|
file-types = ["c"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "c";
|
|
language-server.command = "${pkgs.llvmPackages_latest.clang-unwrapped}/bin/clangd";
|
|
name = "c";
|
|
roots = [];
|
|
scope = "source.c";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
debugger = {
|
|
command = "${pkgs.vscode-extensions.vadimcn.vscode-lldb}/share/vscode/extensions/vadimcn.vscode-lldb/adapter/codelldb";
|
|
name = "lldb-vscode";
|
|
templates = [
|
|
{
|
|
args = {
|
|
console = "internalConsole";
|
|
program = "{0}";
|
|
};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
name = "binary";
|
|
}
|
|
];
|
|
name = "binary";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {
|
|
console = "internalConsole";
|
|
pid = "{0}";
|
|
};
|
|
completion = ["pid"];
|
|
name = "attach";
|
|
request = "attach";
|
|
}
|
|
{
|
|
args = {
|
|
attachCommands = ["platform select remote-gdb-server" "platform connect {0}" "file {1}" "attach {2}"];
|
|
console = "internalConsole";
|
|
};
|
|
completion = [
|
|
{
|
|
default = "connect://localhost:3333";
|
|
name = "lldb connect url";
|
|
}
|
|
{
|
|
completion = "filename";
|
|
name = "file";
|
|
}
|
|
"pid"
|
|
];
|
|
name = "gdbserver attach";
|
|
request = "attach";
|
|
}
|
|
];
|
|
transport = "stdio";
|
|
};
|
|
file-types = ["cc" "hh" "cpp" "hpp" "h" "ipp" "tpp" "cxx" "hxx" "ixx" "txx" "ino"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "cpp";
|
|
language-server.command = "${pkgs.llvmPackages_latest.clang-unwrapped}/bin/clangd";
|
|
name = "cpp";
|
|
roots = [];
|
|
scope = "source.cpp";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["cs"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "c-?sharp";
|
|
language-server = {
|
|
args = ["--languageserver"];
|
|
command = "OmniSharp";
|
|
};
|
|
name = "c-sharp";
|
|
roots = ["sln" "csproj"];
|
|
scope = "source.csharp";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
debugger = {
|
|
args = ["dap"];
|
|
command = "dlv";
|
|
name = "go";
|
|
port-arg = "-l 127.0.0.1:{}";
|
|
templates = [
|
|
{
|
|
args = {
|
|
mode = "debug";
|
|
program = "{0}";
|
|
};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
default = ".";
|
|
name = "entrypoint";
|
|
}
|
|
];
|
|
name = "source";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {
|
|
mode = "exec";
|
|
program = "{0}";
|
|
};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
name = "binary";
|
|
}
|
|
];
|
|
name = "binary";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {
|
|
mode = "test";
|
|
program = "{0}";
|
|
};
|
|
completion = [
|
|
{
|
|
completion = "directory";
|
|
default = ".";
|
|
name = "tests";
|
|
}
|
|
];
|
|
name = "test";
|
|
request = "launch";
|
|
}
|
|
{
|
|
args = {
|
|
mode = "local";
|
|
processId = "{0}";
|
|
};
|
|
completion = ["pid"];
|
|
name = "attach";
|
|
request = "attach";
|
|
}
|
|
];
|
|
transport = "tcp";
|
|
};
|
|
file-types = ["go"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "go";
|
|
language-server = {command = "gopls";};
|
|
name = "go";
|
|
roots = ["Gopkg.toml" "go.mod"];
|
|
scope = "source.go";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["go.mod"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "gomod";
|
|
language-server = {command = "gopls";};
|
|
name = "gomod";
|
|
roots = [];
|
|
scope = "source.gomod";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["gotmpl"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "gotmpl";
|
|
language-server = {command = "gopls";};
|
|
name = "gotmpl";
|
|
roots = [];
|
|
scope = "source.gotmpl";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["go.work"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "gowork";
|
|
language-server = {command = "gopls";};
|
|
name = "gowork";
|
|
roots = [];
|
|
scope = "source.gowork";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
debugger = {
|
|
name = "node-debug2";
|
|
quirks = {absolute-paths = true;};
|
|
templates = [
|
|
{
|
|
args = {program = "{0}";};
|
|
completion = [
|
|
{
|
|
completion = "filename";
|
|
default = "index.js";
|
|
name = "main";
|
|
}
|
|
];
|
|
name = "source";
|
|
request = "launch";
|
|
}
|
|
];
|
|
transport = "stdio";
|
|
};
|
|
file-types = ["js" "mjs" "cjs"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(js|javascript)";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
|
language-id = "javascript";
|
|
};
|
|
name = "javascript";
|
|
roots = [];
|
|
scope = "source.js";
|
|
shebangs = ["node"];
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["jsx"];
|
|
grammar = "javascript";
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "jsx";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
|
language-id = "javascriptreact";
|
|
};
|
|
name = "jsx";
|
|
roots = [];
|
|
scope = "source.jsx";
|
|
}
|
|
{
|
|
file-types = ["ts"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(ts|typescript)";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
|
language-id = "typescript";
|
|
};
|
|
name = "typescript";
|
|
roots = [];
|
|
scope = "source.ts";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
file-types = ["tsx"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(tsx)";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.typescript-language-server}/bin/typescript-language-server";
|
|
language-id = "typescriptreact";
|
|
};
|
|
name = "tsx";
|
|
roots = [];
|
|
scope = "source.tsx";
|
|
}
|
|
{
|
|
file-types = ["css" "scss"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "css";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.vscode-css-languageserver-bin}/bin/css-languageserver";
|
|
};
|
|
name = "css";
|
|
roots = [];
|
|
scope = "source.css";
|
|
}
|
|
{
|
|
file-types = ["scss"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "scss";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.vscode-css-languageserver-bin}/bin/css-languageserver";
|
|
};
|
|
name = "scss";
|
|
roots = [];
|
|
scope = "source.scss";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
config = {provideFormatter = true;};
|
|
file-types = ["html"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "html";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.vscode-html-languageserver-bin}/bin/html-languageserver";
|
|
};
|
|
name = "html";
|
|
roots = [];
|
|
scope = "text.html.basic";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["py"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "python";
|
|
language-server.command = "${pkgs.python3Packages.python-lsp-server}/bin/pylsp";
|
|
name = "python";
|
|
roots = [];
|
|
scope = "source.python";
|
|
shebangs = ["python"];
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["ncl"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "nickel";
|
|
language-server = {command = "nls";};
|
|
name = "nickel";
|
|
roots = [];
|
|
scope = "source.nickel";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["nix"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "nix";
|
|
language-server.command = "${pkgs.rnix-lsp}/bin/rnix-lsp";
|
|
name = "nix";
|
|
roots = [];
|
|
scope = "source.nix";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["rb" "rake" "rakefile" "irb" "gemfile" "gemspec" "Rakefile" "Gemfile" "rabl" "jbuilder" "jb"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "ruby";
|
|
language-server = {
|
|
args = ["stdio"];
|
|
command = "solargraph";
|
|
};
|
|
name = "ruby";
|
|
roots = [];
|
|
scope = "source.ruby";
|
|
shebangs = ["ruby"];
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["sh" "bash" "zsh" ".bash_login" ".bash_logout" ".bash_profile" ".bashrc" ".profile" ".zshenv" ".zlogin" ".zlogout" ".zprofile" ".zshrc" "APKBUILD" "PKGBUILD" "eclass" "ebuild" "bazelrc"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(shell|bash|zsh|sh)";
|
|
language-server = {
|
|
args = ["start"];
|
|
command = "${pkgs.nodePackages.bash-language-server}/bin/bash-language-server";
|
|
};
|
|
name = "bash";
|
|
roots = [];
|
|
scope = "source.bash";
|
|
shebangs = ["sh" "bash" "dash"];
|
|
}
|
|
{
|
|
file-types = ["php" "inc"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "php";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "intelephense";
|
|
};
|
|
name = "php";
|
|
roots = ["composer.json" "index.php"];
|
|
scope = "source.php";
|
|
shebangs = ["php"];
|
|
}
|
|
{
|
|
file-types = ["twig"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "twig";
|
|
name = "twig";
|
|
roots = [];
|
|
scope = "source.twig";
|
|
}
|
|
{
|
|
comment-token = "%";
|
|
file-types = ["tex"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "tex";
|
|
language-server.command = "${pkgs.texlab}/bin/texlab";
|
|
name = "latex";
|
|
roots = [];
|
|
scope = "source.tex";
|
|
}
|
|
{
|
|
comment-token = "--";
|
|
file-types = ["lean"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "lean";
|
|
language-server = {
|
|
args = ["--server"];
|
|
command = "lean";
|
|
};
|
|
name = "lean";
|
|
roots = ["lakefile.lean"];
|
|
scope = "source.lean";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["jl"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "julia";
|
|
language-server = {
|
|
args = ["--startup-file=no" "--history-file=no" "--quiet" "-e" "using LanguageServer; runserver()"];
|
|
command = "julia";
|
|
};
|
|
name = "julia";
|
|
roots = [];
|
|
scope = "source.julia";
|
|
}
|
|
{
|
|
file-types = ["java"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "java";
|
|
language-server = {command = "jdtls";};
|
|
name = "java";
|
|
roots = ["pom.xml"];
|
|
scope = "source.java";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["ldg" "ledger" "journal"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "ledger";
|
|
name = "ledger";
|
|
roots = [];
|
|
scope = "source.ledger";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["beancount" "bean"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "beancount";
|
|
name = "beancount";
|
|
roots = [];
|
|
scope = "source.beancount";
|
|
}
|
|
{
|
|
comment-token = "(**)";
|
|
file-types = ["ml"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "ocaml";
|
|
language-server = {command = "ocamllsp";};
|
|
name = "ocaml";
|
|
roots = [];
|
|
scope = "source.ocaml";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
comment-token = "(**)";
|
|
file-types = ["mli"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {command = "ocamllsp";};
|
|
name = "ocaml-interface";
|
|
roots = [];
|
|
scope = "source.ocaml.interface";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
comment-token = "--";
|
|
file-types = ["lua"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {
|
|
args = [];
|
|
command = "lua-language-server";
|
|
};
|
|
name = "lua";
|
|
roots = [".luarc.json" ".luacheckrc" ".stylua.toml" "selene.toml" ".git"];
|
|
scope = "source.lua";
|
|
shebangs = ["lua"];
|
|
}
|
|
{
|
|
file-types = ["svelte"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "svelte";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "svelteserver";
|
|
};
|
|
name = "svelte";
|
|
roots = [];
|
|
scope = "source.svelte";
|
|
}
|
|
{
|
|
file-types = ["vue"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "vue";
|
|
language-server.command = "${pkgs.nodePackages.vls}/bin/vls";
|
|
name = "vue";
|
|
roots = ["package.json" "vue.config.js"];
|
|
scope = "source.vue";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["yml" "yaml"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "yml|yaml";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "${pkgs.nodePackages.yaml-language-server}/bin/yaml-language-server";
|
|
};
|
|
name = "yaml";
|
|
roots = [];
|
|
scope = "source.yaml";
|
|
}
|
|
{
|
|
comment-token = "--";
|
|
file-types = ["hs"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "haskell";
|
|
language-server = {
|
|
args = ["--lsp"];
|
|
command = "haskell-language-server-wrapper";
|
|
};
|
|
name = "haskell";
|
|
roots = ["Setup.hs" "stack.yaml" "*.cabal"];
|
|
scope = "source.haskell";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["zig"];
|
|
formatter = {
|
|
args = ["fmt" "--stdin"];
|
|
command = "zig";
|
|
};
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "zig";
|
|
language-server = {command = "zls";};
|
|
name = "zig";
|
|
roots = ["build.zig"];
|
|
scope = "source.zig";
|
|
}
|
|
{
|
|
comment-token = "%";
|
|
file-types = ["pl" "prolog"];
|
|
language-server = {
|
|
args = ["-g" "use_module(library(lsp_server))" "-g" "lsp_server:main" "-t" "halt" "--" "stdio"];
|
|
command = "swipl";
|
|
};
|
|
name = "prolog";
|
|
roots = [];
|
|
scope = "source.prolog";
|
|
shebangs = ["swipl"];
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["scm"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "tsq";
|
|
name = "tsq";
|
|
roots = [];
|
|
scope = "source.tsq";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["cmake" "CMakeLists.txt"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "cmake";
|
|
language-server = {command = "cmake-language-server";};
|
|
name = "cmake";
|
|
roots = [];
|
|
scope = "source.cmake";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["Makefile" "makefile" "mk" "justfile" ".justfile"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "(make|makefile|Makefile|mk|just)";
|
|
name = "make";
|
|
roots = [];
|
|
scope = "source.make";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["glsl" "vert" "tesc" "tese" "geom" "frag" "comp"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "glsl";
|
|
name = "glsl";
|
|
roots = [];
|
|
scope = "source.glsl";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["pl" "pm" "t"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
name = "perl";
|
|
roots = [];
|
|
scope = "source.perl";
|
|
shebangs = ["perl"];
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["rkt"];
|
|
language-server = {
|
|
args = ["-l" "racket-langserver"];
|
|
command = "racket";
|
|
};
|
|
name = "racket";
|
|
roots = [];
|
|
scope = "source.rkt";
|
|
shebangs = ["racket"];
|
|
}
|
|
{
|
|
file-types = [];
|
|
injection-regex = "comment";
|
|
name = "comment";
|
|
roots = [];
|
|
scope = "scope.comment";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["wgsl"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
language-server = {command = "wgsl_analyzer";};
|
|
name = "wgsl";
|
|
roots = [];
|
|
scope = "source.wgsl";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["ll"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "llvm";
|
|
name = "llvm";
|
|
roots = [];
|
|
scope = "source.llvm";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = [];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "mir";
|
|
name = "llvm-mir";
|
|
roots = [];
|
|
scope = "source.llvm_mir";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["mir"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
name = "llvm-mir-yaml";
|
|
roots = [];
|
|
scope = "source.yaml";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["td"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "tablegen";
|
|
name = "tablegen";
|
|
roots = [];
|
|
scope = "source.tablegen";
|
|
}
|
|
{
|
|
file-types = ["md" "markdown"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "md|markdown";
|
|
language-server = {
|
|
args = ["server"];
|
|
command = "marksman";
|
|
};
|
|
name = "markdown";
|
|
roots = [".marksman.toml"];
|
|
scope = "source.md";
|
|
}
|
|
{
|
|
file-types = [];
|
|
grammar = "markdown_inline";
|
|
injection-regex = "markdown\\.inline";
|
|
name = "markdown.inline";
|
|
roots = [];
|
|
scope = "source.markdown.inline";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["dart"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {
|
|
args = ["language-server" "--client-id=helix"];
|
|
command = "dart";
|
|
};
|
|
name = "dart";
|
|
roots = ["pubspec.yaml"];
|
|
scope = "source.dart";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["scala" "sbt"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {command = "metals";};
|
|
name = "scala";
|
|
roots = ["build.sbt" "pom.xml"];
|
|
scope = "source.scala";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["Dockerfile" "dockerfile"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "docker|dockerfile";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "docker-langserver";
|
|
};
|
|
name = "dockerfile";
|
|
roots = ["Dockerfile"];
|
|
scope = "source.dockerfile";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["COMMIT_EDITMSG"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
max-line-length = 72;
|
|
name = "git-commit";
|
|
roots = [];
|
|
rulers = [50 72];
|
|
scope = "git.commitmsg";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["diff"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "diff";
|
|
name = "diff";
|
|
roots = [];
|
|
scope = "source.diff";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["git-rebase-todo"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "git-rebase";
|
|
name = "git-rebase";
|
|
roots = [];
|
|
scope = "source.gitrebase";
|
|
}
|
|
{
|
|
file-types = ["regex"];
|
|
injection-regex = "regex";
|
|
name = "regex";
|
|
roots = [];
|
|
scope = "source.regex";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = [".gitmodules" ".gitconfig"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "git-config";
|
|
name = "git-config";
|
|
roots = [];
|
|
scope = "source.gitconfig";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = [".gitattributes"];
|
|
grammar = "gitattributes";
|
|
injection-regex = "git-attributes";
|
|
name = "git-attributes";
|
|
roots = [];
|
|
scope = "source.gitattributes";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = [".gitignore" ".gitignore_global"];
|
|
grammar = "gitignore";
|
|
injection-regex = "git-ignore";
|
|
name = "git-ignore";
|
|
roots = [];
|
|
scope = "source.gitignore";
|
|
}
|
|
{
|
|
file-types = ["gql" "graphql"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "graphql";
|
|
name = "graphql";
|
|
roots = [];
|
|
scope = "source.graphql";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "--";
|
|
file-types = ["elm"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "elm";
|
|
language-server = {command = "elm-language-server";};
|
|
name = "elm";
|
|
roots = ["elm.json"];
|
|
scope = "source.elm";
|
|
}
|
|
{
|
|
file-types = ["iex"];
|
|
injection-regex = "iex";
|
|
name = "iex";
|
|
roots = [];
|
|
scope = "source.iex";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["res"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "rescript";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "rescript-language-server";
|
|
};
|
|
name = "rescript";
|
|
roots = ["bsconfig.json"];
|
|
scope = "source.rescript";
|
|
}
|
|
{
|
|
auto-pairs = {
|
|
"\"" = "\"";
|
|
"'" = "'";
|
|
"(" = ")";
|
|
"[" = "]";
|
|
"`" = "'";
|
|
"{" = "}";
|
|
};
|
|
comment-token = "%%";
|
|
file-types = ["erl" "hrl" "app" "rebar.config" "rebar.lock"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "erl(ang)?";
|
|
language-server = {command = "erlang_ls";};
|
|
name = "erlang";
|
|
roots = ["rebar.config"];
|
|
scope = "source.erlang";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["kt" "kts"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
language-server = {command = "kotlin-language-server";};
|
|
name = "kotlin";
|
|
roots = ["settings.gradle" "settings.gradle.kts"];
|
|
scope = "source.kotlin";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "#";
|
|
file-types = ["hcl" "tf" "nomad"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(hcl|tf|nomad)";
|
|
language-server = {
|
|
args = ["serve"];
|
|
command = "terraform-ls";
|
|
language-id = "terraform";
|
|
};
|
|
name = "hcl";
|
|
roots = [];
|
|
scope = "source.hcl";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "#";
|
|
file-types = ["tfvars"];
|
|
grammar = "hcl";
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {
|
|
args = ["serve"];
|
|
command = "terraform-ls";
|
|
language-id = "terraform-vars";
|
|
};
|
|
name = "tfvars";
|
|
roots = [];
|
|
scope = "source.tfvars";
|
|
}
|
|
{
|
|
file-types = ["org"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "org";
|
|
name = "org";
|
|
roots = [];
|
|
scope = "source.org";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["sol"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(sol|solidity)";
|
|
language-server = {
|
|
args = ["--lsp"];
|
|
command = "solc";
|
|
};
|
|
name = "solidity";
|
|
roots = [];
|
|
scope = "source.sol";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["gleam"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "gleam";
|
|
language-server = {
|
|
args = ["lsp"];
|
|
command = "gleam";
|
|
};
|
|
name = "gleam";
|
|
roots = ["gleam.toml"];
|
|
scope = "source.gleam";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["ron"];
|
|
grammar = "rust";
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "ron";
|
|
name = "ron";
|
|
roots = [];
|
|
scope = "source.ron";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["r" "R"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(r|R)";
|
|
language-server = {
|
|
args = ["--slave" "-e" "languageserver::run()"];
|
|
command = "R";
|
|
};
|
|
name = "r";
|
|
roots = [];
|
|
scope = "source.r";
|
|
shebangs = ["r" "R"];
|
|
}
|
|
{
|
|
file-types = ["rmd" "Rmd"];
|
|
grammar = "markdown";
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(r|R)md";
|
|
language-server = {
|
|
args = ["--slave" "-e" "languageserver::run()"];
|
|
command = "R";
|
|
};
|
|
name = "rmarkdown";
|
|
roots = [];
|
|
scope = "source.rmd";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["swift"];
|
|
injection-regex = "swift";
|
|
language-server = {command = "sourcekit-lsp";};
|
|
name = "swift";
|
|
roots = ["Package.swift"];
|
|
scope = "source.swift";
|
|
}
|
|
{
|
|
file-types = ["erb"];
|
|
grammar = "embedded-template";
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "erb";
|
|
name = "erb";
|
|
roots = [];
|
|
scope = "text.html.erb";
|
|
}
|
|
{
|
|
file-types = ["ejs"];
|
|
grammar = "embedded-template";
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "ejs";
|
|
name = "ejs";
|
|
roots = [];
|
|
scope = "text.html.ejs";
|
|
}
|
|
{
|
|
file-types = ["eex"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "eex";
|
|
name = "eex";
|
|
roots = [];
|
|
scope = "source.eex";
|
|
}
|
|
{
|
|
file-types = ["heex"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "heex";
|
|
name = "heex";
|
|
roots = [];
|
|
scope = "source.heex";
|
|
}
|
|
{
|
|
comment-token = "--";
|
|
file-types = ["sql"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "sql";
|
|
name = "sql";
|
|
roots = [];
|
|
scope = "source.sql";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "#";
|
|
file-types = ["gd"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "gdscript";
|
|
name = "gdscript";
|
|
roots = ["project.godot"];
|
|
scope = "source.gdscript";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
auto-format = false;
|
|
comment-token = "#";
|
|
file-types = ["tscn" "tres"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "godot";
|
|
name = "godot-resource";
|
|
roots = ["project.godot"];
|
|
scope = "source.tscn";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["nu"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "nu";
|
|
name = "nu";
|
|
roots = [];
|
|
scope = "source.nu";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["vala" "vapi"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "vala";
|
|
language-server = {command = "vala-language-server";};
|
|
name = "vala";
|
|
roots = [];
|
|
scope = "source.vala";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["ha"];
|
|
indent = {
|
|
tab-width = 8;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "hare";
|
|
name = "hare";
|
|
roots = [];
|
|
scope = "source.hare";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["dts" "dtsi"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "(dtsi?|devicetree|fdt)";
|
|
name = "devicetree";
|
|
roots = [];
|
|
scope = "source.devicetree";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["cairo"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "cairo";
|
|
name = "cairo";
|
|
roots = [];
|
|
scope = "source.cairo";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["cpon" "cp"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "cpon";
|
|
name = "cpon";
|
|
roots = [];
|
|
scope = "scope.cpon";
|
|
}
|
|
{
|
|
auto-format = false;
|
|
comment-token = "//";
|
|
file-types = ["odin"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
language-server = {
|
|
args = [];
|
|
command = "ols";
|
|
};
|
|
name = "odin";
|
|
roots = ["ols.json"];
|
|
scope = "source.odin";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["meson.build"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "meson";
|
|
name = "meson";
|
|
roots = [];
|
|
scope = "source.meson";
|
|
}
|
|
{
|
|
file-types = [".ssh/config" "/etc/ssh/ssh_config"];
|
|
name = "sshclientconfig";
|
|
roots = [];
|
|
scope = "source.sshclientconfig";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["ss" "rkt"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "scheme";
|
|
name = "scheme";
|
|
roots = [];
|
|
scope = "source.scheme";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["v" "vv"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
language-server = {
|
|
args = [];
|
|
command = "vls";
|
|
};
|
|
name = "v";
|
|
roots = ["v.mod"];
|
|
scope = "source.v";
|
|
shebangs = ["v run"];
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["v" "vh" "sv" "svh"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "verilog";
|
|
language-server = {
|
|
args = [];
|
|
command = "svlangserver";
|
|
};
|
|
name = "verilog";
|
|
roots = [];
|
|
scope = "source.verilog";
|
|
}
|
|
{
|
|
file-types = ["edoc" "edoc.in"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "edoc";
|
|
name = "edoc";
|
|
roots = [];
|
|
scope = "source.edoc";
|
|
}
|
|
{
|
|
file-types = ["jsdoc"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "jsdoc";
|
|
name = "jsdoc";
|
|
roots = [];
|
|
scope = "source.jsdoc";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["scad"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "openscad";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "openscad-lsp";
|
|
};
|
|
name = "openscad";
|
|
roots = [];
|
|
scope = "source.openscad";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["prisma"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "prisma";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "prisma-language-server";
|
|
};
|
|
name = "prisma";
|
|
roots = ["package.json"];
|
|
scope = "source.prisma";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["clj" "cljs" "cljc" "clje" "cljr" "cljx" "edn" "boot"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(clojure|clj|edn|boot)";
|
|
language-server = {command = "clojure-lsp";};
|
|
name = "clojure";
|
|
roots = ["project.clj" "build.boot" "deps.edn" "shadow-cljs.edn"];
|
|
scope = "source.clojure";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["bzl" "bazel" "BUILD"];
|
|
grammar = "python";
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "(starlark|bzl|bazel)";
|
|
name = "starlark";
|
|
roots = [];
|
|
scope = "source.starlark";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["elv"];
|
|
grammar = "elvish";
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {
|
|
args = ["-lsp"];
|
|
command = "elvish";
|
|
};
|
|
name = "elvish";
|
|
roots = [];
|
|
scope = "source.elvish";
|
|
}
|
|
{
|
|
comment-token = "--";
|
|
file-types = ["idr"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "idr";
|
|
language-server = {command = "idris2-lsp";};
|
|
name = "idris";
|
|
roots = [];
|
|
scope = "source.idr";
|
|
shebangs = [];
|
|
}
|
|
{
|
|
comment-token = "!";
|
|
file-types = ["f" "for" "f90" "f95" "f03"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "fortran";
|
|
language-server = {
|
|
args = ["--lowercase_intrinsics"];
|
|
command = "fortls";
|
|
};
|
|
name = "fortran";
|
|
roots = ["fpm.toml"];
|
|
scope = "source.fortran";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["ungram" "ungrammar"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "ungrammar";
|
|
name = "ungrammar";
|
|
roots = [];
|
|
scope = "source.ungrammar";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["dot"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "dot";
|
|
language-server = {
|
|
args = ["--stdio"];
|
|
command = "dot-language-server";
|
|
};
|
|
name = "dot";
|
|
roots = [];
|
|
scope = "source.dot";
|
|
}
|
|
{
|
|
auto-format = true;
|
|
comment-token = "//";
|
|
file-types = ["cue"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = "\t";
|
|
};
|
|
injection-regex = "cue";
|
|
language-server = {command = "cuelsp";};
|
|
name = "cue";
|
|
roots = ["cue.mod"];
|
|
scope = "source.cue";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["slint"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "slint";
|
|
language-server = {
|
|
args = [];
|
|
command = "slint-lsp";
|
|
};
|
|
name = "slint";
|
|
roots = [];
|
|
scope = "source.slint";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["task"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "task";
|
|
name = "task";
|
|
roots = [];
|
|
scope = "source.task";
|
|
}
|
|
{
|
|
file-types = ["xit"];
|
|
indent = {
|
|
tab-width = 4;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "xit";
|
|
name = "xit";
|
|
roots = [];
|
|
scope = "source.xit";
|
|
}
|
|
{
|
|
comment-token = "#";
|
|
file-types = ["esdl"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "esdl";
|
|
name = "esdl";
|
|
roots = ["edgedb.toml"];
|
|
scope = "source.esdl";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["pas" "pp" "inc" "lpr" "lfm"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "pascal";
|
|
language-server = {
|
|
args = [];
|
|
command = "pasls";
|
|
};
|
|
name = "pascal";
|
|
roots = [];
|
|
scope = "source.pascal";
|
|
}
|
|
{
|
|
comment-token = "(*";
|
|
file-types = ["sml"];
|
|
injection-regex = "sml";
|
|
name = "sml";
|
|
roots = [];
|
|
scope = "source.sml";
|
|
}
|
|
{
|
|
comment-token = "//";
|
|
file-types = ["libsonnet" "jsonnet"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
language-server = {
|
|
args = ["-t" "--lint"];
|
|
command = "jsonnet-language-server";
|
|
};
|
|
name = "jsonnet";
|
|
roots = ["jsonnetfile.json"];
|
|
scope = "source.jsonnet";
|
|
}
|
|
{
|
|
file-types = ["astro"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "astro";
|
|
name = "astro";
|
|
roots = [];
|
|
scope = "source.astro";
|
|
}
|
|
{
|
|
comment-token = ";";
|
|
file-types = ["bass"];
|
|
indent = {
|
|
tab-width = 2;
|
|
unit = " ";
|
|
};
|
|
injection-regex = "bass";
|
|
language-server = {
|
|
args = ["--lsp"];
|
|
command = "bass";
|
|
};
|
|
name = "bass";
|
|
roots = [];
|
|
scope = "source.bass";
|
|
}
|
|
];
|
|
}
|