lsp: added rust-tools
This commit is contained in:
		
							parent
							
								
									bc4037ef6f
								
							
						
					
					
						commit
						1ee103951a
					
				
					 3 changed files with 51 additions and 31 deletions
				
			
		
							
								
								
									
										6
									
								
								init.lua
									
										
									
									
									
								
							
							
						
						
									
										6
									
								
								init.lua
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -16,12 +16,6 @@ vim.opt.rtp:prepend(lazypath)
 | 
			
		|||
 | 
			
		||||
require('lazy').setup({ { import = "plugins" } })
 | 
			
		||||
 | 
			
		||||
--[[
 | 
			
		||||
    To add:
 | 
			
		||||
    - https://github.com/nvim-lualine/lualine.nvim
 | 
			
		||||
    - https://github.com/simrat39/rust-tools.nvim
 | 
			
		||||
]]--
 | 
			
		||||
 | 
			
		||||
require("sets")
 | 
			
		||||
require("remaps")
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,16 +1,18 @@
 | 
			
		|||
{
 | 
			
		||||
  "fd": { "branch": "master", "commit": "266311ca33a78924dcad1fc13f99974098286ed0" },
 | 
			
		||||
  "crates.nvim": { "branch": "main", "commit": "8437522d12a8c523da2aee9db2979d070b2ecc33" },
 | 
			
		||||
  "fd": { "branch": "master", "commit": "00b64f3ccbfb832ef744bb42bbdfabaf929b5ee2" },
 | 
			
		||||
  "feline.nvim": { "branch": "main", "commit": "a6bebd903e84d5ce0e97c597e0ca85cd24109002" },
 | 
			
		||||
  "gitsigns.nvim": { "branch": "main", "commit": "d195f0c35ced5174d3ecce1c4c8ebb3b5bc23fa9" },
 | 
			
		||||
  "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" },
 | 
			
		||||
  "neo-tree.nvim": { "branch": "v3.x", "commit": "77d9f484b88fd380386b46ed9206e5374d69d9d8" },
 | 
			
		||||
  "neo-tree.nvim": { "branch": "v3.x", "commit": "230ff118613fa07138ba579b89d13ec2201530b9" },
 | 
			
		||||
  "nui.nvim": { "branch": "main", "commit": "c9b4de623d19a85b353ff70d2ae9c77143abe69c" },
 | 
			
		||||
  "nvim": { "branch": "main", "commit": "079500a625f3ae5aa6efb758f1a17fe4c7a57e52" },
 | 
			
		||||
  "nvim-lspconfig": { "branch": "master", "commit": "6772c1ccec801f2bd099065bebc09debc6474892" },
 | 
			
		||||
  "nvim-treesitter": { "branch": "master", "commit": "c153019e11052f38cdf2bdd338750cd103877eba" },
 | 
			
		||||
  "nvim-lspconfig": { "branch": "master", "commit": "eb81c7ea08d6f01d5fa4cf09e58c708efadf9b2f" },
 | 
			
		||||
  "nvim-treesitter": { "branch": "master", "commit": "25ddfde8d7167d7d81403d6809242439037d2b68" },
 | 
			
		||||
  "nvim-web-devicons": { "branch": "master", "commit": "a1425903ab52a0a0460622519e827f224e5b4fee" },
 | 
			
		||||
  "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" },
 | 
			
		||||
  "ripgrep": { "branch": "master", "commit": "3f2fe0afee0d1a1eeb3235904cfef4f35c4644dc" },
 | 
			
		||||
  "rust-tools.nvim": { "branch": "master", "commit": "0cc8adab23117783a0292a0c8a2fbed1005dc645" },
 | 
			
		||||
  "telescope.nvim": { "branch": "0.1.x", "commit": "d90956833d7c27e73c621a61f20b29fdb7122709" },
 | 
			
		||||
  "undotree": { "branch": "master", "commit": "36ff7abb6b60980338344982ad4cdf03f7961ecd" }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -28,31 +28,55 @@ vim.api.nvim_create_autocmd('LspAttach', {
 | 
			
		|||
})
 | 
			
		||||
 | 
			
		||||
