From 0042c82050ccdd035580966eb84e2f0f430e92ad Mon Sep 17 00:00:00 2001 From: James Date: Wed, 7 Apr 2021 10:27:25 +1000 Subject: [PATCH] Add all current Vim configuration. --- .vim/.netrwhist | 2 + .vim/bundle/Vundle.vim | 1 + .vim/bundle/puppet.vim | 436 +++++++++++++++++++++++++++++++++++++++++ .vim/bundle/syntastic | 1 + .vim/bundle/tabular | 1 + .vim/bundle/vim-puppet | 1 + .vimrc | 121 ++++++++++++ README.md | 6 +- 8 files changed, 567 insertions(+), 2 deletions(-) create mode 100644 .vim/.netrwhist create mode 160000 .vim/bundle/Vundle.vim create mode 100644 .vim/bundle/puppet.vim create mode 160000 .vim/bundle/syntastic create mode 160000 .vim/bundle/tabular create mode 160000 .vim/bundle/vim-puppet create mode 100644 .vimrc diff --git a/.vim/.netrwhist b/.vim/.netrwhist new file mode 100644 index 0000000..ece39a4 --- /dev/null +++ b/.vim/.netrwhist @@ -0,0 +1,2 @@ +let g:netrw_dirhistmax =10 +let g:netrw_dirhistcnt =8 diff --git a/.vim/bundle/Vundle.vim b/.vim/bundle/Vundle.vim new file mode 160000 index 0000000..b255382 --- /dev/null +++ b/.vim/bundle/Vundle.vim @@ -0,0 +1 @@ +Subproject commit b255382d6242d7ea3877bf059d2934125e0c4d95 diff --git a/.vim/bundle/puppet.vim b/.vim/bundle/puppet.vim new file mode 100644 index 0000000..bf618ff --- /dev/null +++ b/.vim/bundle/puppet.vim @@ -0,0 +1,436 @@ +" Language: Puppet +" Maintainer: Voxpupuli +" URL: https://github.com/voxpupuli/vim-puppet +" +" Thanks to Doug Kearns who maintains the vim syntax file for Ruby. Many constructs, including interpolation +" and heredoc was copied from ruby and then modified to comply with Puppet syntax. + +" Prelude {{{1 +if exists("b:current_syntax") + finish +endif + +" this file uses line continuations +let s:cpo_sav = &cpo +set cpo&vim + +syn cluster puppetNotTop contains=@puppetExtendedStringSpecial,@puppetRegexpSpecial,@puppetDeclaration,puppetConditional,puppetExceptional,puppetMethodExceptional,puppetTodo + +syn match puppetSpaceError display excludenl "\s\+$" +syn match puppetSpaceError display " \+\t"me=e-1 + +" one character operators +syn match puppetOperator "[=><+/*%!.|@:,;?~-]" + +" two character operators +syn match puppetOperator "+=\|-=\|==\|!=\|=\~\|!\~\|>=\|<=\|<-\|<\~\|=>\|+>\|->\|\~>\|<<\||>\|@@" + +" three character operators +syn match puppetOperator "<<|\||>>" + +syn region puppetBracketOperator matchgroup=puppetDelimiter start="\[\s*" end="\s*]" contains=ALLBUT,@puppetNotTop +syn region puppetBraceOperator matchgroup=puppetDelimiter start="{\s*" end="\s*}" contains=ALLBUT,@puppetNotTop +syn region puppetParenOperator matchgroup=puppetDelimiter start="(\s*" end="\s*)" contains=ALLBUT,@puppetNotTop + +" Expression Substitution and Backslash Notation {{{1 +syn match puppetStringEscape "\\\\\|\\[abefnrstv]\|\\\o\{1,3}\|\\x\x\{1,2}" contained display +syn match puppetStringEscape "\%(\\M-\\C-\|\\C-\\M-\|\\M-\\c\|\\c\\M-\|\\c\|\\C-\|\\M-\)\%(\\\o\{1,3}\|\\x\x\{1,2}\|\\\=\S\)" contained display +syn match puppetQuoteEscape "\\[\\']" contained display + +syn region puppetInterpolation matchgroup=puppetInterpolationDelimiter start="${" end="}" contained contains=ALLBUT,@puppetNotTop +syn match puppetInterpolation "$\%(::\)\?\w\+" display contained contains=puppetInterpolationDelimiter,puppetVariable +syn match puppetInterpolationDelimiter "$\ze\$\w\+" display contained +syn match puppetInterpolation "$\$\%(-\w\|\W\)" display contained contains=puppetInterpolationDelimiter,puppetVariable,puppetInvalidVariable +syn match puppetInterpolationDelimiter "$\ze\$\%(-\w\|\W\)" display contained +syn region puppetNoInterpolation start="\\${" end="}" contained +syn match puppetNoInterpolation "\\${" display contained +syn match puppetNoInterpolation "\\$\w\+" display contained + +syn match puppetDelimiterEscape "\\[(<{\[)>}\]]" transparent display contained contains=NONE + +syn region puppetNestedParentheses start="(" skip="\\\\\|\\)" matchgroup=puppetString end=")" transparent contained +syn region puppetNestedCurlyBraces start="{" skip="\\\\\|\\}" matchgroup=puppetString end="}" transparent contained +syn region puppetNestedAngleBrackets start="<" skip="\\\\\|\\>" matchgroup=puppetString end=">" transparent contained +syn region puppetNestedSquareBrackets start="\[" skip="\\\\\|\\\]" matchgroup=puppetString end="\]" transparent contained + +" Regular Expression Metacharacters {{{1 +" These are mostly Oniguruma ready +syn region puppetRegexpComment matchgroup=puppetRegexpSpecial start="(?#" skip="\\)" end=")" contained +syn region puppetRegexpParens matchgroup=puppetRegexpSpecial start="(\(?:\|?<\=[=!]\|?>\|?<[a-z_]\w*>\|?[imx]*-[imx]*:\=\|\%(?#\)\@!\)" skip="\\)" end=")" contained transparent contains=@puppetRegexpSpecial +syn region puppetRegexpBrackets matchgroup=puppetRegexpCharClass start="\[\^\=" skip="\\\]" end="\]" contained transparent contains=puppetStringEscape,puppetRegexpEscape,puppetRegexpCharClass oneline +syn match puppetRegexpCharClass "\\[DdHhSsWw]" contained display +syn match puppetRegexpCharClass "\[:\^\=\%(alnum\|alpha\|ascii\|blank\|cntrl\|digit\|graph\|lower\|print\|punct\|space\|upper\|xdigit\):\]" contained +syn match puppetRegexpEscape "\\[].*?+^$|\\/(){}[]" contained +syn match puppetRegexpQuantifier "[*?+][?+]\=" contained display +syn match puppetRegexpQuantifier "{\d\+\%(,\d*\)\=}?\=" contained display +syn match puppetRegexpAnchor "[$^]\|\\[ABbGZz]" contained display +syn match puppetRegexpDot "\." contained display +syn match puppetRegexpSpecial "|" contained display +syn match puppetRegexpSpecial "\\[1-9]\d\=\d\@!" contained display +syn match puppetRegexpSpecial "\\k<\%([a-z_]\w*\|-\=\d\+\)\%([+-]\d\+\)\=>" contained display +syn match puppetRegexpSpecial "\\k'\%([a-z_]\w*\|-\=\d\+\)\%([+-]\d\+\)\='" contained display +syn match puppetRegexpSpecial "\\g<\%([a-z_]\w*\|-\=\d\+\)>" contained display +syn match puppetRegexpSpecial "\\g'\%([a-z_]\w*\|-\=\d\+\)'" contained display + +syn cluster puppetStringSpecial contains=puppetInterpolation,puppetNoInterpolation,puppetStringEscape +syn cluster puppetExtendedStringSpecial contains=@puppetStringSpecial,puppetNestedParentheses,puppetNestedCurlyBraces,puppetNestedAngleBrackets,puppetNestedSquareBrackets +syn cluster puppetRegexpSpecial contains=puppetRegexpSpecial,puppetRegexpEscape,puppetRegexpBrackets,puppetRegexpCharClass,puppetRegexpDot,puppetRegexpQuantifier,puppetRegexpAnchor,puppetRegexpParens,puppetRegexpComment + +syn match puppetInteger "\%(\%(\w\|[]})\"']\s*\)\@" display +syn match puppetInteger "\%(\%(\w\|[]})\"']\s*\)\@" display +syn match puppetInteger "\%(\%(\w\|[]})\"']\s*\)\@" display +syn match puppetInteger "\%(\%(\w\|[]})\"']\s*\)\@" display +syn match puppetFloat "\%(\%(\w\|[]})\"']\s*\)\@" display +syn match puppetFloat "\%(\%(\w\|[]})\"']\s*\)\@" display + +syn match puppetVariable "$\%(::\)\=\w\+\%(::\w\+\)*" display +syn match puppetName "\%(::\)\=[a-z]\w*\%(::[a-z]\w*\)*" display +syn match puppetType "\%(::\)\=[A-Z]\w*\%(::[A-Z]\w*\)*" display +syn match puppetWord "\%(\%(::\)\=\%(_[\w-]*\w\+\)\|\%([a-z]\%(\w*-\)\+\w\+\)\)\+" display + +" bad name containing combinations of segment starting with lower case and segement starting with upper case (or vice versa) +syn match puppetNameBad "\%(::\)\=\%(\w\+::\)*\%(\%([a-z]\w*::[A-Z]\w*\)\|\%([A-Z]\w*::[a-z]\w*\)\)\%(::\w\+\)*" display +syn cluster puppetNameOrType contains=puppetVariable,puppetName,puppetType,puppetWord,puppetNameBad + +syn keyword puppetControl case and or in +syn keyword puppetKeyword class define inherits node undef function type attr private +syn keyword puppetKeyword application consumes produces site +syn keyword puppetKeyword present absent purged latest installed running stopped mounted unmounted role configured file directory link on_failure contained +syn keyword puppetConstant default undef +syn keyword puppetConditional if else elsif unless +syn keyword puppetBoolean true false + +" Core functions +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" +syn match puppetFunction "\" + +" Stdlib functions +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" +syn match puppetStdLibFunction "\" + +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" + +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" +syn match puppetType "\" + +" Normal String {{{1 +syn region puppetString matchgroup=puppetStringDelimiter start="\"" end="\"" skip="\\\\\|\\\"" contains=@puppetStringSpecial +syn region puppetString matchgroup=puppetStringDelimiter start="'" end="'" skip="\\\\\|\\'" contains=puppetQuoteEscape + +" Normal Regular Expression {{{1 +syn region puppetRegexp matchgroup=puppetRegexpDelimiter start="\%(\%(^\|\<\%(and\|or\|while\|until\|unless\|if\|elsif\|when\|not\|then\|else\)\|[;\~=!|&(,{[<>?:*+-]\)\s*\)\@<=/" end="/" skip="\\\\\|\\/" contains=@puppetRegexpSpecial +syn region puppetRegexp matchgroup=puppetRegexpDelimiter start="\%(\h\k*\s\+\)\@<=/[ \t=]\@!" end="/" skip="\\\\\|\\/" contains=@puppetRegexpSpecial + +" Here Document {{{1 +syn region puppetHeredocStart matchgroup=puppetStringDelimiter start=+@(\s*\%("[^"]\+"\|\w\+\)\%(/[nrtsuL$\\]*\)\=)+ end=+$+ oneline contains=ALLBUT,@puppetNotTop + +syn region puppetString start=+@(\s*"\z([^"]\+\)"\%(/[nrtsuL$\\]*\)\=+hs=s+2 matchgroup=puppetStringDelimiter end=+^\s*|\=\s*-\=\s*\zs\z1$+ contains=puppetHeredocStart,@puppetStringSpecial keepend +syn region puppetString start=+@(\s*\z(\w\+\)\%(/[nrtsuL$\\]*\)\=+hs=s+2 matchgroup=puppetStringDelimiter end=+^\s*|\=\s*-\=\s*\zs\z1$+ contains=puppetHeredocStart keepend + +" comments last overriding everything else +syn match puppetComment "\s*#.*$" contains=puppetTodo,@Spell +syn region puppetComment start="/\*" end="\*/" contains=puppetTodo,@Spell extend +syn keyword puppetTodo TODO NOTE FIXME XXX BUG HACK contained + +" Define the default highlighting. +command -nargs=+ HiLink hi def link + +HiLink puppetRegexp puppetConstant +HiLink puppetStdLibFunction puppetFunction +HiLink puppetNoInterpolation puppetString +HiLink puppetFunction Function +HiLink puppetOperator Operator +HiLink puppetString String +HiLink puppetWord String +HiLink puppetFloat Float +HiLink puppetInteger Number +HiLink puppetBoolean Boolean +HiLink puppetName puppetIdentifier +HiLink puppetNameBad Error +HiLink puppetVariable puppetIdentifier +HiLink puppetIdentifier Identifier +HiLink puppetType Type +HiLink puppetConditional Conditional +HiLink puppetConstant Constant +HiLink puppetControl Statement +HiLink puppetKeyword Keyword +HiLink puppetStringDelimiter Delimiter +HiLink puppetDelimiter Delimiter +HiLink puppetTodo Todo +HiLink puppetComment Comment + +delcommand HiLink + +let b:current_syntax = "puppet" diff --git a/.vim/bundle/syntastic b/.vim/bundle/syntastic new file mode 160000 index 0000000..6374164 --- /dev/null +++ b/.vim/bundle/syntastic @@ -0,0 +1 @@ +Subproject commit 63741646a9e87bbe105674747555aded6f52c490 diff --git a/.vim/bundle/tabular b/.vim/bundle/tabular new file mode 160000 index 0000000..339091a --- /dev/null +++ b/.vim/bundle/tabular @@ -0,0 +1 @@ +Subproject commit 339091ac4dd1f17e225fe7d57b48aff55f99b23a diff --git a/.vim/bundle/vim-puppet b/.vim/bundle/vim-puppet new file mode 160000 index 0000000..fc6e9ef --- /dev/null +++ b/.vim/bundle/vim-puppet @@ -0,0 +1 @@ +Subproject commit fc6e9efef797c505b2e67631ad2517d7d6e8f00d diff --git a/.vimrc b/.vimrc new file mode 100644 index 0000000..7ed670b --- /dev/null +++ b/.vimrc @@ -0,0 +1,121 @@ +set nocompatible " be iMproved, required +filetype off " required + +" Fix for not detecting puppet filetype properly +au! BufRead,BufNewFile *.pp setfiletype puppet + +" Enable the mouse without it going into visual mode or highlighting on normal clicks (use shift+mouse to highlight and copy/paste) +set mouse=nicr + +" Colors in puppet manifests +source ~/.vim/bundle/puppet.vim + +" Use this colorsceheme +colorscheme desert + +" Enable syntax highlighting +syntax enable + +" Force different search highlight colours +hi Search ctermbg=LightGrey +hi Search ctermfg=DarkBlue + +" Use tabs +set noexpandtab + +" 1 tab == 4 spaces +set shiftwidth=4 +set tabstop=4 +set softtabstop=4 + +" Set backspace to include autoindent +set backspace=indent,eol,start + +" Minimal number of screen lines to keep above and below the cursor. +set so=7 + +" Show matching brackets when cursor is over them +set showmatch + +" Display extra whitespace +set list listchars=tab:»·,trail:·,nbsp:· + +" Enables normal line numbering +set number + +" Enable/Toggle relative line numbering ( \ + n ) +nnoremap n :set relativenumber! + +" Toggle on/off all formatting for easier copy/paste to clipboard ( \ + ] ) +nnoremap ] :set number! list! cursorline! + +" Enable underline of current line +set cursorline + +" Enable background colour highlighting for current line ( https://upload.wikimedia.org/wikipedia/commons/1/15/Xterm_256color_chart.svg ) +" hi cursorline ctermbg=023 + +" Config for Puppet Ctags +set iskeyword=-,:,@,48-57,_,192-255 + +" Set default folder as the puppet repo (this will allow ctags usage for that db without having to define the full path when opening pp file in vim) +" cd /home/james/git-repos/puppet + +" Set vim to show full path of opened file down the bottom, as well as the current line and column. +set laststatus=2 +set statusline+=%F\ \ \ \Line:\ %l/%L\ \ Column:\ %c + +" Open current file in kate with 'Of' or 'F4' +command Of :!kate "%:p" +noremap :!kate "%:p" + +" Open the directory of the currently open file with 'Od' or 'F5' +command Od :!nautilus "%:p" +noremap :!nautilus "%:p" + +" Live diff updates +autocmd InsertLeave * if &diff == 1 | diffupdate | endif + +" Fix indentation with comments when using python +autocmd FileType python setlocal cindent cinkeys-=0# indentkeys-=0# + +" Fix indentation with yaml files +autocmd Filetype yaml setlocal shiftwidth=2 tabstop=2 softtabstop=2 expandtab indentkeys-=0# " indentkeys-=<:> + +" Syntax highlighting in Markdown +autocmd Filetype markdown syntax sync fromstart +autocmd BufNewFile,BufReadPost *.md set filetype=markdown spell textwidth=150 colorcolumn=+1 +let g:markdown_fenced_languages = ['bash=sh', 'css', 'django', 'javascript', 'js=javascript', 'json=javascript', 'perl', 'php', 'python', 'ruby', 'sass', 'xml', 'html'] + +" Automatically equalize splits when Vim is resized +autocmd VimResized * wincmd = + +" Set the runtime path to include Vundle and initialize +set rtp+=~/.vim/bundle/Vundle.vim +call vundle#begin() +" alternatively, pass a path where Vundle should install plugins +" call vundle#begin('~/some/path/here') + +" let Vundle manage Vundle, required +Plugin 'VundleVim/Vundle.vim' + +call vundle#end() " required +filetype plugin indent on " required +" To ignore plugin indent changes, instead use: +"filetype plugin on +" +" Brief help +" :PluginList - lists configured plugins +" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate +" :PluginSearch foo - searches for foo; append `!` to refresh local cache +" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal +" +" see :h vundle for more details or wiki for FAQ +" Put your non-Plugin stuff after this line +" +Plugin 'scrooloose/syntastic' +Plugin 'godlygeek/tabular.git' +Plugin 'rodjek/vim-puppet' + +autocmd FileType gitcommit call setpos('.', [0, 1, 1, 0]) + diff --git a/README.md b/README.md index 74d3dfa..0c2a891 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,5 @@ -# Vim Configuration +# Vim Configuration # -A repository for my Vim configuration. \ No newline at end of file +A repository for my Vim configuration. + +1. Place the contents of the repository into your user home directory. -- GitLab