|
@@ -70,95 +70,43 @@ To activate other plugins and language features use the `lv-config.lua` file pro
|
|
|
Example:
|
|
|
|
|
|
```lua
|
|
|
--- O is the global options object
|
|
|
-
|
|
|
--- THESE ARE EXAMPLE CONFIGS FEEL FREE TO CHANGE TO WHATEVER YOU WANT
|
|
|
-- general
|
|
|
--- O.format_on_save = false -- to disbale formatting on save
|
|
|
--- O.lint_on_save = false -- to disable formatting on save
|
|
|
-O.completion.autocomplete = true
|
|
|
-O.colorscheme = 'spacegray'
|
|
|
-
|
|
|
--- keymappings
|
|
|
-O.leader = "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', '<PageUp>'},
|
|
|
- {']d', '<PageDown>'},
|
|
|
-}
|
|
|
--- if you just want to augment the existing ones then use the utility function
|
|
|
-require("lv-utils").add_keymap_insert_mode({ silent = true }, {
|
|
|
- { "<C-s>", ":w<cr>" },
|
|
|
- { "<C-c>", "<ESC>" }
|
|
|
-})
|
|
|
+lvim.format_on_save = true
|
|
|
+lvim.lint_on_save = true
|
|
|
+lvim.colorscheme = "darkplus"
|
|
|
|
|
|
--- you can also use the native vim way directly
|
|
|
-vim.api.nvim_set_keymap("i", "<C-Space>", "compe#complete()", { noremap = true, silent = true, expr = true })
|
|
|
+lvim.builtin.compe.autocomplete = true
|
|
|
|
|
|
--- After changing plugin config it is recommended to run :PackerCompile
|
|
|
-O.plugin.dashboard.active = true
|
|
|
-O.plugin.terminal.active = true
|
|
|
+-- keymappings
|
|
|
+lvim.leader = "space"
|
|
|
+
|
|
|
+-- After changing plugin config exit and reopen LunarVim, Run :PackerInstall :PackerCompile
|
|
|
+lvim.builtin.dashboard.active = true
|
|
|
+lvim.builtin.terminal.active = true
|
|
|
|
|
|
-- if you don't want all the parsers change this to a table of the ones you want
|
|
|
-O.treesitter.ensure_installed = "all"
|
|
|
-O.treesitter.ignore_install = {"haskell"}
|
|
|
-O.treesitter.highlight.enabled = true
|
|
|
-
|
|
|
--- you can set a custom on_attach function that will be used for all the language servers
|
|
|
--- See <https://github.com/neovim/nvim-lspconfig#keybindings-and-completion>
|
|
|
--- O.lsp.on_attach_callback = function(client, bufnr)
|
|
|
--- local function buf_set_option(...)
|
|
|
--- vim.api.nvim_buf_set_option(bufnr, ...)
|
|
|
--- end
|
|
|
--- --Enable completion triggered by <c-x><c-o>
|
|
|
--- buf_set_option("omnifunc", "v:lua.vim.lsp.omnifunc")
|
|
|
--- end
|
|
|
-
|
|
|
--- lua
|
|
|
-O.lang.lua.autoformat = false
|
|
|
-O.lang.lua.formatter = 'lua-format'
|
|
|
-
|
|
|
--- javascript
|
|
|
-O.lang.tsserver.formatter = 'prettier'
|
|
|
-O.lang.tsserver.linter = nil
|
|
|
-O.lang.tsserver.autoformat = 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"
|
|
|
+lvim.builtin.treesitter.ensure_installed = "maintained"
|
|
|
+lvim.builtin.treesitter.ignore_install = { "haskell" }
|
|
|
+lvim.builtin.treesitter.highlight.enabled = true
|
|
|
+
|
|
|
+lvim.lang.python.formatter.exe = "black"
|
|
|
+lvim.lang.python.linters = ""
|
|
|
+
|
|
|
+lvim.lsp.diagnostics.virtual_text = false
|
|
|
|
|
|
-- Additional Plugins
|
|
|
--- O.plugins = {
|
|
|
--- {"folke/tokyonight.nvim"},
|
|
|
--- {
|
|
|
--- "ray-x/lsp_signature.nvim",
|
|
|
--- config = function()
|
|
|
--- require"lsp_signature".on_attach()
|
|
|
--- end,
|
|
|
--- event = "InsertEnter"
|
|
|
--- },
|
|
|
--- }
|
|
|
-
|
|
|
--- }
|
|
|
+lvim.plugins = {
|
|
|
+ {"lunarvim/colorschemes"},
|
|
|
+ {"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.autocommands = {{ "BufWinEnter", "*", "echo \"hi again\""}}
|
|
|
-
|
|
|
--- TODO Additional Leader bindings for WhichKey
|
|
|
+-- lvim.autocommands = {{ "BufWinEnter", "*", "echo \"hi again\""}}
|
|
|
|
|
|
--- To link your init.vim (until you find Lua replacements)
|
|
|
--- vim.cmd('source ' .. CONFIG_PATH .. '/lua/lv-user/init.vim')
|
|
|
```
|
|
|
|
|
|
In case you want to see all the settings inside LunarVim, run the following:
|