My vim dot files. the .vimrc
file is saved to vimrc.
This repository depends on neovim.
Just run the following commands via terminal to get perfectly set up:
Note: Make sure that python 3.6.1 or above is installed.
curl -LO https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage
chmod u+x nvim.appimage
sudo mv nvim.appimage /usr/bin/nvim
pip install setuptools
pip install --upgrade pynvim
pip3 install --upgrade pynvim
sudo npm install -g tree-sitter-cli
cd $HOME
git clone --recursive https://github.com/alexhokl/.vim.git .vim
cd $HOME/.vim
git submodule update --init
make install
make update-alexhokl
Configure $HOME/.omnisharp/omnisharp.json
with the following.
{
"RoslynExtensionsOptions": {
"EnableAnalyzersSupport": true,
"LocationPaths": [
]
},
"FormattingOptions": {
"EnableEditorConfigSupport": true
}
}
Most of the language servers can be installed via mason.nvim except the following.
Adapters of DAP can be installed via mason.nvim
.
codelldb
dart-debug-adapter
debugpy
delve
The current exception is the combination of netcoredbg
and Apple Silicon. In
this case netcoredbg
needs to be on the machine. Detailed steps can be found
on https://github.com/Samsung/netcoredbg. Roughly the steps involve the
following.
mkdir build
cd build
CC=clang CXX=clang++ cmake ..
make
sudo make install
Currently, debug adapter of flutter does not handle multiple connected devices
yet. To get around the problem, flutter config --no-enable-web
is used.
The vim dot files make use of the excellent Pathogen runtime path manager to install plugins and runtime files into their own private directiories.
Currently using version 2.4 of Pathogen
You can use the Makefile
to run a series of commands.
$ make help
install Sets up symlink for user and root .vimrc for vim and neovim.
README.md Generates and updates plugin info in README.md.
remove-submodule Removes a git submodule (ex MODULE=bundle/nginx.vim).
update-pathogen Updates pathogen.
update-plugins Updates all plugins.
update-alexhokl Updates plugins added by me.
update Updates pathogen and all plugins.
git submodule add https://github.com/OmniSharp/omnisharp-vim ~/.vim/bundle/omnisharp-vim
Ctrl-P
: Find filesCtrl-G
: Live grepCtrl-B
: Search git branchesCtrl-A
: Toggle the file sidebarCtrl-R
: Refresh the file sidebarCtrl-N
: Multiple cursor supportCtrl-X
: Switch to the next bufferCtrl-Z
: Switch to the previous bufferCtrl-T
: Open a floating terminal<Space>
: Center the screen to the cursor
There's a lot more if you hit ,?
you can peruse all the ones connected to the leader ,
- github.com/jpfeiffer16/angeldoc-vim
- github.com/yetone/avante.nvim
- github.com/meeehdi-dev/bropilot.nvim
- github.com/akinsho/bufferline.nvim
- github.com/dkarter/bullets.vim
- github.com/hrsh7th/cmp-buffer
- github.com/petertriho/cmp.git
- github.com/hrsh7th/cmp-nvim-lsp
- github.com/quangnguyen30192/cmp-nvim-ultisnips
- github.com/hrsh7th/cmp-path
- github.com/f3fora/cmp-spell
- github.com/ray-x/cmp-treesitter
- github.com/hrsh7th/cmp-vsnip
- github.comhub/copilot.vim.git
- github.com/Decodetalkers/csharpls-extended-lsp.nvim
- github.com/terrastruct/d2-vim
- github.com/glepnir/dashboard-nvim
- github.com/stevearc/dressing.nvim
- github.com/editorconfig/editorconfig-vim
- github.com/j-hui/fidget.nvim
- github.com/akinsho/flutter-tools.nvim
- github.com/akinsho-conflict.nvim
- github.com/ThePrimeagen-worktree.nvim
- github.com/ruifmlinker.nvim
- github.com/lewis6991signs.nvim.git
- github.com/lukas-reineke/indent-blankline.nvim
- gitlab.com/HiPhish/jinja.vim
- github.com/ray-x/lsp_signature.nvim
- github.com/onsails/lspkind-nvim
- github.com/glepnir/lspsaga.nvim
- github.com/nvim-lualine/lualine.nvim
- github.com/williamboman/mason-lspconfig.nvim
- github.com/williamboman/mason.nvim
- github.com/chr4/nginx.vim
- github.com/tjdevries/nlua.nvim
- github.com/MunifTanjim/nui.nvim
- github.com/jose-elias-alvarez/null-ls.nvim
- github.com/hrsh7th/nvim-cmp
- github.com/mfussenegger/nvim-dap
- github.com/alexhokl/nvim-dap-dotnet
- github.com/leoluz/nvim-dap-go
- github.com/mfussenegger/nvim-dap-python
- github.com/rcarriga/nvim-dap-ui
- github.com/theHamsta/nvim-dap-virtual-text
- github.com/neovim/nvim-lspconfig
- github.com/alexhokl/nvim-md-open-link
- github.com/nvim-neotest/nvim-nio
- github.com/rcarriga/nvim-notify
- github.com/kyazdani42/nvim-tree.lua
- github.com/mfussenegger/nvim-treehopper
- github.com/nvim-treesitter/nvim-treesitter
- github.com/nvim-treesitter/nvim-treesitter-context
- github.com/nvim-treesitter/nvim-treesitter-textobjects
- github.com/windwp/nvim-ts-autotag
- github.com/kyazdani42/nvim-web-devicons
- github.com/pwntester/octo.nvim
- github.com/stevearc/oil.nvim
- github.com/nomnivore/ollama.nvim
- github.com/nvim-lua/plenary.nvim
- github.com/nanotee/sqls.nvim
- github.com/ziontee113/syntax-tree-surfer
- github.com/godlygeek/tabular
- github.com/wellle/targets.vim
- github.com/tomtom/tcomment_vim
- github.com/nvim-telescope/telescope-ui-select.nvim
- github.com/nvim-telescope/telescope.nvim
- github.com/folke/todo-comments.nvim
- github.com/folke/tokyonight.nvim
- github.com/folke/trouble.nvim
- github.com/folke/twilight.nvim
- github.com/SirVer/ultisnips
- github.com/ntpeters/vim-better-whitespace
- github.com/alexhokl/vim-dadbod
- github.com/kristijanhusak/vim-dadbod-completion
- github.com/kristijanhusak/vim-dadbod-ui
- github.com/tpope/vim-endwise
- github.com/tpope/vim-five.git
- github.com/fatih/vim-hclfmt
- github.com/plasticboy/vim-markdown
- github.com/harenome/vim-mipssyntax
- github.com/ocaml/vim-ocaml
- github.com/uarun/vim-protobuf
- github.com/tpope/vim-rhubarb
- github.com/machakann/vim-sandwich
- github.com/mhinz/vim-sayonara
- github.com/tpope/vim-sensible
- github.com/honza/vim-snippets
- github.com/tpope/vim-surround
- github.com/wgwoods/vim-systemd-syntax
- github.com/cespare/vim-toml
- github.com/tpope/vim-unimpaired
- github.com/mg979/vim-visual-multi
- github.com/hrsh7th/vim-vsnip
- github.com/someone-stole-my-name/yaml-companion.nvim