My personal .files with chezmoi, tested and works well on macOS (MacBook Pro) and ArchLinux (Intel NUC 8i7HVK)
- Git, if you want to keep syncing with new updates
- chezmoi
- Neovim, or Vim version 8.0+, with python supports
- LazyVim: the plugin manager for Vim
- delta: for Git diff
- oh-my-zsh
- ctags (for tags generation)
# init
chezmoi init https://github.com/akccakcctw/dotfiles.git
# update
chezmoi updateUse tpm to manage plugins:
mapping leader key to ,.
- tabs
open a new tab:<C-n>- switch to next tab:
<Leader>n
- split window
- split horizontal:
<C-\> - split window navigations:
<C-Left>,<C-Down>,<C-Up>,<C-Right> - switch between vertical/horizontal split:
<Leader>E,<Leader>I
- split horizontal:
- no highlight search result:
<Leader>/ - toggle wrap:
<F2> - increase/decrease number under the cursour:
+,- - move text line up/down:
<C-j>,<C-k> - avoid the escape key:
jj - save a file as root:
<Leader>WW - strip trailing whitespace:
<Leader>ss - edit .vimrc:
<leader>ee
- indentLine
- nvim-tree.lua
- NvimTreeToggle:
<C-b>
- NvimTreeToggle:
- render-markdown.nvim
- vim-devicons
- choose a Nerd Font compatible font for your terminal to see fancy icons
- vim-airline-themes
- vim-airline
- vim-indent-guides
- vim-gitgutter
- vim-autoformat
<Leader>FF
- vim-import-cost
- vim-table-mode
<Leader>tmto start it (or typing:TableModeToggle)
- tidy-html5
- markdown-preview.nvim
- tender
- vim-buffergator
<Leader>bto open a window listing all buffers<C-v>to edit the selected buffer in a new vertical split<C-s>to edit the selected buffer in a new horizontal split<C-t>to edit the selected buffer in a new tab
- fzf
- fzf.vim
- gv.vim
- vim-easy-align
- patchreview-vim
- tagbar
- toggle tagbar:
<F8>
- toggle tagbar:
- emmet-vim
- enabled in html, css, scss, pug, vue, php files
- expand:
<C-e>, - wrap: select then
<C-e>, - next edit position:
<C-e>n - previous edit position:
<C-e>N - select current tag:
<C-e>d - delete tag:
<C-e>k - merge multiple lines:
<C-e>m
- vim-tags
- generate tags for the project (using ctags)
:TagGenerate!
- generate tags for the project (using ctags)
- vim-multiple-cursors
- tcomment_vim
- toggle comment with
<Leader>ccin normal mode - select then
<Leader>ccfor inline comment - select then
<Leader>c<Space>for block comment
- toggle comment with
- vim-fugitive
- vim-surround
- vdebug
- ale
- mason.nvim
- vim-windowswap
- Client
- Servers (install manually)
- JavaScript: sourcegraph/javascript-typescript-langserver
npm i -g javascript-typescript-langserver - PHP: intelephense
npm i -g intelephense - Dockerfile: rcjsuen/dockerfile-language-server-nodejs
npm i -g dockerfile-language-server-nodejs - Vue: vuejs/vetur/server
npm i -g vue-language-server
- JavaScript: sourcegraph/javascript-typescript-langserver
read linux/vimrc for more details.