Compare commits

...

No commits in common. "master" and "no-plugins" have entirely different histories.

11 changed files with 34 additions and 326 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.netrwhist

18
.gitmodules vendored
View File

@ -1,18 +0,0 @@
[submodule "bundle/vim-fugitive"]
path = bundle/vim-fugitive
url = https://github.com/tpope/vim-fugitive
[submodule "bundle/vim-colors-solarized"]
path = bundle/vim-colors-solarized
url = git://github.com/altercation/vim-colors-solarized.git
[submodule "bundle/tabular"]
path = bundle/tabular
url = https://github.com/godlygeek/tabular
[submodule "bundle/vim-markdown"]
path = bundle/vim-markdown
url = https://github.com/plasticboy/vim-markdown
[submodule "bundle/vim-flow"]
path = bundle/vim-flow
url = git://github.com/flowtype/vim-flow.git
[submodule "bundle/youcompleteme"]
path = bundle/youcompleteme
url = https://github.com/ycm-core/YouCompleteMe.git

View File

@ -1,29 +1 @@
# VIM configuration
This repository contains all dependencies and third party libs for
volker raschek's vim configuration.
## Installation
```bash
git clone --recurse-submodules git@git.cryptic.systems:volker.raschek/vim.git ~/.vim
git clone --recurse-submodules https://git.cryptic.systems/volker.raschek/vim.git ~/.vim
```
## Update Repositories
```bash
cd ~/.vim
git fetch origin
git rebase origin/master
git submodule update --init --recursive
```
## Update You-Complete-Me
```bash
cd ~/.vim/bundle/youcompleteme
./install.py --all
```
## Tabularize
`<','>Tabularize/|`
# vimrc

View File

