SuXYIO's Neovim config.
Screenshots
Editing with tree view, telescope on, kanagawa-dragon colorscheme.
Editing source checking for function definition, outline on, duskfox colorscheme.
Editing with lazygit, tree view on, kanagawa-dragon colorscheme.
Editing source with code diagnostic on, catppuccin-mocha colorscheme.
Manager: Lazy.nvim
Plugin list
Plugin | Description |
---|---|
Autopairs | Better insert experience for paired characters |
Bufferline | Provide bufferline |
Cmp | Provide completion |
Codeium | Provide AI assist |
Dashboard | Startup dashboard |
LazyGit | Provide LazyGit integration |
LspSaga | Better LSP experience |
Lualine | Provide fancy lines and tabs |
Mason | Install LSPs |
MarkdownPreview | Preview markdown files |
Notify | Notice UI |
2048 | Play 2048 |
NvimCmp | Provide completion |
NvimTree | Provide tree view |
Telescope | Find files |
TodoComments | Highlight todo comments |
Transparent | Transparent background |
Wilder | Provide cmdline completion |
Manager: Mason.nvim
The autoload feature in Mason is enabled, just install the LSPs needed, no need to config every single one.
Keymap list
Note: The single characters here are all capital, which represents the key on the keyboard, capital key presses will be represented with Shift.
Mode | Key | Map | Description |
---|---|---|---|
/ | ; | leader |
Leader key |
N | Cmd-C | "+y |
Copy to system clipboard |
N | Cmd-V | "+P |
Paste from system clipboard in normal mode |
I | Cmd-V | <Esc>"+P |
Paste from system clipboard in insert mode |
N | Leader-Q | <CMD>q<CR> |
Quit |
N | Leader-WW | <CMD>w<CR> |
Save |
N | Leader-WQ | <CMD>wq<CR> |
Save & Quit |
I | JK | <Esc> |
Escape from insert mode |
N | Space | : |
Go to command mode |
N | Ctrl-K | ddkP |
Move line up |
N | Ctrl-J | ddp |
Move line down |
N | Esc | <CMD>noh<CR> |
Remove highlight (clear search highlight) |
N | Leader-J | <CMD>bn<CR> |
Switch next buffer |
N | Leader-Shift-J | <CMD>bp<CR> |
Switch previous buffer |
N | Leader-K | <CMD>bd<CR> |
Delete buffer |
N | Leader-Shift-K | <CMD>bd!<CR> |
Force delete buffer |
N | Ctrl-L | <CMD>terminal<CR> |
Open terminal |
N | LeaderW | <C-w> |
Window control |
N | LeaderZ | <CMD>set spell!<CR> |
Toggle spellcheck |
T | JK | <C-\\><C-n> |
Escape from terminal mode |
Plugin | Mode | Key | Map | Description |
---|---|---|---|---|
Codeium | N | Leader-N | <CMD>Codeium Enable<CR> |
Enable Codeium |
LazyGit | N | Leader-D | <CMD>LazyGit<CR> |
Toggle LazyGit |
LspSaga | N | [E | <CMD>Lspsaga diagnostic_jump_next<CR> |
Jump to next diagnostic |
LspSaga | N | [Shift-E | <CMD>Lspsaga diagnostic_jump_next<CR> |
Jump to previous diagnostic |
LspSaga | N | Leader-A | <CMD>Lspsaga code_action<CR> |
Show actions of code |
LspSaga | N | Leader-S | <CMD>Lspsaga outline<CR> |
Show outline(structure) of code |
LspSaga | N | Leader-V | <CMD>Lspsaga peek_definition<CR> |
Peek definition |
LspSaga | N | Leader-C | <CMD>Lspsaga show_line_diagnostics<CR> |
Show line diagnostics |
MarkdownPreview | N | Leader-X | <CMD>MarkdownPreviewToggle<CR> |
Toggle markdown preview |
NvimCmp | I | Enter | cmp.mapping.confirm({select = true}) |
Confirm completion |
NvimCmp | I | Esc | cmp.mapping.abort() |
Abort completion |
NvimCmp | I | Leader-Space | cmp.mapping.complete() |
Start completion |
NvimTree | N | Leader-F | <CMD>NvimTreeToggle<CR> |
Toggle tree view |
Telescope | N | ff | <CMD>Telescope find_files<CR> |
Telescope find files |
TodoComments | N | [T | require("todo-comments").jump_next() |
Jump to next todo |
Transparent | N | T | <CMD>TransparentToggle<CR> |
Transparent toggle |
Colorscheme |
---|
Catppuccin |
Kanagawa |
Nightfox |
The colorscheme
, background
, lineseps
can be different on every startup over a certain rule.
(random
, time
, random
is default)
See lua/theme.lua
.
Nerdfont is needed to show properly. I personally like JetbrainsMono.
Self-defined command list
Command | Operation | Description |
---|---|---|
Hex |
%!xxd |
Convert buffer raw to hex code |
Dehex |
%!xxd -r |
Convert buffer hex code to raw |
Uses the built-in SpellCheck
, enables when filetype is text
or markdown
.
The client Neovide is supported, see lua/client.lua
.