Skip to content
Browse files

initial checkin without submodules

  • Loading branch information...
0 parents commit e80f3110f3af7ad0807e41312df36d49c29011a8 Michael Schubert committed Jan 28, 2011
Showing with 351 additions and 0 deletions.
  1. +1 −0 .gitignore
  2. +33 −0 .gitmodules
  3. +139 −0 autoload/pathogen.vim
  4. +178 −0 vimrc
1 .gitignore
@@ -0,0 +1 @@
+.netrwhist
33 .gitmodules
@@ -0,0 +1,33 @@
+[submodule "bundle/vim-vividchalk"]
+ path = bundle/vim-vividchalk
+ url = git://github.com/tpope/vim-vividchalk.git
+[submodule "bundle/molokai"]
+ path = bundle/molokai
+ url = git://github.com/vim-scripts/molokai.git
+[submodule "bundle/vim-rails"]
+ path = bundle/vim-rails
+ url = git://github.com/tpope/vim-rails.git
+[submodule "bundle/vim-cucumber"]
+ path = bundle/vim-cucumber
+ url = git://github.com/tpope/vim-cucumber.git
+[submodule "bundle/vim-haml"]
+ path = bundle/vim-haml
+ url = git://github.com/tpope/vim-haml.git
+[submodule "bundle/vim-endwise"]
+ path = bundle/vim-endwise
+ url = git://github.com/tpope/vim-endwise.git
+[submodule "bundle/vim-surround"]
+ path = bundle/vim-surround
+ url = git://github.com/tpope/vim-surround.git
+[submodule "bundle/vim-repeat"]
+ path = bundle/vim-repeat
+ url = git://github.com/tpope/vim-repeat.git
+[submodule "bundle/nerdtree"]
+ path = bundle/nerdtree
+ url = git://github.com/scrooloose/nerdtree.git
+[submodule "bundle/nerdcommenter"]
+ path = bundle/nerdcommenter
+ url = git://github.com/scrooloose/nerdcommenter.git
+[submodule "bundle/ack.vim"]
+ path = bundle/ack.vim
+ url = https://github.com/mileszs/ack.vim.git
139 autoload/pathogen.vim
@@ -0,0 +1,139 @@
+" pathogen.vim - path option manipulation
+" Maintainer: Tim Pope <vimNOSPAM@tpope.org>
+" Version: 1.2
+
+" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
+"
+" API is documented below.
+
+if exists("g:loaded_pathogen") || &cp
+ finish
+endif
+let g:loaded_pathogen = 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
+
+" Returns a hash indicating which filetype features are enabled.
+function! pathogen#filetype() abort " {{{1
+ redir => output
+ silent filetype
+ redir END
+ let result = {}
+ let result.detection = match(output,'detection:ON') >= 0
+ let result.indent = match(output,'indent:ON') >= 0
+ let result.plugin = match(output,'plugin:ON') >= 0
+ return result
+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
+
+" 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 = pathogen#glob_directories(a:path.sep."*[^~]")
+ let after = pathogen#glob_directories(a:path.sep."*[^~]".sep."after")
+ 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'
+ let list = []
+ for dir in pathogen#split(&rtp)
+ if dir =~# '\<after$'
+ let list += pathogen#glob_directories(substitute(dir,'after$',name.sep.'*[^~]'.sep.'after','')) + [dir]
+ else
+ let list += [dir] + pathogen#glob_directories(dir.sep.name.sep.'*[^~]')
+ endif
+ endfor
+ let &rtp = pathogen#join(pathogen#uniq(list))
+ return 1
+endfunction
+
+" }}}1
+
+" Invoke :helptags on all non-$VIM doc directories in runtimepath.
+function! pathogen#helptags() " {{{1
+ for dir in pathogen#split(&rtp)
+ if dir[0 : strlen($VIM)-1] !=# $VIM && isdirectory(dir.'/doc') && (!filereadable(dir.'/doc/tags') || filewritable(dir.'/doc/tags'))
+ helptags `=dir.'/doc'`
+ endif
+ endfor
+endfunction " }}}1
+
+" vim:set ft=vim ts=8 sw=2 sts=2:
178 vimrc
@@ -0,0 +1,178 @@
+"pathogen setup
+filetype off
+call pathogen#helptags()
+call pathogen#runtime_append_all_bundles()
+
+"see vim-rails plugin doc [rails.txt]
+set nocompatible
+syntax on
+filetype plugin indent on
+
+
+" SHORTCUT KEY MAPPINGS """""""""""""""""""
+
+"ctrl+alt+f for ack current word in command mode
+map <C-M-f> :call AckGrep()<CR>
+function! AckGrep()
+ let command = "ack ".expand("<cword>")
+ cexpr system(command)
+ cw
+endfunction
+
+"prev/next in quickfix file listing (e.g. search results)
+map <M-D-Down> :cn<CR>
+map <M-D-Up> :cp<CR>
+
+"select open file, MRU sorted
+map <D-e> :FufBuffer<CR>
+
+"open file
+map <D-N> :FufFile **/<CR>
+
+"opt-cmd-arrows [next & previous open files]
+map <M-D-Left> :bp<CR>
+map <M-D-Right> :bn<CR>
+
+"indent/unindent visual mode selection with tab/shift+tab
+vmap <tab> >gv
+vmap <s-tab> <gv
+
+"Undo/Redo using undo tree with cmd-z/cmd-shift-z
+map <D-z> :earlier 1<CR>
+map <D-Z> :later 1<CR>
+
+"file tree browser - backslash
+map \ :NERDTreeToggle<CR>
+
+"simple comment/uncomment visual selection with cmd+/
+vmap <silent> <D-/> :call CommentOutLine()<CR>
+function! CommentOutLine()
+ let ext = expand("%:e")
+
+ if ext == "rb" || ext == "sh" || ext == "feature"
+ let comment_prefix = "#"
+ elseif ext == "c" || ext == "cpp" || ext == "h" || ext == "h" || ext == "m" || ext == "mm" || ext == "js"
+ let comment_prefix = "//"
+ elseif ext == "vim"
+ let comment_prefix = '"'"'
+ endif
+ let line = getline('.')
+ let pattern = "^".comment_prefix
+ if line =~ pattern
+ call setline(".", substitute(line, pattern, "", ""))
+ else
+ call setline(".", substitute(line, "^", comment_prefix, ""))
+ endif
+endfunction
+
+"strip trailing whitespace on save for code files
+"cocoa
+autocmd BufWritePre *.m,*.h,*.c,*.mm,*.cpp,*.hpp :%s/\s\+$//e
+"rails
+autocmd BufWritePre *.rb,*.yml,*.js,*.css,*.less,*.sass,*.html,*.xml,*.erb,*.haml :%s/\s\+$//e
+"misc
+autocmd BufWritePre *.java,*.php :%s/\s\+$//e
+
+" SETTINGS """"""""""""""""""""""""""""""""
+"set t_Co=256
+colorscheme vividchalk
+
+"Show whitespace, fullstops for trailing whitespace
+set list
+set listchars=trail:.
+
+"Keep backup files somewhere else
+set backupdir=~/.vim-tmp,~/tmp,/var/tmp,/tmp
+
+"No swapfiles
+set noswapfile
+
+"no toolbar
+set guioptions-=T
+
+"font
+set guifont=Inconsolata:h24
+
+"history size
+set history=1024
+
+"incremental search
+set incsearch
+
+"no wrapping
+set wrap!
+
+"line numbers
+set number
+
+"always show statusline
+set laststatus=2
+
+"show matching brackets
+set showmatch
+
+"tab settings
+set tabstop=2
+set smarttab
+set shiftwidth=2
+set autoindent
+set expandtab
+
+
+" Rayban & Peter
+let mapleader = ","
+
+" FuzzyFinder and switchback commands
+map <leader>e :e#<CR>
+map <leader>b :FufBuffer<CR>
+map <leader>f :FufFile<CR>
+map <leader><C-N> :FufFile **/<CR>
+
+" search
+map <leader>s :%s/
+
+" Split screen vertically and move between screens.
+map <leader>v :vsp<CR>
+map <leader>w ^Ww
+map <leader>= ^W=
+
+" Move between horizontally split screens.
+map <leader>j ^Wj
+map <leader>k ^Wk
+
+" set question mark to be part of a VIM word. in Ruby it is!
+set isk=@,48-57,_,?,!,192-255
+
+" Insert ' => '
+imap <Space>=><Space>
+
+" reload .vimrc
+map <leader>rv :source ~/.vimrc<CR>
+
+" ctags again with gemhome added
+map <leader>t :!/usr/local/bin/ctags -R --exclude=.git --exclude=log * `rvm gemhome`/*<CR>
+
+" F7 reformats the whole file and leaves you where you were (unlike gg)
+map <F7> mzgg=G'z :delmarks z<CR>
+
+" Make Cmd-// comment the current line, except Cmd-/ is bound, so it doesn't
+" work right now.
+map <D-/><D-/> v<D-/>
+
+" Turn on Ruby folding but unfold when you open a new file because it's
+" annoying
+"let ruby_fold=1
+"au BufAdd *.rb foldopen!
+
+" Write all writeable buffers when changing buffers or losing focus.
+autocmd FocusLost * wall
+set autowriteall
+
+" Show typed command prefixes while waiting for operator.
+set showcmd
+
+" Open reposh
+map <C-G> :!reposh<CR>
+map <C-A> :!gitx<CR><CR>
+
+imap <D-CR> <ESC>o

0 comments on commit e80f311

Please sign in to comment.
Something went wrong with that request. Please try again.