🪐 My Neovim Configuration 🚀
A must-have configuration for Spacemacs users after defecting to Vim
If you want the power of VSCode, the interactivity of Spacemacs, and the text-objects of Vim, I highly recommend you try this configuration.
Key Features
-
Spacemacs operating experience:
a. shortcuts: spacemacs style keyboard shortcuts with which-key,
b. ivy: Telescope like ivy and helm-swoop
c. layers: spacemacs layer abstraction
d. customization: like spacemacs, it can be easily customized by users in particular
e. etc.
-
Looking forward to your continued exploration, there are some screenshots
Get A Taste Of
If you're worried about breaking your current vim configuration but want to try it out for yourself, you can use docker to give it a quick try in an isolated environment:
docker run -it -w /root/.config/nvim yetone/cosmos-nvim nvim
Install
1. Requirements
Neovim 6+
Only Neovim 6.0 and above are supported, please refer to the official installation documentation of Neovim: Install Neovim
Nerd Fonts
Go to Nerd Fonts homepage to download the patched fonts you are currently using.
iTerm2 colorscheme [Optional]
If you are using iTerm2 and expect the iTerm colors to blend well with cosmos-nvim colors, it is highly recommended to install and use this colorscheme for iTerm2.
2. Install my configuration
mv ~/.config/nvim{,.yetone-backup} || true
git clone --depth 1 https://github.com/yetone/cosmos-nvim.git ~/.config/nvim
3. Install your language lsp server in your nvim
For example, if you are writing Python
, you will need to open nvim and run the following command:
:LspInstall python
Custom Configuration
If you want to define your own configuration, you can create a file called .cosmos-nvim.lua
in the $HOME
root directory (the shortchut is leader - f - e - d), for example:
~/.cosmos-nvim.lua
local cosmos = require('core.cosmos')
return {
layers = {
'editor',
'git',
{
'ui',
enable_beacon = false,
enable_smooth_scrolling = false,
},
{
'completion',
tab_complete_copilot_first = false,
},
},
options = {
-- python3_host_prog = '~/.pyenv/versions/nvim-py3/bin/python',
},
before_setup = function()
-- cosmos.add_plugin('wakatime/vim-wakatime')
end,
after_setup = function()
-- cosmos.add_leader_keymapping('n|aw', { '<cmd>WakaTimeToday<cr>', name = 'WakaTime Today' })
end,
}
Note: When you have finished changing the configuration file, always remember to restart nvim and run :PackerSync