1
0
Fork 0
mirror of https://github.com/luzifer/vim.git synced 2024-12-29 22:31:20 +00:00
vim/vimrc

1029 lines
26 KiB
VimL
Raw Normal View History

set nocompatible " be iMproved, required
filetype off " required
2016-03-04 12:07:29 +00:00
2017-12-14 13:29:44 +00:00
call plug#begin('~/.vim/plugged')
2013-10-28 22:07:19 +00:00
" Other plugins
2017-12-14 13:29:44 +00:00
Plug 'nathanaelkane/vim-indent-guides'
Plug 'airblade/vim-gitgutter'
Plug 'tpope/vim-fugitive'
Plug 'scrooloose/nerdtree'
Plug 'godlygeek/tabular'
Plug 'Chiel92/vim-autoformat'
Plug 'vim-airline/vim-airline'
Plug 'reedes/vim-pencil'
2017-12-14 14:43:09 +00:00
if v:version >= 800
if has('nvim')
Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' }
else
Plug 'Shougo/deoplete.nvim'
Plug 'roxma/nvim-yarp'
Plug 'roxma/vim-hug-neovim-rpc'
endif
2017-12-14 13:29:44 +00:00
else
2017-12-14 14:43:09 +00:00
Plug 'Shougo/neocomplete.vim'
2017-12-14 13:29:44 +00:00
endif
2013-10-28 22:07:19 +00:00
" Languages
2017-12-14 13:29:44 +00:00
Plug 'jakar/vim-json'
Plug 'kchmck/vim-coffee-script'
Plug 'groenewege/vim-less'
Plug 'mutewinter/nginx.vim'
Plug 'fatih/vim-go'
Plug 'ekalinin/Dockerfile.vim'
2017-12-14 13:29:44 +00:00
Plug 'nsf/gocode', {'rtp': 'vim/'}
Plug 'Matt-Deacalion/vim-systemd-syntax'
Plug 'cespare/vim-toml'
Plug 'fatih/vim-hclfmt'
Plug 'b4b4r07/vim-hcl'
call plug#end()
2013-02-14 09:57:04 +00:00
" important settings
"
" compatible - behave very Vi compatible (not advisable)
set nocp " cp
" cpoptions - list of flags to specify Vi compatibility
set cpo=aABceFs
" insertmode - NOT use Insert mode as the default mode
set noim " im
" paste - paste mode, insert typed text literally
set nopaste " - nopaste
2013-02-14 09:57:04 +00:00
" pastetoggle - key sequence to toggle paste mode
set pt=
"
" using the mouse
"
" mouse - list of flags for using the mouse
set mouse=n
" mousemodel - "extend", "popup" or "popup_setpos"; what the right mouse button is used for
set mousem=extend
" mousetime - maximum time in msec to recognize a double-click
set mouset=500
" ttymouse - "xterm", "xterm2", "dec" or "netterm"; type of mouse
set ttym=xterm2
" mouseshape - what the mouse pointer looks like in different modes
set mouses=i-r:beam,s:updown,sd:udsizing,vs:leftright,vd:lrsizing,m:no,ml:up-arrow,v:rightup-arrow
" virtualedit - when to use virtual editing: "block", "insert" and/or "all"
set ve=block
"
" selecting text
"
" selection - "old", "inclusive" or "exclusive"; how selecting text behaves
set sel=old
" selectmode - "mouse", "key" and/or "cmd"; when to start Select mode instead of Visual mode
set slm=mouse,key
" clipboard - "unnamed" to use the * register like unnamed register
"autoselect" to always put selected text on the clipboard
set cb=unnamed,unnamedplus ",exclude:cons\\\|linux
2013-02-14 09:57:04 +00:00
" keymodel - "startsel" and/or "stopsel"; what special keys can do
set km=
"
" terminal
"
" term - name of the used terminal
"set term=builtin_gui
" ttytype - alias for 'term'
"set tty=builtin_gui
" ttybuiltin - check built-in termcaps first
set tbi " notbi
" ttyfast - terminal connection is fast
set tf " notf
" weirdinvert - terminal that requires extra redrawing
set nowiv " wiv
" esckeys - recognize keys that start with <Esc> in Insert mode
set ek " noek
" scrolljump - minimal number of lines to scroll at a time
set sj=1
" ttyscroll - maximum number of lines to use scrolling instead of redrawing
set tsl=999
" title - show info in the window title
set title " notitle
" titlelen - percentage of 'columns' used for the window title
set titlelen=85
" titlestring - when not empty, string to be used for the window title
set titlestring=
" icon - set the text of the icon for this window
set icon " noicon
" iconstring - when not empty, text for the icon of this window
set iconstring=
"
" moving around, searching and patterns
"
" whichwrap - list of flags specifying which commands wrap to another line (local to window)
set ww=b,s
" startofline - many jump commands move the cursor to the first non-blank character of a line
set sol " nosol
" paragraphs - nroff macro names that separate paragraphs
"set para=IPLPPPQPP\ LIpplpipbp
" sections - nroff macro names that separate sections
"set sect=SHNHH\ HUnhsh
" path - list of directory names used for file searching (global or local to buffer)
set pa=.,,
" cdpath - list of directory names used for :cd
set cd=.,,
" autochdir - change to directory of file in buffer
"set acd " noacd
" wrapscan - search commands wrap around the end of the buffer
set ws " nows
" incsearch - show match for partly typed search command
"set nois " is
set is " nois
" magic - change the way backslashes are used in search patterns
set magic " nomagic
" ignorecase - ignore case when using a search pattern
set ic " noic
" smartcase - override 'ignorecase' when pattern has upper case characters
set scs " noscs
" casemap - What method to use for changing case of letters
set cmp=internal,keepascii
" define - pattern for a macro definition line (global or local to buffer)
set def=^\\s*#\\s*define
" include - pattern for an include-file line (local to buffer)
set inc=^\\s*#\\s*include
" includeexpr - expression used to transform an include line to a file name (local to buffer)
set inex=
"
" syntax and highlighting
"
" enable syntax highlighting by default
syntax enable
" colorscheme - set default color theme
colorscheme groovym
" background - "dark" or "light"; the background color brightness
2013-04-12 12:31:49 +00:00
set bg=dark
2013-02-14 09:57:04 +00:00
" hlsearch - highlight all matches for the last used search pattern
set hls " nohls
"
" displaying text
"
" scroll - number of lines to scroll for CTRL-U and CTRL-D (local to window)
set scr=6
" scrolloff - number of screen lines to show around the cursor
"set so=0
set so=10
" wrap - long lines wrap
set wrap " nowrap
" linebreak - wrap long lines at a character in 'breakat' (local to window)
set lbr " nolbr
" breakat - which characters might cause a line break
set brk=\ \ !@*-+;:,./?
" showbreak - string to put before wrapped screen lines
set sbr=
" sidescroll - minimal number of columns to scroll horizontally
set ss=0
" sidescrolloff - minimal number of columns to keep left and right of the cursor
set siso=10
" display - include "lastline" to show the last line even if it doesn't fit
" include "uhex" to show unprintable characters as a hex number
set dy=
" fillchars - characters to use for the status line, folds and filler lines
set fcs=vert:\|,fold:-
" cmdheight - number of lines used for the command-line
set ch=1
" columns - width of the display
"set co=78
" lines - number of lines in the display
"set lines=32
" lazyredraw - don't redraw while executing macros
set nolz " lz
" writedelay - delay in msec for each char written to the display (for debugging)
set wd=0
" list - show <Tab> as ^I and end-of-line as $ (local to window)
set nolist " list
" listchars " list of strings used for list mode
set lcs=eol:$
" number - show the line number for each line (local to window)
2016-01-01 13:09:34 +00:00
set nu " nonu
2013-02-14 09:57:04 +00:00
"
" editing text
"
" undolevels - maximum number of changes that can be undone
set ul=1000
" modified - changes have been made and not written to a file (local to buffer)
set nomod " mod
" readonly - buffer is not to be written (local to buffer)
set noro " ro
" modifiable - changes to the text are not possible (local to buffer)
set ma " noma
" textwidth - line length above which to break a line (local to buffer)
set tw=0
" wrapmargin - margin from the right in which to break a line (local to buffer)
set wm=0
" backspace - specifies what <BS>, CTRL-W, etc. can do in Insert mode
set bs=2
" comments - definition of what comment lines look like (local to buffer)
set com=s1:/*,mb:*,ex:*/,://,b:#,:%,:XCOMM,n:>,fb:-
" formatoptions - list of flags that tell how automatic formatting works (local to buffer)
set fo=vt
" complete - specifies how Insert mode completion works (local to buffer)
set cpt=.,w,b,u,t,i
" dictionary - list of dictionary files for keyword completion (global or local to buffer)
set dict=
" thesaurus - list of thesaurus files for keyword completion (global or local to buffer)
set tsr=
" infercase - adjust case of a keyword completion match (local to buffer)
set noinf " inf
" digraph - enable entering digraps with c1 <BS> c2
set nodg " dg
" tildeop - the "~" command behaves like an operator
set notop " top
" showmatch - When inserting a bracket, briefly jump to its match
set sm " nosm
" matchtime - tenth of a second to show a match for 'showmatch'
set mat=5
" matchpairs - list of pairs that match for the "%" command (local to buffer)
set mps=(:),{:},[:],<:>
" joinspaces - use two spaces after '.' when joining a line
set nojs " js
" nrformats - "alpha", "octal" and/or "hex"; number formats recognized for CTRL-A and CTRL-X commands (local to buffer)
set nf=octal,hex
"
" tabs and indenting
"
" tabstop - number of spaces a <Tab> in the text stands for (local to buffer)
set ts=2
" shiftwidth - number of spaces used for each step of (auto)indent (local to buffer)
set sw=2
" smarttab - a <Tab> in an indent inserts 'shiftwidth' spaces
set sta " nosta
" softtabstop - if non-zero, number of spaces to insert for a <Tab> (local to buffer)
set sts=2
" shiftround - round to 'shiftwidth' for "<<" and ">>"
set sr " nosr
" expandtab - expand <Tab> to spaces in Insert mode (local to buffer)
set et " noet
" autoindent - automatically set the indent of a new line (local to buffer)
set ai " noai
" smartindent - do clever autoindenting (local to buffer)
set si " nosi
" cindent - enable specific indenting for C code (local to buffer)
set cin " nocin
" cinoptions - options for C-indenting (local to buffer)
set cino=
" cinkeys - keys that trigger C-indenting in Insert mode (local to buffer)
set cink=0{,0},0),:,0#,!^F,o,O,e
" cinwords - list of words that cause more C-indent (local to buffer)
set cinw=if,else,while,do,for,switch,case
" indentexpr - expression used to obtain the indent of a line (local to buffer)
set inde=
" indentkeys - keys that trigger indenting with 'indentexpr' in Insert mode (local to buffer)
set indk=0{,0},:,0#,!^F,o,O,e
" copyindent - Copy whitespace for indenting from previous line (local to buffer)
set noci " ci
" preserveindent - Preserve kind of whitespace when changing indent (local to buffer)
set nopi " pi
" lisp - enable lisp mode (local to buffer)
set lisp " nolisp
" lispwords - words that change how lisp indenting works
set lw=defun,define,defmacro,set!,lambda,if,case,let,flet,let*,letrec,do,do*,define-syntax,let-syntax,letrec-syntax,destructuring-bind,defpackage,defparameter,defstruct,deftype,defvar,do-all-symbols,do-external-symbols,do-symbols,dolist,dotimes,ecase,etypecase,eval-when,labels,macrolet,multiple-value-bind,multiple-value-call,multiple-value-prog1,multiple-value-setq,prog1,progv,typecase,unless,unwind-protect,when,with-input-from-string,with-open-file,with-open-stream,with-output-to-string,with-package-iterator,define-condition,handler-bind,handler-case,restart-bind,restart-case,with-simple-restart,store-value,use-value,muffle-warning,abort,continue,with-slots,with-slots*,with-accessors,with-accessors*,defclass,defmethod,print-unreadable-object
"
" folding
"
" foldenable - set to display all folds open (local to window)
set fen " nofen
" foldlevel - folds with a level higher than this number will be closed (local to window)
set fdl=0
" foldlevelstart - value for 'foldlevel' when starting to edit a file
set fdls=-1
" foldcolumn - width of the column used to indicate folds (local to window)
set fdc=0
" foldtext - expression used to display the text of a closed fold (local to window)
set fdt=foldtext()
" foldclose - set to "all" to close a fold when the cursor leaves it
set fcl=
" foldopen - specifies for which commands a fold will be opened
set fdo=block,hor,mark,percent,quickfix,search,tag,undo
" foldminlines - minimum number of screen lines for a fold to be closed (local to window)
set fml=1
" commentstring - template for comments; used to put the marker in
set cms=/*%s*/
" foldmethod - folding type: "manual", "indent", "expr", "marker" or "syntax" (local to window)
set fdm=manual
" foldexpr - expression used when 'foldmethod' is "expr" (local to window)
set fde=0
" foldignore - used to ignore lines when 'foldmethod' is "indent" (local to window)
"set fdi=#
set fdi=
" foldmarker - markers used when 'foldmethod' is "marker" (local to window)
set fmr={{{,}}}
" foldnestmax - maximum fold depth for when 'foldmethod is "indent" or "syntax" (local to window)
set fdn=20
"
" multiple windows
"
" laststatus - 0, 1 or 2; when to use a status line for the last window
set ls=0
" statusline - alternate format to be used for a status line
set stl=
" equalalways - make all windows the same size when adding/removing windows
set ea " noea
" eadirection - in which direction 'equalalways' works: "ver", "hor" or "both"
set ead=both
" winheight - minimal number of lines used for the current window
set wh=1
" winminheight - minimal number of lines used for any window
set wmh=1
" winfixheight - keep the height of the window (local to window)
set nowfh " wfh
" winwidth - minimal number of columns used for the current window
set wiw=20
" winminwidth - minimal number of columns used for any window
set wmw=1
" helpheight - initial height of the help window
set hh=20
" previewheight - default height for the preview window
set pvh=12
" previewwindow - identifies the preview window (local to window)
set nopvw " pvw
" hidden - don't unload a buffer when no longer shown in a window
set nohid " hid
" switchbuf - "useopen" and/or "split"; which window to use when jumping to a buffer
set swb=
" splitbelow - a new window is put below the current one
set sb " nosb
" splitright - a new window is put right of the current one
set nospr " spr
" scrollbind - this window scrolls together with other bound windows (local to window)
set noscb " scb
" scrollopt - "ver", "hor" and/or "jump"; list of options for 'scrollbind'
set sbo=ver,jump
"
" messages and info
"
" terse - add 's' flag in 'shortmess' (don't show search message)
set noterse " terse
" shortmess - list of flags to make messages shorter
set shm=filnxtToO
" showcmd - show (partial) command keys in the status line
set sc " nosc
" showmode - display the current mode in the status line
set smd " nosmd
" ruler - show cursor position below each window
set ru " noru
" rulerformat - alternate format to be used for the ruler
set ruf=
" report - threshold for reporting number of changed lines
set report=2
" verbose - the higher the more messages are given
set vbs=0
" more - pause listings when the screen is full
set more " nomore
" confirm - start a dialog when a command fails
set nocf " cf
" errorbells - ring the bell for error messages
set noeb " eb
" visualbell - use a visual bell instead of beeping
set novb " vb
" helplang - list of preferred languages for finding help
set hlg=
"
" diff mode
"
" diff - use diff mode for the current window (local to window)
set nodiff " diff
" diffopt - options for using diff mode
set dip=filler
" diffexpr - expression used to obtain a diff file
set dex=
" patchexpr - expression used to patch a file
set pex=
"
" mapping
"
" maxmapdepth - maximum depth of mapping
set mmd=1000
" remap - recognize mappings in mapped keys
set remap " noremap
" timeout - allow timing out halfway into a mapping
set to " noto
" ttimeout - allow timing out halfway into a key code
set nottimeout " ttimeout
" timeoutlen - time in msec for 'timeout'
set tm=1000
" ttimeoutlen - time in msec for 'ttimeout'
set ttm=-1
"
" reading and writing files
"
" modeline - enable using settings from modelines when reading a file (local to buffer)
2016-01-01 13:09:34 +00:00
set ml " noml
2013-02-14 09:57:04 +00:00
" modelines - number of lines to check for modelines
set mls=5
" binary - binary file editing (local to buffer)
set nobin " bin
" endofline - last line in the file has an end-of-line (local to buffer)
set eol " noeol
" bomb - Prepend a Byte Order Mark to the file (local to buffer)
set nobomb " bomb
" fileformat - end-of-line format: "dos", "unix" or "mac" (local to buffer)
set ff=unix
" fileformats - list of file formats to look for when editing a file
set ffs=unix,dos,mac
" write - writing files is allowed
set write " nowrite
" writebackup - write a backup file before overwriting a file
set nowb " nowb
" backup - keep a backup after overwriting a file
set nobk " bk
" backupskip - patterns that specify for which files a backup is not made
set bsk=/tmp/*
" backupcopy - whether to make the backup as a copy or rename the existing file
set bkc=auto
" backupdir - list of directories to put backup files in
"set bdir=.,/home/groover/tmp,/home/groover/
" backupext - file name extension for the backup file
set bex=~
" autowrite - automatically write a file when leaving a modified buffer
set noaw " aw
" autowriteall - as 'autowrite', but works with more commands
set noawa " awa
" writeany - always write without asking for confirmation
set nowa " wa
" autoread - automatically read a file when it was modified outside of Vim (global or local to buffer)
set ar " noar
" patchmode - keep oldest version of a file; specifies file name extension
set pm=
" shortname - use 8.3 file names (local to buffer)
set nosn " sn
"
" the swap file
"
" directory - list of directories for the swap file
"set dir=.,/home/groover/tmp,/home/groover,/var/tmp,/tmp
" swapfile - use a swap file for this buffer (local to buffer)
set swf " noswf
" swapsync - "sync", "fsync" or empty; how to flush a swap file to disk
set sws=fsync
" updatecount - number of characters typed to cause a swap file update
set uc=200
" updatetime - time in msec after which the swap file will be updated
set ut=4000
" maxmem - maximum amount of memory in Kbyte used for one buffer
set mm=32768
" maxmemtot - maximum amount of memory in Kbyte used for all buffers
set mmt=32768
"
" command line editing
"
" history - how many command lines are remembered
set hi=100
" wildchar - key that triggers command-line expansion
set wc=9
" wildcharm - like 'wildchar' but can also be used in a mapping
set wcm=0
" wildmode - specifies how command line completion works
set wim=list:longest
" suffixes - list of file name extensions that have a lower priority
set su=.bak,~,.o,.h,.info,.swp,.obj
" suffixesadd - list of file name extensions added when searching for a file (local to buffer)
set sua=
" wildignore - list of patterns to ignore files for file name completion
set wig=.swp
" wildmenu - command-line completion shows a list of matches
set wmnu " nowmnu
" cedit - key used to open the command-line window
set cedit=
" cmdwinheight - height of the command-line window
set cwh=7
"
" executing external commands
"
" shell - name of the shell program used for external commands
set sh=/bin/bash
" shellquote - character(s) to enclose a shell command in
set shq=
" shellxquote - like 'shellquote' but include the redirection
set sxq=
" shellcmdflag - argument for 'shell' to execute a command
set shcf=-c
" shellredir - used to redirect command output to a file
set srr=>%s\ 2>&1
" equalprg - program used for "=" command (global or local to buffer)
set ep=
" formatprg - program used to format lines with "gq" command
set fp=
" keywordprg - program used for the "K" command
set kp=man\ -s
" warn - warn when using a shell command and a buffer has changes
set nowarn " warn
"
" tags
"
" tagbsearch - use binary searching in tags files
set tbs " notbs
" taglength - number of significant characters in a tag name or zero
set tl=0
" tags - list of file names to search for tags (global or local to buffer)
set tag=./tags,./TAGS,tags,TAGS
" tagrelative - file names in a tags file are relative to the tags file
set tr " notr
" tagstack - a :tag command will use the tagstack
set tgst " notgst
" showfulltag - when completing tags in Insert mode show more info
set nosft " sft
" cscopeprg - command for executing cscope
set csprg=cscope
" cscopetag - use cscope for tag commands
set nocst " cst
" cscopetagorder - 0 or 1; the order in which ":cstag" performs a search
set csto=0
" cscopeverbose - give messages when adding a cscope database
set nocsverb " csverb
" cscopepathcomp - how many components of the path to show
set cspc=0
" cscopequickfix - When to open a quickfix window for cscope
set csqf=
"
" running make and jumping to errors
"
" errorfile - name of the file that contains error messages
set ef=errors.err
" errorformat - list of formats for error messages (global or local to buffer)
set efm=%*[^\"]\"%f\"%*\\D%l:\ %m,\"%f\"%*\\D%l:\ %m,%-G%f:%l:\ (Each\ undeclared\ identifier\ is\ reported\ only\ once,%-G%f:%l:\ for\ each\ function\ it\ appears\ in.),%f:%l:%m,\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m,%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',%DMaking\ %*\\a\ in\ %f
" makeprg - program used for the ":make" command (global or local to buffer)
set mp=make
" shellpipe - string used to put the output of ":make" in the error file
set sp=2>&1\|\ tee
" makeef - name of the errorfile for the 'makeprg' command
set mef=
" grepprg - program used for the ":grep" command (global or local to buffer)
set gp=grep\ -n\ $*\ /dev/null
" grepformat - list of formats for output of 'grepprg'
set gfm=%f:%l:%m,%f:%l%m,%f\ \ %l%m
"
" language specific
"
" isfname - specifies the characters in a file name
set isf=@,48-57,/,.,-,_,+,,,#,$,%,~,=
" isident - specifies the characters in an identifier
set isi=@,48-57,_,192-255
" iskeyword - specifies the characters in a keyword (local to buffer)
set isk=@,48-57,_,192-255
" isprint - specifies printable characters
set isp=@,161-255
" rightleft - display the buffer right-to-left (local to window)
set norl " rl
" rightleftcmd - When to edit the command-line right-to-left (local to window)
set rlc=search
" revins - Insert characters backwards
set nori " ri
" allowrevins - Allow CTRL-_ in Insert and Command-line mode to toggle 'revins'
set noari " ari
" aleph - the ASCII code for the first letter of the Hebrew alphabet
set al=224
" hkmap - use Hebrew keyboard mapping
set nohk " hk
" hkmapp - use phonetic Hebrew keyboard mapping
set nohkp " hkp
" altkeymap - use Farsi as the second language when 'revins' is set
set noakm " akm
" fkmap - use Farsi keyboard mapping
set nofk " fk
" arabic - Prepare for editing Arabic text (local to window)
set noarab " arab
" arabicshape - Perform shaping of Arabic characters
set arshape " noarshape
" termbidi - Terminal will perform bidi handling
set notbidi " tbidi
" keymap - name of a keyboard mappping
set kmp=
" langmap - translate characters for Normal mode
set lmap=
" imdisable - when set never use IM; overrules following IM options
set noimd " imd
" iminsert - in Insert mode: 1: use :lmap; 2: use IM; 0: neither (local to window)
set imi=0
" imsearch - entering a search pattern: 1: use :lmap; 2: use IM; 0: neither (local to window)
set ims=0
" imcmdline - when set always use IM when starting to edit a command line
set noimc " imc
"
" multi-byte characters
"
" encoding - character encoding used in Vim: "latin1", "utf-8", "euc-jp", "big5", etc.
set enc=utf-8
" fileencoding - character encoding for the current file (local to buffer)
set fenc=
" fileencodings - automatically detected character encodings
set fencs=ucs-bom
" termencoding - character encoding used by the terminal
set tenc=utf-8
" charconvert - expression used for character encoding conversion
set ccv=
" delcombine - Delete combining (composing) characters on their own
set nodeco " deco
" imactivatekey - key that activates the X input method
set imak=
" ambiwidth - Width of ambiguous width characters
set ambw=single
"
" various
"
" cursorline - show a marker on the current line
set cursorline
2013-02-14 09:57:04 +00:00
" eventignore - list of autocommand events which are to be ignored
set ei=
" loadplugins - load plugin scripts when starting up
set lpl " nolpl
" exrc - enable reading .vimrc/.exrc/.gvimrc in the current directory
set noex " ex
" secure - safer working with script files in the current directory
set nosecure " secure
" gdefault - use the 'g' flag for ":substitute"
set nogd " gd
" edcompatible - 'g' and 'c' flags of ":substitute" toggle
set noed " ed
" maxfuncdepth - maximum depth of function calls
set mfd=100
" sessionoptions - list of words that specifies what to put in a session file
set ssop=blank,buffers,curdir,folds,help,options,winsize
" viewoptions - list of words that specifies what to save for :mkview
set vop=folds,options,cursor
" viewdir - directory where to store files with :mkview
"set vdir=/home/groover/.vim/view
" viminfo - list that specifies what to write in the viminfo file
set vi=
" bufhidden - what happens with a buffer when it's no longer in a window (local to buffer)
set bh=
" buftype - "", "nofile", "nowrite" or "quickfix": type of buffer (local to buffer)
set bt=
" buflisted - whether the buffer shows up in the buffer list (local to buffer)
set bl " nobl
" debug - set to "msg" to see all error messages
set debug=
2013-10-28 22:42:24 +00:00
"
" Configuration gitgutter
"
let g:gitgutter_enabled = 1
let g:gitgutter_highlight_lines = 0
hi SignColumn cterm=none ctermbg=none
"
" Use goimports for Fmt
"
let g:go_fmt_command = "goimports"
2013-02-14 09:57:04 +00:00
"
" filetype (common for plugins)
"
filetype plugin on
"
" I want to use Shift+Arrow in VIM
" http://superuser.com/questions/401926/how-to-get-shiftarrows-and-ctrlarrows-working-in-vim-in-tmux
"
if &term =~ '^screen'
" tmux will send xterm-style keys when its xterm-keys option is on
execute "set <xUp>=\e[1;*A"
execute "set <xDown>=\e[1;*B"
execute "set <xRight>=\e[1;*C"
execute "set <xLeft>=\e[1;*D"
endif
2016-01-01 13:09:34 +00:00
"
" NERDTree configuration
"
" Autostart NERDTree on start
"autocmd vimenter * NERDTree
" On Ctrl-N toggle NERDTree
map <C-n> :NERDTreeToggle<CR>
" Autoclose vim when NERDTree is last window
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | endif
"
2017-12-14 14:45:53 +00:00
" neocomplete / deoplete configuration
"
2017-12-14 14:45:53 +00:00
if v:version >= 800
let g:deoplete#enable_at_startup = 1
else
let g:acp_enableAtStartup = 0 " Disable AutoComplPop.
let g:neocomplete#enable_at_startup = 1 " Use neocomplete.
let g:neocomplete#enable_smart_case = 1 " Use smartcase.
endif
" Enable omni completion.
autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd FileType python setlocal omnifunc=pythoncomplete#Complete
autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags
2016-05-23 22:06:20 +00:00
"
" vim-go configuration
"
let g:go_gocode_autobuild = 1
let g:go_metalinter_deadline = "20s"
let g:go_autodetect_gopath = 0
"
" Autoformat configuration
"
au BufWritePre *.py,*.js :Autoformat
"
" Custom commands
"
command -range=% JF :<line1>,<line2>!jq .