This is my daily driver config for all my devices.
Last active
November 18, 2024 20:32
-
-
Save dannyhvc/39e66b6f58970eee479227aa0744402e to your computer and use it in GitHub Desktop.
My Personal Helix + Wezterm config
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
general: | |
# Whether to automatically focus windows underneath the cursor. | |
focus_follows_cursor: false | |
# Whether to jump the cursor between windows focused by the WM. | |
cursor_follows_focus: false | |
# Whether to switch back and forth between the previously focused workspace | |
# when focusing the current workspace. | |
toggle_workspace_on_refocus: true | |
# Whether to show floating windows as always on top. | |
show_floating_on_top: false | |
# Amount to move floating windows by (eg. when using `alt+<hjkl>` on a floating window) | |
floating_window_move_amount: "5%" | |
# Whether to center new floating windows. | |
center_new_floating_windows: true | |
# *Strongly* recommended to set to 'false'. Whether to globally enable/disable | |
# window transition animations (on minimize, close, etc). Set to 'unchanged' | |
# to make no setting changes. | |
window_animations: "unchanged" | |
gaps: | |
# Gap between adjacent windows. | |
inner_gap: "20px" | |
# Gap between windows and the screen edge. | |
outer_gap: "20px" | |
# Highlight active/inactive windows with a colored border. | |
# ** Exclusive to Windows 11 due to API limitations. | |
focus_borders: | |
active: | |
enabled: true | |
color: "#0000ff" | |
inactive: | |
enabled: false | |
color: "#ff0000" | |
bar: | |
height: "30px" | |
position: "top" | |
opacity: 1.0 | |
background: "#20242cc4" | |
foreground: "#ffffff" | |
font_family: "Segoe UI" | |
font_size: "13px" | |
padding: "4px 6px" | |
offset_x: "0" | |
offset_y: "0" | |
border_radius: "0" | |
components_left: | |
- type: "workspaces" | |
focused_workspace_background: "#ffffff33" | |
displayed_workspace_background: "#00000033" | |
default_workspace_background: "transparent" | |
components_center: | |
- type: "window title" | |
components_right: | |
- type: "system tray" | |
- type: "tiling direction" | |
label_horizontal: "⮂" | |
label_vertical: "⮁" | |
background: "#ffffff33" | |
margin: "0 4px" | |
padding: "0 8px" | |
- type: "binding mode" | |
background: "#ffffff33" | |
margin: "0 4px 0 0" | |
padding: "0 8px" | |
- type: "clock" | |
# Documentation on formatting date/time string: | |
# https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings | |
time_formatting: "hh:mm tt ddd MMM d" | |
workspaces: | |
- name: "1" | |
- name: "2" | |
- name: "3" | |
- name: "4" | |
- name: "5" | |
- name: "6" | |
- name: "7" | |
- name: "8" | |
- name: "9" | |
window_rules: | |
# Task Manager requires admin privileges to manage and should be ignored unless running | |
# the WM as admin. | |
- command: "ignore" | |
match_process_name: "/Taskmgr|ScreenClippingHost/" | |
# Launches system dialogs as floating by default (eg. File Explorer save/open dialog). | |
- command: "set floating" | |
match_class_name: "#32770" | |
# Do not manage picture-in-picture windows for browsers. Note that the default is for | |
# English; change `match_title` to the window's title if you use another language. | |
- command: "ignore" | |
match_title: "[Pp]icture.in.[Pp]icture" | |
match_class_name: "Chrome_WidgetWin_1|MozillaDialogClass" | |
# Some applications (eg. Steam) have borders that extend past the normal border size. | |
- command: "resize borders 0px -7px -7px -7px" | |
match_process_name: "steam" | |
binding_modes: | |
- name: "resize" | |
keybindings: | |
# Resize focused window by a percentage or pixel amount. | |
- command: "resize width -2%" | |
bindings: ["H", "Left"] | |
- command: "resize width +2%" | |
bindings: ["L", "Right"] | |
- command: "resize height +2%" | |
bindings: ["K", "Up"] | |
- command: "resize height -2%" | |
bindings: ["J", "Down"] | |
# Press enter/escape to return to default keybindings. | |
- command: "binding mode none" | |
bindings: ["Escape", "Enter"] | |
keybindings: | |
# Shift focus in a given direction. | |
- command: "focus left" | |
bindings: ["Alt+Shift+H"] | |
- command: "focus right" | |
bindings: ["Alt+Shift+L"] | |
- command: "focus up" | |
bindings: ["Alt+Shift+K"] | |
- command: "focus down" | |
bindings: ["Alt+Shift+J"] | |
# Move focused window in a given direction. | |
- command: "move left" | |
bindings: ["Alt+Shift+Ctrl+H", "Alt+Shift+Ctrl+Left"] | |
- command: "move right" | |
bindings: ["Alt+Shift+Ctrl+L", "Alt+Shift+Ctrl+Right"] | |
- command: "move up" | |
bindings: ["Alt+Shift+Ctrl+K", "Alt+Shift+Ctrl+Up"] | |
- command: "move down" | |
bindings: ["Alt+Shift+Ctrl+J", "Alt+Shift+Ctrl+Down"] | |
# Resize focused window by a percentage or pixel amount. | |
- command: "resize width -2%" | |
binding: "Alt+Shift+U" | |
- command: "resize width +2%" | |
binding: "Alt+Shift+P" | |
- command: "resize height +2%" | |
binding: "Alt+Shift+O" | |
- command: "resize height -2%" | |
binding: "Alt+Shift+I" | |
# As an alternative to the resize keybindings above, resize mode enables resizing via | |
# HJKL or arrow keys. The binding mode is defined above with the name "resize". | |
- command: "binding mode resize" | |
binding: "Alt+Shift+R" | |
# Change tiling direction. This determines where new tiling windows will be inserted. | |
- command: "tiling direction toggle" | |
binding: "Alt+V" | |
# Change focus between floating / tiling windows. | |
- command: "focus mode toggle" | |
binding: "Alt+Space" | |
# Change the focused window to be floating / tiling. | |
- command: "toggle floating" | |
binding: "Alt+Shift+Space" | |
# Change the focused window to be maximized / unmaximized. | |
- command: "toggle maximized" | |
binding: "Alt+Shift+X" | |
# Minimize focused window. | |
- command: "set minimized" | |
binding: "Alt+M" | |
# Close focused window. | |
- command: "close" | |
binding: "Alt+Shift+Q" | |
# Kill GlazeWM process safely. | |
- command: "exit wm" | |
binding: "Alt+Shift+E" | |
# Re-evaluate configuration file. | |
- command: "reload config" | |
binding: "Alt+Shift+Ctrl+R" | |
# Launch CMD terminal (alternatively `exec wt` or `exec %ProgramFiles%/Git/git-bash.exe` | |
# to start Windows Terminal and Git Bash respectively. | |
- command: "exec cmd" | |
binding: "Alt+Enter" | |
# Focus the workspace that last had focus. | |
- command: "focus workspace recent" | |
binding: "Alt+Y" | |
# Focus the next/previous workspace defined in `workspaces` config. | |
- command: "focus workspace next" | |
binding: "Alt+T" | |
- command: "focus workspace prev" | |
binding: "Alt+Shift+T" | |
# Change focus to a workspace defined in `workspaces` config. | |
- command: "focus workspace 1" | |
binding: "Alt+1" | |
- command: "focus workspace 2" | |
binding: "Alt+2" | |
- command: "focus workspace 3" | |
binding: "Alt+3" | |
- command: "focus workspace 4" | |
binding: "Alt+4" | |
- command: "focus workspace 5" | |
binding: "Alt+5" | |
- command: "focus workspace 6" | |
binding: "Alt+6" | |
- command: "focus workspace 7" | |
binding: "Alt+7" | |
- command: "focus workspace 8" | |
binding: "Alt+8" | |
- command: "focus workspace 9" | |
binding: "Alt+9" | |
# Move focused workspace to a monitor in a given direction. | |
- command: "move workspace left" | |
binding: "Alt+A" | |
- command: "move workspace right" | |
binding: "Alt+F" | |
- command: "move workspace up" | |
binding: "Alt+D" | |
- command: "move workspace down" | |
binding: "Alt+S" | |
# Move focused window to a workspace defined in `workspaces` config. | |
- commands: ["move to workspace 1", "focus workspace 1"] | |
binding: "Alt+Shift+1" | |
- commands: ["move to workspace 2", "focus workspace 2"] | |
binding: "Alt+Shift+2" | |
- commands: ["move to workspace 3", "focus workspace 3"] | |
binding: "Alt+Shift+3" | |
- commands: ["move to workspace 4", "focus workspace 4"] | |
binding: "Alt+Shift+4" | |
- commands: ["move to workspace 5", "focus workspace 5"] | |
binding: "Alt+Shift+5" | |
- commands: ["move to workspace 6", "focus workspace 6"] | |
binding: "Alt+Shift+6" | |
- commands: ["move to workspace 7", "focus workspace 7"] | |
binding: "Alt+Shift+7" | |
- commands: ["move to workspace 8", "focus workspace 8"] | |
binding: "Alt+Shift+8" | |
- commands: ["move to workspace 9", "focus workspace 9"] | |
bindings: ["Alt+Shift+9"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// bit for modifiers | |
// bits: 0 None | |
// bits: 1 SHIFT | |
// bits: 2 CONTROL | |
// | |
// Note: | |
// If the default key layout is lower case, | |
// and you want to use `Shift + q` to trigger the exit event, | |
// the setting should like this `exit: Some(( code: Char('Q'), modifiers: ( bits: 1,),)),` | |
// The Char should be upper case, and the shift modified bit should be set to 1. | |
// | |
// Note: | |
// find `KeysList` type in src/keys/key_list.rs for all possible keys. | |
// every key not overwritten via the config file will use the default specified there | |
( | |
open_help: Some(( code: F(1), modifiers: ( bits: 0,),)), | |
move_left: Some(( code: Char('h'), modifiers: ( bits: 0,),)), | |
move_right: Some(( code: Char('l'), modifiers: ( bits: 0,),)), | |
move_up: Some(( code: Char('k'), modifiers: ( bits: 0,),)), | |
move_down: Some(( code: Char('j'), modifiers: ( bits: 0,),)), | |
popup_up: Some(( code: Char('p'), modifiers: ( bits: 2,),)), | |
popup_down: Some(( code: Char('n'), modifiers: ( bits: 2,),)), | |
page_up: Some(( code: Char('b'), modifiers: ( bits: 2,),)), | |
page_down: Some(( code: Char('f'), modifiers: ( bits: 2,),)), | |
home: Some(( code: Char('g'), modifiers: ( bits: 0,),)), | |
end: Some(( code: Char('G'), modifiers: ( bits: 1,),)), | |
shift_up: Some(( code: Char('K'), modifiers: ( bits: 1,),)), | |
shift_down: Some(( code: Char('J'), modifiers: ( bits: 1,),)), | |
edit_file: Some(( code: Char('I'), modifiers: ( bits: 1,),)), | |
status_reset_item: Some(( code: Char('U'), modifiers: ( bits: 1,),)), | |
diff_reset_lines: Some(( code: Char('u'), modifiers: ( bits: 0,),)), | |
diff_stage_lines: Some(( code: Char('s'), modifiers: ( bits: 0,),)), | |
stashing_save: Some(( code: Char('w'), modifiers: ( bits: 0,),)), | |
stashing_toggle_index: Some(( code: Char('m'), modifiers: ( bits: 0,),)), | |
stash_open: Some(( code: Char('l'), modifiers: ( bits: 0,),)), | |
abort_merge: Some(( code: Char('M'), modifiers: ( bits: 1,),)), | |
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
theme = "dark_plus_transparent" | |
[editor] | |
line-number = "relative" | |
rulers = [80] | |
bufferline = "multiple" | |
color-modes = true | |
[editor.whitespace.render] | |
space = "all" | |
tab = "all" | |
newline = "none" | |
[editor.whitespace.characters] | |
space = "·" | |
nbsp = "⍽" | |
tab = "→" | |
newline = "⏎" | |
tabpad = "·" # Tabs will look like "→···" (depending on tab width) | |
[keys.normal] | |
A-l = ":buffer-next" | |
A-h = ":buffer-previous" | |
A-w = ":buffer-close" | |
A-1 = ":new" | |
[keys.insert] | |
A-x = "normal_mode" | |
[keys.select] | |
A-x = "normal_mode" | |
[editor.file-picker] | |
hidden = false | |
[editor.lsp] | |
display-inlay-hints = true | |
[editor.indent-guides] | |
render = true | |
character = "▏" # Some characters that work well: "▏", "┆", "┊", "⸽" | |
[editor.soft-wrap] | |
enable = true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
inherits = "dark_plus" | |
"ui.background" = {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Language support configuration. | |
# See the languages documentation: https://docs.helix-editor.com/master/languages.html | |
use-grammars = { except = [ "hare", "wren", "gemini" ] } | |
[language-server] | |
als = { command = "als" } | |
ada-language-server = { command = "ada_language_server" } | |
ada-gpr-language-server = {command = "ada_language_server", args = ["--language-gpr"]} | |
angular = {command = "ngserver", args = ["--stdio", "--tsProbeLocations", ".", "--ngProbeLocations", ".",]} | |
awk-language-server = { command = "awk-language-server" } | |
bash-language-server = { command = "bash-language-server", args = ["start"] } | |
bass = { command = "bass", args = ["--lsp"] } | |
bicep-langserver = { command = "bicep-langserver" } | |
bitbake-language-server = { command = "bitbake-language-server" } | |
bufls = { command = "bufls", args = ["serve"] } | |
cairo-language-server = { command = "cairo-language-server", args = [] } | |
cl-lsp = { command = "cl-lsp", args = [ "stdio" ] } | |
clangd = { command = "clangd" } | |
clojure-lsp = { command = "clojure-lsp" } | |
cmake-language-server = { command = "cmake-language-server" } | |
crystalline = { command = "crystalline", args = ["--stdio"] } | |
cs = { command = "cs", args = ["launch", "--contrib", "smithy-language-server", "--", "0"] } | |
csharp-ls = { command = "csharp-ls" } | |
cuelsp = { command = "cuelsp" } | |
dart = { command = "dart", args = ["language-server", "--client-id=helix"] } | |
dhall-lsp-server = { command = "dhall-lsp-server" } | |
docker-langserver = { command = "docker-langserver", args = ["--stdio"] } | |
docker-compose-langserver = { command = "docker-compose-langserver", args = ["--stdio"]} | |
dot-language-server = { command = "dot-language-server", args = ["--stdio"] } | |
earthlyls = { command = "earthlyls" } | |
elixir-ls = { command = "elixir-ls", config = { elixirLS.dialyzerEnabled = false } } | |
elm-language-server = { command = "elm-language-server" } | |
elvish = { command = "elvish", args = ["-lsp"] } | |
erlang-ls = { command = "erlang_ls" } | |
forc = { command = "forc", args = ["lsp"] } | |
forth-lsp = { command = "forth-lsp" } | |
fortls = { command = "fortls", args = ["--lowercase_intrinsics"] } | |
fsharp-ls = { command = "fsautocomplete", config = { AutomaticWorkspaceInit = true } } | |
gleam = { command = "gleam", args = ["lsp"] } | |
graphql-language-service = { command = "graphql-lsp", args = ["server", "-m", "stream"] } | |
haskell-language-server = { command = "haskell-language-server-wrapper", args = ["--lsp"] } | |
idris2-lsp = { command = "idris2-lsp" } | |
intelephense = { command = "intelephense", args = ["--stdio"] } | |
jdtls = { command = "jdtls" } | |
jsonnet-language-server = { command = "jsonnet-language-server", args= ["-t", "--lint"] } | |
julia = { command = "julia", timeout = 60, args = [ "--startup-file=no", "--history-file=no", "--quiet", "-e", "using LanguageServer; runserver()", ] } | |
koka = { command = "koka", args = ["--language-server", "--lsstdio"] } | |
kotlin-language-server = { command = "kotlin-language-server" } | |
lean = { command = "lean", args = [ "--server" ] } | |
ltex-ls = { command = "ltex-ls" } | |
markdoc-ls = { command = "markdoc-ls", args = ["--stdio"] } | |
markdown-oxide = { command = "markdown-oxide" } | |
marksman = { command = "marksman", args = ["server"] } | |
metals = { command = "metals", config = { "isHttpEnabled" = true, metals = { inlayHints = { typeParameters = {enable = true} , hintsInPatternMatch = {enable = true} } } } } | |
mint = { command = "mint", args = ["ls"] } | |
mojo-lsp = { command = "mojo-lsp-server" } | |
nil = { command = "nil" } | |
nimlangserver = { command = "nimlangserver" } | |
nimlsp = { command = "nimlsp" } | |
nls = { command = "nls" } | |
nu-lsp = { command = "nu", args = [ "--lsp" ] } | |
ocamllsp = { command = "ocamllsp" } | |
ols = { command = "ols", args = [] } | |
omnisharp = { command = "OmniSharp", args = [ "--languageserver" ] } | |
openscad-lsp = { command = "openscad-lsp", args = ["--stdio"] } | |
pasls = { command = "pasls", args = [] } | |
pbkit = { command = "pb", args = [ "lsp" ] } | |
perlnavigator = { command = "perlnavigator", args= ["--stdio"] } | |
pest-language-server = { command = "pest-language-server" } | |
prisma-language-server = { command = "prisma-language-server", args = ["--stdio"] } | |
purescript-language-server = { command = "purescript-language-server", args = ["--stdio"] } | |
pylsp = { command = "pylsp" } | |
pyright = { command = "pyright-langserver", args = ["--stdio"], config = {} } | |
pylyzer = { command = "pylyzer", args = ["--server"] } | |
qmlls = { command = "qmlls" } | |
r = { command = "R", args = ["--no-echo", "-e", "languageserver::run()"] } | |
racket = { command = "racket", args = ["-l", "racket-langserver"] } | |
regols = { command = "regols" } | |
rescript-language-server = { command = "rescript-language-server", args = ["--stdio"] } | |
robotframework_ls = { command = "robotframework_ls" } | |
serve-d = { command = "serve-d" } | |
slint-lsp = { command = "slint-lsp", args = [] } | |
solargraph = { command = "solargraph", args = ["stdio"] } | |
solc = { command = "solc", args = ["--lsp"] } | |
sourcekit-lsp = { command = "sourcekit-lsp" } | |
svlangserver = { command = "svlangserver", args = [] } | |
swipl = { command = "swipl", args = [ "-g", "use_module(library(lsp_server))", "-g", "lsp_server:main", "-t", "halt", "--", "stdio" ] } | |
tailwindcss-ls = { command = "tailwindcss-language-server", args = ["--stdio"] } | |
taplo = { command = "taplo", args = ["lsp", "stdio"] } | |
templ = { command = "templ", args = ["lsp"] } | |
terraform-ls = { command = "terraform-ls", args = ["serve"] } | |
texlab = { command = "texlab" } | |
vala-language-server = { command = "vala-language-server" } | |
vhdl_ls = { command = "vhdl_ls", args = [] } | |
vlang-language-server = { command = "v-analyzer" } | |
vscode-css-language-server = { command = "vscode-css-language-server", args = ["--stdio"], config = { provideFormatter = true, css = { validate = { enable = true } } } } | |
vscode-html-language-server = { command = "vscode-html-language-server", args = ["--stdio"], config = { provideFormatter = true } } | |
vscode-json-language-server = { command = "vscode-json-language-server", args = ["--stdio"], config = { provideFormatter = true, json = { validate = { enable = true } } } } | |
vuels = { command = "vue-language-server", args = ["--stdio"], config = { typescript = { tsdk = "node_modules/typescript/lib/" } } } | |
wgsl_analyzer = { command = "wgsl_analyzer" } | |
yaml-language-server = { command = "yaml-language-server", args = ["--stdio"] } | |
zls = { command = "zls" } | |
blueprint-compiler = { command = "blueprint-compiler", args = ["lsp"] } | |
typst-lsp = { command = "typst-lsp" } | |
tinymist = { command = "tinymist" } | |
pkgbuild-language-server = { command = "pkgbuild-language-server" } | |
helm_ls = { command = "helm_ls", args = ["serve"] } | |
ember-language-server = { command = "ember-language-server", args = ["--stdio"] } | |
#LUA | |
[[language]] | |
name = "lua" | |
injection-regex = "lua" | |
scope = "source.lua" | |
file-types = ["lua"] | |
shebangs = ["lua", "luajit"] | |
roots = [".luarc.json", ".luacheckrc", ".stylua.toml", "selene.toml", ".git"] | |
comment-token = "--" | |
block-comment-tokens = { start = "--[[", end = "--]]" } | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "lua-language-server" ] | |
[[grammar]] | |
name = "lua" | |
source = { git = "https://github.com/tree-sitter-grammars/tree-sitter-lua", rev = "88e446476a1e97a8724dff7a23e2d709855077f2" } | |
[language-server.lua-language-server] | |
command = "lua-language-server" | |
[language-server.lua-language-server.config.Lua.hint] | |
enable = true | |
arrayIndex = "Enable" | |
setType = true | |
paramName = "All" | |
paramType = true | |
await = true | |
#RUST | |
[language-server.rust-analyzer] | |
command = "rust-analyzer" | |
[language-server.rust-analyzer.config] | |
inlayHints.bindingModeHints.enable = false | |
inlayHints.closingBraceHints.minLines = 10 | |
inlayHints.closureReturnTypeHints.enable = "with_block" | |
inlayHints.discriminantHints.enable = "fieldless" | |
inlayHints.lifetimeElisionHints.enable = "skip_trivial" | |
inlayHints.typeHints.hideClosureInitialization = false | |
[[language]] | |
name = "rust" | |
scope = "source.rust" | |
injection-regex = "rs|rust" | |
file-types = ["rs"] | |
roots = ["Cargo.toml", "Cargo.lock"] | |
shebangs = ["rust-script", "cargo"] | |
auto-format = true | |
comment-tokens = ["//", "///", "//!"] | |
block-comment-tokens = [ | |
{ start = "/*", end = "*/" }, | |
{ start = "/**", end = "*/" }, | |
{ start = "/*!", end = "*/" }, | |
] | |
language-servers = [ "rust-analyzer" ] | |
indent = { tab-width = 4, unit = " " } | |
persistent-diagnostic-sources = ["rustc", "clippy"] | |
[language.auto-pairs] | |
'(' = ')' | |
'{' = '}' | |
'[' = ']' | |
'"' = '"' | |
'`' = '`' | |
[language.debugger] | |
name = "lldb-dap" | |
transport = "stdio" | |
command = "lldb-dap" | |
[[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}" ] } | |
[[grammar]] | |
name = "rust" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-rust", rev = "9c84af007b0f144954adb26b3f336495cbb320a7" } | |
#JSON | |
[[language]] | |
name = "json" | |
scope = "source.json" | |
injection-regex = "json" | |
file-types = [ | |
"json", | |
"arb", | |
"ipynb", | |
"geojson", | |
"gltf", | |
"webmanifest", | |
{ glob = "flake.lock" }, | |
{ glob = ".babelrc" }, | |
{ glob = ".bowerrc" }, | |
{ glob = ".jscrc" }, | |
"js.map", | |
"ts.map", | |
"css.map", | |
{ glob = ".jslintrc" }, | |
"jsonl", | |
"jsonld", | |
{ glob = ".vuerc" }, | |
{ glob = "composer.lock" }, | |
{ glob = ".watchmanconfig" }, | |
"avsc", | |
{ glob = ".prettierrc" }, | |
] | |
language-servers = [ "vscode-json-language-server" ] | |
auto-format = true | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "json" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-json", rev = "73076754005a460947cafe8e03a8cf5fa4fa2938" } | |
[[language]] | |
name = "jsonc" | |
scope = "source.json" | |
injection-regex = "jsonc" | |
file-types = ["jsonc"] | |
grammar = "json" | |
language-servers = [ "vscode-json-language-server" ] | |
auto-format = true | |
indent = { tab-width = 2, unit = " " } | |
[[language]] | |
name = "json5" | |
scope = "source.json5" | |
injection-regex = "json5" | |
file-types = ["json5"] | |
language-servers = [] | |
comment-token = "//" | |
indent = { tab-width = 4, unit = " " } | |
# https://json5.org | |
[[grammar]] | |
name = "json5" | |
source = { git = "https://github.com/Joakker/tree-sitter-json5", rev = "c23f7a9b1ee7d45f516496b1e0e4be067264fa0d" } | |
#C | |
[[language]] | |
name = "c" | |
scope = "source.c" | |
injection-regex = "c" | |
file-types = ["c"] # TODO: ["h"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "clangd" ] | |
indent = { tab-width = 2, unit = " " } | |
[language.debugger] | |
name = "lldb-dap" | |
transport = "stdio" | |
command = "lldb-dap" | |
[[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}" ] } | |
[[grammar]] | |
name = "c" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-c", rev = "7175a6dd5fc1cee660dce6fe23f6043d75af424a" } | |
#C++ | |
[[language]] | |
name = "cpp" | |
scope = "source.cpp" | |
injection-regex = "cpp" | |
file-types = ["cc", "hh", "c++", "cpp", "hpp", "h", "ipp", "tpp", "cxx", "hxx", "ixx", "txx", "ino", "C", "H", "cu", "cuh", "cppm", "h++", "ii", "inl", { glob = ".hpp.in" }, { glob = ".h.in" }] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "clangd" ] | |
indent = { tab-width = 2, unit = " " } | |
[language.debugger] | |
name = "lldb-dap" | |
transport = "stdio" | |
command = "lldb-dap" | |
[[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}" ] } | |
[[grammar]] | |
name = "cpp" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-cpp", rev = "670404d7c689be1c868a46f919ba2a3912f2b7ef" } | |
#C-SHARP | |
[[language]] | |
name = "c-sharp" | |
scope = "source.csharp" | |
injection-regex = "c-?sharp" | |
file-types = ["cs", "csx", "cake"] | |
roots = ["sln", "csproj"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
indent = { tab-width = 4, unit = "\t" } | |
language-servers = [ "omnisharp" ] | |
[language.debugger] | |
name = "netcoredbg" | |
transport = "tcp" | |
command = "netcoredbg" | |
args = [ "--interpreter=vscode" ] | |
port-arg = "--server={}" | |
[[language.debugger.templates]] | |
name = "launch" | |
request = "launch" | |
completion = [ { name = "path to dll", completion = "filename" } ] | |
args = { type = "coreclr", console = "internalConsole", internalConsoleOptions = "openOnSessionStart", program = "{0}" } | |
[[language.debugger.templates]] | |
name = "attach" | |
request = "attach" | |
completion = [ "pid" ] | |
args = { processId = "{0}" } | |
[[grammar]] | |
name = "c-sharp" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-c-sharp", rev = "5b60f99545fea00a33bbfae5be956f684c4c69e2" } | |
#JAVASCRIPT | |
[[language]] | |
name = "javascript" | |
scope = "source.js" | |
injection-regex = "(js|javascript)" | |
language-id = "javascript" | |
file-types = ["js", "mjs", "cjs", "rules", "es6", "pac", { glob = ".node_repl_history" }, { glob = "jakefile" }] | |
shebangs = ["node"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "typescript-language-server" ] | |
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}" } | |
[[grammar]] | |
name = "javascript" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-javascript", rev = "f772967f7b7bc7c28f845be2420a38472b16a8ee" } | |
#JSX | |
[[language]] | |
name = "jsx" | |
scope = "source.jsx" | |
injection-regex = "jsx" | |
language-id = "javascriptreact" | |
file-types = ["jsx"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "typescript-language-server" ] | |
indent = { tab-width = 2, unit = " " } | |
grammar = "javascript" | |
#SVELTE | |
[[language]] | |
name = "svelte" | |
scope = "source.svelte" | |
injection-regex = "svelte" | |
file-types = ["svelte"] | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "svelteserver" ] | |
[[grammar]] | |
name = "svelte" | |
source = { git = "https://github.com/Himujjal/tree-sitter-svelte", rev = "be7f2e7db1fc19f0852265ec60923fc058380739" } | |
#VUE | |
[[language]] | |
name = "vue" | |
scope = "source.vue" | |
injection-regex = "vue" | |
file-types = ["vue"] | |
roots = ["package.json"] | |
block-comment-tokens = { start = "<!--", end = "-->" } | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "vuels" ] | |
[[grammar]] | |
name = "vue" | |
source = { git = "https://github.com/ikatyang/tree-sitter-vue", rev = "91fe2754796cd8fba5f229505a23fa08f3546c06" } | |
#JSDOC | |
[[language]] | |
name = "jsdoc" | |
scope = "source.jsdoc" | |
injection-regex = "jsdoc" | |
file-types = ["jsdoc"] | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "jsdoc" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-jsdoc", rev = "189a6a4829beb9cdbe837260653b4a3dfb0cc3db" } | |
#TYPESCRIPT | |
[[language]] | |
name = "typescript" | |
scope = "source.ts" | |
injection-regex = "(ts|typescript)" | |
language-id = "typescript" | |
file-types = ["ts", "mts", "cts"] | |
shebangs = ["deno", "bun", "ts-node"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "typescript-language-server" ] | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "typescript" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "b1bf4825d9eaa0f3bdeb1e52f099533328acfbdf", subpath = "typescript" } | |
#TSX | |
[[language]] | |
name = "tsx" | |
scope = "source.tsx" | |
injection-regex = "(tsx)" # |typescript | |
language-id = "typescriptreact" | |
file-types = ["tsx"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "typescript-language-server" ] | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "tsx" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-typescript", rev = "b1bf4825d9eaa0f3bdeb1e52f099533328acfbdf", subpath = "tsx" } | |
#CSS | |
[[language]] | |
name = "css" | |
scope = "source.css" | |
injection-regex = "css" | |
file-types = ["css", "scss"] | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "vscode-css-language-server" ] | |
auto-format = true | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "css" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-css", rev = "769203d0f9abe1a9a691ac2b9fe4bb4397a73c51" } | |
#SCSS | |
[[language]] | |
name = "scss" | |
scope = "source.scss" | |
injection-regex = "scss" | |
file-types = ["scss"] | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "vscode-css-language-server" ] | |
auto-format = true | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "scss" | |
source = { git = "https://github.com/serenadeai/tree-sitter-scss", rev = "c478c6868648eff49eb04a4df90d703dc45b312a" } | |
#HTML | |
[[language]] | |
name = "html" | |
scope = "text.html.basic" | |
injection-regex = "html" | |
file-types = ["html", "htm", "shtml", "xhtml", "xht", "jsp", "asp", "aspx", "jshtm", "volt", "rhtml"] | |
block-comment-tokens = { start = "<!--", end = "-->" } | |
language-servers = [ "vscode-html-language-server" ] | |
auto-format = true | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "html" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-html", rev = "29f53d8f4f2335e61bf6418ab8958dac3282077a" } | |
#PYTHON | |
[[language]] | |
name = "python" | |
scope = "source.python" | |
injection-regex = "py(thon)?" | |
file-types = ["py", "pyi", "py3", "pyw", "ptl", "rpy", "cpy", "ipy", "pyt", { glob = ".python_history" }, { glob = ".pythonstartup" }, { glob = ".pythonrc" }, { glob = "SConstruct" }, { glob = "SConscript" }] | |
shebangs = ["python"] | |
roots = ["pyproject.toml", "setup.py", "poetry.lock", "pyrightconfig.json"] | |
comment-token = "#" | |
indent = { tab-width = 4, unit = " " } | |
[language-server.ruff] | |
command = "ruff-lsp" | |
[language-server.ruff.config.settings] | |
args = ["--ignore", "E501"] | |
[[grammar]] | |
name = "python" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-python", rev = "4bfdd9033a2225cc95032ce77066b7aeca9e2efc" } | |
#JINJA | |
[[language]] | |
name = "jinja" | |
scope = "text.html.jinja" | |
injection-regex = "jinja" | |
file-types = ["jinja", "jinja2", "j2"] | |
indent = { tab-width = 2, unit = " " } | |
grammar = "jinja2" | |
[[grammar]] | |
name = "jinja2" | |
source = { git = "https://github.com/varpeti/tree-sitter-jinja2", rev = "a533cd3c33aea6acb0f9bf9a56f35dcfe6a8eb53" } | |
#BASH | |
[[language]] | |
name = "bash" | |
scope = "source.bash" | |
injection-regex = "(shell|bash|zsh|sh)" | |
file-types = [ | |
"sh", | |
"bash", | |
"ash", | |
"dash", | |
"ksh", | |
"mksh", | |
"zsh", | |
"zshenv", | |
"zlogin", | |
"zlogout", | |
"zprofile", | |
"zshrc", | |
"eclass", | |
"ebuild", | |
"bazelrc", | |
"Renviron", | |
"zsh-theme", | |
"cshrc", | |
"tcshrc", | |
"bashrc_Apple_Terminal", | |
"zshrc_Apple_Terminal", | |
{ glob = "tmux.conf" }, | |
{ glob = ".bash_history" }, | |
{ glob = ".bash_login" }, | |
{ glob = ".bash_logout" }, | |
{ glob = ".bash_profile" }, | |
{ glob = ".bashrc" }, | |
{ glob = ".profile" }, | |
{ glob = ".zshenv" }, | |
{ glob = ".zlogin" }, | |
{ glob = ".zlogout" }, | |
{ glob = ".zprofile" }, | |
{ glob = ".zshrc" }, | |
{ glob = ".zimrc" }, | |
{ glob = "APKBUILD" }, | |
{ glob = ".bash_aliases" }, | |
{ glob = ".Renviron" }, | |
{ glob = ".xprofile" }, | |
{ glob = ".xsession" }, | |
{ glob = ".xsessionrc" }, | |
{ glob = ".yashrc" }, | |
{ glob = ".yash_profile" }, | |
{ glob = ".hushlogin" }, | |
] | |
shebangs = ["sh", "bash", "dash", "zsh"] | |
comment-token = "#" | |
language-servers = [ "bash-language-server" ] | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "bash" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-bash", rev = "f8fb3274f72a30896075585b32b0c54cad65c086" } | |
#PHP | |
[[language]] | |
name = "php" | |
scope = "source.php" | |
injection-regex = "php" | |
file-types = ["php", "inc", "php4", "php5", "phtml", "ctp"] | |
shebangs = ["php"] | |
roots = ["composer.json", "index.php"] | |
comment-token = "//" | |
language-servers = [ "intelephense" ] | |
indent = { tab-width = 4, unit = " " } | |
[[grammar]] | |
name = "php" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-php", rev = "f860e598194f4a71747f91789bf536b393ad4a56" } | |
[[language]] | |
name = "php-only" | |
scope = "source.php-only" | |
injection-regex = "php-only" | |
file-types = [] | |
indent = { tab-width = 4, unit = " " } | |
roots = ["composer.json", "index.php"] | |
[[grammar]] | |
name = "php-only" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-php", rev = "cf1f4a0f1c01c705c1d6cf992b104028d5df0b53", subpath = "php_only" } | |
#LATEX | |
[[language]] | |
name = "latex" | |
scope = "source.tex" | |
injection-regex = "tex" | |
file-types = ["tex", "sty", "cls", "Rd", "bbx", "cbx"] | |
comment-token = "%" | |
language-servers = [ "texlab" ] | |
indent = { tab-width = 4, unit = "\t" } | |
[[grammar]] | |
name = "latex" | |
source = { git = "https://github.com/latex-lsp/tree-sitter-latex", rev = "8c75e93cd08ccb7ce1ccab22c1fbd6360e3bcea6" } | |
#JAVA | |
[[language]] | |
name = "java" | |
scope = "source.java" | |
injection-regex = "java" | |
file-types = ["java", "jav", "pde"] | |
roots = ["pom.xml", "build.gradle", "build.gradle.kts"] | |
language-servers = [ "jdtls" ] | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "java" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-java", rev = "09d650def6cdf7f479f4b78f595e9ef5b58ce31e" } | |
#GROOVY | |
[[language]] | |
name = "groovy" | |
language-id = "groovy" | |
scope = "source.groovy" | |
file-types = ["gradle", "groovy", "jenkinsfile", { glob = "Jenkinsfile" }, { glob = "Jenkinsfile.*" }] | |
shebangs = ["groovy"] | |
comment-token = "//" | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "groovy" | |
source = { git = "https://github.com/murtaza64/tree-sitter-groovy", rev = "235009aad0f580211fc12014bb0846c3910130c1" } | |
#YAML | |
[[language]] | |
name = "yaml" | |
scope = "source.yaml" | |
file-types = ["yml", "yaml"] | |
comment-token = "#" | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "yaml-language-server", "ansible-language-server" ] | |
injection-regex = "yml|yaml" | |
[[grammar]] | |
name = "yaml" | |
source = { git = "https://github.com/ikatyang/tree-sitter-yaml", rev = "0e36bed171768908f331ff7dff9d956bae016efb" } | |
#CMAKE | |
[[language]] | |
name = "cmake" | |
scope = "source.cmake" | |
file-types = ["cmake", { glob = "CMakeLists.txt" }] | |
comment-token = "#" | |
block-comment-tokens = { start = "#[[", end = "]]" } | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "cmake-language-server" ] | |
injection-regex = "cmake" | |
[[grammar]] | |
name = "cmake" | |
source = { git = "https://github.com/uyha/tree-sitter-cmake", rev = "6e51463ef3052dd3b328322c22172eda093727ad" } | |
#MAKE | |
[[language]] | |
name = "make" | |
scope = "source.make" | |
file-types = [{ glob = "Makefile" }, { glob = "makefile" }, "make", "mk", "mak", {glob = "GNUmakefile" }, { glob = "OCamlMakefile" }] | |
shebangs = ["make", "gmake"] | |
injection-regex = "(make|makefile|Makefile|mk)" | |
comment-token = "#" | |
indent = { tab-width = 4, unit = "\t" } | |
[[grammar]] | |
name = "make" | |
source = { git = "https://github.com/alemuller/tree-sitter-make", rev = "a4b9187417d6be349ee5fd4b6e77b4172c6827dd" } | |
#GLSL | |
[[language]] | |
name = "glsl" | |
scope = "source.glsl" | |
file-types = ["glsl", "vert", "tesc", "tese", "geom", "frag", "comp" ] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
indent = { tab-width = 4, unit = " " } | |
injection-regex = "glsl" | |
[[grammar]] | |
name = "glsl" | |
source = { git = "https://github.com/theHamsta/tree-sitter-glsl", rev = "88408ffc5e27abcffced7010fc77396ae3636d7e" } | |
#WGSL | |
[[language]] | |
name = "wgsl" | |
scope = "source.wgsl" | |
file-types = ["wgsl"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
language-servers = [ "wgsl_analyzer" ] | |
indent = { tab-width = 4, unit = " " } | |
[[grammar]] | |
name = "wgsl" | |
source = { git = "https://github.com/szebniok/tree-sitter-wgsl", rev = "272e89ef2aeac74178edb9db4a83c1ffef80a463" } | |
#MARKDOWN | |
[[language]] | |
name = "markdown" | |
scope = "source.md" | |
injection-regex = "md|markdown" | |
file-types = ["md", "markdown", "mkd", "mkdn", "mdwn", "mdown", "markdn", "mdtxt", "mdtext", "workbook", { glob = "PULLREQ_EDITMSG" }] | |
roots = [".marksman.toml"] | |
language-servers = [ "marksman", "markdown-oxide" ] | |
indent = { tab-width = 2, unit = " " } | |
block-comment-tokens = { start = "<!--", end = "-->" } | |
[[grammar]] | |
name = "markdown" | |
source = { git = "https://github.com/tree-sitter-grammars/tree-sitter-markdown", rev = "62516e8c78380e3b51d5b55727995d2c511436d8", subpath = "tree-sitter-markdown" } | |
#DOCKER | |
[[language]] | |
name = "dockerfile" | |
scope = "source.dockerfile" | |
injection-regex = "docker|dockerfile" | |
roots = ["Dockerfile", "Containerfile"] | |
file-types = [ | |
"Dockerfile", | |
{ glob = "Dockerfile" }, | |
{ glob = "Dockerfile.*" }, | |
"dockerfile", | |
{ glob = "dockerfile" }, | |
{ glob = "dockerfile.*" }, | |
"Containerfile", | |
{ glob = "Containerfile" }, | |
{ glob = "Containerfile.*" }, | |
"containerfile", | |
{ glob = "containerfile" }, | |
{ glob = "containerfile.*" }, | |
] | |
comment-token = "#" | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "docker-langserver" ] | |
[[grammar]] | |
name = "dockerfile" | |
source = { git = "https://github.com/camdencheek/tree-sitter-dockerfile", rev = "8ee3a0f7587b2bd8c45c8cb7d28bd414604aec62" } | |
#DOCKER-COMPOSE | |
[[language]] | |
name = "docker-compose" | |
scope = "source.yaml.docker-compose" | |
roots = ["docker-compose.yaml", "docker-compose.yml"] | |
language-servers = [ "docker-compose-langserver", "yaml-language-server" ] | |
file-types = [{ glob = "docker-compose.yaml" }, { glob = "docker-compose.yml" }] | |
comment-token = "#" | |
indent = { tab-width = 2, unit = " " } | |
grammar = "yaml" | |
#GIT-COMMIT | |
[[language]] | |
name = "git-commit" | |
scope = "git.commitmsg" | |
file-types = [{ glob = "COMMIT_EDITMSG" }] | |
comment-token = "#" | |
indent = { tab-width = 2, unit = " " } | |
rulers = [51, 73] | |
text-width = 72 | |
[[grammar]] | |
name = "git-commit" | |
source = { git = "https://github.com/the-mikedavis/tree-sitter-git-commit", rev = "6f193a66e9aa872760823dff020960c6cedc37b3" } | |
#DIFF | |
[[language]] | |
name = "diff" | |
scope = "source.diff" | |
file-types = ["diff", "patch", "rej"] | |
injection-regex = "diff" | |
comment-token = "#" | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "diff" | |
source = { git = "https://github.com/the-mikedavis/tree-sitter-diff", rev = "fd74c78fa88a20085dbc7bbeaba066f4d1692b63" } | |
#GIT-REBASE | |
[[language]] | |
name = "git-rebase" | |
scope = "source.gitrebase" | |
file-types = [{ glob = "git-rebase-todo" }] | |
injection-regex = "git-rebase" | |
comment-token = "#" | |
indent = { tab-width = 2, unit = "y" } | |
[[grammar]] | |
name = "git-rebase" | |
source = { git = "https://github.com/the-mikedavis/tree-sitter-git-rebase", rev = "d8a4207ebbc47bd78bacdf48f883db58283f9fd8" } | |
#REGEX | |
[[language]] | |
name = "regex" | |
scope = "source.regex" | |
injection-regex = "regex" | |
file-types = ["regex", { glob = ".Rbuildignore" }] | |
[[grammar]] | |
name = "regex" | |
source = { git = "https://github.com/tree-sitter/tree-sitter-regex", rev = "e1cfca3c79896ff79842f057ea13e529b66af636" } | |
#GIT-CONFIG | |
[[language]] | |
name = "git-config" | |
scope = "source.gitconfig" | |
file-types = [{ glob = ".gitmodules" }, { glob = ".gitconfig" }, { glob = ".git/config" }, { glob = ".config/git/config" }] | |
injection-regex = "git-config" | |
comment-token = "#" | |
indent = { tab-width = 4, unit = "\t" } | |
[[grammar]] | |
name = "git-config" | |
source = { git = "https://github.com/the-mikedavis/tree-sitter-git-config", rev = "9c2a1b7894e6d9eedfe99805b829b4ecd871375e" } | |
#GIT-ATTRIBUTES | |
[[language]] | |
name = "git-attributes" | |
scope = "source.gitattributes" | |
file-types = [{ glob = ".gitattributes" }] | |
injection-regex = "git-attributes" | |
comment-token = "#" | |
grammar = "gitattributes" | |
[[grammar]] | |
name = "gitattributes" | |
source = { git = "https://github.com/mtoohey31/tree-sitter-gitattributes", rev = "3dd50808e3096f93dccd5e9dc7dc3dba2eb12dc4" } | |
#GITIGNORE | |
[[language]] | |
name = "git-ignore" | |
scope = "source.gitignore" | |
file-types = [{ glob = ".gitignore_global" }, { glob = ".ignore" }, { glob = "CODEOWNERS" }, { glob = ".config/helix/ignore" }, { glob = ".helix/ignore" }, { glob = ".*ignore" }] | |
injection-regex = "git-ignore" | |
comment-token = "#" | |
grammar = "gitignore" | |
[[grammar]] | |
name = "gitignore" | |
source = { git = "https://github.com/shunsambongi/tree-sitter-gitignore", rev = "f4685bf11ac466dd278449bcfe5fd014e94aa504" } | |
#GRAPHQL | |
[[language]] | |
name = "graphql" | |
scope = "source.graphql" | |
injection-regex = "graphql" | |
file-types = ["gql", "graphql", "graphqls"] | |
language-servers = [ "graphql-language-service" ] | |
comment-token = "#" | |
block-comment-tokens = { start = "\"\"\"", end = "\"\"\"" } | |
indent = { tab-width = 2, unit = " " } | |
[[grammar]] | |
name = "graphql" | |
source = { git = "https://github.com/bkegley/tree-sitter-graphql", rev = "5e66e961eee421786bdda8495ed1db045e06b5fe" } | |
#KOTLIN | |
[[language]] | |
name = "kotlin" | |
scope = "source.kotlin" | |
file-types = ["kt", "kts"] | |
roots = ["settings.gradle", "settings.gradle.kts"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
indent = { tab-width = 4, unit = " " } | |
language-servers = [ "kotlin-language-server" ] | |
[[grammar]] | |
name = "kotlin" | |
source = { git = "https://github.com/fwcd/tree-sitter-kotlin", rev = "a4f71eb9b8c9b19ded3e0e9470be4b1b77c2b569" } | |
#GLEAM | |
[[language]] | |
name = "gleam" | |
scope = "source.gleam" | |
injection-regex = "gleam" | |
file-types = ["gleam"] | |
roots = ["gleam.toml"] | |
comment-token = "//" | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "gleam" ] | |
auto-format = true | |
[[grammar]] | |
name = "gleam" | |
source = { git = "https://github.com/gleam-lang/tree-sitter-gleam", rev = "bcf9c45b56cbe46e9dac5eee0aee75df270000ac" } | |
#SQL | |
[[language]] | |
name = "sql" | |
scope = "source.sql" | |
file-types = ["sql", "dsql"] | |
comment-token = "--" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
indent = { tab-width = 4, unit = " " } | |
injection-regex = "sql" | |
[[grammar]] | |
name = "sql" | |
source = { git = "https://github.com/DerekStride/tree-sitter-sql", rev = "da2d1eff425b146d3c8cab7be8dfa98b11d896dc" } | |
#NU | |
[[language]] | |
name = "nu" | |
scope = "source.nu" | |
injection-regex = "nu" | |
file-types = ["nu", "nuon"] | |
shebangs = ["nu"] | |
comment-token = "#" | |
indent = { tab-width = 2, unit = " " } | |
language-servers = [ "nu-lsp" ] | |
[[grammar]] | |
name = "nu" | |
source = { git = "https://github.com/nushell/tree-sitter-nu", rev = "358c4f509eb97f0148bbd25ad36acc729819b9c1" } | |
#SLINT | |
[[language]] | |
name = "slint" | |
scope = "source.slint" | |
injection-regex = "slint" | |
file-types = ["slint"] | |
comment-token = "//" | |
block-comment-tokens = { start = "/*", end = "*/" } | |
indent = { tab-width = 4, unit = " " } | |
language-servers = [ "slint-lsp" ] | |
[[grammar]] | |
name = "slint" | |
source = { git = "https://github.com/slint-ui/tree-sitter-slint", rev = "0701312b74b87fe20e61aa662ba41c5815b5d428" } | |
#XML | |
[[language]] | |
name = "xml" | |
scope = "source.xml" | |
injection-regex = "xml" | |
file-types = [ | |
"xml", | |
"mobileconfig", | |
"plist", | |
"xib", | |
"storyboard", | |
"svg", | |
"xsd", | |
"gml", | |
"xaml", | |
"gir", | |
"rss", | |
"atom", | |
"opml", | |
"policy", | |
"ascx", | |
"axml", | |
"axaml", | |
"bpmn", | |
"cpt", | |
"csl", | |
"csproj.user", | |
"dita", | |
"ditamap", | |
"dtml", | |
"fxml", | |
"iml", | |
"isml", | |
"jmx", | |
"launch", | |
"menu", | |
"mxml", | |
"nuspec", | |
"osc", | |
"osm", | |
"pt", | |
"publishsettings", | |
"pubxml", | |
"pubxml.user", | |
"rbxlx", | |
"rbxmx", | |
"rng", | |
"shproj", | |
"tld", | |
"tmx", | |
"vbproj.user", | |
"vcxproj", | |
"vcxproj.filters", | |
"wsdl", | |
"wxi", | |
"wxs", | |
"xbl", | |
"xlf", | |
"xliff", | |
"xpdl", | |
"xul", | |
"xoml", | |
"musicxml", | |
"glif", | |
"ui" | |
] | |
block-comment-tokens = { start = "<!--", end = "-->" } | |
indent = { tab-width = 2, unit = " " } | |
[language.auto-pairs] | |
'(' = ')' | |
'{' = '}' | |
'[' = ']' | |
'"' = '"' | |
"'" = "'" | |
"<" = ">" | |
[[grammar]] | |
name = "xml" | |
source = { git = "https://github.com/RenjiSann/tree-sitter-xml", rev = "48a7c2b6fb9d515577e115e6788937e837815651" } | |
#ENV | |
[[language]] | |
name = "env" | |
scope = "source.env" | |
file-types = [{ glob = ".env" }, { glob = ".env.*" }, { glob = ".envrc" }, { glob = ".envrc.*" }] | |
injection-regex = "env" | |
comment-token = "#" | |
indent = { tab-width = 4, unit = "\t" } | |
grammar = "bash" | |
#MSBUILD | |
[[language]] | |
name = "msbuild" | |
scope = "source.msbuild" | |
injection-regex = "msbuild" | |
file-types = ["proj", "vbproj", "csproj", "fsproj", "targets", "props"] | |
indent = { tab-width = 2, unit = " " } | |
block-comment-tokens = { start = "<!--", end = "-->" } | |
grammar = "xml" | |
[language.auto-pairs] | |
'(' = ')' | |
'{' = '}' | |
'[' = ']' | |
'"' = '"' | |
"'" = "'" | |
"<" = ">" | |
#NASM | |
[[language]] | |
name = "nasm" | |
scope = "source.nasm" | |
file-types = ["asm", "S", "nasm"] | |
injection-regex = "n?asm" | |
comment-token = ";" | |
indent = { tab-width = 8, unit = " " } | |
[[grammar]] | |
name = "nasm" | |
source = { git = "https://github.com/naclsn/tree-sitter-nasm", rev = "a0db15db6fcfb1bf2cc8702500e55e558825c48b" } | |
#POWERSHELL | |
[[language]] | |
name = "powershell" | |
scope = "source.powershell" | |
injection-regex = "(pwsh|powershell)" | |
file-types = [ "ps1", "psm1", "psd1", "pscc", "psrc" ] | |
shebangs = [ "pwsh", "powershell" ] | |
comment-token = '#' | |
block-comment-tokens = { start = "<#", end = "#>" } | |
indent = { tab-width = 4, unit = " " } | |
[[grammar]] | |
name = "powershell" | |
source = { git = "https://github.com/airbus-cert/tree-sitter-powershell", rev = "c9316be0faca5d5b9fd3b57350de650755f42dc0" } |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
local wezterm = require "wezterm" | |
print("loaded keybinds"); | |
return { | |
{ key="n", mods="CTRL", action = wezterm.action{ SplitHorizontal={ domain= "CurrentPaneDomain"} }}, | |
{ key="m", mods="CTRL", action = wezterm.action{ SplitVertical={ domain= "CurrentPaneDomain"} }}, | |
{ key="H", mods="CTRL|SHIFT", action = wezterm.action{ ActivatePaneDirection="Left" }}, | |
{ key="J", mods="CTRL|SHIFT", action = wezterm.action{ ActivatePaneDirection="Down" }}, | |
{ key="K", mods="CTRL|SHIFT", action = wezterm.action{ ActivatePaneDirection="Up" }}, | |
{ key="L", mods="CTRL|SHIFT", action = wezterm.action{ ActivatePaneDirection="Right" }}, | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
local wezterm = require 'wezterm'; | |
local keybinds = require 'keybinds'; | |
local mux = wezterm.mux | |
wezterm.on('gui-startup', function() | |
local tab, pane, window = mux.spawn_window{} | |
window:gui_window():toggle_fullscreen() | |
end) | |
local config = { | |
enable_tab_bar = true, | |
keys = keybinds, | |
font_size = 10.5, | |
font = wezterm.font "CaskaydiaCove NF", | |
window_background_opacity = 0.8, | |
default_prog = {"nu"}, | |
prefer_egl=true | |
}; | |
print("loaded config") | |
return config; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment