Skip to content

This is a user configuration for Neovim based on NvChad. Plugins for Go, PHP, Ruby, Rust, Zig, JavaScript, TypeScript, Lua, HTML, CSS, JSON, YAML, Docker are configured.

License

Notifications You must be signed in to change notification settings

sk1t0n/nvchad_config

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nvchad_config

This is a user configuration for Neovim based on NvChad. Plugins for Go, PHP, Ruby, Rust, Zig, JavaScript, TypeScript, Lua, HTML, CSS, JSON, YAML, Docker, Markdown are configured.

⚡ Requirements

🛠️ Installation

Linux/Mac OS (Unix)

Make a backup of your current nvim and shared folder.

mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
mv ~/.local/state/nvim ~/.local/state/nvim.bak
mv ~/.cache/nvim ~/.cache/nvim.bak

Clone the repository.

git clone --depth=1 https://github.com/sk1t0n/nvchad_config ~/.config/nvim
rm -rf ~/.config/nvim/.git

Install Mason packages.

nvim
  • :MasonInstallAll - install all required packages (LSP, Linters, Formatters)
  • :MasonInstall js-debug-adapter, :MasonInstall php-debug-adapter - install debug adapters for JS/TS, PHP
  • go install github.com/nametake/golangci-lint-langserver@latest and :MasonInstall golangcilint - install lint server and client for Go

Windows (Powershell)

Make a backup of your current nvim and nvim-data folder.

Rename-Item -Path $env:LOCALAPPDATA\nvim -NewName $env:LOCALAPPDATA\nvim.bak
Rename-Item -Path $env:LOCALAPPDATA\nvim-data -NewName $env:LOCALAPPDATA\nvim-data.bak

Clone the repository.

git clone --depth=1 https://github.com/sk1t0n/nvchad_config $env:LOCALAPPDATA\nvim
Remove-Item $env:LOCALAPPDATA\nvim\.git -Recurse -Force

Install Mason packages.

nvim
  • :MasonInstallAll - install all required packages (LSP, Linters, Formatters)
  • :MasonInstall js-debug-adapter, :MasonInstall php-debug-adapter - install debug adapters for JS/TS, PHP
  • go install github.com/nametake/golangci-lint-langserver@latest and :MasonInstall golangcilint - install lint server and client for Go

Mappings

WezTerm (.wezterm.lua)

key description
ALT + Enter toggle full screen mode
CTRL + SHIFT + C copy to the clipboard
CTRL + SHIFT + V paste from the clipboard
CTRL + Tab go to the next tab
CTRL + SHIFT + Tab go to the previous tab
CTRL + SHIFT + ALT + N create a new tab
CTRL + SHIFT + ALT + C close the current pane or tab
CTRL + SHIFT + ALT + " create a new vertical pane
CTRL + SHIFT + ALT + # create a new horizontal pane
CTRL + SHIFT + ALT + Left switch to the left pane
CTRL + SHIFT + ALT + Right switch to the right pane
CTRL + SHIFT + ALT + Up switch to the top pane
CTRL + SHIFT + ALT + Down switch to the bottom pane

Neovim

