Git Product home page Git Product logo

vimconfig's Introduction

My Vim configuration

Installation

You can install this configuration wither using curl or wget or by manually cloning it down and executing the installation script.

Fastest way to install is to use curl

curl -fsSL https://raw.githubusercontent.com/Gufran/vimconfig/master/install.sh | sh

or wget

wget https://raw.githubusercontent.com/Gufran/vimconfig/master/install.sh -O - | sh

If you dont want to pipe the script to sh directly, you can clone the repository in your home directory and rename to .vim. Run install.sh to setup everything.

git clone https://github.com/Gufran/vimconfig ~/.vim
~/.vim/install.sh

All of the configuration and plugin definitions are in configuration directory. You can create a directory private for all kind of private configuration, private directory is same as configuration directory except it is excluded from git repository, make sure your custom config files have an extension .vim or they will not be sourced.

What does the installation script do?

If you choose to go the curl or wget way, the script will move you old configuration to .vim_old and download the new configuration. This step is skipped if you execute the script from a terminal.

It will then proceed to install the plugin manager, required plugins and move your existing .vimrc file to .vimrc_old. Your New .vimrc file will be a symlink to .vim/vimrc file available in this configuration.

Plugins

vim-plug is chosen as default plugin manager. A list of plugins available and configured in this configuration is as follows:

  1. You Complete Me For omni completion
  2. Auto Pairs To insert a closing pair
  3. Gundo To visualise vim undo tree
  4. Supertab To reconcile conflicting tab key mappings
  5. Unite For a lot of stuff, more details Unite section
  6. Bbye To close last buffer without quitting vim
  7. Commentary To comment and uncomment lines
  8. Fugitive To operate on git repository
  9. Git Gutter To show diff symbols in symbol column
  10. Vim Go Golang developement environment with a lot of cool stuff
  11. Unimpaired Pairs of bracket mappings
  12. Vimproc For interactive command execution
  13. Vimfiler A file explorer

Auxiliary plugins to add more functionality to plugins listed above:

  1. NeoYank To manage yank history in Unite
  2. Unite Outline To show and navigate to headings in vim buffer
  3. Unite Tag Tag source for Unite
  4. Vim Misc Miscellaneous autoload scripts

Included colorschemes are:

  1. Flat Color
  2. Apprentice

Keybindings

A number of keybindings are available within this configuration

  • , is the default leader key
  • F1 key is mapped to NOP in all three modes. This is to protect ESC from fatfinger.
  • CTRL+h will set focus to left split
  • CTRL+l will set focus to right split
  • CTRL+j will set focus to lower split
  • CTRL+k will set focus to upper split
  • <Leader> k will toggle file explorer
  • F5 will toggle Gundo history viewer
  • CTRL+p will open a quick file navigtor, much like the CTRL+p popup in sublime text
  • CTRL-n will open the outline
  • CTRL-m will open a git command menu
  • <leader> y will show the yank history and can paste selected entry on presing enter key
  • space key will toggle folds
  • <leader> c clears search highlightings
  • <leader> d deletes current buffer

Inside file explorer

  • a will create a new file
  • Space will mark the file for batch operations
  • d will delete selected file
  • m will rename or move selected file
  • c will copy selected file and further paste it in a directory
  • o will expand a directory tree or open the file in existing buffer
  • s will open selected file in a vertical split
  • i will open selected file in a horizontal split
  • r will refresh the file explorer
  • gg will navigate to the top directory
  • I will toggle hidden files
  • CTRL+g will print full filename in echo area
  • CTRL-p will start a find buffer with selected directory as root
  • ? will show full help for VimFiler

FileType specific bindings

Golang

  • K will open Go Doc for highlighted keyword in vertical split
  • <leader> K will open symbol definition for highlighted keyword in vertical split
  • CTRL-g will navigate to the symbol definition

vimconfig's People

Contributors

gufran avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.