dot_vim
dot_vim copied to clipboard
My 12 Year-Old (Neo)Vim Configuration
My 10 Year-Old (Neo)Vim Configuration
About
I've been iterating on this configuration for more than 10 years and 1,000 commits. It's very unlikely you'd want to use it directly. Instead, feel free to learn and take snippets from it.
Jump to Plugin List
Plugins and Configuration in their Own File
This is one of the things I'm most proud of, definitely steal it.
Each plugin is included and managed in its own file.
Installation
Be sure you read the About section above.
-
git clone [email protected]:mutewinter/dot_vim.git ~/.config/nvim
. -
cd ~/.config/nvim
.
Now you have a choice. The automated script or the manual process.
- Run
scripts/setup
.
or
-
rake vim:link
to make the.vimrc
and.nvimrc
symbolic links. -
vim +PlugInstall +qall
Vim Requirements
- I'm using NeoVim via Homebrew on macOS.
Mappings
- Pressing
enter
in normal mode saves the current buffer, if needed.
And many more. See mappings.vim
and
plug_plugins
for more.
Installing Custom Plugins
Create a new .vim
file with the same name as the plugin you'd like to install
in plug_plugins/custom
. Then add the installation
block. For example:
plug_plugins/custom/vim-move.vim
if exists('g:plug_installing_plugins')
Plug 'matze/vim-move.vim'
finish
endif
let g:move_key_modifier = 'C'
This example installs vim-move
.
Plugin List
Stars | Plugin | Description |
---|---|---|
coc.nvim :page_facing_up: | Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers. | |
vim-fugitive :page_facing_up: | fugitive.vim: A Git wrapper so awesome, it should be illegal | |
vim-surround :page_facing_up: | surround.vim: Delete/change/add parentheses/quotes/XML-tags/much more with ease | |
vim-startify :page_facing_up: | :link: The fancy start screen for Vim. | |
telescope.nvim :page_facing_up: | Find, Filter, Preview, Pick. All lua, all the time. | |
editorconfig-vim :page_facing_up: | EditorConfig plugin for Vim | |
nvim-treesitter :page_facing_up: | Nvim Treesitter configurations and abstraction layer | |
vim-dadbod :page_facing_up: | dadbod.vim: Modern database interface for Vim | |
vim-abolish | abolish.vim: easily search for, substitute, and abbreviate multiple variants of a word | |
targets.vim | Vim plugin that provides additional text objects | |
vim-repeat | repeat.vim: enable repeating supported plugin maps with "." | |
undotree | The undo history visualizer for VIM | |
copilot.vim | Neovim plugin for GitHub Copilot | |
splitjoin.vim :page_facing_up: | Switch between single-line and multiline forms of code | |
vim-eunuch | eunuch.vim: Helpers for UNIX | |
nvim-tree.lua :page_facing_up: | A file explorer tree for neovim written in lua | |
ctrlsf.vim :page_facing_up: | A text searching plugin mimics Ctrl-Shift-F on Sublime Text 2 | |
vim-textobj-user | Vim plugin: Create your own text objects | |
neoformat :page_facing_up: | :sparkles: A (Neo)vim plugin for formatting code. | |
vim-peekaboo | :eyes: " / @ / CTRL-R | |
nvim-colorizer.lua :page_facing_up: | The fastest Neovim colorizer. | |
vim-session :page_facing_up: | Extended session management for Vim (:mksession on steroids) | |
lualine.nvim :page_facing_up: | A blazing fast and easy to configure neovim statusline plugin written in pure lua. | |
gitsigns.nvim :page_facing_up: | Git integration for buffers | |
vim-node | Tools and environment to make Vim superb for developing with Node.js. Like Rails.vim for Node. | |
vim-jsx-pretty | :flashlight: [Vim script] JSX and TSX syntax pretty highlighting for vim. | |
vim-jsbeautify :page_facing_up: | vim plugin which formated javascript files by js-beautify | |
vim-hardtime :page_facing_up: | Plugin to help you stop repeating the basic movement keys | |
vim-rhubarb | rhubarb.vim: GitHub extension for fugitive.vim | |
lush.nvim :page_facing_up: | Define Neovim themes as a DSL in lua, with real-time feedback. | |
lightspeed.nvim | 🌌 Next-generation motion plugin with incremental input processing, allowing for unparalleled speed with near-zero cognitive effort | |
switch.vim :page_facing_up: | A simple Vim plugin to switch segments of text with predefined replacements | |
plenary.nvim :page_facing_up: | plenary: full; complete; entire; absolute; unqualified. All the lua functions I don't want to write twice. | |
tmux-complete.vim | Vim plugin for insert mode completion of words in adjacent tmux panes | |
vim-dadbod-ui :page_facing_up: | Simple UI for https://github.com/tpope/vim-dadbod | |
open-browser.vim :page_facing_up: | Open URI with your favorite browser from your most favorite editor | |
vim-graphql | A Vim plugin that provides GraphQL file detection, syntax highlighting, and indentation. | |
nvim-ts-rainbow :page_facing_up: | 🌈 Rainbow parentheses for neovim using tree-sitter 🌈 | |
vim-misc | Miscellaneous auto-load Vim scripts | |
vim-ragtag | ragtag.vim: ghetto HTML/XML mappings (formerly allml.vim) | |
nvim-web-devicons | lua fork of vim-web-devicons for neovim |
|
Comment.nvim :page_facing_up: | :brain: :muscle: // Smart and powerful comment plugin for neovim. Supports commentstring, dot repeat, left-right/up-down motions, hooks, and more | |
nvim-ts-context-commentstring :page_facing_up: | Neovim treesitter plugin for setting the commentstring based on the cursor location in a file. | |
vim-tmux :page_facing_up: | vim plugin for tmux.conf | |
neoscroll.nvim :page_facing_up: | Smooth scrolling neovim plugin written in lua | |
vim-asterisk :page_facing_up: | :snowflake: *-Improved | |
playground :page_facing_up: | Treesitter playground integrated into Neovim | |
nvim-ts-autotag :page_facing_up: | Use treesitter to auto close and auto rename html tag | |
pgsql.vim :page_facing_up: | The best PostgreSQL plugin for Vim! | |
vim-swap :page_facing_up: | Reorder delimited items. | |
vim-sort-motion | Vim mapping for sorting a range of text | |
nvim-scrollview | 📍 A Neovim plugin that displays interactive vertical scrollbars. | |
vim-textobj-indent | Vim plugin: Text objects for indented blocks of lines | |
QFEnter :page_facing_up: | Open a Quickfix item in a window you choose. (Vim plugin) | |
indent-guides.nvim :page_facing_up: | ||
ListToggle :page_facing_up: | A vim plugin for toggling the display of the quickfix list and the location-list. | |
vim-togglecursor :page_facing_up: | Toggle the cursor shape in the terminal for Vim. | |
coc-tailwind-intellisense :page_facing_up: | Coc.nvim extension for Tailwind CSS IntelliSense | |
vim-handlebars | [deprecated] Vim plugin for Handlebars | |
Join | a better (hopefully) :Join command in vim | |
telescope-coc.nvim :page_facing_up: | coc.nvim integration for telescope.nvim | |
jellybeans-nvim :page_facing_up: | A port of jellybeans colorscheme for neovim | |
scratch.vim | Plugin to create and use a scratch Vim buffer | |
vim-reveal-in-finder | Reveal the current file in the OS X Finder. | |
vim-voogle :page_facing_up: | google for the word under the cursor to a browser because 2013 | |
HelpClose | Close all help windows | |
vim-autoreadwatch | A forked script for vim auto reloading of buffers when changed on disk. |
That's 71 plugins, holy crap.
Generated by rake update_readme
on 2021/11/07.