Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/meirkriheli/dotvim
My vim as IDE setup
https://github.com/meirkriheli/dotvim
Last synced: about 5 hours ago
JSON representation
My vim as IDE setup
- Host: GitHub
- URL: https://github.com/meirkriheli/dotvim
- Owner: MeirKriheli
- Created: 2012-08-14T11:32:02.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2017-12-27T14:58:39.000Z (almost 7 years ago)
- Last Synced: 2024-04-16T03:18:33.918Z (7 months ago)
- Language: Vim script
- Homepage:
- Size: 155 KB
- Stars: 31
- Watchers: 3
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
Awesome Lists containing this project
README
============================================================
My vim setup
============================================================My vim IDE setup for Python, Go, Rust, html, css, javascript, typescript,
gettext and more.Features
============* ``vimrc`` handling
* Incremental and smart case search.
* Sublime Text style multiple selections
* Trailing whitespace highlightling and cleaning shortcut
* Logical and Visual layout (for Right-To-Left lanaguegs) editing.
* Tabs expand to 4 spaces by default
* Remap ````` to ```` and ``jj` to ````
* Highlight current row and color column 80
* 70+ language packs support
* Syntax checking
* Snippets
* Quotes, parens etc pair, surround
* Extended pair matching with %
* ASCII drawing
* Fuzzy file, buffer, mru, tag, etc finder
* Task list
* VCS plugins (Fugitive, Lawrencium)
* Tab completion
* CommentingPrerequisites
=============Vim with Python support.
Usage
============The following commands will clone the repo, symlink ``~/.vimrc`` and update the
bundles::git clone https://github.com/MeirKriheli/dotvim.git ~/.vim
ln -s ~/.vim/vimrc ~/.vimrc
cd ~/.vim
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vimInstall plugins from the command line::
vim +PlugUpdate +qa
To add or override settings, place them in ``~/.vim/vimrc.local``.
To update submodules in the future, when you have vim running, source vimrc to
make sure plugins list is updated (or restart vim):::PlugUpdate
completor.vim
-------------For setting up completor.vim_ per specific supported language, please see:
https://github.com/maralla/completor.vim#completersUpgrading
----------In case you're updating from previous ``Vundle`` based to ``vim-plug``, remove
the ``bundle`` directory as it's not needed anymore, get ``vim-plug`` and
install the plugins::cd ~/.vim
rm -rf bundle
curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
vim +PlugUpdate +qaGo tags
----------For CtrlPBufTag search in go lang files, make sure you have an updated version
of ``ctags`` (>=5.8) and put in your ``~/.ctags``::--langdef=Go
--langmap=Go:.go
--regex-Go=/func([ \t]+\([^)]+\))?[ \t]+([a-zA-Z0-9_]+)/\2/f,func/
--regex-Go=/var[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\1/v,var/
--regex-Go=/type[ \t]+([a-zA-Z_][a-zA-Z0-9_]+)/\1/t,type/Overrides
----------------* ``~/.vim/vimrc.before``, if exists, is sourced before everything allowing
definitions of variables to act upon.
* ``~/.vim/vimrc.local``, or ``~/.vim/vimrc.after`` if exists, is sourced after all
the files in ``~/.vim/vimrc.d`` allowing override of default settings (e.g:
color schemes, plugin configuration, etc.).Plugins
============* Solarized_ - color scheme
* base16-vim_ - color scheme
* vim-molokai_ - color scheme
* vim-distpach_ - asynchronous build and test dispatcher
* Fugitive_ - a Git wrapper so awesome, it should be illegal
* Lawrencium_ - Mercurial wrapper for Vim, inspired by Tim Pope's Fugitive
* ctrlp.vim_ - Fuzzy file, buffer, mru, tag, etc finder
* SuperTab_ - Insert mode completions with Tab
* completor.vim_ - Async completion framework made ease
* Syntastic_ - Syntax checking hacks for vim (for vim < 8)
* ale_ - Asynchronous Lint Engine (for vim >= 8)
* UltiSnips_ - The ultimate snippet solution for Vim.
* vim-snippets_ - vim-snipmate default snippets
* python-mode_ - Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box
* vim-go_ - Go development plugin for Vim
* rust.vim_ - provides Rust file detection, syntax highlighting, formatting,
Syntastic integration, and more.
* DrawIt_ - Ascii drawing plugin: lines, ellipses, arrows, fills, and more!
* vim-surround_ - quoting/parenthesizing made simple
* Shebang_ - Make executable by setting the correct shebang and executable bit
* Tagbar_ - Displays tags in a window, ordered by class etc
* `NERD tree`_ - A tree explorer
* auto-pairs_ - Insert or delete brackets, parens, quotes in pair
* po.vim_ - Easier editing of GNU gettext PO files
* TaskList_ - Eclipse like task list
* MatchIt_ - Extended % matching for HTML, LaTeX, and many other languages
* MatchTag_ - Highlight matching HTML tags
* vim-airline_ - Light weight statusline utility
* tabular_ - text filtering and alignment
* vim-plugin-viewdoc_ - Flexible viewer for any documentation
* tcomment_vim_ - An extensible & universal comment vim-plugin that also
handles embedded filetypesludovicchabant/vim-lawrencium
* vim-unimpaired_ - pairs of handy bracket mappings
* vim-multiple-cursors_ - True Sublime Text style multiple selections for Vim
* splitjoin.vim_ - A vim plugin that simplifies the transition between multiline
and single-line code
* vim-repeat_ - enable repeating supported plugin maps with "."
* tsuquyomi_ - A Vim plugin for TypeScript
* vim-highlightedyank_ - Make the yanked region apparent!.. _Solarized: https://github.com/altercation/vim-colors-solarized
.. _base16-vim: https://github.com/chriskempson/base16-vim
.. _vim-molokai: https://github.com/tomasr/molokai
.. _Fugitive: https://github.com/tpope/vim-fugitive
.. _Lawrencium: https://github.com/ludovicchabant/vim-lawrencium
.. _vim-distpach: https://github.com/tpope/vim-dispatch
.. _vcscommand: http://www.vim.org/scripts/script.php?script_id=90
.. _ctrlp.vim: https://github.com/ctrlpvim/ctrlp.vim
.. _Syntastic: https://github.com/scrooloose/syntastic
.. _UltiSnips: https://github.com/sirver/ultisnips
.. _vim-snippets : https://github.com/honza/vim-snippets
.. _python-mode: https://github.com/klen/python-mode
.. _vim-go: https://github.com/fatih/vim-go
.. _DrawIt: https://github.com/vim-scripts/DrawIt
.. _vim-surround: https://github.com/tpope/vim-surround
.. _Shebang: https://github.com/vim-scripts/Shebang
.. _Tagbar: http://majutsushi.github.com/tagbar/
.. _NERD tree: https://github.com/scrooloose/nerdtree
.. _auto-pairs: https://github.com/jiangmiao/auto-pairs
.. _po.vim: http://vim.sourceforge.net/scripts/script.php?script_id=695
.. _TaskList: http://juan.axisym3.net/vim-plugins/#tasklist
.. _MatchIt: http://www.vim.org/scripts/script.php?script_id=39
.. _SuperTab: https://github.com/ervandew/supertab
.. _vim-airline: https://github.com/bling/vim-airline
.. _tabular: https://github.com/godlygeek/tabular
.. _vim-plugin-viewdoc: https://github.com/powerman/vim-plugin-viewdoc
.. _tcomment_vim: https://github.com/tomtom/tcomment_vim
.. _vim-unimpaired: https://github.com/tpope/vim-unimpaired
.. _vim-multiple-cursors: https://github.com/terryma/vim-multiple-cursors
.. _splitjoin.vim: https://github.com/AndrewRadev/splitjoin.vim
.. _vim-repeat: https://github.com/tpope/vim-repeat
.. _MatchTag: https://github.com/gregsexton/MatchTag
.. _rust.vim: https://github.com/rust-lang/rust.vim
.. _tsuquyomi: https://github.com/Quramy/tsuquyomi
.. _completor.vim: https://github.com/maralla/completor.vim
.. _ale: https://github.com/w0rp/ale
.. _vim-highlightedyank: https://github.com/machakann/vim-highlightedyankShortcuts and re-Mappings
================================================== =================================================================
Key Command
====================== =================================================================
``jj`` ```` in insert and command modes
---------------------- -----------------------------------------------------------------
```` ````
---------------------- -----------------------------------------------------------------
``v`` Load `.vimrc`
---------------------- -----------------------------------------------------------------
``V`` Activate changes to `.vimrc` (Make sure to save it before)
---------------------- -----------------------------------------------------------------
```` Close current split (window)
---------------------- -----------------------------------------------------------------
```` Toggle NERD tree
---------------------- -----------------------------------------------------------------
```` Toggle search highlight
---------------------- -----------------------------------------------------------------
```` Toggle Tagbar
---------------------- -----------------------------------------------------------------
``S`` Remove trailing whitespace
---------------------- -----------------------------------------------------------------
``hjkl`` Window movement commands
---------------------- -----------------------------------------------------------------
``arrow`` Window movement commands
---------------------- -----------------------------------------------------------------
``d`` Delete buffer, keep the split
---------------------- -----------------------------------------------------------------
``-``, ``+`` Resize horizontal splits
---------------------- -----------------------------------------------------------------
``<`` ``>`` Resize vertical splits
---------------------- -----------------------------------------------------------------
```` Toggle logical (RTL, e.g: Hebrew) editing
---------------------- -----------------------------------------------------------------
```` Toggle visual (RTL, e.g: Hebrew) editing
---------------------- -----------------------------------------------------------------
``g/`` :grep!
---------------------- -----------------------------------------------------------------
``g*`` :grep! -w current_word
---------------------- -----------------------------------------------------------------
``ga`` :grepadd! (add results to the current search)
---------------------- -----------------------------------------------------------------
``gr`` :CtrlPBufTag (fuzzy tag search in current file)
====================== =================================================================