diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index c0e1939..770f436 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -1,32 +1,32 @@ { "Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" }, - "blink.cmp": { "branch": "main", "commit": "a9a0f96c6a1029884e37dfd74a88a075b40366dd" }, - "catppuccin": { "branch": "main", "commit": "faf15ab0201b564b6368ffa47b56feefc92ce3f4" }, - "conform.nvim": { "branch": "master", "commit": "339b3e4519ec49312d34fcfa275aa15bfaa67025" }, - "dressing.nvim": { "branch": "master", "commit": "3a45525bb182730fe462325c99395529308f431e" }, - "fidget.nvim": { "branch": "main", "commit": "9238947645ce17d96f30842e61ba81147185b657" }, - "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, + "blink.cmp": { "branch": "main", "commit": "b19413d214068f316c78978b08264ed1c41830ec" }, + "catppuccin": { "branch": "main", "commit": "beaf41a30c26fd7d6c386d383155cbd65dd554cd" }, + "conform.nvim": { "branch": "master", "commit": "5ac2bb57a9096f00ca50e1a3c46020d5930319b8" }, + "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, + "fidget.nvim": { "branch": "main", "commit": "7fa433a83118a70fe24c1ce88d5f0bd3453c0970" }, + "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" }, "git-conflict.nvim": { "branch": "main", "commit": "4bbfdd92d547d2862a75b4e80afaf30e73f7bbb4" }, - "hurl.nvim": { "branch": "main", "commit": "438360f62e73e8d149f0374d9d1d75c1441807e3" }, - "lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" }, - "lazydev.nvim": { "branch": "main", "commit": "8620f82ee3f59ff2187647167b6b47387a13a018" }, - "lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" }, - "luvit-meta": { "branch": "main", "commit": "57d464c4acb5c2e66bd4145060f5dc9e96a7bbb7" }, - "mini.map": { "branch": "main", "commit": "4c58e755d75f9999abcd3b3c6e934734b6a8b098" }, - "neo-tree.nvim": { "branch": "v3.x", "commit": "a77af2e764c5ed4038d27d1c463fa49cd4794e07" }, - "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, - "nvim-lspconfig": { "branch": "master", "commit": "f1405c1ea5d7a1051a8ced3110d7cf3b8524041b" }, - "nvim-notify": { "branch": "master", "commit": "fbef5d32be8466dd76544a257d3f3dce20082a07" }, - "nvim-surround": { "branch": "main", "commit": "9f0cb495f25bff32c936062d85046fbda0c43517" }, - "nvim-treesitter": { "branch": "master", "commit": "2a75d8065cff33216e106b651eb0f58b90375717" }, - "nvim-ts-autotag": { "branch": "main", "commit": "1cca23c9da708047922d3895a71032bc0449c52d" }, - "nvim-web-devicons": { "branch": "master", "commit": "6317aca1fd86cc8e8c5ad30029ae7640d566cec6" }, - "outline.nvim": { "branch": "main", "commit": "f656ef12a590287cce57f6ee3d46a0604dfb3c14" }, - "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "dae2eac9d91464448b584c7949a31df8faefec56" }, - "telescope.nvim": { "branch": "master", "commit": "2eca9ba22002184ac05eddbe47a7fe2d5a384dfc" }, - "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, - "trouble.nvim": { "branch": "main", "commit": "46cf952fc115f4c2b98d4e208ed1e2dce08c9bf6" }, - "vim-cool": { "branch": "master", "commit": "662e7b11064cbeedad17c45d2fe926e78d3cd0b6" }, - "which-key.nvim": { "branch": "main", "commit": "8ab96b38a2530eacba5be717f52e04601eb59326" } + "hurl.nvim": { "branch": "main", "commit": "0e5430d5130fe95fc1b8b015491b50274aa2e796" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, + "lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" }, + "lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" }, + "luvit-meta": { "branch": "main", "commit": "0ea4ff636c5bb559ffa78108561d0976f4de9682" }, + "mini.map": { "branch": "main", "commit": "32a3a5d9a7c074dbb0a4a1d5943d09cb8edbab3f" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "f3df514fff2bdd4318127c40470984137f87b62e" }, + "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, + "nvim-lspconfig": { "branch": "master", "commit": "92ee7d42320edfbb81f3cad851314ab197fa324a" }, + "nvim-notify": { "branch": "master", "commit": "8701bece920b38ea289b457f902e2ad184131a5d" }, + "nvim-surround": { "branch": "main", "commit": "1098d7b3c34adcfa7feb3289ee434529abd4afd1" }, + "nvim-treesitter": { "branch": "main", "commit": "d19def46c112c26c17adeef88dd1253cc6d623a1" }, + "nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" }, + "nvim-web-devicons": { "branch": "master", "commit": "803353450c374192393f5387b6a0176d0972b848" }, + "outline.nvim": { "branch": "main", "commit": "1967ef50036b0b1eac4977aeede55915a741afe0" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" }, + "telescope.nvim": { "branch": "master", "commit": "a8c2223ea6b185701090ccb1ebc7f4e41c4c9784" }, + "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, + "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" }, + "vim-cool": { "branch": "master", "commit": "9ea940c0d537e55de0de4c0298c04b976960fb12" }, + "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" } } diff --git a/.config/nvim/lua/nvwynd/plugins/completion.lua b/.config/nvim/lua/nvwynd/plugins/completion.lua index 1be4a63..b3ee527 100644 --- a/.config/nvim/lua/nvwynd/plugins/completion.lua +++ b/.config/nvim/lua/nvwynd/plugins/completion.lua @@ -2,7 +2,7 @@ return { { "saghen/blink.cmp", dependencies = "rafamadriz/friendly-snippets", - version = "v0.*", + version = "1.*", ---@module 'blink.cmp' ---@type blink.cmp.Config opts = { @@ -15,24 +15,45 @@ return { keymap = { preset = "enter" }, appearance = { - use_nvim_cmp_as_default = true, nerd_font_variant = "mono", }, signature = { enabled = true }, + fuzzy = { + sorts = { + "exact", + "score", + "sort_text", + }, + }, + + sources = { + transform_items = function(_, items) + return vim.tbl_filter(function(item) + return item.kind ~= require("blink.cmp.types").CompletionItemKind.Snippet + end, items) + end, + }, + completion = { list = { - selection = "manual", + selection = { + preselect = false, + auto_insert = false, + }, }, accept = { auto_brackets = { enabled = false }, }, - -- ghost_text = { - -- enabled = true, - -- }, + ghost_text = { + enabled = true, + show_with_menu = true, + show_without_menu = true, + }, menu = { draw = { + treesitter = { "lsp" }, columns = { { "kind_icon" }, { "label", "label_description", gap = 1 }, { "kind" } }, }, }, diff --git a/.config/nvim/lua/nvwynd/plugins/lsp.lua b/.config/nvim/lua/nvwynd/plugins/lsp.lua index ff90c73..4378c1d 100644 --- a/.config/nvim/lua/nvwynd/plugins/lsp.lua +++ b/.config/nvim/lua/nvwynd/plugins/lsp.lua @@ -6,27 +6,15 @@ return { { "j-hui/fidget.nvim", opts = {} }, }, config = function() - local lspconfig = require("lspconfig") - local capabilities = require("blink.cmp").get_lsp_capabilities() - - -- Svelte - -- lspconfig.svelte.setup({ - -- capabilities = capabilities, - -- }) - -- Markdown - lspconfig.marksman.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("marksman") -- Python - lspconfig.pyright.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("pyright") -- Rust - lspconfig.rust_analyzer.setup({ - capabilities = capabilities, + vim.lsp.enable("rust_analyzer") + vim.lsp.config("rust_analyzer", { settings = { ["rust-analyzer"] = { cargo = { @@ -60,22 +48,18 @@ return { }) -- C - lspconfig.clangd.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("clangd") -- TOML - lspconfig.taplo.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("taplo") -- Lua local lua_rtp = vim.split(package.path, ";") table.insert(lua_rtp, "lua/?.lua") table.insert(lua_rtp, "lua/?/init.lua") - lspconfig.lua_ls.setup({ - capabilities = capabilities, + vim.lsp.enable("lua_ls") + vim.lsp.config("lua_ls", { settings = { Lua = { runtime = { @@ -106,9 +90,7 @@ return { -- }) -- Nim - lspconfig.nim_langserver.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("nim_langserver") -- Clojure -- lspconfig.clojure_lsp.setup({ @@ -116,36 +98,30 @@ return { -- }) -- Gleam - lspconfig.gleam.setup({ - capabilities = capabilities, - }) + -- lspconfig.gleam.setup({ + -- capabilities = capabilities, + -- }) -- Bash - lspconfig.bashls.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("bashls") -- HTML - lspconfig.html.setup({ - capabilities = capabilities, + vim.lsp.enable("html") + vim.lsp.config("html", { filetypes = { "html", "templ", "htmldjango", "handlebars" }, }) -- HTMX - -- lspconfig.htmx.setup({ - -- capabilities = capabilities, - -- filetypes = { "html", "templ", "htmldjango" }, - -- }) + vim.lsp.enable("htmx") + vim.lsp.config("htmx", { + filetypes = { "html", "templ", "htmldjango" }, + }) -- CSS - lspconfig.cssls.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("cssls") -- JSON - lspconfig.jsonls.setup({ - capabilities = capabilities, - }) + vim.lsp.enable("jsonls") vim.api.nvim_create_autocmd("LspAttach", { group = vim.api.nvim_create_augroup("nvwynd-lsp-attach", { clear = true }), diff --git a/.config/nvim/lua/nvwynd/plugins/treesitter.lua b/.config/nvim/lua/nvwynd/plugins/treesitter.lua index 4783946..535a26c 100644 --- a/.config/nvim/lua/nvwynd/plugins/treesitter.lua +++ b/.config/nvim/lua/nvwynd/plugins/treesitter.lua @@ -3,7 +3,7 @@ return { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate", config = function() - local configs = require("nvim-treesitter.configs") + local ts = require("nvim-treesitter") vim.filetype.add({ extension = { @@ -14,56 +14,60 @@ return { }, }) - vim.treesitter.language.register("html", { "handlebars", "htmldjango" }) - vim.treesitter.language.register("glsl", { "vsh", "fsh" }) + ts.install({ + -- web dev + "html", + "css", + "scss", + "javascript", + "typescript", + "svelte", - configs.setup({ - ensure_installed = { - -- web dev - "html", - "css", - "scss", - "javascript", - "typescript", - "svelte", + -- config + "toml", + "yaml", + "markdown", + "dockerfile", + "just", - -- config - "toml", - "yaml", - "markdown", - "dockerfile", - "just", + -- vim + "vim", + "vimdoc", + "lua", + "query", - -- vim - "vim", - "vimdoc", - "lua", - "query", + -- the cool stuff + "elixir", + "heex", + "rust", + "python", + "zig", + "nim", + "clojure", + "gleam", + "bash", + "hurl", + "gdscript", - -- the cool stuff - "elixir", - "heex", - "rust", - "python", - "zig", - "nim", - "clojure", - "gleam", - "bash", - "hurl", - "gdscript", - - -- the not so cool stuff - "c", - "java", - "groovy", - "glsl", - "wgsl", - }, - sync_install = false, - highlight = { enable = true }, - indent = { enable = true }, + -- the not so cool stuff + "c", + "java", + "groovy", + "glsl", + "wgsl", }) + + vim.api.nvim_create_autocmd("FileType", { + pattern = { "" }, + callback = function() + vim.treesitter.start() + end, + }) + + vim.wo[0][0].foldexpr = "v:lua.vim.treesitter.foldexpr()" + vim.wo[0][0].foldmethod = "expr" + + vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()" end, }, } diff --git a/.zshrc b/.zshrc index d832a42..de57645 100644 --- a/.zshrc +++ b/.zshrc @@ -62,15 +62,14 @@ export PATH="$GEMS_HOME/bin:$PATH" export NIMBLE_HOME="$HOME/.nimble" export PATH="$NIMBLE_HOME/bin:$PATH" -# bun -export BUN_HOME="$HOME/.bun" -export PATH="$BUN_HOME/bin:$PATH" -[ -s "$BUN_HOME/_bun" ] && source "/$BUN_HOME/_bun" - # asdf setup source "$HOME/.asdf/asdf.sh" fpath=(${ASDF_DIR}/completions $fpath) +# JVM setup +export JAVA_HOME=/usr/lib/jvm/java-21-temurin +export PATH=$JAVA_HOME/bin:$PATH + # fzf setup [ -f ~/.fzf.zsh ] && source ~/.fzf.zsh @@ -99,7 +98,7 @@ alias myip="curl http://ipecho.net/plain; echo" alias diskspace="df -ht ext4" alias since="days_since" alias ytwav="yt-dlp -x --audio-format wav" -alias ytmp3="yt-dlp -x --audio-format mp3" +alias ytmp3="yt-dlp -x --audio-format mp3 --embed-thumbnail" alias ytdv="yt-dlp" alias docker-clean="docker system prune -a --filter \"until=72h\"" alias flatpak-clean="flatpak uninstall --user --unused" @@ -136,16 +135,15 @@ function days_since() {( alias repos="~/.local/bin/repos.sh" alias reposn="~/.local/bin/reposn.sh" -alias reposl="~/.local/bin/reposl.sh" -alias repo5y="~/.local/bin/repo5y.sh" +alias repoc="~/.local/bin/repoc.sh" +alias repos5y="~/.local/bin/repos5y.sh" +alias repoc5y="~/.local/bin/repoc5y.sh" # private SSH stuff source ~/.piwrc # JVM switches alias use-java8='export JAVA_HOME=/usr/lib/jvm/java-8-temurin;export PATH=$JAVA_HOME/bin:$PATH' -alias use-java11='export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64;export PATH=$JAVA_HOME/bin:$PATH' -alias use-java17='export JAVA_HOME=/usr/lib/jvm/java-17-temurin;export PATH=$JAVA_HOME/bin:$PATH' alias use-java21='export JAVA_HOME=/usr/lib/jvm/java-21-temurin;export PATH=$JAVA_HOME/bin:$PATH' # changing GREP highlight color @@ -171,6 +169,3 @@ figlet -f 'Red Phoenix' Wynd | lolcat # starts starship eval "$(starship init zsh)" - -# bun completions -[ -s "/home/wynd/.bun/_bun" ] && source "/home/wynd/.bun/_bun"