Compare commits
2 Commits
master
...
14cee7d351
| Author | SHA1 | Date | |
|---|---|---|---|
| 14cee7d351 | |||
| 8dd7fe61fc |
9
.gitmodules
vendored
9
.gitmodules
vendored
@@ -10,12 +10,3 @@
|
||||
[submodule "zsh/custom/plugins/zsh-autopair"]
|
||||
path = zsh/custom/plugins/zsh-autopair
|
||||
url = https://github.com/hlissner/zsh-autopair
|
||||
[submodule "zsh/custom/plugins/fast-syntax-highlighting"]
|
||||
path = zsh/custom/plugins/fast-syntax-highlighting
|
||||
url = https://github.com/zdharma-continuum/fast-syntax-highlighting.git
|
||||
[submodule "zsh/custom/plugins/zsh-completions"]
|
||||
path = zsh/custom/plugins/zsh-completions
|
||||
url = https://github.com/zsh-users/zsh-completions.git
|
||||
[submodule "zsh/custom/plugins/zsh-vi-mode"]
|
||||
path = zsh/custom/plugins/zsh-vi-mode
|
||||
url = https://github.com/jeffreytse/zsh-vi-mode
|
||||
|
||||
20
README.md
20
README.md
@@ -1,20 +0,0 @@
|
||||
## Tools
|
||||
|
||||
### Core tools
|
||||
|
||||
```
|
||||
bat
|
||||
fd
|
||||
fzf
|
||||
git-delta
|
||||
paru
|
||||
rg
|
||||
zoxide
|
||||
```
|
||||
|
||||
### Useful
|
||||
|
||||
```
|
||||
jq
|
||||
git-cliff
|
||||
```
|
||||
@@ -1,11 +0,0 @@
|
||||
[include]
|
||||
path = ~/.dotfiles/git/configs/common.gitconfig
|
||||
|
||||
path = ~/.dotfiles/git/profiles/aim-robotics.gitconfig
|
||||
|
||||
[includeIf "gitdir:~/.dotfiles/"]
|
||||
path = ~/.dotfiles/git/profiles/Dreaded_X.gitconfig
|
||||
|
||||
; I don't have my private key on work machines
|
||||
[commit]
|
||||
gpgsign = false
|
||||
@@ -1 +0,0 @@
|
||||
../git/dot-local
|
||||
@@ -1,11 +1,3 @@
|
||||
[include]
|
||||
path = ~/.dotfiles/git/configs/common.gitconfig
|
||||
|
||||
path = ~/.dotfiles/git/profiles/ALTEN.gitconfig
|
||||
|
||||
[includeIf "gitdir:~/.dotfiles"]
|
||||
path = ~/.dotfiles/git/profiles/Dreaded_X.gitconfig
|
||||
|
||||
; I don't have my private key on work machines
|
||||
[commit]
|
||||
gpgsign = false
|
||||
path = ~/.dotfiles/git/profiles/common
|
||||
path = ~/.dotfiles/git/profiles/ALTEN
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
../git/dot-local
|
||||
@@ -1,10 +1,5 @@
|
||||
[include]
|
||||
path = ~/.dotfiles/git/configs/lfs.gitconfig
|
||||
path = ~/.dotfiles/git/configs/delta.gitconfig
|
||||
|
||||
[push]
|
||||
default = simple
|
||||
autoSetupRemote = true
|
||||
|
||||
[core]
|
||||
excludesfile = ~/.dotfiles/git/gitignore
|
||||
@@ -25,9 +20,4 @@
|
||||
tool = nvimdiff
|
||||
|
||||
[init]
|
||||
defaultBranch = main
|
||||
|
||||
[rebase]
|
||||
autosquash = true
|
||||
autostash = true
|
||||
updateRefs = true
|
||||
defaultBranch = master
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
[include]
|
||||
path = ~/.dotfiles/git/configs/common.gitconfig
|
||||
path = ~/.dotfiles/git/configs/lfs.gitconfig
|
||||
path = ~/.dotfiles/git/configs/delta.gitconfig
|
||||
|
||||
path = ~/.dotfiles/git/profiles/Dreaded_X.gitconfig
|
||||
path = ~/.dotfiles/git/profiles/ALTEN.gitconfig
|
||||
|
||||
[includeIf "gitdir:~/Projects/ALTEN/"]
|
||||
path = ~/.dotfiles/git/profiles/ALTEN.gitconfig
|
||||
|
||||
[includeIf "gitdir:~/Projects/aim-robotics/"]
|
||||
path = ~/.dotfiles/git/profiles/aim-robotics.gitconfig
|
||||
|
||||
@@ -1,19 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
TARGET=$1
|
||||
|
||||
|
||||
if [ -z "$TARGET" ]; then
|
||||
if hash fzf 2>/dev/null; then
|
||||
TARGET=$(git log -n 50 --pretty=format:'%h %s' --no-merges | fzf --border-label=' Select commit ' | cut -c -7 )
|
||||
else
|
||||
echo "Not installed: fzf"
|
||||
exit -1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ -z "$TARGET" ]; then
|
||||
echo "No target specified"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
git commit --fixup=$TARGET ${@:2} && GIT_SEQUENCE_EDITOR=true git rebase -i --autostash --autosquash $TARGET^
|
||||
@@ -1,6 +0,0 @@
|
||||
[user]
|
||||
name = Tim Huizinga
|
||||
email = th@aimrobotics.nl
|
||||
|
||||
[commit]
|
||||
gpgsign = false
|
||||
@@ -1,21 +0,0 @@
|
||||
#!/bin/bash
|
||||
set -euo pipefail
|
||||
|
||||
# Install additional dependencies
|
||||
sudo apt-get install fuse libfuse2 unzip ripgrep python3-venv xclip -y --no-install-recommends
|
||||
|
||||
# Install new version of node
|
||||
curl -fsSL https://deb.nodesource.com/setup_23.x -o /tmp/nodesource_setup.sh
|
||||
sudo -E bash /tmp/nodesource_setup.sh
|
||||
sudo apt-get install -y nodejs
|
||||
|
||||
# Install new version of neovim
|
||||
sudo rm -rf /usr/local/bin/nvim
|
||||
sudo wget https://github.com/neovim/neovim-releases/releases/download/v0.11.1/nvim-linux-x86_64.appimage -O /usr/local/bin/nvim
|
||||
sudo chmod +x /usr/local/bin/nvim
|
||||
|
||||
# Get latest version of dotfiles
|
||||
rm -rf ~/.dotfiles
|
||||
git clone https://git.huizinga.dev/Dreaded_X/dotfiles ~/.dotfiles
|
||||
mkdir -p ~/.config
|
||||
ln -s ~/.dotfiles/nvim/dot-config/nvim ~/.config/nvim
|
||||
@@ -1,54 +1,48 @@
|
||||
{
|
||||
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
|
||||
"actions-preview.nvim": { "branch": "master", "commit": "cb938c25edaac38d362555f19244a9cb85d561e8" },
|
||||
"blink.cmp": { "branch": "main", "commit": "4b18c32adef2898f95cdef6192cbd5796c1a332d" },
|
||||
"blink.cmp": { "branch": "main", "commit": "022521a8910a5543b0251b21c9e1a1e989745796" },
|
||||
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
|
||||
"bufresize.nvim": { "branch": "master", "commit": "3b19527ab936d6910484dcc20fb59bdb12322d8b" },
|
||||
"conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" },
|
||||
"crates.nvim": { "branch": "main", "commit": "afcd1cc3eeceb5783676fc8464389b9216a29d05" },
|
||||
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
|
||||
"conform.nvim": { "branch": "master", "commit": "6feb2f28f9a9385e401857b21eeac3c1b66dd628" },
|
||||
"eyeliner.nvim": { "branch": "main", "commit": "8f197eb30cecdf4c2cc9988a5eecc6bc34c0c7d6" },
|
||||
"fidget.nvim": { "branch": "main", "commit": "7fa433a83118a70fe24c1ce88d5f0bd3453c0970" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
|
||||
"gitlab.nvim": { "branch": "develop", "commit": "3d2828a9504b87fc36ee2aca1b0f36cf75003edd" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3" },
|
||||
"gruvbox.nvim": { "branch": "main", "commit": "334d5fd49fc8033f26408425366c66c6390c57bb" },
|
||||
"fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" },
|
||||
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
|
||||
"gitsigns.nvim": { "branch": "main", "commit": "8bdaccdb897945a3c99c1ad8df94db0ddf5c8790" },
|
||||
"gruvbox.nvim": { "branch": "main", "commit": "00e38a379bab3389e187b3953566d67d494dfddd" },
|
||||
"guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" },
|
||||
"inc-rename.nvim": { "branch": "main", "commit": "0074b551a17338ccdcd299bd86687cc651bcb33d" },
|
||||
"inc-rename.nvim": { "branch": "main", "commit": "2eaff20526ff6101337b84f4b0d238c11f47d7f4" },
|
||||
"kubernetes.nvim": { "branch": "main", "commit": "44daf998345628a1a7034e3aaa31f4e05e4dde7c" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
|
||||
"lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "a676ab7282da8d651e175118bcf54483ca11e46d" },
|
||||
"mason-tool-installer.nvim": { "branch": "main", "commit": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc" },
|
||||
"mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" },
|
||||
"multicolumn.nvim": { "branch": "master", "commit": "a363bdfd422abf26256f343dac4df183031f8e94" },
|
||||
"neo-tree.nvim": { "branch": "v3.x", "commit": "9d6826582a3e8c84787bd7355df22a2812a1ad59" },
|
||||
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "ef211089af881bea206c7aa3f2693a81feee7e90" },
|
||||
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
|
||||
"lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
|
||||
"lualine.nvim": { "branch": "master", "commit": "0c6cca9f2c63dadeb9225c45bc92bb95a151d4af" },
|
||||
"mason-lspconfig.nvim": { "branch": "main", "commit": "67da97f8c2fd12d05427bb485ce07ee6418e0a51" },
|
||||
"mason-tool-installer.nvim": { "branch": "main", "commit": "93a9ff9b34c91c0cb0f7de8d5f7e4abce51d8903" },
|
||||
"mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
|
||||
"neo-tree.nvim": { "branch": "main", "commit": "f481de16a0eb59c985abac8985e3f2e2f75b4875" },
|
||||
"nui.nvim": { "branch": "main", "commit": "7cd18e73cfbd70e1546931b7268b3eebaeff9391" },
|
||||
"nvim-colorizer.lua": { "branch": "master", "commit": "517df88cf2afb36652830df2c655df2da416a0ae" },
|
||||
"nvim-dap": { "branch": "master", "commit": "b0f983507e3702f073bfe1516846e58b56d4e42f" },
|
||||
"nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "0203a9608d63eda57679b01e69f33a7b4c34b0d1" },
|
||||
"nvim-surround": { "branch": "main", "commit": "61319d4bd1c5e336e197defa15bd104c51f0fb29" },
|
||||
"nvim-lspconfig": { "branch": "master", "commit": "03bc581e05e81d33808b42b2d7e76d70adb3b595" },
|
||||
"nvim-surround": { "branch": "main", "commit": "8dd9150ca7eae5683660ea20cec86edcd5ca4046" },
|
||||
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
|
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "5ca4aaa6efdcc59be46b95a3e876300cfead05ef" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "8e1c0a389f20bf7f5b0dd0e00306c1247bda2595" },
|
||||
"nvim-treesitter-textobjects": { "branch": "master", "commit": "0f051e9813a36481f48ca1f833897210dbcfffde" },
|
||||
"nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" },
|
||||
"peek.nvim": { "branch": "master", "commit": "5820d937d5414baea5f586dc2a3d912a74636e5b" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
|
||||
"ros-nvim": { "branch": "main", "commit": "1ad64cd3a1e144dfea67890845f9da2e82d96900" },
|
||||
"schema-companion.nvim": { "branch": "main", "commit": "9a8cbeb9429958524331f49a4bd9c25cfbc2c208" },
|
||||
"schemastore.nvim": { "branch": "main", "commit": "27f7d753990c8d79bdefe75be0094e7e86eabf16" },
|
||||
"scrollEOF.nvim": { "branch": "master", "commit": "e462b9a07b8166c3e8011f1dcbc6bf68b67cd8d7" },
|
||||
"smart-open.nvim": { "branch": "0.3.x", "commit": "918c97cac0c33f7a116a822df144bc5bbefa4490" },
|
||||
"smart-splits.nvim": { "branch": "master", "commit": "25bf40abf79720ebfa98e09259b7c42942055f4c" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "9912042fc8bca2209105526ac7534e9a0c2071b2" },
|
||||
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
|
||||
"ros-nvim": { "branch": "main", "commit": "f0e16eebe68546025784593fa2355ca6749014a0" },
|
||||
"schema-companion.nvim": { "branch": "main", "commit": "7d662b6c1497fdd82e3e8836eb122f5c4b0d8277" },
|
||||
"schemastore.nvim": { "branch": "main", "commit": "59d6bfa8c109675065f68a81664c17557cc19a9c" },
|
||||
"scrollEOF.nvim": { "branch": "master", "commit": "2575109749b4bf3a0bf979a17947b3c1e8c5137e" },
|
||||
"smart-open.nvim": { "branch": "0.2.x", "commit": "560d8f16e17977c8303db6f9660db58a4415ca41" },
|
||||
"smart-splits.nvim": { "branch": "master", "commit": "5aa2dd82d56cde2f01aef4e902c961e2f7a5453e" },
|
||||
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
|
||||
"sqlite.lua": { "branch": "master", "commit": "50092d60feb242602d7578398c6eb53b4a8ffe7b" },
|
||||
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" },
|
||||
"telescope-fzy-native.nvim": { "branch": "master", "commit": "282f069504515eec762ab6d6c89903377252bf5b" },
|
||||
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
|
||||
"telescope.nvim": { "branch": "master", "commit": "5255aa27c422de944791318024167ad5d40aad20" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
|
||||
"ultimate-autopair.nvim": { "branch": "v0.6", "commit": "72e160cb1ce8c0db2ac4315f77d97420a2f4223d" },
|
||||
"undotree": { "branch": "master", "commit": "6fa6b57cda8459e1e4b2ca34df702f55242f4e4d" },
|
||||
"which-key.nvim": { "branch": "winborder-support", "commit": "ab1a3b0d3005a95507ba6c18b96531d430370885" }
|
||||
"telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
|
||||
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
|
||||
"trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" },
|
||||
"ultimate-autopair.nvim": { "branch": "v0.6", "commit": "b24b97c538b71b6de0ce9d84e47df27b6ecafd76" },
|
||||
"undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" },
|
||||
"which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
|
||||
}
|
||||
|
||||
@@ -1,32 +0,0 @@
|
||||
local function uv_script_interpreter(script_path)
|
||||
local result = vim.system({ "uv", "python", "find", "--script", script_path }, { text = true }):wait()
|
||||
if result.code == 0 then
|
||||
return vim.fn.trim(result.stdout)
|
||||
end
|
||||
end
|
||||
|
||||
local function uv_interpreter()
|
||||
local result = vim.system({ "uv", "python", "find" }, { text = true }):wait()
|
||||
if result.code == 0 then
|
||||
return vim.fn.trim(result.stdout)
|
||||
end
|
||||
end
|
||||
|
||||
return {
|
||||
settings = {
|
||||
basedpyright = {
|
||||
analysis = {
|
||||
typeCheckingMode = "standard",
|
||||
},
|
||||
},
|
||||
python = {},
|
||||
},
|
||||
before_init = function(_, config)
|
||||
local script = vim.api.nvim_buf_get_name(0)
|
||||
local python = uv_script_interpreter(script)
|
||||
if not python then
|
||||
python = uv_interpreter()
|
||||
end
|
||||
config.settings.python.pythonPath = python
|
||||
end,
|
||||
}
|
||||
@@ -1,16 +1,8 @@
|
||||
return require("schema-companion").setup_client(
|
||||
require("schema-companion").adapters.jsonls.setup({
|
||||
sources = {
|
||||
require("schema-companion").sources.lsp.setup(),
|
||||
require("schema-companion").sources.none.setup(),
|
||||
return {
|
||||
settings = {
|
||||
json = {
|
||||
validate = { enable = true },
|
||||
schemas = require("schemastore").json.schemas(),
|
||||
},
|
||||
}),
|
||||
{
|
||||
settings = {
|
||||
json = {
|
||||
validate = { enable = true },
|
||||
schemas = require("schemastore").json.schemas(),
|
||||
},
|
||||
},
|
||||
}
|
||||
)
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,23 +1,8 @@
|
||||
return {
|
||||
settings = {
|
||||
Lua = {
|
||||
workspace = {
|
||||
checkThirdParty = false,
|
||||
library = {
|
||||
"./definitions",
|
||||
},
|
||||
},
|
||||
workspace = { checkThirdParty = false },
|
||||
telemetry = { enable = false },
|
||||
type = {
|
||||
checkTableShape = true,
|
||||
},
|
||||
diagnostics = {
|
||||
neededFileStatus = {
|
||||
-- ["no-unknown"] = "Opened",
|
||||
-- ["incomplete-signature-doc"] = "Opened",
|
||||
-- ["await-in-sync"] = "Opened",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
return require("schema-companion").setup_client(
|
||||
require("schema-companion").adapters.taplo.setup({
|
||||
sources = {
|
||||
require("schema-companion").sources.lsp.setup(),
|
||||
require("schema-companion").sources.none.setup(),
|
||||
},
|
||||
}),
|
||||
{}
|
||||
)
|
||||
@@ -1,10 +1,5 @@
|
||||
return require("schema-companion").setup_client(
|
||||
require("schema-companion").adapters.yamlls.setup({
|
||||
sources = {
|
||||
require("matchers.kubernetes").setup({}),
|
||||
require("schema-companion").sources.lsp.setup(),
|
||||
require("schema-companion").sources.none.setup(),
|
||||
},
|
||||
}),
|
||||
{}
|
||||
)
|
||||
return require("schema-companion").setup_client({
|
||||
settings = {
|
||||
yaml = {},
|
||||
},
|
||||
})
|
||||
|
||||
@@ -15,16 +15,3 @@ vim.keymap.set("n", "N", "Nzz")
|
||||
|
||||
-- Clear search highlight by pressing esc
|
||||
vim.keymap.set("n", "<Esc>", "<cmd>nohlsearch<CR>")
|
||||
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = { "rust" },
|
||||
callback = function(args)
|
||||
local command = {
|
||||
rust = "cargo run",
|
||||
}
|
||||
vim.keymap.set("n", "<F5>", function()
|
||||
vim.system({ "tmux", "send-keys", "-t", ":shell", "c-u", command[args.match], "Enter" })
|
||||
vim.system({ "tmux", "select-window", "-t", ":shell" })
|
||||
end, { buffer = true })
|
||||
end,
|
||||
})
|
||||
|
||||
@@ -27,9 +27,7 @@ map("<leader>th", function()
|
||||
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
|
||||
end, "Toggle inlay hints")
|
||||
|
||||
map("gra", function()
|
||||
require("actions-preview").code_actions()
|
||||
end, "Code actions", { "n", "x" })
|
||||
map("gra", vim.lsp.buf.code_action, "Code actions", { "n", "x" })
|
||||
map("grD", vim.lsp.buf.declaration, "Goto declaration")
|
||||
map("grd", function()
|
||||
require("telescope.builtin").lsp_definitions({ jump_type = "never" })
|
||||
@@ -75,20 +73,20 @@ local function on_attach(client, bufnr)
|
||||
end
|
||||
|
||||
-- Highlight references under cursor
|
||||
-- if client:supports_method(methods.textDocument_documentHighlight) then
|
||||
-- local lsp_hover_hl = vim.api.nvim_create_augroup("LspHoverHighlight", { clear = false })
|
||||
-- vim.api.nvim_create_autocmd({ "CursorHold", "CursorHoldI" }, {
|
||||
-- buffer = bufnr,
|
||||
-- group = lsp_hover_hl,
|
||||
-- callback = vim.lsp.buf.document_highlight,
|
||||
-- })
|
||||
--
|
||||
-- vim.api.nvim_create_autocmd({ "CursorMoved", "CursorMovedI" }, {
|
||||
-- buffer = bufnr,
|
||||
-- group = lsp_hover_hl,
|
||||
-- callback = vim.lsp.buf.clear_references,
|
||||
-- })
|
||||
-- end
|
||||
if client:supports_method(methods.textDocument_documentHighlight) then
|
||||
local lsp_hover_hl = vim.api.nvim_create_augroup("LspHoverHighlight", { clear = false })
|
||||
vim.api.nvim_create_autocmd({ "CursorHold", "CursorHoldI" }, {
|
||||
buffer = bufnr,
|
||||
group = lsp_hover_hl,
|
||||
callback = vim.lsp.buf.document_highlight,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "CursorMoved", "CursorMovedI" }, {
|
||||
buffer = bufnr,
|
||||
group = lsp_hover_hl,
|
||||
callback = vim.lsp.buf.clear_references,
|
||||
})
|
||||
end
|
||||
end
|
||||
|
||||
vim.diagnostic.config({
|
||||
@@ -148,10 +146,5 @@ vim.api.nvim_create_autocmd("LspAttach", {
|
||||
end,
|
||||
})
|
||||
|
||||
-- Manually enable lsps, if installed
|
||||
if vim.fn.executable("rust_analyzer") then
|
||||
vim.lsp.enable("rust_analyzer")
|
||||
end
|
||||
if vim.fn.executable("vtsls") then
|
||||
vim.lsp.enable("vtsls")
|
||||
end
|
||||
-- Manually enable rust analyzer
|
||||
vim.lsp.enable("rust_analyzer")
|
||||
|
||||
@@ -1,57 +0,0 @@
|
||||
---@class schema_companion.Source
|
||||
local M = {}
|
||||
|
||||
M.name = "Kubernetes"
|
||||
|
||||
M.config = {}
|
||||
|
||||
---@param config {}
|
||||
---@return schema_companion.Source
|
||||
function M.setup(config)
|
||||
setmetatable(M, {})
|
||||
M.config = vim.tbl_deep_extend("force", {}, M.config, config)
|
||||
|
||||
return M
|
||||
end
|
||||
|
||||
function M:match(_, bufnr)
|
||||
local resources = {}
|
||||
|
||||
local current = {}
|
||||
for _, line in pairs(vim.api.nvim_buf_get_lines(bufnr, 0, -1, false)) do
|
||||
local _, _, group, version = line:find([[^apiVersion:%s*["']?([^%s"'/]*)/?([^%s"']*)]])
|
||||
local _, _, kind = line:find([[^kind:%s*["']?([^%s"'/]*)]])
|
||||
|
||||
if group and group ~= "" then
|
||||
current.group = group
|
||||
end
|
||||
if version and version ~= "" then
|
||||
current.version = version
|
||||
end
|
||||
if kind and kind ~= "" then
|
||||
current.kind = kind
|
||||
end
|
||||
|
||||
if current.group and current.kind then
|
||||
table.insert(resources, current)
|
||||
current = {}
|
||||
end
|
||||
end
|
||||
|
||||
local schemas = {}
|
||||
for _, resource in pairs(resources) do
|
||||
local api = resource.version and ("%s/%s"):format(resource.group, resource.version) or resource.group
|
||||
local schema = {
|
||||
name = ("%s@%s"):format(resource.kind, api),
|
||||
source = M.name,
|
||||
uri = require("kubernetes").yamlls_schema(),
|
||||
}
|
||||
if schema then
|
||||
table.insert(schemas, schema)
|
||||
end
|
||||
end
|
||||
|
||||
return schemas
|
||||
end
|
||||
|
||||
return M
|
||||
@@ -1,28 +0,0 @@
|
||||
-- https://github.com/aznhe21/actions-preview.nvim
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"aznhe21/actions-preview.nvim",
|
||||
opts = function()
|
||||
local hl = require("actions-preview.highlight")
|
||||
return {
|
||||
backend = { "telescope" },
|
||||
highlight_command = {
|
||||
hl.delta(),
|
||||
},
|
||||
telescope = {
|
||||
sorting_strategy = "ascending",
|
||||
layout_strategy = "vertical",
|
||||
layout_config = {
|
||||
width = 0.8,
|
||||
height = 0.9,
|
||||
prompt_position = "top",
|
||||
preview_cutoff = 20,
|
||||
preview_height = function(_, _, max_lines)
|
||||
return max_lines - 15
|
||||
end,
|
||||
},
|
||||
},
|
||||
}
|
||||
end,
|
||||
}
|
||||
@@ -1,7 +0,0 @@
|
||||
-- https://github.com/kwkarlwang/bufresize.nvim
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"kwkarlwang/bufresize.nvim",
|
||||
opts = {},
|
||||
}
|
||||
@@ -15,12 +15,8 @@ return {
|
||||
"!popup",
|
||||
},
|
||||
always_update = true,
|
||||
options = {
|
||||
parsers = {
|
||||
names = {
|
||||
enabled = false,
|
||||
},
|
||||
},
|
||||
user_default_options = {
|
||||
names = false,
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -5,15 +5,15 @@ local formatters_by_ft = {
|
||||
go = { "goimports" },
|
||||
python = { "ruff_organize_imports", "ruff_format" },
|
||||
rust = { "rustfmt" },
|
||||
javascript = { "prettier" },
|
||||
javascriptreact = { "prettier" },
|
||||
typescript = { "prettier" },
|
||||
typescriptreact = { "prettier" },
|
||||
css = { "prettier" },
|
||||
markdown = { "prettier" },
|
||||
yaml = { "prettier" },
|
||||
javascript = { "prettierd" },
|
||||
javascriptreact = { "prettierd" },
|
||||
typescript = { "prettierd" },
|
||||
typescriptreact = { "prettierd" },
|
||||
css = { "prettierd" },
|
||||
markdown = { "prettierd" },
|
||||
yaml = { "prettierd" },
|
||||
lua = { "stylua" },
|
||||
json = { "prettier" },
|
||||
json = { "jq" },
|
||||
toml = { "taplo" },
|
||||
-- ["*"] = { "injected" },
|
||||
["_"] = { "trim_whitespace", "trim_newlines" },
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
-- https://github.com/Saecki/crates.nvim
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"Saecki/crates.nvim",
|
||||
event = { "BufRead Cargo.toml" },
|
||||
tag = "stable",
|
||||
--- @type crates.UserConfig
|
||||
opts = {
|
||||
popup = {
|
||||
hide_on_select = true,
|
||||
border = require("symbols.window").border,
|
||||
},
|
||||
lsp = {
|
||||
enabled = true,
|
||||
actions = true,
|
||||
completion = true,
|
||||
hover = true,
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -1,412 +0,0 @@
|
||||
-- https://github.com/sindrets/diffview.nvim
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"sindrets/diffview.nvim",
|
||||
opts = function()
|
||||
local actions = require("diffview.actions")
|
||||
|
||||
return {
|
||||
use_icons = false,
|
||||
-- Disable default keymaps just so we can change <leader>e -> <leader>f
|
||||
keymaps = {
|
||||
disable_defaults = true,
|
||||
view = {
|
||||
-- The `view` bindings are active in the diff buffers, only when the current
|
||||
-- tabpage is a Diffview.
|
||||
{
|
||||
"n",
|
||||
"<tab>",
|
||||
actions.select_next_entry,
|
||||
{ desc = "Open the diff for the next file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<s-tab>",
|
||||
actions.select_prev_entry,
|
||||
{ desc = "Open the diff for the previous file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"[F",
|
||||
actions.select_first_entry,
|
||||
{ desc = "Open the diff for the first file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"]F",
|
||||
actions.select_last_entry,
|
||||
{ desc = "Open the diff for the last file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"gf",
|
||||
actions.goto_file_edit,
|
||||
{ desc = "Open the file in the previous tabpage" },
|
||||
},
|
||||
{ "n", "<C-w><C-f>", actions.goto_file_split, { desc = "Open the file in a new split" } },
|
||||
{ "n", "<C-w>gf", actions.goto_file_tab, { desc = "Open the file in a new tabpage" } },
|
||||
{ "n", "<leader>f", actions.focus_files, { desc = "Bring focus to the file panel" } },
|
||||
{ "n", "<leader>b", actions.toggle_files, { desc = "Toggle the file panel." } },
|
||||
{
|
||||
"n",
|
||||
"g<C-x>",
|
||||
actions.cycle_layout,
|
||||
{ desc = "Cycle through available layouts." },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"[x",
|
||||
actions.prev_conflict,
|
||||
{ desc = "In the merge-tool: jump to the previous conflict" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"]x",
|
||||
actions.next_conflict,
|
||||
{ desc = "In the merge-tool: jump to the next conflict" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>co",
|
||||
actions.conflict_choose("ours"),
|
||||
{ desc = "Choose the OURS version of a conflict" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>ct",
|
||||
actions.conflict_choose("theirs"),
|
||||
{ desc = "Choose the THEIRS version of a conflict" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cb",
|
||||
actions.conflict_choose("base"),
|
||||
{ desc = "Choose the BASE version of a conflict" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>ca",
|
||||
actions.conflict_choose("all"),
|
||||
{ desc = "Choose all the versions of a conflict" },
|
||||
},
|
||||
{ "n", "dx", actions.conflict_choose("none"), { desc = "Delete the conflict region" } },
|
||||
{
|
||||
"n",
|
||||
"<leader>cO",
|
||||
actions.conflict_choose_all("ours"),
|
||||
{ desc = "Choose the OURS version of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cT",
|
||||
actions.conflict_choose_all("theirs"),
|
||||
{ desc = "Choose the THEIRS version of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cB",
|
||||
actions.conflict_choose_all("base"),
|
||||
{ desc = "Choose the BASE version of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cA",
|
||||
actions.conflict_choose_all("all"),
|
||||
{ desc = "Choose all the versions of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"dX",
|
||||
actions.conflict_choose_all("none"),
|
||||
{ desc = "Delete the conflict region for the whole file" },
|
||||
},
|
||||
},
|
||||
file_panel = {
|
||||
{
|
||||
"n",
|
||||
"j",
|
||||
actions.next_entry,
|
||||
{ desc = "Bring the cursor to the next file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<down>",
|
||||
actions.next_entry,
|
||||
{ desc = "Bring the cursor to the next file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"k",
|
||||
actions.prev_entry,
|
||||
{ desc = "Bring the cursor to the previous file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<up>",
|
||||
actions.prev_entry,
|
||||
{ desc = "Bring the cursor to the previous file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<cr>",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"o",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"l",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<2-LeftMouse>",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"-",
|
||||
actions.toggle_stage_entry,
|
||||
{ desc = "Stage / unstage the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"s",
|
||||
actions.toggle_stage_entry,
|
||||
{ desc = "Stage / unstage the selected entry" },
|
||||
},
|
||||
{ "n", "S", actions.stage_all, { desc = "Stage all entries" } },
|
||||
{ "n", "U", actions.unstage_all, { desc = "Unstage all entries" } },
|
||||
{
|
||||
"n",
|
||||
"X",
|
||||
actions.restore_entry,
|
||||
{ desc = "Restore entry to the state on the left side" },
|
||||
},
|
||||
{ "n", "L", actions.open_commit_log, { desc = "Open the commit log panel" } },
|
||||
{ "n", "zo", actions.open_fold, { desc = "Expand fold" } },
|
||||
{ "n", "h", actions.close_fold, { desc = "Collapse fold" } },
|
||||
{ "n", "zc", actions.close_fold, { desc = "Collapse fold" } },
|
||||
{ "n", "za", actions.toggle_fold, { desc = "Toggle fold" } },
|
||||
{ "n", "zR", actions.open_all_folds, { desc = "Expand all folds" } },
|
||||
{ "n", "zM", actions.close_all_folds, { desc = "Collapse all folds" } },
|
||||
{ "n", "<c-b>", actions.scroll_view(-0.25), { desc = "Scroll the view up" } },
|
||||
{ "n", "<c-f>", actions.scroll_view(0.25), { desc = "Scroll the view down" } },
|
||||
{
|
||||
"n",
|
||||
"<tab>",
|
||||
actions.select_next_entry,
|
||||
{ desc = "Open the diff for the next file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<s-tab>",
|
||||
actions.select_prev_entry,
|
||||
{ desc = "Open the diff for the previous file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"[F",
|
||||
actions.select_first_entry,
|
||||
{ desc = "Open the diff for the first file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"]F",
|
||||
actions.select_last_entry,
|
||||
{ desc = "Open the diff for the last file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"gf",
|
||||
actions.goto_file_edit,
|
||||
{ desc = "Open the file in the previous tabpage" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<C-w><C-f>",
|
||||
actions.goto_file_split,
|
||||
{ desc = "Open the file in a new split" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<C-w>gf",
|
||||
actions.goto_file_tab,
|
||||
{ desc = "Open the file in a new tabpage" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"i",
|
||||
actions.listing_style,
|
||||
{ desc = "Toggle between 'list' and 'tree' views" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"f",
|
||||
actions.toggle_flatten_dirs,
|
||||
{ desc = "Flatten empty subdirectories in tree listing style" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"R",
|
||||
actions.refresh_files,
|
||||
{ desc = "Update stats and entries in the file list" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>f",
|
||||
actions.focus_files,
|
||||
{ desc = "Bring focus to the file panel" },
|
||||
},
|
||||
{ "n", "<leader>b", actions.toggle_files, { desc = "Toggle the file panel" } },
|
||||
{ "n", "g<C-x>", actions.cycle_layout, { desc = "Cycle available layouts" } },
|
||||
{ "n", "[x", actions.prev_conflict, { desc = "Go to the previous conflict" } },
|
||||
{ "n", "]x", actions.next_conflict, { desc = "Go to the next conflict" } },
|
||||
{ "n", "g?", actions.help("file_panel"), { desc = "Open the help panel" } },
|
||||
{
|
||||
"n",
|
||||
"<leader>cO",
|
||||
actions.conflict_choose_all("ours"),
|
||||
{ desc = "Choose the OURS version of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cT",
|
||||
actions.conflict_choose_all("theirs"),
|
||||
{ desc = "Choose the THEIRS version of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cB",
|
||||
actions.conflict_choose_all("base"),
|
||||
{ desc = "Choose the BASE version of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<leader>cA",
|
||||
actions.conflict_choose_all("all"),
|
||||
{ desc = "Choose all the versions of a conflict for the whole file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"dX",
|
||||
actions.conflict_choose_all("none"),
|
||||
{ desc = "Delete the conflict region for the whole file" },
|
||||
},
|
||||
},
|
||||
file_history_panel = {
|
||||
{ "n", "g!", actions.options, { desc = "Open the option panel" } },
|
||||
{
|
||||
"n",
|
||||
"<C-A-d>",
|
||||
actions.open_in_diffview,
|
||||
{ desc = "Open the entry under the cursor in a diffview" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"y",
|
||||
actions.copy_hash,
|
||||
{ desc = "Copy the commit hash of the entry under the cursor" },
|
||||
},
|
||||
{ "n", "L", actions.open_commit_log, { desc = "Show commit details" } },
|
||||
{
|
||||
"n",
|
||||
"X",
|
||||
actions.restore_entry,
|
||||
{ desc = "Restore file to the state from the selected entry" },
|
||||
},
|
||||
{ "n", "zo", actions.open_fold, { desc = "Expand fold" } },
|
||||
{ "n", "zc", actions.close_fold, { desc = "Collapse fold" } },
|
||||
{ "n", "h", actions.close_fold, { desc = "Collapse fold" } },
|
||||
{ "n", "za", actions.toggle_fold, { desc = "Toggle fold" } },
|
||||
{ "n", "zR", actions.open_all_folds, { desc = "Expand all folds" } },
|
||||
{ "n", "zM", actions.close_all_folds, { desc = "Collapse all folds" } },
|
||||
{
|
||||
"n",
|
||||
"j",
|
||||
actions.next_entry,
|
||||
{ desc = "Bring the cursor to the next file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<down>",
|
||||
actions.next_entry,
|
||||
{ desc = "Bring the cursor to the next file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"k",
|
||||
actions.prev_entry,
|
||||
{ desc = "Bring the cursor to the previous file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<up>",
|
||||
actions.prev_entry,
|
||||
{ desc = "Bring the cursor to the previous file entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<cr>",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"o",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"l",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"<2-LeftMouse>",
|
||||
actions.select_entry,
|
||||
{ desc = "Open the diff for the selected entry" },
|
||||
},
|
||||
{ "n", "<c-b>", actions.scroll_view(-0.25), { desc = "Scroll the view up" } },
|
||||
{ "n", "<c-f>", actions.scroll_view(0.25), { desc = "Scroll the view down" } },
|
||||
{ "n", "<tab>", actions.select_next_entry, { desc = "Open the diff for the next file" } },
|
||||
{
|
||||
"n",
|
||||
"<s-tab>",
|
||||
actions.select_prev_entry,
|
||||
{ desc = "Open the diff for the previous file" },
|
||||
},
|
||||
{
|
||||
"n",
|
||||
"[F",
|
||||
actions.select_first_entry,
|
||||
{ desc = "Open the diff for the first file" },
|
||||
},
|
||||
{ "n", "]F", actions.select_last_entry, { desc = "Open the diff for the last file" } },
|
||||
{
|
||||
"n",
|
||||
"gf",
|
||||
actions.goto_file_edit,
|
||||
{ desc = "Open the file in the previous tabpage" },
|
||||
},
|
||||
{ "n", "<C-w><C-f>", actions.goto_file_split, { desc = "Open the file in a new split" } },
|
||||
{ "n", "<C-w>gf", actions.goto_file_tab, { desc = "Open the file in a new tabpage" } },
|
||||
{ "n", "<leader>f", actions.focus_files, { desc = "Bring focus to the file panel" } },
|
||||
{ "n", "<leader>b", actions.toggle_files, { desc = "Toggle the file panel" } },
|
||||
{ "n", "g<C-x>", actions.cycle_layout, { desc = "Cycle available layouts" } },
|
||||
{ "n", "g?", actions.help("file_history_panel"), { desc = "Open the help panel" } },
|
||||
},
|
||||
},
|
||||
}
|
||||
end,
|
||||
}
|
||||
@@ -1,39 +0,0 @@
|
||||
local window = require("symbols.window")
|
||||
-- https://github.com/harrisoncramer/gitlab.nvim
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"harrisoncramer/gitlab.nvim",
|
||||
dependencies = {
|
||||
"MunifTanjim/nui.nvim",
|
||||
"nvim-lua/plenary.nvim",
|
||||
"sindrets/diffview.nvim",
|
||||
},
|
||||
cond = function()
|
||||
return vim.fn.executable("go") > 0
|
||||
end,
|
||||
build = function()
|
||||
require("gitlab.server").build(true)
|
||||
end, -- Builds the Go binary
|
||||
opts = {
|
||||
discussion_tree = {
|
||||
draft_mode = true,
|
||||
},
|
||||
popup = {
|
||||
border = window.border,
|
||||
},
|
||||
discussion_signs = {
|
||||
virtual_text = true,
|
||||
},
|
||||
keymaps = {
|
||||
discussion_tree = {
|
||||
toggle_node = "za",
|
||||
toggle_all_discussions = "zA",
|
||||
},
|
||||
popup = {
|
||||
perform_action = "w",
|
||||
discard_changes = "<esc>",
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -1,24 +1,15 @@
|
||||
-- https://github.com/nvim-lualine/lualine.nvim
|
||||
|
||||
local function get_schema()
|
||||
if not (vim.bo.filetype == "yaml" or vim.bo.filetype == "json" or vim.bo.filetype == "toml") then
|
||||
if vim.bo.filetype ~= "yaml" then
|
||||
return ""
|
||||
end
|
||||
|
||||
-- The provided get_current_schema function returns nonenil when no schema is known.
|
||||
-- Instead we use a custom implemention that does not do that.
|
||||
-- Also has the added benefit of giving more control over formatting
|
||||
local schemas = require("schema-companion").get_matching_schemas()
|
||||
if schemas == nil or #schemas == 0 then
|
||||
return ""
|
||||
end
|
||||
|
||||
schema = schemas[1]
|
||||
local schema = require("schema-companion.context").get_buffer_schema()
|
||||
if schema.name == "none" then
|
||||
return ""
|
||||
end
|
||||
|
||||
return ("%s%s"):format(schema.name, #schemas > 1 and (" (+%d)"):format(#schemas - 1) or "")
|
||||
return schema.name
|
||||
end
|
||||
|
||||
--- @module "lazy"
|
||||
@@ -52,9 +43,7 @@ return {
|
||||
"encoding",
|
||||
{ "fileformat", icons_enabled = false },
|
||||
"filetype",
|
||||
{
|
||||
get_schema,
|
||||
},
|
||||
get_schema,
|
||||
},
|
||||
},
|
||||
inactive_sections = {
|
||||
|
||||
@@ -17,16 +17,11 @@ local ensure_installed = {
|
||||
"neocmake",
|
||||
-- Formatter
|
||||
"clang-format",
|
||||
{
|
||||
"goimports",
|
||||
condition = function()
|
||||
return vim.fn.executable("go") > 0
|
||||
end,
|
||||
},
|
||||
"goimports",
|
||||
"ruff",
|
||||
"prettier",
|
||||
"prettierd",
|
||||
"stylua",
|
||||
"eslint",
|
||||
"jq",
|
||||
}
|
||||
|
||||
--- @module "lazy"
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
-- https://github.com/aznhe21/fmbarina/multicolumn.nvim
|
||||
local function enforced(rulers, scope)
|
||||
return {
|
||||
rulers = rulers,
|
||||
scope = scope or "window",
|
||||
full_column = false,
|
||||
to_line_end = true,
|
||||
bg_color = "#691b1b",
|
||||
fg_color = "#ffd8ad",
|
||||
}
|
||||
end
|
||||
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"fmbarina/multicolumn.nvim",
|
||||
event = { "BufReadPre", "BufNewFile" },
|
||||
opts = {
|
||||
base_set = {
|
||||
full_column = true,
|
||||
},
|
||||
sets = {
|
||||
python = enforced({ 89 }),
|
||||
rust = enforced({ 101 }),
|
||||
gitcommit = function(_, win)
|
||||
local T = function(c, x, y)
|
||||
if c then
|
||||
return x
|
||||
else
|
||||
return y
|
||||
end
|
||||
end
|
||||
|
||||
return enforced(
|
||||
{ T(vim.fn.line(".", win) == 1, 51, 73) },
|
||||
T(vim.fn.line(".", win) == 1, "line", "window")
|
||||
)
|
||||
end,
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -6,7 +6,7 @@ local file = require("symbols.file")
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"nvim-neo-tree/neo-tree.nvim",
|
||||
branch = "v3.x",
|
||||
version = "v3.x",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"MunifTanjim/nui.nvim",
|
||||
|
||||
@@ -2,7 +2,8 @@
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
"tadachs/ros-nvim",
|
||||
-- "tadachs/ros-nvim",
|
||||
"DreadedX/ros-nvim",
|
||||
event = { "BufRead", "BufNewFile" },
|
||||
opts = {
|
||||
commands = {
|
||||
|
||||
@@ -1,6 +1,33 @@
|
||||
-- https://github.com/cenk1cenk2/schema-companion.nvim
|
||||
--- @module "schema-companion"
|
||||
--- @type schema_companion.Matcher
|
||||
local kubernetes = {
|
||||
name = "Kubernetes",
|
||||
match = function(bufnr)
|
||||
local lines = vim.api.nvim_buf_get_lines(bufnr, 0, -1, false)
|
||||
local kind = false
|
||||
local api_version = false
|
||||
|
||||
for _, line in ipairs(lines) do
|
||||
if kind or vim.regex("^kind: .*$"):match_str(line) then
|
||||
kind = true
|
||||
end
|
||||
|
||||
if api_version or vim.regex("^apiVersion: .*$"):match_str(line) then
|
||||
api_version = true
|
||||
end
|
||||
|
||||
if kind and api_version then
|
||||
return {
|
||||
name = "Kubernetes",
|
||||
uri = require("kubernetes").yamlls_schema(),
|
||||
}
|
||||
end
|
||||
end
|
||||
|
||||
return nil
|
||||
end,
|
||||
}
|
||||
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
@@ -8,23 +35,26 @@ return {
|
||||
"cenk1cenk2/schema-companion.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-telescope/telescope.nvim",
|
||||
"diogo464/kubernetes.nvim",
|
||||
},
|
||||
keys = {
|
||||
{
|
||||
"<leader>ys",
|
||||
function()
|
||||
local schemas = require("schema-companion").get_matching_schemas()
|
||||
if schemas == nil or #schemas == 0 or (#schemas == 1 and schemas[1].name == "none") then
|
||||
print("No matching schemas")
|
||||
else
|
||||
require("schema-companion").select_matching_schema()
|
||||
end
|
||||
require("telescope").extensions.schema_companion.select_schema()
|
||||
end,
|
||||
desc = "Select schema",
|
||||
desc = "Yaml schema",
|
||||
ft = "yaml",
|
||||
},
|
||||
},
|
||||
--- @module "schema-companion"
|
||||
--- @type schema_companion.Config
|
||||
opts = {},
|
||||
opts = {
|
||||
enable_telescope = true,
|
||||
matchers = {
|
||||
kubernetes,
|
||||
},
|
||||
schemas = {},
|
||||
},
|
||||
}
|
||||
|
||||
@@ -37,9 +37,6 @@ return {
|
||||
["ui-select"] = {
|
||||
require("telescope.themes").get_dropdown(),
|
||||
},
|
||||
smart_open = {
|
||||
match_algorithm = "fzf",
|
||||
},
|
||||
},
|
||||
}
|
||||
end,
|
||||
@@ -117,25 +114,24 @@ return {
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvim-telescope/telescope-fzf-native.nvim",
|
||||
build = "make",
|
||||
"nvim-telescope/telescope-fzy-native.nvim",
|
||||
dependencies = {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
},
|
||||
config = function()
|
||||
require("telescope").load_extension("fzf")
|
||||
require("telescope").load_extension("fzy_native")
|
||||
end,
|
||||
},
|
||||
{
|
||||
"danielfalk/smart-open.nvim",
|
||||
branch = "0.3.x",
|
||||
branch = "0.2.x",
|
||||
config = function()
|
||||
require("telescope").load_extension("smart_open")
|
||||
end,
|
||||
dependencies = {
|
||||
"kkharji/sqlite.lua",
|
||||
"nvim-telescope/telescope.nvim",
|
||||
"nvim-telescope/telescope-fzf-native.nvim",
|
||||
"nvim-telescope/telescope-fzy-native.nvim",
|
||||
{
|
||||
"ellisonleao/gruvbox.nvim",
|
||||
opts = function(_, opts)
|
||||
|
||||
@@ -34,12 +34,7 @@ return {
|
||||
"markdown_inline",
|
||||
"bash",
|
||||
"sql",
|
||||
"xml",
|
||||
"cmake",
|
||||
"json",
|
||||
"yaml",
|
||||
},
|
||||
auto_install = true,
|
||||
|
||||
highlight = { enable = true },
|
||||
indent = { enable = true },
|
||||
|
||||
@@ -3,9 +3,7 @@ local window = require("symbols.window")
|
||||
--- @module "lazy"
|
||||
--- @type LazySpec
|
||||
return {
|
||||
-- "folke/which-key.nvim",
|
||||
"cameronr/which-key.nvim",
|
||||
branch = "winborder-support",
|
||||
"folke/which-key.nvim",
|
||||
event = "VeryLazy",
|
||||
--- @module "which-key"
|
||||
--- @type wk.Opts
|
||||
|
||||
@@ -1,17 +0,0 @@
|
||||
; extends
|
||||
; Dockerfile snippets for AIM pipeline
|
||||
(block_mapping_pair
|
||||
key: (flow_node) @_template
|
||||
(#eq? @_template "template")
|
||||
value: (block_node
|
||||
(block_scalar) @injection.content
|
||||
(#set! injection.language "dockerfile")
|
||||
(#offset! @injection.content 0 1 0 0)))
|
||||
|
||||
(block_mapping_pair
|
||||
key: (flow_node) @_template
|
||||
(#eq? @_template "entrypoint")
|
||||
value: (block_node
|
||||
(block_scalar) @injection.content
|
||||
(#set! injection.language "bash")
|
||||
(#offset! @injection.content 0 1 0 0)))
|
||||
@@ -1 +0,0 @@
|
||||
setup
|
||||
@@ -1,22 +0,0 @@
|
||||
# Scratch sessions rename themselves to something unique
|
||||
[[session]]
|
||||
name = "scratch"
|
||||
startup_command = "tmux rename-session scratch-$(echo -n $(date) | sha256sum | cut -c1-4) && clear"
|
||||
|
||||
[[session]]
|
||||
name = "automation_rs"
|
||||
path = "~/Projects/rust/automation_rs/"
|
||||
startup_command = "nvim"
|
||||
windows = ["shell"]
|
||||
|
||||
[[session]]
|
||||
name = "olympus"
|
||||
startup_command = "ssh olympus && exit"
|
||||
|
||||
[[session]]
|
||||
name = "niestern_sander"
|
||||
path = "~/Projects/ALTEN/niestern_sander/"
|
||||
startup_command = "$DOTFILES/sesh/setup/niestern_sander.sh"
|
||||
|
||||
[[window]]
|
||||
name = "shell"
|
||||
@@ -1,17 +0,0 @@
|
||||
#!/usr/bin/env zsh
|
||||
|
||||
exec </dev/tty
|
||||
exec <&1
|
||||
local session
|
||||
session=$(sesh list -i | fzf-tmux -p 70%,60% \
|
||||
--no-sort --ansi --border-label ' Select session ' --prompt '⚡ ' \
|
||||
--header ' ^a all ^t tmux ^g configs ^x zoxide ^d tmux kill ^f find' \
|
||||
--bind 'btab:down,tab:up' \
|
||||
--bind 'ctrl-a:change-prompt(⚡ )+reload(sesh list -i)' \
|
||||
--bind 'ctrl-t:change-prompt(🪟 )+reload(sesh list -t -i)' \
|
||||
--bind 'ctrl-g:change-prompt(⚙️ )+reload(sesh list -c -i)' \
|
||||
--bind 'ctrl-x:change-prompt(📁 )+reload(sesh list -z -i)' \
|
||||
--bind 'ctrl-f:change-prompt(🔎 )+reload(fd -H -d 2 -t d -E .Trash . ~)' \
|
||||
--bind 'ctrl-d:execute(tmux kill-session -t {2..})+change-prompt(⚡ )+reload(sesh list -i)')
|
||||
[[ -z "$session" ]] && return
|
||||
sesh connect $session
|
||||
@@ -1,15 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if ! systemctl is-active --quiet docker; then
|
||||
echo "Starting docker..."
|
||||
systemctl start docker
|
||||
fi
|
||||
|
||||
devcontainer up --workspace-folder .
|
||||
|
||||
tmux rename-window nvim
|
||||
tmux new-window -n "ros" "devcontainer exec --workspace-folder . bash"
|
||||
tmux new-window -n "shell"
|
||||
tmux select-window -t :-2
|
||||
|
||||
devcontainer exec --workspace-folder . nvim
|
||||
@@ -1,2 +1,2 @@
|
||||
gruvbox.conf
|
||||
tpm
|
||||
tpm/
|
||||
|
||||
@@ -1,20 +1,12 @@
|
||||
# Plugins
|
||||
set -g @plugin 'mrjones2014/smart-splits.nvim'
|
||||
set -g @plugin 'tmux-plugins/tmux-sensible'
|
||||
set -g @plugin 'wfxr/tmux-fzf-url'
|
||||
|
||||
# Settings
|
||||
set -ag terminal-overrides ",xterm-256color:RGB"
|
||||
setw -g monitor-activity on
|
||||
setw -g automatic-rename on
|
||||
set-window-option -g xterm-keys on
|
||||
set -sg escape-time 0
|
||||
|
||||
set -g history-limit 5000
|
||||
|
||||
set -g detach-on-destroy off # don't exit from tmux when closing a session
|
||||
|
||||
set -g @fzf-url-fzf-options '-p'
|
||||
|
||||
# Setup vi-mode with better keybindings
|
||||
# TODO: Escape does not work properly for leaving
|
||||
@@ -66,20 +58,3 @@ wg_is_keys_off="#([ $(tmux show-option -qv key-table) = 'off' ] && echo 'TRUE' )
|
||||
source-file "$DOTFILES/tmux/gruvbox.conf"
|
||||
|
||||
run "$DOTFILES/tmux/tpm/tpm"
|
||||
|
||||
set -g base-index 1
|
||||
bind-key -n M-1 select-window -t 1
|
||||
bind-key -n M-2 select-window -t 2
|
||||
bind-key -n M-3 select-window -t 3
|
||||
bind-key -n M-4 select-window -t 4
|
||||
bind-key -n M-5 select-window -t 5
|
||||
bind-key -n M-6 select-window -t 6
|
||||
bind-key -n M-7 select-window -t 7
|
||||
bind-key -n M-8 select-window -t 8
|
||||
bind-key -n M-9 select-window -t 9
|
||||
bind-key -n M-0 select-window -t 10
|
||||
|
||||
bind-key "a" run-shell "sesh-select"
|
||||
|
||||
bind-key x kill-pane
|
||||
bind-key X kill-session
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
ohmyzsh
|
||||
custom
|
||||
fzf-git.sh
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
#compdef tula
|
||||
|
||||
_tula_completion() {
|
||||
eval $(env _TYPER_COMPLETE_ARGS="${words[1,$CURRENT]}" _TULA_COMPLETE=complete_zsh tula)
|
||||
}
|
||||
|
||||
compdef _tula_completion tula
|
||||
Submodule zsh/custom/plugins/fast-syntax-highlighting deleted from 3d574ccf48
Submodule zsh/custom/plugins/zsh-autosuggestions updated: 85919cd1ff...0e810e5afa
Submodule zsh/custom/plugins/zsh-completions deleted from b48b5de9d8
Submodule zsh/custom/plugins/zsh-vi-mode deleted from 08bd1c0452
100
zsh/dot-zshrc
100
zsh/dot-zshrc
@@ -15,19 +15,18 @@ zstyle ':omz:update' mode reminder # just remind me to update when it's time
|
||||
# ENABLE_CORRECTION="true"
|
||||
COMPLETION_WAITING_DOTS="true"
|
||||
ZSH_DISABLE_COMPFIX="true"
|
||||
ZOXIDE_CMD_OVERRIDE="cd"
|
||||
|
||||
plugins=(
|
||||
git
|
||||
zsh-autosuggestions
|
||||
# Disabled because the highlighting conflicts with autosuggestions
|
||||
# history-substring-search
|
||||
zsh-vi-mode
|
||||
vi-mode
|
||||
tmux
|
||||
colored-man-pages
|
||||
command-not-found
|
||||
dirhistory
|
||||
zsh-autopair
|
||||
fast-syntax-highlighting
|
||||
zoxide
|
||||
)
|
||||
|
||||
bindkey -M vicmd "k" up-line-or-beginning-search
|
||||
@@ -37,35 +36,18 @@ HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_FOUND="fg=yellow"
|
||||
HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_NOT_FOUND="fg=red"
|
||||
HISTORY_SUBSTRING_SEARCH_HIGHLIGHT_TIMEOUT=3
|
||||
|
||||
ZSH_AUTOSUGGEST_STRATEGY=(history completion)
|
||||
|
||||
# Default to insert mode
|
||||
ZVM_LINE_INIT_MODE=i
|
||||
# Enable system clipboard
|
||||
ZVM_SYSTEM_CLIPBOARD_ENABLED=true
|
||||
# Make p and P use the system clipboard, instead of CUTBUFFER,
|
||||
# without this you need gp and gP
|
||||
function zvm_after_lazy_keybindings() {
|
||||
bindkey -M vicmd 'p' zvm_paste_clipboard_after
|
||||
bindkey -M vicmd 'P' zvm_paste_clipboard_before
|
||||
bindkey -M visual 'p' zvm_visual_paste_clipboard
|
||||
bindkey -M visual 'P' zvm_visual_paste_clipboard
|
||||
}
|
||||
|
||||
# Fix autopair and zsh-vi-mode compatibility
|
||||
AUTOPAIR_INHIBIT_INIT=1
|
||||
zvm_after_init_commands+=('autopair-init')
|
||||
|
||||
VI_MODE_RESET_PROMPT_ON_MODE_CHANGE=true
|
||||
VI_MODE_SET_CURSOR=true
|
||||
# Might cause issues?
|
||||
KEYTIMEOUT=1
|
||||
|
||||
fpath+=${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/completions
|
||||
fpath+=${ZSH_CUSTOM:-${ZSH:-~/.oh-my-zsh}/custom}/plugins/zsh-completions/src
|
||||
autoload -U compinit && compinit
|
||||
source "$ZSH/oh-my-zsh.sh"
|
||||
ZSH_TMUX_AUTOSTART=true
|
||||
ZSH_TMUX_AUTOCONNECT=false
|
||||
ZSH_TMUX_FIXTERM=true
|
||||
|
||||
source $ZSH/oh-my-zsh.sh
|
||||
|
||||
less_termcap[so]="${fg_bold[black]}${bg[white]}"
|
||||
export LESS="-F -R -i --incsearch -M"
|
||||
|
||||
export PATH="${HOME}/.local/bin:${HOME}/.cargo/bin:$PATH"
|
||||
export EDITOR=nvim
|
||||
@@ -73,27 +55,19 @@ export EDITOR=nvim
|
||||
|
||||
alias cl="clear"
|
||||
|
||||
if (( $+commands[bat] )); then
|
||||
if hash bat 2>/dev/null; then
|
||||
export BAT_THEME="gruvbox-dark"
|
||||
alias cat=bat
|
||||
fi
|
||||
|
||||
if (( $+commands[devcontainer] )); then
|
||||
if hash devcontainer 2>/dev/null; then
|
||||
dc() {
|
||||
ORIG_DIR="$PWD"
|
||||
while [[ "$PWD" != / ]] ; do
|
||||
if find "$PWD"/ -maxdepth 1 -type d -name ".devcontainer" | grep -q ".devcontainer"; then
|
||||
WORKSPACE_FOLDER="$PWD"
|
||||
builtin cd "$ORIG_DIR"
|
||||
|
||||
if [[ "$1" == "nvim" ]]; then
|
||||
tmux set-option -pt 0 @pane-is-vim 1
|
||||
devcontainer exec --workspace-folder "$WORKSPACE_FOLDER" bash -c "$@"
|
||||
tmux set-option -pt 0 @pane-is-vim 0
|
||||
else
|
||||
devcontainer exec --workspace-folder "$WORKSPACE_FOLDER" $@
|
||||
fi
|
||||
|
||||
devcontainer exec --workspace-folder "$WORKSPACE_FOLDER" $@
|
||||
return 0
|
||||
else
|
||||
builtin cd ..
|
||||
@@ -105,54 +79,10 @@ if (( $+commands[devcontainer] )); then
|
||||
}
|
||||
fi
|
||||
|
||||
export PNPM_HOME="/home/tim/.local/share/pnpm"
|
||||
if [ -d "$PNPM_HOME" ]; then
|
||||
if hash pnpm 2>/dev/null; then
|
||||
export PNPM_HOME="/home/tim/.local/share/pnpm"
|
||||
case ":$PATH:" in
|
||||
*":$PNPM_HOME:"*) ;;
|
||||
*) export PATH="$PNPM_HOME:$PATH" ;;
|
||||
esac
|
||||
else
|
||||
unset PNPM_HOME
|
||||
fi
|
||||
if (( $+commands[pnpm] )); then
|
||||
source <(pnpm completion zsh)
|
||||
fi
|
||||
|
||||
export FZF_DEFAULT_OPTS='--tmux'
|
||||
export FZF_DEFAULT_OPTS=$FZF_DEFAULT_OPTS'
|
||||
--color=fg:-1,fg+:#83a598,bg:-1,bg+:#262626
|
||||
--color=hl:bold:#8ec07c,hl+:#8ec07c,marker:#cc241d
|
||||
--color=prompt:#fb4934,spinner:#af5fff,pointer:#83a598,header:#87afaf
|
||||
--color=border:#7c6f64,label:#7c6f64
|
||||
--border="sharp" --border-label-pos="0" --preview-window="border-sharp"
|
||||
--prompt="> " --marker="◆" --pointer=">" --separator="─"
|
||||
--scrollbar="│" --info="right"
|
||||
--layout="default"'
|
||||
|
||||
if (( $+commands[fd] )); then
|
||||
export FZF_DEFAULT_COMMAND="fd --type f --strip-cwd-prefix"
|
||||
export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND"
|
||||
fi
|
||||
|
||||
if (( $+commands[fzf] )); then
|
||||
# Fix fzf keybind after zsh-vi-mode has loaded
|
||||
zvm_after_init_commands+=('source <(fzf --zsh)')
|
||||
|
||||
if (( $+commands[paru] )); then
|
||||
function pi {
|
||||
paru -Slq | fzf -q "$1" --border-label=" Install package " --multi --preview 'paru -Si {1} --color=always' | xargs -ro paru -S
|
||||
}
|
||||
fi
|
||||
fi
|
||||
|
||||
ZSH_TMUX_AUTOSTART=true
|
||||
if (( $+commands[tmux] )); then
|
||||
if [[ -z "$TMUX" && "$ZSH_TMUX_AUTOSTART" == "true" && -z "$INSIDE_EMACS" && -z "$EMACS" && -z "$VIM" && -z "$INTELLIJ_ENVIRONMENT_READER" && -z "$ZED_TERM" ]]; then
|
||||
if (( $+commands[sesh] )) && (( $+commands[sesh-select] )); then
|
||||
sesh-select
|
||||
else
|
||||
tmux new-session
|
||||
fi
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
|
||||
Submodule zsh/ohmyzsh updated: 8df5c1b18b...6ef47526f8
Reference in New Issue
Block a user