diff --git a/README.md b/README.md index ad83cae..b60b396 100644 --- a/README.md +++ b/README.md @@ -1,100 +1 @@ -# Simple neovim config, with only a small amount of plugins - - -- [Simple neovim config, with only a small amount of plugins](#simple-neovim-config-with-only-a-small-amount-of-plugins) - - [Package manager/Lazy loading/Lua compilation for faster startup time](#package-managerlazy-loadinglua-compilation-for-faster-startup-time) - - [Package manager](#package-manager) - - [Lazy loading](#lazy-loading) - - [Lua config compilation for faster startup](#lua-config-compilation-for-faster-startup) - - [Colorscheme](#colorscheme) - - [Treesitter](#treesitter) - - [Lsp](#lsp) - - [Code completion/autocompletion and snippets](#code-completionautocompletion-and-snippets) - - -Very simple neovim config with just stuff I need to do my work/act like I'm a worker. - -Trying to use as many built in stuff as possible ( That's the main reason I'm rocking the nighly version of neovim ). - -I have all my configurations in a `lua/config` directory with a pack.lua file for some plugins that don't need any configurations. - -Now I will try and go over a couple type of plugins that I'm using or that I'm not using because it's now built in or just annoying and I don't understand why people use them. - -## Package manager/Lazy loading/Lua compilation for faster startup time - -This is a pretty broad category because the most popular package manager lazy actually does all of this that's why I have it all mentioned here. - -### Package manager - -I'm using the new built in neovim package manager **pack** that's currently only available in the neovim nighly v0.12 - -### Lazy loading - -I don't do any lazy loading, I only use ( Looks at notes ) 6 packages only, and they all are either just a colorscheme or have amazing built in lazyloading. - -### Lua config compilation for faster startup - -This is a feature that lazy.nvim does, and another plugin called impatient.nvim ( I believe that's the name ), but neovim has a built in feature for that since couple version ago ( It's still "experimenta" ) that works as well as the options named before. - -## Colorscheme - -Using gruvbox colorscheme, fight me or join me I don't care. - -## Treesitter - -I enjoy using treesitter for syntax highlight. - -## Lsp - -I use the regular lsp with nvim-lspconfig just for the configurations so I don't have to set configuration for every lsp myself or update them if something changes in how an lsp work's. - -I'm still able to change lsp settings using `lsp/name_of_lsp.lua` and changing specific settings I need. - -## Code completion/autocompletion and snippets - -I'm using the built in code completion and use mini.autocomplete to have autocompletion and definitions automatically show when typing but much less anoying than most other's autocompletion plugins. - -I don't use any plugin for stuff like path completion because neovim already has it built in, just type and there are other type's of completion that already exist in neovim. - -For snippets I'm also making use of neovim's built in snippet engine with mini.snippets to add some more simple functionality. - -## Fuzzy finder/searcher - -I'm using mini.pick with multiple other mini extensions to add in more features some of them being: - -- git related searches -- pattern searching like FIXME/HACK/TODO/NOTE -- diagnostics -- most visited paths -- path's set with specific tag - -## statusline - -I'm using the mini.statusline that's very simpe and only has the kind of info I need and nothing else. - -## File manager - -Mini.move, simple and easilly extendable. - -## Keybindings cheatsheet - -mini.clue, simple and looks like helix and is less in the way than whichkey and other similar plugins. - -Easy to also add custom completions for easier time. - -## Auto pair - -I don't use any autopair plugins, they are annoying and almost never pair when I need them to and only pair when I don't need them to. - -## Miscelenaous plugins - -This are all mostly for some nihe stuff and don't have a specific category - -- mini.notify : Simple notification -- mini.visits : track visited files and file tagging -- mini.indentscope : highlight current indent scope -- mini.starter : simple dashboard -- mini.sessions : simple session creator -- mini.splitjoin : for easy spliting arguments -- mini.move : add keybindings for moving lines -- mini.icons : add icons support for everything I just named +# Simple af mininal neovim config diff --git a/lua/config/settings.lua b/lua/config/settings.lua index 23a16f2..87b0ff7 100644 --- a/lua/config/settings.lua +++ b/lua/config/settings.lua @@ -15,9 +15,6 @@ vim.opt.splitright = true -- disable line wrapping vim.opt.wrap = false --- enable global statusline -vim.opt.laststatus = 3 - -- setup tabs and indenting vim.opt.expandtab = true vim.opt.smartindent = true diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 5412c21..051662c 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -14,6 +14,15 @@ vim.lsp.config("*", { }, -- make .git always be a root marker root_markers = { '.git' }, + -- setup autocompletion + -- on_attach = function(client, bufnr) + -- vim.lsp.completion.enable(true, client.id, bufnr, { + -- autotrigger = true, + -- convert = function(item) + -- return { abbr = item.label:gsub('%b()', '') } + -- end, + -- }) + -- end, }) -- enable specific language servers @@ -21,7 +30,6 @@ vim.lsp.enable({ "nixd", "lua_ls", "jsonls", - "marksman", }) -- diagnostic settings diff --git a/lua/plugins/mini.lua b/lua/plugins/mini.lua index e91319d..6736966 100644 --- a/lua/plugins/mini.lua +++ b/lua/plugins/mini.lua @@ -140,9 +140,6 @@ miniclue.setup({ -- `z` key { mode = 'n', keys = 'z' }, { mode = 'x', keys = 'z' }, - - -- add in support for built in completion - { mode = 'i', keys = '' }, }, clues = { @@ -153,19 +150,6 @@ miniclue.setup({ miniclue.gen_clues.registers(), miniclue.gen_clues.windows(), miniclue.gen_clues.z(), - -- add some clues to custom stuff - { mode = "n", keys = "f", desc = "Find" }, - { mode = "n", keys = "fg", desc = "Git" }, - { mode = "n", keys = "l", desc = "Lsp" }, - { mode = "n", keys = "s", desc = "Treesitter" }, - { mode = "n", keys = "v", desc = "Visits" }, - - -- built in completion - { mode = 'i', keys = '', desc = 'File names' }, - { mode = 'i', keys = '', desc = 'Whole lines' }, - { mode = 'i', keys = '', desc = 'Omni completion' }, - { mode = 'i', keys = '', desc = 'Spelling suggestions' }, - { mode = 'i', keys = '', desc = "With 'completefunc'" }, }, })