Handcrafted Neovim setup for the ultimate CLI dev experience.
user
module!Most importantly:
Built for extending: keycodex has a easy to understand config structure that promotes personalization, so go ahead, bring your keybindings, functions and plugins over, and truly make keycodex: Your Personalized Development Environment!
Before you begin, ensure you have met the following requirements:
neovim
To install keycodex
clone the repo and setup the symlink
git clone https://github.com/S4NKALP/keycodex
On Linux and Mac
ln -sfnv $PWD/keycodex $HOME/.config/nvim
On Windows Powershell
New-Item -ItemType SymbolicLink -Path "$env:LOCALAPPDATA\nvim" -Target "$PWD\keycodex" -Force
keycodex
supports a user module where you can store your custom configs and override any default configs.
To use custom configs create the file lua/user/init.lua
in keycodex, with the following structure:
-- lua/user/init.lua
local user = {
auto_install = true, -- enable auto install of LSPs, Treesitter parsers etc.
user_lsp_servers = {
-- Auto installed LSPs defined by user
},
user_null_ls_sources = {
-- Auto installed Null LS sources defined by user
},
user_treesitter_parsers = {
-- Auto installed Treesitter parsers defined by user
},
enable_db_explorer = false, -- enable dbee.nvim support
enable_debugger = false, -- enable dap.nvim support
enable_test_runner = false, -- enable neotest.nvim support
enable_trainer = false, -- enable hardtime.nvim support
enable_wakatime = false, -- enable wakatime.nvim support
enable_smear_cursor = false, -- enable smear-cursor.nvim support
user_plugins = {
-- Add your lazy plugin spec here
},
user_keybindings = {
-- Add your which-key bindings here
}
}
return user
You can add and require
any other custom modules and configurations you want in this file.
user
module is not part of the repo, you can set up user
module as a separate git repository while continuing to receive keycodex
updates.
Files in lua/core control the core of neovim:
Apart from core/keys most keybindings are configured using which-key
You can check out the plugins list file file to see the plugins that are included in keycodex.
This project builds upon nvim2k by 2KAbhishek, enhancing it with additional features and optimizations.