diff options
Diffstat (limited to 'utils/installer')
| -rw-r--r-- | utils/installer/config.example.lua | 144 | ||||
| -rw-r--r-- | utils/installer/config_win.example.lua | 137 | 
2 files changed, 68 insertions, 213 deletions
| diff --git a/utils/installer/config.example.lua b/utils/installer/config.example.lua index 65415434..84f369c4 100644 --- a/utils/installer/config.example.lua +++ b/utils/installer/config.example.lua @@ -1,118 +1,62 @@  --[[ -lvim is the global options object - -Linters should be -filled in as strings with either -a global executable or a path to -an executable + THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT + `lvim` is the global options object  ]] --- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT + +-- vim options +vim.opt.shiftwidth = 2 +vim.opt.tabstop = 2 +vim.opt.relativenumber = true  -- general -lvim.log.level = "warn" -lvim.format_on_save.enabled = false -lvim.colorscheme = "lunar" +lvim.log.level = "info" +lvim.format_on_save = { +  enabled = true, +  pattern = "*.lua", +  timeout = 1000, +}  -- to disable icons and use a minimalist setup, uncomment the following  -- lvim.use_icons = false --- keymappings [view all the defaults by pressing <leader>Lk] +-- keymappings <https://www.lunarvim.org/docs/configuration/keybindings>  lvim.leader = "space"  -- add your own keymapping  lvim.keys.normal_mode["<C-s>"] = ":w<cr>" +  -- lvim.keys.normal_mode["<S-l>"] = ":BufferLineCycleNext<CR>"  -- lvim.keys.normal_mode["<S-h>"] = ":BufferLineCyclePrev<CR>" --- unmap a default keymapping --- vim.keymap.del("n", "<C-Up>") --- override a default keymapping --- lvim.keys.normal_mode["<C-q>"] = ":q<cr>" -- or vim.keymap.set("n", "<C-q>", ":q<cr>" ) - --- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode. --- we use protected-mode (pcall) just in case the plugin wasn't loaded yet. --- local _, actions = pcall(require, "telescope.actions") --- lvim.builtin.telescope.defaults.mappings = { ---   -- for input mode ---   i = { ---     ["<C-j>"] = actions.move_selection_next, ---     ["<C-k>"] = actions.move_selection_previous, ---     ["<C-n>"] = actions.cycle_history_next, ---     ["<C-p>"] = actions.cycle_history_prev, ---   }, ---   -- for normal mode ---   n = { ---     ["<C-j>"] = actions.move_selection_next, ---     ["<C-k>"] = actions.move_selection_previous, ---   }, --- } --- Change theme settings --- lvim.builtin.theme.options.dim_inactive = true --- lvim.builtin.theme.options.style = "storm" - --- Use which-key to add extra bindings with the leader-key prefix +-- -- Use which-key to add extra bindings with the leader-key prefix +-- lvim.builtin.which_key.mappings["W"] = { "<cmd>noautocmd w<cr>", "Save without formatting" }  -- lvim.builtin.which_key.mappings["P"] = { "<cmd>Telescope projects<CR>", "Projects" } --- lvim.builtin.which_key.mappings["t"] = { ---   name = "+Trouble", ---   r = { "<cmd>Trouble lsp_references<cr>", "References" }, ---   f = { "<cmd>Trouble lsp_definitions<cr>", "Definitions" }, ---   d = { "<cmd>Trouble document_diagnostics<cr>", "Diagnostics" }, ---   q = { "<cmd>Trouble quickfix<cr>", "QuickFix" }, ---   l = { "<cmd>Trouble loclist<cr>", "LocationList" }, ---   w = { "<cmd>Trouble workspace_diagnostics<cr>", "Workspace Diagnostics" }, --- } --- TODO: User Config for predefined plugins --- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile +-- -- Change theme settings +-- lvim.colorscheme = "lunar" + +-- After changing plugin config exit and reopen LunarVim, Run :PackerSync  lvim.builtin.alpha.active = true  lvim.builtin.alpha.mode = "dashboard"  lvim.builtin.terminal.active = true  lvim.builtin.nvimtree.setup.view.side = "left"  lvim.builtin.nvimtree.setup.renderer.icons.show.git = false --- if you don't want all the parsers change this to a table of the ones you want -lvim.builtin.treesitter.ensure_installed = { -  "bash", -  "c", -  "javascript", -  "json", -  "lua", -  "python", -  "typescript", -  "tsx", -  "css", -  "rust", -  "java", -  "yaml", -} - -lvim.builtin.treesitter.ignore_install = { "haskell" } -lvim.builtin.treesitter.highlight.enable = true +-- Automatically install missing parsers when entering buffer +lvim.builtin.treesitter.auto_install = true --- generic LSP settings +-- lvim.builtin.treesitter.ignore_install = { "haskell" } --- -- make sure server will always be installed even if the server is in skipped_servers list --- lvim.lsp.installer.setup.ensure_installed = { ---     "sumneko_lua", ---     "jsonls", --- } --- -- change UI setting of `LspInstallInfo` --- -- see <https://github.com/williamboman/nvim-lsp-installer#default-configuration> --- lvim.lsp.installer.setup.ui.check_outdated_servers_on_open = false --- lvim.lsp.installer.setup.ui.border = "rounded" --- lvim.lsp.installer.setup.ui.keymaps = { ---     uninstall_server = "d", ---     toggle_server_expand = "o", --- } +-- -- generic LSP settings <https://www.lunarvim.org/docs/languages#lsp-support> --- ---@usage disable automatic installation of servers +-- --- disable automatic installation of servers  -- lvim.lsp.installer.setup.automatic_installation = false --- ---configure a server manually. !!Requires `:LvimCacheReset` to take effect!! --- ---see the full default list `:lua print(vim.inspect(lvim.lsp.automatic_configuration.skipped_servers))` +-- ---configure a server manually. IMPORTANT: Requires `:LvimCacheReset` to take effect +-- ---see the full default list `:lua =lvim.lsp.automatic_configuration.skipped_servers`  -- vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "pyright" })  -- local opts = {} -- check the lspconfig documentation for a list of all possible options  -- require("lvim.lsp.manager").setup("pyright", opts) --- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. !!Requires `:LvimCacheReset` to take effect!! +-- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. IMPORTANT: Requires `:LvimCacheReset` to take effect  -- ---`:LvimInfo` lists which server(s) are skipped for the current filetype  -- lvim.lsp.automatic_configuration.skipped_servers = vim.tbl_filter(function(server)  --   return server ~= "emmet_ls" @@ -128,41 +72,26 @@ lvim.builtin.treesitter.highlight.enable = true  --   buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")  -- end --- -- set a formatter, this will override the language server formatting capabilities (if it exists) +-- -- linters and formatters <https://www.lunarvim.org/docs/languages#lintingformatting>  -- local formatters = require "lvim.lsp.null-ls.formatters"  -- formatters.setup { ---   { command = "black", filetypes = { "python" } }, ---   { command = "isort", filetypes = { "python" } }, +--   { command = "stylua" },  --   { ---     -- each formatter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration  --     command = "prettier", ---     ---@usage arguments to pass to the formatter ---     -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}`  --     extra_args = { "--print-with", "100" }, ---     ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports.  --     filetypes = { "typescript", "typescriptreact" },  --   },  -- } - --- -- set additional linters  -- local linters = require "lvim.lsp.null-ls.linters"  -- linters.setup {  --   { command = "flake8", filetypes = { "python" } },  --   { ---     -- each linter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration  --     command = "shellcheck", ---     ---@usage arguments to pass to the formatter ---     -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` ---     extra_args = { "--severity", "warning" }, ---   }, ---   { ---     command = "codespell", ---     ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. ---     filetypes = { "javascript", "python" }, +--     args = { "--severity", "warning" },  --   },  -- } --- Additional Plugins +-- -- Additional Plugins <https://www.lunarvim.org/docs/plugins#user-plugins>  -- lvim.plugins = {  --     {  --       "folke/trouble.nvim", @@ -170,12 +99,7 @@ lvim.builtin.treesitter.highlight.enable = true  --     },  -- } --- Autocommands (https://neovim.io/doc/user/autocmd.html) --- vim.api.nvim_create_autocmd("BufEnter", { ---   pattern = { "*.json", "*.jsonc" }, ---   -- enable wrap mode for json files only ---   command = "setlocal wrap", --- }) +-- -- Autocommands (`:help autocmd`) <https://neovim.io/doc/user/autocmd.html>  -- vim.api.nvim_create_autocmd("FileType", {  --   pattern = "zsh",  --   callback = function() diff --git a/utils/installer/config_win.example.lua b/utils/installer/config_win.example.lua index 4dfd6a3c..a003f171 100644 --- a/utils/installer/config_win.example.lua +++ b/utils/installer/config_win.example.lua @@ -25,109 +25,60 @@ vim.g.clipboard = {    },  } +-- vim options +vim.opt.shiftwidth = 2 +vim.opt.tabstop = 2 +vim.opt.relativenumber = true +  -- general -lvim.log.level = "warn" -lvim.format_on_save.enabled = false -lvim.colorscheme = "lunar" +lvim.log.level = "info" +lvim.format_on_save = { +  enabled = true, +  pattern = "*.lua", +  timeout = 1000, +}  -- to disable icons and use a minimalist setup, uncomment the following  -- lvim.use_icons = false --- keymappings [view all the defaults by pressing <leader>Lk] +-- keymappings <https://www.lunarvim.org/docs/configuration/keybindings>  lvim.leader = "space"  -- add your own keymapping  lvim.keys.normal_mode["<C-s>"] = ":w<cr>" +  -- lvim.keys.normal_mode["<S-l>"] = ":BufferLineCycleNext<CR>"  -- lvim.keys.normal_mode["<S-h>"] = ":BufferLineCyclePrev<CR>" --- unmap a default keymapping --- vim.keymap.del("n", "<C-Up>") --- override a default keymapping --- lvim.keys.normal_mode["<C-q>"] = ":q<cr>" -- or vim.keymap.set("n", "<C-q>", ":q<cr>" ) - --- Change Telescope navigation to use j and k for navigation and n and p for history in both input and normal mode. --- we use protected-mode (pcall) just in case the plugin wasn't loaded yet. --- local _, actions = pcall(require, "telescope.actions") --- lvim.builtin.telescope.defaults.mappings = { ---   -- for input mode ---   i = { ---     ["<C-j>"] = actions.move_selection_next, ---     ["<C-k>"] = actions.move_selection_previous, ---     ["<C-n>"] = actions.cycle_history_next, ---     ["<C-p>"] = actions.cycle_history_prev, ---   }, ---   -- for normal mode ---   n = { ---     ["<C-j>"] = actions.move_selection_next, ---     ["<C-k>"] = actions.move_selection_previous, ---   }, --- } - --- Change theme settings --- lvim.builtin.theme.options.dim_inactive = true --- lvim.builtin.theme.options.style = "storm" --- Use which-key to add extra bindings with the leader-key prefix +-- -- Use which-key to add extra bindings with the leader-key prefix +-- lvim.builtin.which_key.mappings["W"] = { "<cmd>noautocmd w<cr>", "Save without formatting" }  -- lvim.builtin.which_key.mappings["P"] = { "<cmd>Telescope projects<CR>", "Projects" } --- lvim.builtin.which_key.mappings["t"] = { ---   name = "+Trouble", ---   r = { "<cmd>Trouble lsp_references<cr>", "References" }, ---   f = { "<cmd>Trouble lsp_definitions<cr>", "Definitions" }, ---   d = { "<cmd>Trouble document_diagnostics<cr>", "Diagnostics" }, ---   q = { "<cmd>Trouble quickfix<cr>", "QuickFix" }, ---   l = { "<cmd>Trouble loclist<cr>", "LocationList" }, ---   w = { "<cmd>Trouble workspace_diagnostics<cr>", "Workspace Diagnostics" }, --- } --- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile +-- -- Change theme settings +-- lvim.colorscheme = "lunar" + +-- After changing plugin config exit and reopen LunarVim, Run :PackerSync  lvim.builtin.alpha.active = true  lvim.builtin.alpha.mode = "dashboard" -lvim.builtin.terminal.active = false --- lvim.builtin.terminal.shell = "pwsh.exe -NoLogo" - --- nvim-tree has some performance issues on windows, see kyazdani42/nvim-tree.lua#549 -lvim.builtin.nvimtree.setup.diagnostics.enable = nil -lvim.builtin.nvimtree.setup.filters.custom = nil -lvim.builtin.nvimtree.setup.git.enable = nil -lvim.builtin.nvimtree.setup.update_cwd = nil -lvim.builtin.nvimtree.setup.update_focused_file.update_cwd = nil +lvim.builtin.terminal.active = true  lvim.builtin.nvimtree.setup.view.side = "left" -lvim.builtin.nvimtree.setup.renderer.highlight_git = nil -lvim.builtin.nvimtree.setup.renderer.icons.show.git = nil +lvim.builtin.nvimtree.setup.renderer.icons.show.git = false --- if you don't want all the parsers change this to a table of the ones you want -lvim.builtin.treesitter.ensure_installed = { -  "c", -  "lua", -} - -lvim.builtin.treesitter.ignore_install = { "haskell" } -lvim.builtin.treesitter.highlight.enable = true +-- Automatically install missing parsers when entering buffer +lvim.builtin.treesitter.auto_install = true --- generic LSP settings +-- lvim.builtin.treesitter.ignore_install = { "haskell" } --- -- make sure server will always be installed even if the server is in skipped_servers list --- lvim.lsp.installer.setup.ensure_installed = { ---     "sumneko_lua", ---     "jsonls", --- } --- -- change UI setting of `LspInstallInfo` --- -- see <https://github.com/williamboman/nvim-lsp-installer#default-configuration> --- lvim.lsp.installer.setup.ui.check_outdated_servers_on_open = false --- lvim.lsp.installer.setup.ui.border = "rounded" --- lvim.lsp.installer.setup.ui.keymaps = { ---     uninstall_server = "d", ---     toggle_server_expand = "o", --- } +-- -- generic LSP settings <https://www.lunarvim.org/docs/languages#lsp-support> --- ---@usage disable automatic installation of servers +-- --- disable automatic installation of servers  -- lvim.lsp.installer.setup.automatic_installation = false --- ---configure a server manually. !!Requires `:LvimCacheReset` to take effect!! --- ---see the full default list `:lua print(vim.inspect(lvim.lsp.automatic_configuration.skipped_servers))` +-- ---configure a server manually. IMPORTANT: Requires `:LvimCacheReset` to take effect +-- ---see the full default list `:lua =lvim.lsp.automatic_configuration.skipped_servers`  -- vim.list_extend(lvim.lsp.automatic_configuration.skipped_servers, { "pyright" })  -- local opts = {} -- check the lspconfig documentation for a list of all possible options  -- require("lvim.lsp.manager").setup("pyright", opts) --- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. !!Requires `:LvimCacheReset` to take effect!! +-- ---remove a server from the skipped list, e.g. eslint, or emmet_ls. IMPORTANT: Requires `:LvimCacheReset` to take effect  -- ---`:LvimInfo` lists which server(s) are skipped for the current filetype  -- lvim.lsp.automatic_configuration.skipped_servers = vim.tbl_filter(function(server)  --   return server ~= "emmet_ls" @@ -143,41 +94,26 @@ lvim.builtin.treesitter.highlight.enable = true  --   buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")  -- end --- -- set a formatter, this will override the language server formatting capabilities (if it exists) +-- -- linters and formatters <https://www.lunarvim.org/docs/languages#lintingformatting>  -- local formatters = require "lvim.lsp.null-ls.formatters"  -- formatters.setup { ---   { command = "black", filetypes = { "python" } }, ---   { command = "isort", filetypes = { "python" } }, +--   { command = "stylua" },  --   { ---     -- each formatter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration  --     command = "prettier", ---     ---@usage arguments to pass to the formatter ---     -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}`  --     extra_args = { "--print-with", "100" }, ---     ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports.  --     filetypes = { "typescript", "typescriptreact" },  --   },  -- } - --- -- set additional linters  -- local linters = require "lvim.lsp.null-ls.linters"  -- linters.setup {  --   { command = "flake8", filetypes = { "python" } },  --   { ---     -- each linter accepts a list of options identical to https://github.com/jose-elias-alvarez/null-ls.nvim/blob/main/doc/BUILTINS.md#Configuration  --     command = "shellcheck", ---     ---@usage arguments to pass to the formatter ---     -- these cannot contain whitespaces, options such as `--line-width 80` become either `{'--line-width', '80'}` or `{'--line-width=80'}` ---     extra_args = { "--severity", "warning" }, ---   }, ---   { ---     command = "codespell", ---     ---@usage specify which filetypes to enable. By default a providers will attach to all the filetypes it supports. ---     filetypes = { "javascript", "python" }, +--     args = { "--severity", "warning" },  --   },  -- } --- Additional Plugins +-- -- Additional Plugins <https://www.lunarvim.org/docs/plugins#user-plugins>  -- lvim.plugins = {  --     {  --       "folke/trouble.nvim", @@ -185,12 +121,7 @@ lvim.builtin.treesitter.highlight.enable = true  --     },  -- } --- Autocommands (https://neovim.io/doc/user/autocmd.html) --- vim.api.nvim_create_autocmd("BufEnter", { ---   pattern = { "*.json", "*.jsonc" }, ---   -- enable wrap mode for json files only ---   command = "setlocal wrap", --- }) +-- -- Autocommands (`:help autocmd`) <https://neovim.io/doc/user/autocmd.html>  -- vim.api.nvim_create_autocmd("FileType", {  --   pattern = "zsh",  --   callback = function() | 
