From acac8fe6cca651fa8851341fdcc7dd8db3d8330d Mon Sep 17 00:00:00 2001 From: "Nikolas (Daniel) Vincenti" <165183152+NikVince@users.noreply.github.com> Date: Sat, 26 Apr 2025 12:28:57 +0200 Subject: [PATCH] UPDATED init.lua to ADD 'saecki/crates.nvim' crates version management plugin. --- init.lua | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ lazy-lock.json | 14 ++++++++----- 2 files changed, 62 insertions(+), 5 deletions(-) diff --git a/init.lua b/init.lua index db087f9f..58a1e044 100644 --- a/init.lua +++ b/init.lua @@ -1091,6 +1091,59 @@ require('lazy').setup({ require('nvim-dap-virtual-text').setup() end, }, + + { + 'saecki/crates.nvim', + event = { 'BufRead Cargo.toml' }, + dependencies = { 'nvim-lua/plenary.nvim' }, + config = function() + require('crates').setup { + null_ls = { + enabled = true, + name = 'crates.nvim', + }, + popup = { + border = 'rounded', + show_version_date = true, + show_dependency_version = true, + }, + src = { + cmp = { + enabled = true, + }, + }, + } + + -- Add keymaps specifically for Cargo.toml + vim.api.nvim_create_autocmd('BufRead', { + group = vim.api.nvim_create_augroup('CratesNvimSetup', { clear = true }), + pattern = 'Cargo.toml', + callback = function() + local crates = require 'crates' + local opts = { noremap = true, silent = true } + + -- Update crate + vim.keymap.set('n', 'ct', crates.toggle, { buffer = true, desc = 'Crates: [T]oggle' }) + vim.keymap.set('n', 'cr', crates.reload, { buffer = true, desc = 'Crates: [R]eload' }) + + -- Version management + vim.keymap.set('n', 'cv', crates.show_versions_popup, { buffer = true, desc = 'Crates: Show [V]ersions' }) + vim.keymap.set('n', 'cf', crates.show_features_popup, { buffer = true, desc = 'Crates: Show [F]eatures' }) + + -- Dependencies + vim.keymap.set('n', 'cu', crates.update_crate, { buffer = true, desc = 'Crates: [U]pdate Crate' }) + vim.keymap.set('n', 'ca', crates.update_all_crates, { buffer = true, desc = 'Crates: Update [A]ll' }) + vim.keymap.set('n', 'cU', crates.upgrade_crate, { buffer = true, desc = 'Crates: [U]pgrade Crate' }) + vim.keymap.set('n', 'cA', crates.upgrade_all_crates, { buffer = true, desc = 'Crates: Upgrade [A]ll' }) + + -- Open documentation + vim.keymap.set('n', 'K', crates.show_popup, { buffer = true, desc = 'Crates: Show Popup' }) + vim.keymap.set('n', 'cd', crates.open_documentation, { buffer = true, desc = 'Crates: Open [D]ocumentation' }) + vim.keymap.set('n', 'cR', crates.open_repository, { buffer = true, desc = 'Crates: Open [R]epository' }) + end, + }) + end, + }, }, { ui = { -- If you are using a Nerd Font: set icons to an empty table which will use the diff --git a/lazy-lock.json b/lazy-lock.json index 9cdfd5f0..13d7b0ae 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,17 +1,21 @@ { "LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, "blink.cmp": { "branch": "main", "commit": "cb5e346d9e0efa7a3eee7fd4da0b690c48d2a98e" }, - "conform.nvim": { "branch": "master", "commit": "6632e7d788a85bf8405ea0c812d343fc308b7b8c" }, + "conform.nvim": { "branch": "master", "commit": "372fc521f8421b7830ea6db4d6ea3bae1c77548c" }, "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, - "gitsigns.nvim": { "branch": "main", "commit": "d600d3922c1d001422689319a8f915136bb64e1e" }, + "gitsigns.nvim": { "branch": "main", "commit": "140ac646db125904e456e42ab8b538d28f9607d7" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, + "mason-nvim-dap.nvim": { "branch": "main", "commit": "4c2cdc69d69fe00c15ae8648f7e954d99e5de3ea" }, "mason-tool-installer.nvim": { "branch": "main", "commit": "1255518cb067e038a4755f5cb3e980f79b6ab89c" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, - "mini.nvim": { "branch": "main", "commit": "6be765891c95242f6b8ebd3a25aa285ab3e9f6de" }, - "nvim-lspconfig": { "branch": "master", "commit": "a56f4b9dde5daf3d4c7bb50cf78ab609537f2259" }, - "nvim-treesitter": { "branch": "master", "commit": "684eeac91ed8e297685a97ef70031d19ac1de25a" }, + "mini.nvim": { "branch": "main", "commit": "3a5ea026f6b997399a2899559bd7381d8fb67dd4" }, + "nvim-dap": { "branch": "master", "commit": "98bf130702eaafad8567c0e3ea1171c2552d58bb" }, + "nvim-dap-ui": { "branch": "master", "commit": "73a26abf4941aa27da59820fd6b028ebcdbcf932" }, + "nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" }, + "nvim-lspconfig": { "branch": "master", "commit": "a9d8e659df04eb48d4224798777eb33992692333" }, + "nvim-treesitter": { "branch": "master", "commit": "58dd1496291fa19c3c4990df28c2773a4bc9b257" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },