--[[ O 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 -- general O.format_on_save = true O.lint_on_save = true O.completion.autocomplete = true O.colorscheme = "spacegray" O.default_options.wrap = true O.default_options.timeoutlen = 100 -- keymappings O.keys.leader_key = "space" -- overwrite the key-mappings provided by LunarVim for any mode, or leave it empty to keep them -- O.keys.normal_mode = { -- Page down/up -- {'[d', ''}, -- {']d', ''}, -- -- Navigate buffers -- {'', ':bnext'}, -- {'', ':bprevious'}, -- } -- if you just want to augment the existing ones then use the utility function -- require("lv-utils").add_keymap_insert_mode({ silent = true }, { -- { "", ":w" }, -- { "", "" }, -- }) -- you can also use the native vim way directly -- vim.api.nvim_set_keymap("i", "", "compe#complete()", { noremap = true, silent = true, expr = true }) -- TODO: User Config for predefined plugins -- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile O.plugin.dashboard.active = true O.plugin.terminal.active = true O.plugin.zen.active = false O.plugin.zen.window.height = 0.90 O.plugin.nvimtree.side = "left" O.plugin.nvimtree.show_icons.git = 0 -- if you don't want all the parsers change this to a table of the ones you want O.treesitter.ensure_installed = {} O.treesitter.ignore_install = { "haskell" } O.treesitter.highlight.enabled = true -- python O.lang.python.diagnostics.virtual_text = true O.lang.python.analysis.use_library_code_types = true -- To change default formatter from yapf to black -- O.lang.python.formatter.exe = "black" -- O.lang.python.formatter.args = {"-"} -- To change enabled linters -- https://github.com/mfussenegger/nvim-lint#available-linters -- O.lang.python.linters = { "flake8", "pylint", "mypy", ... } -- go -- To change default formatter from gofmt to goimports -- O.lang.formatter.go.exe = "goimports" -- javascript O.lang.tsserver.linter = nil -- latex -- O.lang.latex.auto_save = false -- O.lang.latex.ignore_errors = { } -- Additional Plugins -- O.user_plugins = { -- {"folke/tokyonight.nvim"}, { -- "ray-x/lsp_signature.nvim", -- config = function() require"lsp_signature".on_attach() end, -- event = "InsertEnter" -- } -- } -- Autocommands (https://neovim.io/doc/user/autocmd.html) -- O.user_autocommands = {{ "BufWinEnter", "*", "echo \"hi again\""}} -- Additional Leader bindings for WhichKey -- O.user_which_key = { -- A = { -- name = "+Custom Leader Keys", -- a = { "echo 'first custom command'", "Description for a" }, -- b = { "echo 'second custom command'", "Description for b" }, -- }, -- }