diff options
author | LostNeophyte <[email protected]> | 2022-11-29 15:25:35 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2022-11-29 15:25:35 +0100 |
commit | 13ac2700200aadb187f6339b0429b99ea681e002 (patch) | |
tree | 692c2bbdfd20ef3eb51a8fa04b672019de81c46d /utils/installer/config.example.lua | |
parent | f5454fb86087f9f7372f3be7af797d9dc0297d6e (diff) |
refactor: simplify example config (#3519)
* fix: update default config
* refactor: simplify default config
* refactor: apply code review suggestions
Diffstat (limited to 'utils/installer/config.example.lua')
-rw-r--r-- | utils/installer/config.example.lua | 144 |
1 files changed, 34 insertions, 110 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() |