mode key description
n, v <Space>h mappings
n <Space>ww WezTerm run a program with arguments
n <Space>wK WhichKey all keymaps
n <Space>wk WhichKey query lookup (for example <leader>w)
n, v <Space>/ toggle comment
n gc different options for creating comments
n [t previous todo comment
n ]t next todo comment
n <Alt> + <Up> move line up
n <Alt> + <Down> move line down
n <Ctrl> + \ format file if automatic formatting is disabled
i jj <Esc>
i <Ctrl> + b move beginning of line
i <Ctrl> + e move end of line
n, v f, t Flash jump by words (forward search)
n, v F, T Flash jump by words (backward search)
n <Ctrl> + y/u/b Neoscroll back 2/11/23 lines
n <Ctrl> + e/d/f Neoscroll forward 2/11/23 lines
n zt/zz/zb Neoscroll top/center/bottom this line
i <Ctrl> + h or <Left> move left
i <Ctrl> + l or <Right> move right
i <Ctrl> + j or <Down> move down
i <Ctrl> + k or <Up> move up
n <Ctrl> + <Up> decrease window height
n <Ctrl> + <Down> increase window height
n <Ctrl> + <Left> decrease window width
n <Ctrl> + <Right> increase window width
n <Ctrl> + h switch window left
n <Ctrl> + l switch window right
n <Ctrl> + j switch window down
n <Ctrl> + k switch window up
n | add horizontal window (split)
n \ add vertical window (vsplit)
n <Space>e toggle Neotree (? - Neotree Help, Ctrl+p - image preview)
n <Ctrl> + <Shift> + <Up/Down> switch tabs (:tabnew file.txt - open file.txt in a new tab or Neotree t (S - split, s - vsplit), tabs and window splits are saved in the session, but buffers are not (only 1 buffer per window))
n <Space>ss session save
n <Space>sl session load
n <Space>sd session delete
n <Space>q (alternative :q) quit window (closing all windows will close the tab)
n <Space>Q exit Neovim
n <Tab> go to the next buffer in the window
n <Shift> + <Tab> go to the previous buffer in the window
n <Space>c buffer close
n <Space>bc close all buffers except current
n <Space>bC close all buffers (closing all buffers will close the window, but not the tab)
n <Space>n buffer new
n <Ctrl> + s save file
n <Ctrl> + c copy whole file
n, t <Alt> + v toggle vertical terminal
n, t <Alt> + h toggle horizontal terminal
n, t <Alt> + i toggle floating terminal
t <Ctrl> + x escape terminal mode
i <Alt> + [ Codeium previous completion
i <Alt> + ] Codeium next completion
i <Tab> Codeium accept completion
c nn Wilder previous suggestion (<Down> - accept, <Up> - reject)
c mm Wilder next suggestion (<Down> - accept, <Up> - reject)
n <Space>p Mason
n <Space>pm preview markdown in current buffer
n <Space>z Zen Mode
n <Space>g LazyGit
n <Space>fp Telescope find recent projects
n <Space>ff Telescope find files
n <Space>fa Telescope find all files
n <Space>fw Telescope find files by word
n <Space>fb Telescope find buffers
n <Space>fh Telescope help page
n <Space>fm Telescope find marks
n <Space>fo Telescope find old files
n <Space>fz Telescope find in current buffer
n <Space>fc Telescope git commits
n <Space>fs Telescope git status
n <Space>ft Telescope NvChad themes
n <Space>du toggle debug ui
n <Space>db toggle debug breakpoint
n <Space>ds start/stop debug
n <Space>dd disconnect debug
n <Space>di debug step into
n <Space>do debug step over
n <Space>dp debug step out
n gd go to definition
n gD go to declaration
n gi go to implementation
n <Space>xs Trouble toggle symbols
n <Space>xl Trouble toggle LSP definitions, references
n <Space>xd Trouble toggle diagnostics
n [d previous diagnostic
n ]d next diagnostic
n <Space>ld LSP/Linter diagnostic loclist
n <Space>ldf LSP/Linter diagnostic float
n, v <Space>la LSP code action
n <Space>lr LSP references
n <Space>lR LSP rename in buffer
n <Space>lh LSP hover
n <Space>ls LSP signature help
n <Space>lws LSP workspace symbol
n <Space>rb splitting/joining blocks of code
n, v <Space>rr select Refactor
n <Space>tt run the nearest test
n <Space>to displays output of test
n <Space>tf run the current file
n <Space>td run the directory test
n <Space>ts displays test suite structure from project root (r - run test)

About

This is a user configuration for Neovim based on NvChad. Plugins for Go, PHP, Ruby, Rust, Zig, JavaScript, TypeScript, Lua, HTML, CSS, JSON, YAML, Docker are configured.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published