diff options
| -rw-r--r-- | init.lua | 6 | ||||
| -rw-r--r-- | lazy-lock.json | 40 | ||||
| -rw-r--r-- | lua/alpha/dap/init.lua | 4 | ||||
| -rw-r--r-- | lua/alpha/lsp/default.lua | 1 | ||||
| -rw-r--r-- | lua/alpha/lsp/servers/texlab.lua | 16 | ||||
| -rw-r--r-- | lua/config/keymaps.lua | 10 | ||||
| -rw-r--r-- | lua/config/options.lua | 4 | ||||
| -rw-r--r-- | lua/plugins/CodeGPT.lua | 10 | ||||
| -rw-r--r-- | lua/plugins/flutter.lua | 11 | ||||
| -rw-r--r-- | lua/plugins/indent-blankline.lua | 5 | ||||
| -rw-r--r-- | lua/plugins/llm.lua | 55 | ||||
| -rw-r--r-- | lua/plugins/nvim-python-repl.lua | 12 | ||||
| -rw-r--r-- | lua/plugins/rust-tools.lua | 66 | ||||
| -rw-r--r-- | lua/plugins/treesitter.lua | 4 |
14 files changed, 225 insertions, 19 deletions
@@ -1,2 +1,8 @@ require "config" require "alpha.globals" +vim.api.nvim_create_autocmd({ "BufReadPost" }, { + pattern = { "*" }, + callback = function() + vim.api.nvim_exec('silent! normal! g`"zv', false) + end, +}) diff --git a/lazy-lock.json b/lazy-lock.json index aeb60cf..61c1b56 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,4 +1,5 @@ { + "CodeGPT.nvim": { "branch": "master", "commit": "6e3714e8d336aea4a205081d44ed8b2e3505dee2" }, "Comment.nvim": { "branch": "master", "commit": "0236521ea582747b58869cb72f70ccfa967d2e89" }, "FixCursorHold.nvim": { "branch": "master", "commit": "1900f89dc17c603eec29960f57c00bd9ae696495" }, "LuaSnip": { "branch": "master", "commit": "500981ff6cefc7343e3959ef0f939bd0bfd49ba9" }, @@ -15,37 +16,41 @@ "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "18095520391186d634a0045dacaa346291096566" }, "color-picker.nvim": { "branch": "master", "commit": "06cb5f853535dea529a523e9a0e8884cdf9eba4d" }, + "composer.nvim": { "branch": "main", "commit": "ec9537969adc7fc128cfe9c3a9925850455896c8" }, "copilot-cmp": { "branch": "master", "commit": "72fbaa03695779f8349be3ac54fa8bd77eed3ee3" }, "copilot.lua": { "branch": "master", "commit": "1a8032ae496916ccc7a7a52ee79194fbef29f462" }, "direnv.vim": { "branch": "master", "commit": "165031fa2c8dbb1e78dfd7054fe064ea926384cb" }, - "dressing.nvim": { "branch": "master", "commit": "c1e1d5fa44fe08811b6ef4aadac2b50e602f9504" }, + "dressing.nvim": { "branch": "master", "commit": "73a7d54b5289000108c7f52402a36cf380fced67" }, "duck.nvim": { "branch": "main", "commit": "8f18dd79c701698fc150119ef642c1881ce6a538" }, - "fzf": { "branch": "master", "commit": "76364ea767cca7ca8f6570a049fbb8d3fff751a9" }, + "flutter-tools.nvim": { "branch": "main", "commit": "0b01c71ecf05a2edd955b5b53d808bc64f143069" }, + "fzf": { "branch": "master", "commit": "a3ff49aaf18eceefe4bf8b1df5bf275b3d982493" }, "fzf.vim": { "branch": "master", "commit": "678ee1a549bd873dde35f6146f288a3f2e29d983" }, "git-worktree.nvim": { "branch": "master", "commit": "d7f4e2584e81670154f07ca9fa5dd791d9c1b458" }, - "gitsigns.nvim": { "branch": "main", "commit": "9bec6e1ef5542e33974e5b4f982c8c063b981974" }, + "gitsigns.nvim": { "branch": "main", "commit": "bdeba1cec3faddd89146690c10b9a87949c0ee66" }, "harpoon": { "branch": "master", "commit": "21f4c47c6803d64ddb934a5b314dcb1b8e7365dc" }, "hydra.nvim": { "branch": "master", "commit": "3ced42c0b6a6c85583ff0f221635a7f4c1ab0dd0" }, "icon-picker.nvim": { "branch": "master", "commit": "e6dca182518eeb7a51470c13605a5bce08a816e4" }, "image.nvim": { "branch": "main", "commit": "dcabdf47b0b974b61d08eeafa2c519927e37cf27" }, - "indent-blankline.nvim": { "branch": "master", "commit": "9637670896b68805430e2f72cf5d16be5b97a22a" }, - "lazy.nvim": { "branch": "main", "commit": "2a9354c7d2368d78cbd5575a51a2af5bd8a6ad01" }, + "indent-blankline.nvim": { "branch": "master", "commit": "2ec42d26c933e7a129fe056dfc11a207afff252d" }, + "laravel.nvim": { "branch": "main", "commit": "8f8a0eab84191b1867b2f188cf475e6a05203908" }, + "lazy.nvim": { "branch": "main", "commit": "6a2c47e6424a3f1e373bfeb714b716f6be13501c" }, + "llm.nvim": { "branch": "main", "commit": "3aa167bcabc6bd0bd6b58c6c07e1937402162558" }, "lspkind-nvim": { "branch": "master", "commit": "57610d5ab560c073c465d6faf0c19f200cb67e6e" }, "lualine.nvim": { "branch": "master", "commit": "45e27ca739c7be6c49e5496d14fcf45a303c3a63" }, "markdown-preview.nvim": { "branch": "main", "commit": "cc05a30393e2bf9f12e2d59fc35a1aa928ed1727" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "2451adb9bdb0fd32140bf3aa8dbc17ff60050db3" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "81e30dd629de24cbb26d08073ee938ab40006695" }, "mason-tool-installer.nvim": { "branch": "main", "commit": "83dcddb6477f9ba5db98971ef27bd18bdca921b4" }, "mason.nvim": { "branch": "main", "commit": "d66c60e17dd6fd8165194b1d14d21f7eb2c1697a" }, "middleclass": { "branch": "master", "commit": "9fab4d5bca67262614960960ca35c4740eb2be2c" }, - "neodev.nvim": { "branch": "main", "commit": "ddf29935af5a510307850919d6772ea6a4e2c008" }, + "neodev.nvim": { "branch": "main", "commit": "58b1c0740e8ad79ce71e2649a449bb90536435cf" }, "neogen": { "branch": "main", "commit": "70127baaff25611deaf1a29d801fc054ad9d2dc1" }, "neorg": { "branch": "main", "commit": "745715c873395840a5127413d1ef30a42735605e" }, "neotest": { "branch": "master", "commit": "1e67a504d03def3a6a1125d934cb511680f72555" }, "neotest-go": { "branch": "main", "commit": "1a15e1136db43775214a3e7a598f8930c29c94b7" }, - "neotest-plenary": { "branch": "master", "commit": "e0d9b1530307a03abcc52fc0ae28f054dea3f752" }, + "neotest-plenary": { "branch": "master", "commit": "dcaf5ed67a9e28a246e9783319e5aa6c9ea1c584" }, "neotest-rust": { "branch": "main", "commit": "139cff7c85598ec591b5ed7d71ce8ed3b5313b97" }, "neotest-vim-test": { "branch": "master", "commit": "75c4228882ae4883b11bfce9b8383e637eb44192" }, - "noice.nvim": { "branch": "main", "commit": "74c2902146b080035beb19944baf6f014a954720" }, + "noice.nvim": { "branch": "main", "commit": "396f9146529130904e07c45e90ecdbfa607534f3" }, "nui.nvim": { "branch": "main", "commit": "c8de23342caf8d50b15d6b28368d36a56a69d76f" }, "null-ls.nvim": { "branch": "main", "commit": "0010ea927ab7c09ef0ce9bf28c2b573fc302f5a7" }, "numb.nvim": { "branch": "master", "commit": "3f7d4a74bd456e747a1278ea1672b26116e0824d" }, @@ -57,29 +62,32 @@ "nvim-dap-ui": { "branch": "master", "commit": "34160a7ce6072ef332f350ae1d4a6a501daf0159" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "57f1dbd0458dd84a286b27768c142e1567f3ce3b" }, "nvim-dap-vscode-js": { "branch": "main", "commit": "03bd29672d7fab5e515fc8469b7d07cc5994bbf6" }, - "nvim-lspconfig": { "branch": "master", "commit": "ede4114e1fd41acb121c70a27e1b026ac68c42d6" }, - "nvim-notify": { "branch": "master", "commit": "94859430020f5cf32a1b97ddd9e596fed9db7981" }, + "nvim-lspconfig": { "branch": "master", "commit": "61b40df9c17943e43e7e698873caab0e7dbcdadc" }, + "nvim-notify": { "branch": "master", "commit": "e4a2022f4fec2d5ebc79afa612f96d8b11c627b3" }, + "nvim-python-repl": { "branch": "main", "commit": "9ed71cc744643171307445b1e4eca5ed48f822e1" }, "nvim-spectre": { "branch": "master", "commit": "97cfd1b0f5a6ab35979ce1bee6c17f54745fd1e5" }, "nvim-transparent": { "branch": "main", "commit": "3af6232c8d39d51062702e875ff6407c1eeb0391" }, - "nvim-treesitter": { "branch": "master", "commit": "0960322686bfa38afd4f1e0b9660473cf77e24b6" }, + "nvim-treesitter": { "branch": "master", "commit": "16ea2969ea0a5ba902fceece9b2db10c7c9ba2d6" }, "nvim-treesitter-textobjects": { "branch": "master", "commit": "bd103502252027434ec42f628d2dbf54821d4ce6" }, - "nvim-web-devicons": { "branch": "master", "commit": "480a756df82a0c231622c9bf2173bb6634713716" }, + "nvim-web-devicons": { "branch": "master", "commit": "45d0237c427baba8cd05e0ab26d30e2ee58c2c82" }, + "phpactor.nvim": { "branch": "main", "commit": "0aa4ad09c2024e24d630c0ec616d65396caa39e0" }, "plenary.nvim": { "branch": "master", "commit": "9ce85b0f7dcfe5358c0be937ad23e456907d410b" }, "popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" }, "refactoring.nvim": { "branch": "master", "commit": "be6505be8bdd306646bb81399312c02927a60a51" }, + "rust-tools.nvim": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" }, "smart-splits.nvim": { "branch": "master", "commit": "0beb14427dcf2a5d5d63e0064b45032a7bd3e763" }, "telescope-dap.nvim": { "branch": "master", "commit": "4e2d5efb92062f0b865fe59b200b5ed7793833bf" }, "telescope-file-browser.nvim": { "branch": "master", "commit": "6e51d0cd6447cf2525412220ff0a2885eef9039c" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, "telescope-fzy-native.nvim": { "branch": "master", "commit": "282f069504515eec762ab6d6c89903377252bf5b" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "62ea5e58c7bbe191297b983a9e7e89420f581369" }, - "telescope.nvim": { "branch": "master", "commit": "ed9574dd6dde143d009b2528ea6d79bd34bbe6c8" }, + "telescope.nvim": { "branch": "master", "commit": "ffe90fac32122f401429b14d383137bd92a685d0" }, "todo-comments.nvim": { "branch": "main", "commit": "3094ead8edfa9040de2421deddec55d3762f64d1" }, "trouble.nvim": { "branch": "main", "commit": "3f85d8ed30e97ceeddbbcf80224245d347053711" }, - "twilight.nvim": { "branch": "main", "commit": "a4843e6e67092a1e6fa9666f02bf0ab59174c1df" }, + "twilight.nvim": { "branch": "main", "commit": "8b7b50c0cb2dc781b2f4262a5ddd57571556d1e4" }, "vim-dadbod": { "branch": "master", "commit": "7d80bbd11c407a09e0f7b869c38f3dec3902805f" }, "vim-dadbod-completion": { "branch": "master", "commit": "fc7321a17f4c55db11fae89a884ddf4724020bae" }, - "vim-dadbod-ui": { "branch": "master", "commit": "5c4cad56f2774c3cd3a6ee9944c787820f2fcb20" }, + "vim-dadbod-ui": { "branch": "master", "commit": "95fd22469507e86b78aa55d868c14108adee2881" }, "vim-dispatch": { "branch": "master", "commit": "6cc2691576f97d43f8751664d1a1a908b99927e5" }, "vim-dotenv": { "branch": "master", "commit": "5c51cfcf8d87280d6414e03cd6b253eb70ecb800" }, "vim-easy-align": { "branch": "master", "commit": "12dd6316974f71ce333e360c0260b4e1f81169c3" }, diff --git a/lua/alpha/dap/init.lua b/lua/alpha/dap/init.lua index 81651f7..44b3e50 100644 --- a/lua/alpha/dap/init.lua +++ b/lua/alpha/dap/init.lua @@ -25,7 +25,7 @@ dapui.setup { "stacks", "watches", }, - size = 80, + size = 50, position = "right", }, { @@ -33,7 +33,7 @@ dapui.setup { "repl", "console", }, - size = 10, + size = 7, position = "bottom", }, }, diff --git a/lua/alpha/lsp/default.lua b/lua/alpha/lsp/default.lua index 4f53ddd..639282d 100644 --- a/lua/alpha/lsp/default.lua +++ b/lua/alpha/lsp/default.lua @@ -16,6 +16,7 @@ return { tailwindcss = { enable = true, filetypes = {"blade", "html", "svelte"} }, tsserver = { enable = true }, volar = { enable = true }, + texlab = { enable = true, filetypes = {"tex", "bib"} }, }, default_options = function (options) return vim.tbl_deep_extend("force", { diff --git a/lua/alpha/lsp/servers/texlab.lua b/lua/alpha/lsp/servers/texlab.lua new file mode 100644 index 0000000..d749db9 --- /dev/null +++ b/lua/alpha/lsp/servers/texlab.lua @@ -0,0 +1,16 @@ +local lsp_attach = require "alpha.lsp.attach" +local lsp_flags = require "alpha.lsp.flags" +return function(ops) + return vim.tbl_extend("force", { + on_attach = lsp_attach, + flags = lsp_flags, + settings = { + ["texlab"] = { + latexFormatter = "latexindent", + latexindent = { + modifyLineBreaks = false + } + } + } + }, ops) +end diff --git a/lua/config/keymaps.lua b/lua/config/keymaps.lua index 22b786d..3013d65 100644 --- a/lua/config/keymaps.lua +++ b/lua/config/keymaps.lua @@ -71,3 +71,13 @@ map("n", "<leader>vn", vim.diagnostic.goto_next, { desc = "Goes to next diagnost map("n", "<leader>vp", vim.diagnostic.goto_prev, { desc = "Goes to prev diagnostic error" }) map("v", "<leader>q", require('alpha.select_to_quickfix').handle) +map('n', '99', ':set invspell<CR>', { noremap = true }) +map("n", "<leader>ss", function() require('nvim-python-repl').send_statement_definition() end, { desc = "Send semantic unit to REPL"}) +map("n", "<leader>sl", function() require('nvim-python-repl').send_visual_to_repl() end, { desc = "Send visual selection to REPL"}) +map("v", "<leader>sl", function() require('nvim-python-repl').send_visual_to_repl() end, { desc = "Send visual selection to REPL"}) +map("n", "<leader>MReturn", function() require('nvim-python-repl').send_buffer_to_repl() end, { desc = "Send entire buffer to REPL"}) +map("n", "<leader>e", function() require('nvim-python-repl').toggle_execute() end, { desc = "Automatically execute command in REPL after sent"}) +map("n", "<leader>vi", function() require('nvim-python-repl').toggle_vertical() end, { desc = "Create REPL in vertical or horizontal split"}) +map("n", "<leader>rl",function() require('rust-tools').inlay_hints.enable() end, {desc = "Enable inlay hints auto update and set them for all the buffers"}) +map("n", "<leader>rdl",function() require('rust-tools').inlay_hints.disable() end, {desc = "Disable inlay hints auto update and unset them for all buffers"}) +map("n", "<leader>rrn", function () require('rust-tools').runnables.runnables() end, {desc = "run rust"}) diff --git a/lua/config/options.lua b/lua/config/options.lua index 7cbc205..c6449c6 100644 --- a/lua/config/options.lua +++ b/lua/config/options.lua @@ -14,7 +14,9 @@ opt.softtabstop = 4 opt.shiftwidth = 4 opt.smartindent = true opt.errorbells = false -opt.wrap = false +opt.wrap = true +opt.spell = true +opt.spelllang = "en_us,es" opt.swapfile = false opt.undofile = true opt.undodir = os.getenv "HOME" .. "/.cache/nvim/undodir" diff --git a/lua/plugins/CodeGPT.lua b/lua/plugins/CodeGPT.lua new file mode 100644 index 0000000..ee3579b --- /dev/null +++ b/lua/plugins/CodeGPT.lua @@ -0,0 +1,10 @@ +return { + "dpayne/CodeGPT.nvim", + dependencies = { + 'nvim-lua/plenary.nvim', + 'MunifTanjim/nui.nvim', + }, + config = function() + require("codegpt.config") + end +} diff --git a/lua/plugins/flutter.lua b/lua/plugins/flutter.lua new file mode 100644 index 0000000..91cabad --- /dev/null +++ b/lua/plugins/flutter.lua @@ -0,0 +1,11 @@ +return +{ + 'akinsho/flutter-tools.nvim', + lazy = true, + filetype = 'dart', + dependencies = { + 'nvim-lua/plenary.nvim', + 'stevearc/dressing.nvim', -- optional for vim.ui.select + }, + config = true, +} diff --git a/lua/plugins/indent-blankline.lua b/lua/plugins/indent-blankline.lua index 3d5f6fe..1a26aa1 100644 --- a/lua/plugins/indent-blankline.lua +++ b/lua/plugins/indent-blankline.lua @@ -1,4 +1,9 @@ return { "lukas-reineke/indent-blankline.nvim", config = true, + main = "ibl", + opts = { + char = '┊', + show_trailing_blankline_indent = false + } } diff --git a/lua/plugins/llm.lua b/lua/plugins/llm.lua new file mode 100644 index 0000000..8a71fb6 --- /dev/null +++ b/lua/plugins/llm.lua @@ -0,0 +1,55 @@ +return { + 'huggingface/llm.nvim', + config = function() + require('hfcc').setup({ + api_token = "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", -- cf Install paragraph + -- parameters that are added to the request body + query_params = { + max_new_tokens = 60, + temperature = 0.2, + top_p = 0.95, + -- stop_token = "<|endoftext|>", + -- stop_token = nil, + stop_token = "<EOT>", + }, + -- lsp = { + -- enabled = false, + -- bin_path = vim.api.nvim_call_function("stdpath", { "data" }) .. "/mason/bin/llm-ls", + -- }, + debounce_ms = 80, + accept_keymap = "<M-Right>", + dismiss_keymap = "<S-Tab>", + max_context_after = 50, + max_context_before = 50, + tls_skip_verify_insecure = false, + + enable_suggestions_on_startup = true, + enable_suggestions_on_files = "*", -- pattern matching syntax to enable suggestions on specific files, either a string or a list of strings + -- model = "bigcode/starcoder", -- can be a model ID or an http(s) endpoint + -- context_window = 8192, + -- tokens_to_clear = { "<|endoftext|>" }, + -- tokenizer = { + -- path = "~/.config/tokenizer/starcoder/tokenizer.json" + -- }, + -- -- set this if the model supports fill in the middle + -- fim = { + -- enabled = true, + -- prefix = "<fim_prefix>", + -- middle = "<fim_middle>", + -- suffix = "<fim_suffix>", + -- }, + model = "codellama/CodeLlama-7b-hf", + context_window = 4096, + -- tokens_to_clear = { "<EOT>" }, + -- tokenizer = { + -- path = "~/.config/tokenizer/codellama/tokenizer.json", + -- }, + fim = { + enabled = true, + prefix = "<PRE> ", + middle = " <MID>", + suffix = " <SUF>", + }, + }) + end +} diff --git a/lua/plugins/nvim-python-repl.lua b/lua/plugins/nvim-python-repl.lua new file mode 100644 index 0000000..cfab1b6 --- /dev/null +++ b/lua/plugins/nvim-python-repl.lua @@ -0,0 +1,12 @@ +return + { + "geg2102/nvim-python-repl", + dependencies = "nvim-treesitter", + ft = {"python", "lua", "scala"}, + config = function() + require("nvim-python-repl").setup({ + execute_on_send = false, + vsplit = true, + }) + end + } diff --git a/lua/plugins/rust-tools.lua b/lua/plugins/rust-tools.lua new file mode 100644 index 0000000..8e49c90 --- /dev/null +++ b/lua/plugins/rust-tools.lua @@ -0,0 +1,66 @@ +return +{ + "simrat39/rust-tools.nvim", + ft = "rust", + config = function() + require("rust-tools").setup({ + tools = { + autoSetHints = true, + runnables = { + use_telescope = true + }, + debugger = { + use_telescope = true + }, + inlay_hints = { + -- automatically set inlay hints (type hints) + -- default: true + auto = false, + -- Only show inlay hints for the current line + only_current_line = false, + -- whether to show parameter hints with the inlay hints or not + -- default: true + show_parameter_hints = true, + -- prefix for parameter hints + -- default: "<-" + parameter_hints_prefix = "<- ", + -- prefix for all the other hints (type, chaining) + -- default: "=>" + other_hints_prefix = "=> ", + -- whether to align to the length of the longest line in the file + max_len_align = false, + -- padding from the left if max_len_align is true + max_len_align_padding = 1, + -- whether to align to the extreme right or not + right_align = false, + -- padding from the right if right_align is true + right_align_padding = 7, + -- The color of the hints + highlight = "Comment", + }, + crate_graph = { + -- Backend used for displaying the graph + -- see: https://graphviz.org/docs/outputs/ + -- default: x11 + backend = "gtk", + -- where to store the output, nil for no output stored (relative + -- path from pwd) + -- default: nil + output = "/tmp/crate_graph", + -- true for all crates.io and external crates, false only the local + -- crates + -- default: true + full = true, + }, + }, + }) + end, + dap = { + adapter = { + type = "executable", + command = "/bin/lldb-vscode", + name = "rt_lldb", + }, + }, + +} diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index c706821..db2a4bc 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -32,6 +32,10 @@ return { "regex", "vim", "yaml", + "latex", + "python", + "dockerfile", + "cpp", }, highlight = { enable = true, |