@ -1,230 +0,0 @@
" pathogen.vim - path option manipulation
" Maintainer: Tim Pope <http://tpo.pe/>
" Version: 2.0
" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
"
" For management of individually installed plugins in ~/.vim/bundle (or
" ~\vimfiles\bundle), adding `call pathogen#infect()` to your .vimrc
" prior to `fileype plugin indent on` is the only other setup necessary.
"
" The API is documented inline below. For maximum ease of reading,
" :set foldmethod=marker
if exists("g:loaded_pathogen") || &cp
finish
endif
let g:loaded_pathogen = 1
" Point of entry for basic default usage. Give a directory name to invoke
" pathogen#runtime_append_all_bundles() (defaults to "bundle"), or a full path
" to invoke pathogen#runtime_prepend_subdirectories(). Afterwards,
" pathogen#cycle_filetype() is invoked.
function! pathogen#infect(...) abort " {{{1
let source_path = a:0 ? a:1 : 'bundle'
if source_path =~# '[\\/]'
call pathogen#runtime_prepend_subdirectories(source_path)
else
call pathogen#runtime_append_all_bundles(source_path)
endif
call pathogen#cycle_filetype()
endfunction " }}}1
" Split a path into a list.
function! pathogen#split(path) abort " {{{1
if type(a:path) == type([]) | return a:path | endif
let split = split(a:path,'\\\@<!\%(\\\\\)*\zs,')
return map(split,'substitute(v:val,''\\\([\\,]\)'',''\1'',"g")')
endfunction " }}}1
" Convert a list to a path.
function! pathogen#join(...) abort " {{{1
if type(a:1) == type(1) && a:1
let i = 1
let space = ' '
else
let i = 0
let space = ''
endif
let path = ""
while i < a:0
if type(a:000[i]) == type([])
let list = a:000[i]
let j = 0
while j < len(list)
let escaped = substitute(list[j],'[,'.space.']\|\\[\,'.space.']\@=','\\&','g')
let path .= ',' . escaped
let j += 1
endwhile
else
let path .= "," . a:000[i]
endif
let i += 1
endwhile
return substitute(path,'^,','','')
endfunction " }}}1
" Convert a list to a path with escaped spaces for 'path', 'tag', etc.
function! pathogen#legacyjoin(...) abort " {{{1
return call('pathogen#join',[1] + a:000)
endfunction " }}}1
" Remove duplicates from a list.
function! pathogen#uniq(list) abort " {{{1
let i = 0
let seen = {}
while i < len(a:list)
if has_key(seen,a:list[i])
call remove(a:list,i)
else
let seen[a:list[i]] = 1
let i += 1
endif
endwhile
return a:list
endfunction " }}}1
" \ on Windows unless shellslash is set, / everywhere else.
function! pathogen#separator() abort " {{{1
return !exists("+shellslash") || &shellslash ? '/' : '\'
endfunction " }}}1
" Convenience wrapper around glob() which returns a list.
function! pathogen#glob(pattern) abort " {{{1
let files = split(glob(a:pattern),"\n")
return map(files,'substitute(v:val,"[".pathogen#separator()."/]$","","")')
endfunction "}}}1
" Like pathogen#glob(), only limit the results to directories.
function! pathogen#glob_directories(pattern) abort " {{{1
return filter(pathogen#glob(a:pattern),'isdirectory(v:val)')
endfunction "}}}1
" Turn filetype detection off and back on again if it was already enabled.
function! pathogen#cycle_filetype() " {{{1
if exists('g:did_load_filetypes')
filetype off
filetype on
endif
endfunction " }}}1
" Checks if a bundle is 'disabled'. A bundle is considered 'disabled' if
" its 'basename()' is included in g:pathogen_disabled[]' or ends in a tilde.
function! pathogen#is_disabled(path) " {{{1
if a:path =~# '\~$'
return 1
elseif !exists("g:pathogen_disabled")
return 0
endif
let sep = pathogen#separator()
return index(g:pathogen_disabled, strpart(a:path, strridx(a:path, sep)+1)) != -1
endfunction "}}}1
" Prepend all subdirectories of path to the rtp, and append all 'after'
" directories in those subdirectories.
function! pathogen#runtime_prepend_subdirectories(path) " {{{1
let sep = pathogen#separator()
let before = filter(pathogen#glob_directories(a:path.sep."*"), '!pathogen#is_disabled(v:val)')
let after = filter(pathogen#glob_directories(a:path.sep."*".sep."after"), '!pathogen#is_disabled(v:val[0:-7])')
let rtp = pathogen#split(&rtp)
let path = expand(a:path)
call filter(rtp,'v:val[0:strlen(path)-1] !=# path')
let &rtp = pathogen#join(pathogen#uniq(before + rtp + after))
return &rtp
endfunction " }}}1
" For each directory in rtp, check for a subdirectory named dir. If it
" exists, add all subdirectories of that subdirectory to the rtp, immediately
" after the original directory. If no argument is given, 'bundle' is used.
" Repeated calls with the same arguments are ignored.
function! pathogen#runtime_append_all_bundles(...) " {{{1
let sep = pathogen#separator()
let name = a:0 ? a:1 : 'bundle'
if "\n".s:done_bundles =~# "\\M\n".name."\n"
return ""
endif
let s:done_bundles .= name . "\n"
let list = []
for dir in pathogen#split(&rtp)
if dir =~# '\<after$'
let list += filter(pathogen#glob_directories(substitute(dir,'after$',name,'').sep.'*[^~]'.sep.'after'), '!pathogen#is_disabled(v:val[0:-7])') + [dir]
else
let list += [dir] + filter(pathogen#glob_directories(dir.sep.name.sep.'*[^~]'), '!pathogen#is_disabled(v:val)')
endif
endfor
let &rtp = pathogen#join(pathogen#uniq(list))
return 1
endfunction
let s:done_bundles = ''
" }}}1
" Invoke :helptags on all non-$VIM doc directories in runtimepath.
function! pathogen#helptags() " {{{1
let sep = pathogen#separator()
for dir in pathogen#split(&rtp)
if (dir.sep)[0 : strlen($VIMRUNTIME)] !=# $VIMRUNTIME.sep && filewritable(dir.'/doc') == 2 && !empty(glob(dir.'/doc/*')) && (!filereadable(dir.'/doc/tags') || filewritable(dir.'/doc/tags'))
helptags `=dir.'/doc'`
endif
endfor
endfunction " }}}1
command! -bar Helptags :call pathogen#helptags()
" Like findfile(), but hardcoded to use the runtimepath.
function! pathogen#rtpfindfile(file,count) "{{{1
let rtp = pathogen#join(1,pathogen#split(&rtp))
return fnamemodify(findfile(a:file,rtp,a:count),':p')
endfunction " }}}1
function! s:find(count,cmd,file,...) " {{{1
let rtp = pathogen#join(1,pathogen#split(&runtimepath))
let file = pathogen#rtpfindfile(a:file,a:count)
if file ==# ''
return "echoerr 'E345: Can''t find file \"".a:file."\" in runtimepath'"
elseif a:0
let path = file[0:-strlen(a:file)-2]
execute a:1.' `=path`'
return a:cmd.' '.fnameescape(a:file)
else
return a:cmd.' '.fnameescape(file)
endif
endfunction " }}}1
function! s:Findcomplete(A,L,P) " {{{1
let sep = pathogen#separator()
let cheats = {
\'a': 'autoload',
\'d': 'doc',
\'f': 'ftplugin',
\'i': 'indent',
\'p': 'plugin',
\'s': 'syntax'}
if a:A =~# '^\w[\\/]' && has_key(cheats,a:A[0])
let request = cheats[a:A[0]].a:A[1:-1]
else
let request = a:A
endif
let pattern = substitute(request,'\'.sep,'*'.sep,'g').'*'
let found = {}
for path in pathogen#split(&runtimepath)
let matches = split(glob(path.sep.pattern),"\n")
call map(matches,'isdirectory(v:val) ? v:val.sep : v:val')
call map(matches,'v:val[strlen(path)+1:-1]')
for match in matches
let found[match] = 1
endfor
endfor
return sort(keys(found))
endfunction " }}}1
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Ve :execute s:find(<count>,'edit<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vedit :execute s:find(<count>,'edit<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vsplit :execute s:find(<count>,'split<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vvsplit :execute s:find(<count>,'vsplit<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vtabedit :execute s:find(<count>,'tabedit<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vpedit :execute s:find(<count>,'pedit<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vread :execute s:find(<count>,'read<bang>',<q-args>)
command! -bar -bang -count=1 -nargs=1 -complete=customlist,s:Findcomplete Vopen :execute s:find(<count>,'edit<bang>',<q-args>,'lcd')
" vim:set ft=vim ts=8 sw=2 sts=2:

@ -1 +0,0 @@
Subproject commit 00e1e7fcdbc6d753e0bc8043e0d2546fa81bf367

@ -1 +0,0 @@
Subproject commit 528a59f26d12278698bb946f8fb82a63711eec21

@ -1 +0,0 @@
Subproject commit 4acd33aceb3c49c6872ee4f3f717802d4c73efbf

@ -1 +0,0 @@
Subproject commit b5f7c37d939e0eb9d6f3aa82168c86dd27319a0c

@ -1 +0,0 @@
Subproject commit 6d2cb3c06cd546fd4bee4136679db3a3d5de97fa

@ -1 +0,0 @@
Subproject commit 6be9ce1d51dc3d0590346140ce617f8522460845

75
vimrc
View File

@ -1,48 +1,37 @@
" Panthogen
call pathogen#infect()
" Autocmd
autocmd BufWritePre * %s/\s\+$//e " delete deprecated dots at very end of a line
autocmd Filetype make setlocal noexpandtab " use tabs in make files instead whitespaces
autocmd Filetype javascript setlocal shiftwidth=2 softtabstop=2 " javascript files
autocmd Filetype yaml setlocal shiftwidth=2 softtabstop=2 " yaml files
autocmd Filetype xml setlocal shiftwidth=2 softtabstop=2 " xml files
autocmd BufNewFile,BufRead rsnapshot.conf setlocal noexpandtab " use tabs in rsnapshot.conf files instead whitespaces
" Close NerdTree, if NerdTree is the last open buffer
autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
" Key values
" Can do almost everything that set can do, plus more.
" It can assign a value to
let g:solarized_termcolors=256 " enable 256bit map for solarized colorschema
" Set options
" Only works with options
set autoindent " automatically indents text
set background=dark
set encoding=utf-8 " file encoding
set expandtab
set fileformat=unix " use unix fileformat (LF)
set list listchars=eol:$,tab:»·,trail" display dots for identicate tabspaces
set mouse=v " support mouse in visual mode
set nobackup " no backup files
set noswapfile " no swap files
set nowritebackup " only in case you don't want a backup file while editing
"set rnu " show row numbers from the position of the cursor
set nu " show row numbers from beginning
set statusline=%{fugitive#statusline()} " config my own statusline
set shiftwidth=2
set smarttab
set tabstop=2
" Style
colorscheme elflord
syntax on
set wildmenu
set wildmode=longest,list,full " autocompleteion bash
set autoindent
" Other
colorscheme solarized " colorschema
scriptencoding utf-8 " script encoding
syntax enable " enable syntaxhighlighting
" Tab
set tabstop=2
set shiftwidth=2
set expandtab
set smarttab
"set textwidth=72
" Show row numbers
set nu
scriptencoding utf-8
set encoding=utf-8
" Strip trailing whitespaces
autocmd BufWritePre * %s/\s\+$//e
" Display extra whitespace
set list listchars=eol:$,tab:»·,trail
" Copy paste about clipboard
set mouse=v
" Sepcial configurations
autocmd Filetype make setlocal noexpandtab
autocmd BufNewFile,BufRead rsnapshot.conf setlocal noexpandtab
" Autocompletion (bash)
set wildmode=longest,list,full
" Shortcuts