- Simple, yet powerful, always on develop.
- Lazy load all plugins if it could, to optimize startup time to the shortest possible time, right now on my PC, the startup time are less then 30ms.
- Avoid sidebar, focus on editing. personally, I prefer to use float window, sidebar buffer just distract me a lot.
- Avoid extra UI plugins. In common scenarios, mini.notify and mini.pick with
vim.ui.select()
wrapper already done well enough for notify and float window. - Provide out-of-box experience for web development.
- AI powered.
Note
This configuration only guaranteed to be compatible with the latest stable version.
I'm not using mason.nvim now, The LSP package should managed by you own system.
To make olimorris/codecompanion.nvim work,
you need to setup your own api key in lua/plugin/extra.lua.
To get all the custom keymap clue you need, just press space
.
Install requires Neovim 0.10+. Always review the code before installing a configuration.
Clone the repository and install the plugins:
git clone git@github.com:wenjinnn/wenvim ~/.config/wenjinnn/wenvim
Open Neovim with this config:
NVIM_APPNAME=wenjinnn/wenvim nvim
plugin vim custom autocmd keymap option and more
lua/lsp LSP config and settings
- define a key-value pair table at
<lspname>/init.lua
, attribute in table will autoload by particular lsp - on_attach function in
<lspname>/init.lua
will auto execute by particular lsp, with a setup warpper
lua/plugin plugins with particular settings and keymap
lua/util common utils
after just some filetype settings
NVIM_MINI_DEPS_SNAP
mini.deps snap path, if not set, fallback to mini.deps default setting
TELESCOPE_FILE_IGNORE_PATTERNS
telescope.nvim file ignore patterns, if not set, the pattern is { "^.git/", "^node_modules/" }
NVIM_SPELLFILE
nvim spell file location
DAP_PROJECT_NAME
nvim-dap config for dap configuration projectName
DAP_HOST
nvim-dap config for setting host, most used at remote debug situations.
DAP_HOST_PORT
like above, but for host port
JAVA_HOME
fallback java home
JAVA_8_HOME
java 8 home
JAVA_17_HOME
java 17 home
JAVA_21_HOME
java 21 home
JDTLS_MAVEN_SETTINGS
jdtls maven user settings.xml path
JDTLS_JAVA_HOME
jdtls java home, if not set, fallback to JAVA_21_HOME
JAVA_TEST_PATH
path to vscode-java-test jars
JAVA_DEBUG_PATH
path to vscode-java-debug jars
LOMBOK_PATH
path to lombok java agent jar
JDTLS_XMX
jdtls xmx jvm arg value
JDTLS_DAP_VMARGS
jdtls dap vm args
SONARLINT_PATH
path to sonarlint language server jars
VUE_LANGUAGE_SERVER_PATH
path to vue language server
NVIM_AI_ADAPTER
ai adapter for codecompanion.nvim, default to ollama
NVIM_OLLAMA_MODEL
ollama model to use for codecompanion.nvim, default to llama3.2
- ripgrep depend by many plugin.
- All the LSP package that configured in lua/lsp/init.lua, if you're going to use.
Part of this readme was generated by Dotfyle