return {
 | 
			
		||||
    "neovim/nvim-lspconfig",
 | 
			
		||||
    config = function()
 | 
			
		||||
        local lspconfig = require("lspconfig")
 | 
			
		||||
    {
 | 
			
		||||
        "neovim/nvim-lspconfig",
 | 
			
		||||
        config = function()
 | 
			
		||||
            local lspconfig = require("lspconfig")
 | 
			
		||||
 | 
			
		||||
        lspconfig.pyright.setup({})
 | 
			
		||||
            lspconfig.pyright.setup({})
 | 
			
		||||
 | 
			
		||||
        lspconfig.rust_analyzer.setup({})
 | 
			
		||||
            lspconfig.rust_analyzer.setup({})
 | 
			
		||||
 | 
			
		||||
        lspconfig.lua_ls.setup({
 | 
			
		||||
            settings = {
 | 
			
		||||
                Lua = {
 | 
			
		||||
                    runtime = {
 | 
			
		||||
                        -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
 | 
			
		||||
                        version = "LuaJIT",
 | 
			
		||||
                    },
 | 
			
		||||
                    workspace = {
 | 
			
		||||
                        -- Make the server aware of Neovim runtime files
 | 
			
		||||
                        library = vim.api.nvim_get_runtime_file("", true),
 | 
			
		||||
                    },
 | 
			
		||||
                    -- Do not send telemetry data containing a randomized but unique identifier
 | 
			
		||||
                    telemetry = {
 | 
			
		||||
                        enable = false,
 | 
			
		||||
            lspconfig.lua_ls.setup({
 | 
			
		||||
                settings = {
 | 
			
		||||
                    Lua = {
 | 
			
		||||
                        runtime = {
 | 
			
		||||
                            -- Tell the language server which version of Lua you're using (most likely LuaJIT in the case of Neovim)
 | 
			
		||||
                            version = "LuaJIT",
 | 
			
		||||
                        },
 | 
			
		||||
                        workspace = {
 | 
			
		||||
                            -- Make the server aware of Neovim runtime files
 | 
			
		||||
                            library = vim.api.nvim_get_runtime_file("", true),
 | 
			
		||||
                        },
 | 
			
		||||
                        -- Do not send telemetry data containing a randomized but unique identifier
 | 
			
		||||
                        telemetry = {
 | 
			
		||||
                            enable = false,
 | 
			
		||||
                        },
 | 
			
		||||
                    },
 | 
			
		||||
                },
 | 
			
		||||
            })
 | 
			
		||||
        end
 | 
			
		||||
    },
 | 
			
		||||
    {
 | 
			
		||||
        "simrat39/rust-tools.nvim",
 | 
			
		||||
        dependencies = {
 | 
			
		||||
            "nvim-lua/plenary.nvim",
 | 
			
		||||
            {
 | 
			
		||||
                "Saecki/crates.nvim",
 | 
			
		||||
                tag = 'stable',
 | 
			
		||||
            },
 | 
			
		||||
        })
 | 
			
		||||
    end
 | 
			
		||||
        },
 | 
			
		||||
        opts = {
 | 
			
		||||
            server = {
 | 
			
		||||
                on_attach = function(_, bufnr)
 | 
			
		||||
                    local rt = require("rust-tools");
 | 
			
		||||
                    -- Hover actions
 | 
			
		||||
                    vim.keymap.set("n", "<C-space>", rt.hover_actions.hover_actions, { buffer = bufnr })
 | 
			
		||||
                    -- Code action groups
 | 
			
		||||
                    vim.keymap.set("n", "<Leader>a", rt.code_action_group.code_action_group, { buffer = bufnr })
 | 
			
		||||
                end,
 | 
			
		||||
            },
 | 
			
		||||
        },
 | 
			
		||||
        event = { "LspAttach *.rs" },
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue