--[[ 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 O.leader_key = " " -- 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 = "maintained" O.treesitter.ignore_install = { "haskell" } O.treesitter.highlight.enabled = true -- python -- O.lang.python.linter = 'flake8' O.lang.python.isort = true 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 -- rust -- O.lang.rust.rust_tools = true -- O.lang.rust.formatter = { -- exe = "rustfmt", -- args = {"--emit=stdout", "--edition=2018"}, -- } -- scala -- O.lang.scala.metals.active = true -- O.lang.scala.metals.server_version = "0.10.2+33-c6441eb4-SNAPSHOT", --LaTeX -- Options: https://github.com/latex-lsp/texlab/blob/master/docs/options.md O.lang.latex.active = true O.lang.latex.aux_directory = "." O.lang.latex.bibtex_formatter = "texlab" O.lang.latex.build.args = { "-pdf", "-interaction=nonstopmode", "-synctex=1", "%f" } O.lang.latex.build.executable = "latexmk" O.lang.latex.build.forward_search_after = false O.lang.latex.build.on_save = false O.lang.latex.chktex.on_edit = false O.lang.latex.chktex.on_open_and_save = false O.lang.latex.diagnostics_delay = 300 O.lang.latex.formatter_line_length = 80 O.lang.latex.forward_search.executable = "zathura" O.lang.latex.latex_formatter = "latexindent" O.lang.latex.latexindent.modify_line_breaks = false -- 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" }, -- }, -- }