diff options
| -rw-r--r-- | init.lua | 61 | ||||
| -rw-r--r-- | lua/config/editor.lua | 2 | ||||
| -rw-r--r-- | lua/config/plugins.lua | 83 |
3 files changed, 47 insertions, 99 deletions
| @@ -1,8 +1,9 @@ | |||
| 1 | -- require("config.lsp") | 1 | ---@diagnostic disable: undefined-global |
| 2 | local option = vim.opt | 2 | local option = vim.opt |
| 3 | local keymap = vim.keymap | 3 | local keymap = vim.keymap |
| 4 | vim.g.loaded_netrw = 1 | 4 | vim.g.loaded_netrw = 1 |
| 5 | vim.g.loaded_netrwPlugin = 1 | 5 | vim.g.loaded_netrwPlugin = 1 |
| 6 | vim.g.rustfmt_autosave = 1 | ||
| 6 | 7 | ||
| 7 | --Basic Editor Setup | 8 | --Basic Editor Setup |
| 8 | option.nu = true | 9 | option.nu = true |
| @@ -11,6 +12,7 @@ option.softtabstop = 2 | |||
| 11 | option.shiftwidth = 2 | 12 | option.shiftwidth = 2 |
| 12 | option.expandtab = true | 13 | option.expandtab = true |
| 13 | option.smartindent = true | 14 | option.smartindent = true |
| 15 | option.ruler = false | ||
| 14 | option.wrap = false | 16 | option.wrap = false |
| 15 | option.swapfile = false | 17 | option.swapfile = false |
| 16 | option.hlsearch = false | 18 | option.hlsearch = false |
| @@ -40,17 +42,7 @@ vim.g.vimtex_view_method = "zathura" | |||
| 40 | vim.g.vimtex_compiler_method = "latexrun" | 42 | vim.g.vimtex_compiler_method = "latexrun" |
| 41 | vim.g.gitgutter_set_sign_backgrounds = 1 | 43 | vim.g.gitgutter_set_sign_backgrounds = 1 |
| 42 | 44 | ||
| 43 | --Keybinds | 45 | |
| 44 | vim.g.mapleader = " " | ||
| 45 | keymap.set("n", "<leader>e", vim.cmd.NvimTreeToggle) | ||
| 46 | keymap.set("n", "<leader>z", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]]) | ||
| 47 | keymap.set("n", "<leader>a", "ggVG") | ||
| 48 | keymap.set("n", "<leader>y", "cc") | ||
| 49 | keymap.set("n", "<C-c>", "yy") | ||
| 50 | keymap.set("n", "<C-v>", "p") | ||
| 51 | keymap.set("n", "<C-z>", "u") | ||
| 52 | keymap.set("v", "J", ":m '>+1<CR>gv=gv") | ||
| 53 | keymap.set("v", "K", ":m '<-2<CR>gv=gv") | ||
| 54 | local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" | 46 | local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" |
| 55 | if not vim.loop.fs_stat(lazypath) then | 47 | if not vim.loop.fs_stat(lazypath) then |
| 56 | vim.fn.system({ | 48 | vim.fn.system({ |
| @@ -76,6 +68,10 @@ require("lazy").setup({ | |||
| 76 | "williamboman/mason.nvim", | 68 | "williamboman/mason.nvim", |
| 77 | "nvim-tree/nvim-web-devicons", | 69 | "nvim-tree/nvim-web-devicons", |
| 78 | "williamboman/mason-lspconfig.nvim", | 70 | "williamboman/mason-lspconfig.nvim", |
| 71 | 'nvimdev/lspsaga.nvim', | ||
| 72 | config = function() | ||
| 73 | require('lspsaga').setup({}) | ||
| 74 | end, | ||
| 79 | 'nvim-telescope/telescope.nvim', | 75 | 'nvim-telescope/telescope.nvim', |
| 80 | tag = '0.1.5', | 76 | tag = '0.1.5', |
| 81 | dependencies = { 'nvim-lua/plenary.nvim' }, | 77 | dependencies = { 'nvim-lua/plenary.nvim' }, |
| @@ -120,8 +116,27 @@ vim.api.nvim_create_autocmd("BufWritePre", { | |||
| 120 | local lsp_servers = { | 116 | local lsp_servers = { |
| 121 | clangd = {}, | 117 | clangd = {}, |
| 122 | lua_ls = {}, | 118 | lua_ls = {}, |
| 119 | rust_analyzer = { | ||
| 120 | imports = { | ||
| 121 | granularity = { | ||
| 122 | group = 'module', | ||
| 123 | }, | ||
| 124 | prefix = 'self', | ||
| 125 | }, | ||
| 126 | cargo = { | ||
| 127 | buildScripts = { | ||
| 128 | enable = true, | ||
| 129 | }, | ||
| 130 | }, | ||
| 131 | procMacro = { | ||
| 132 | enable = true, | ||
| 133 | }, | ||
| 134 | }, | ||
| 123 | } | 135 | } |
| 124 | 136 | ||
| 137 | |||
| 138 | require('lspsaga').setup({}) | ||
| 139 | |||
| 125 | require("mason").setup() | 140 | require("mason").setup() |
| 126 | require("mason-lspconfig").setup { | 141 | require("mason-lspconfig").setup { |
| 127 | ensure_installed = lsp_servers, | 142 | ensure_installed = lsp_servers, |
| @@ -142,9 +157,6 @@ for lsp, settings in pairs(lsp_servers) do | |||
| 142 | })) | 157 | })) |
| 143 | end | 158 | end |
| 144 | 159 | ||
| 145 | require("nvim-tree").setup() | ||
| 146 | |||
| 147 | -- OR setup with some options | ||
| 148 | require("nvim-tree").setup({ | 160 | require("nvim-tree").setup({ |
| 149 | sort = { | 161 | sort = { |
| 150 | sorter = "case_sensitive", | 162 | sorter = "case_sensitive", |
| @@ -189,8 +201,27 @@ highlight StatusLineNc ctermfg=none guifg=none | |||
| 189 | highlight StatusLine ctermbg=none guibg=none | 201 | highlight StatusLine ctermbg=none guibg=none |
| 190 | highlight StatusLine ctermfg=none guifg=none | 202 | highlight StatusLine ctermfg=none guifg=none |
| 191 | 203 | ||
| 204 | highlight NvimTreeWinSeparator ctermfg=none guifg=none | ||
| 205 | highlight CursorColumn ctermfg=none guifg=none | ||
| 206 | highlight CursorLine ctermbg=none guibg=none | ||
| 207 | |||
| 208 | highlight VertSplit ctermbg=none guibg=none | ||
| 209 | |||
| 192 | highlight DiagnosticVirtualTextError ctermbg=none guibg=none | 210 | highlight DiagnosticVirtualTextError ctermbg=none guibg=none |
| 193 | highlight DiagnosticVirtualTextWarn ctermbg=none guibg=none | 211 | highlight DiagnosticVirtualTextWarn ctermbg=none guibg=none |
| 194 | highlight DiagnosticVirtualTextInfo ctermbg=none guibg=none | 212 | highlight DiagnosticVirtualTextInfo ctermbg=none guibg=none |
| 195 | highlight DiagnosticVirtualTextHint ctermbg=none guibg=none | 213 | highlight DiagnosticVirtualTextHint ctermbg=none guibg=none |
| 196 | ]]) | 214 | ]]) |
| 215 | |||
| 216 | --Keybinds | ||
| 217 | vim.g.mapleader = " " | ||
| 218 | keymap.set("n", "<leader>e", vim.cmd.NvimTreeToggle) | ||
| 219 | keymap.set("n", "<leader>z", [[:%s/\<<C-r><C-w>\>/<C-r><C-w>/gI<Left><Left><Left>]]) | ||
| 220 | keymap.set("n", "<leader>a", "ggVG") | ||
| 221 | keymap.set("n", "<leader>y", "cc") | ||
| 222 | keymap.set("n", "<C-c>", "yy") | ||
| 223 | keymap.set("n", "<C-v>", "p") | ||
| 224 | keymap.set("n", "<C-z>", "u") | ||
| 225 | keymap.set("v", "J", ":m '>+1<CR>gv=gv") | ||
| 226 | keymap.set("v", "K", ":m '<-2<CR>gv=gv") | ||
| 227 | keymap.set("n", "<leader>ca", "<cmd>Lspsaga code_action<cr>") | ||
diff --git a/lua/config/editor.lua b/lua/config/editor.lua index a4ce545..0649006 100644 --- a/lua/config/editor.lua +++ b/lua/config/editor.lua | |||
| @@ -18,7 +18,7 @@ option.signcolumn = "number" | |||
| 18 | option.autoindent = true | 18 | option.autoindent = true |
| 19 | option.clipboard = "unnamedplus" | 19 | option.clipboard = "unnamedplus" |
| 20 | option.termguicolors = false | 20 | option.termguicolors = false |
| 21 | option.fillchars='eob: ' | 21 | option.fillchars = 'eob: ' |
| 22 | 22 | ||
| 23 | -- Setup Editor Theme | 23 | -- Setup Editor Theme |
| 24 | vim.cmd([[ | 24 | vim.cmd([[ |
diff --git a/lua/config/plugins.lua b/lua/config/plugins.lua deleted file mode 100644 index dd09a4d..0000000 --- a/lua/config/plugins.lua +++ /dev/null | |||
| @@ -1,83 +0,0 @@ | |||
| 1 | -- vim.cmd([[packadd packer.nvim]]) | ||
| 2 | -- return require("packer").startup(function(use) | ||
| 3 | -- use("neovim/nvim-lspconfig") | ||
| 4 | -- use("lervag/vimtex") | ||
| 5 | -- use({ | ||
| 6 | -- "VonHeikemen/lsp-zero.nvim", | ||
| 7 | -- requires = { | ||
| 8 | -- { "neovim/nvim-lspconfig" }, | ||
| 9 | -- { "williamboman/mason.nvim" }, | ||
| 10 | -- { "williamboman/mason-lspconfig.nvim" }, | ||
| 11 | -- { "hrsh7th/nvim-cmp" }, | ||
| 12 | -- { "hrsh7th/cmp-buffer" }, | ||
| 13 | -- { "hrsh7th/cmp-path" }, | ||
| 14 | -- { "saadparwaiz1/cmp_luasnip" }, | ||
| 15 | -- { "hrsh7th/cmp-nvim-lsp" }, | ||
| 16 | -- { "hrsh7th/cmp-nvim-lua" }, | ||
| 17 | -- { "rafamadriz/friendly-snippets" }, | ||
| 18 | -- }, | ||
| 19 | -- }) | ||
| 20 | -- use({ | ||
| 21 | -- "L3MON4D3/LuaSnip", | ||
| 22 | -- tag = "v2.*", | ||
| 23 | -- run = "make install_jsregexp", | ||
| 24 | -- }) | ||
| 25 | -- use({ | ||
| 26 | -- "iamcco/markdown-preview.nvim", | ||
| 27 | -- run = "cd app && npm install", | ||
| 28 | -- setup = function() | ||
| 29 | -- vim.g.mkdp_filetypes = { "markdown" } | ||
| 30 | -- end, | ||
| 31 | -- ft = { "markdown" }, | ||
| 32 | -- }) | ||
| 33 | -- use({ | ||
| 34 | -- "windwp/nvim-autopairs", | ||
| 35 | -- config = function() | ||
| 36 | -- require("nvim-autopairs").setup({}) | ||
| 37 | -- end, | ||
| 38 | -- }) | ||
| 39 | -- end) | ||
| 40 | |||
| 41 | local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" | ||
| 42 | if not vim.loop.fs_stat(lazypath) then | ||
| 43 | vim.fn.system({ | ||
| 44 | "git", | ||
| 45 | "clone", | ||
| 46 | "--filter=blob:none", | ||
| 47 | "https://github.com/folke/lazy.nvim.git", | ||
| 48 | "--branch=stable", -- latest stable release | ||
| 49 | lazypath, | ||
| 50 | }) | ||
| 51 | end | ||
| 52 | |||
| 53 | vim.opt.rtp:prepend(lazypath) | ||
| 54 | require("lazy").setup({ | ||
| 55 | "nvim-lua/plenary.nvim", | ||
| 56 | "airblade/vim-gitgutter", | ||
| 57 | "nvim-treesitter/nvim-treesitter", | ||
| 58 | "neovim/nvim-lspconfig", | ||
| 59 | 'nvim-telescope/telescope.nvim', tag = '0.1.5', | ||
| 60 | dependencies = { 'nvim-lua/plenary.nvim' }, | ||
| 61 | "windwp/nvim-autopairs", | ||
| 62 | config = function() | ||
| 63 | require("nvim-autopairs").setup({}) | ||
| 64 | end, | ||
| 65 | { 'nvim-telescope/telescope-fzf-native.nvim', | ||
| 66 | build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build', | ||
| 67 | keys= { | ||
| 68 | {"<leader>/", false}, | ||
| 69 | { "<leader>f", "<cmd>Telescope find_files<cr>", desc = "Find Files" }, | ||
| 70 | { "<leader>g", "<cmd>Telescope live_grep<cr>", desc = "Grep" }, | ||
| 71 | { "<leader>b", "<cmd>Telescope buffers<cr>", desc = "Grep" }, | ||
| 72 | } | ||
| 73 | }, | ||
| 74 | { | ||
| 75 | 'numToStr/Comment.nvim', | ||
| 76 | lazy = false, | ||
| 77 | }, | ||
| 78 | |||
| 79 | { | ||
| 80 | "ms-jpq/coq_nvim", | ||
| 81 | }, | ||
| 82 | }) | ||
| 83 | |||
