diff options
author | xero <x@xero.nu> | 2015-07-26 20:12:44 -0400 |
---|---|---|
committer | xero <x@xero.nu> | 2015-07-26 20:12:44 -0400 |
commit | 861176bcb7ac4686a1786ef33977942584d2fe3a (patch) | |
tree | 01b61a940e3975ab8c078098a4bf45f0fabcd5ac /vim | |
parent | 9b7ec8a95106dcd86bfb46d16edfc1530897940c (diff) | |
download | dotfiles_ascii-861176bcb7ac4686a1786ef33977942584d2fe3a.tar.xz dotfiles_ascii-861176bcb7ac4686a1786ef33977942584d2fe3a.zip |
start using the silver searcher's
Usage: ag [FILE-TYPE] [OPTIONS] PATTERN [PATH]
Recursively search for PATTERN in PATH.
Like grep or ack, but faster.
Example:
ag -i foo /bar/
Output Options:
--ackmate Print results in AckMate-parseable format
-A --after [LINES] Print lines after match (Default: 2)
-B --before [LINES] Print lines before match (Default: 2)
--[no]break Print newlines between matches in different files
(Enabled by default)
-c --count Only print the number of matches in each file.
(This often differs from the number of matching lines)
--[no]color Print color codes in results (Enabled by default)
--color-line-number Color codes for line numbers (Default: 1;33)
--color-match Color codes for result match numbers (Default: 30;43)
--color-path Color codes for path names (Default: 1;32)
--column Print column numbers in results
--[no]filename Print file names (Enabled unless searching a single file)
-H --[no]heading Print file names before each file's matches
(Enabled by default)
-C --context [LINES] Print lines before and after matches (Default: 2)
--[no]group Same as --[no]break --[no]heading
-g PATTERN Print filenames matching PATTERN
-l --files-with-matches Only print filenames that contain matches
(don't print the matching lines)
-L --files-without-matches
Only print filenames that don't contain matches
--[no]numbers Print line numbers. Default is to omit line numbers
when searching streams
-o --only-matching Prints only the matching part of the lines
--print-long-lines Print matches on very long lines (Default: >2k characters)
--passthrough When searching a stream, print all lines even if they
don't match
--silent Suppress all log messages, including errors
--stats Print stats (files scanned, time taken, etc.)
--vimgrep Print results like vim's :vimgrep /pattern/g would
(it reports every match on the line)
-0 --null --print0 Separate filenames with null (for 'xargs -0')
Search Options:
-a --all-types Search all files (doesn't include hidden files
or patterns from ignore files)
-D --debug Ridiculous debugging (probably not useful)
--depth NUM Search up to NUM directories deep (Default: 25)
-f --follow Follow symlinks
-F --fixed-strings Alias for --literal for compatibility with grep
-G --file-search-regex PATTERN Limit search to filenames matching PATTERN
--hidden Search hidden files (obeys .*ignore files)
-i --ignore-case Match case insensitively
--ignore PATTERN Ignore files/directories matching PATTERN
(literal file/directory names also allowed)
--ignore-dir NAME Alias for --ignore for compatibility with ack.
-m --max-count NUM Skip the rest of a file after NUM matches (Default: 10,000)
--one-device Don't follow links to other devices.
-p --path-to-agignore STRING
Use .agignore file at STRING
-Q --literal Don't parse PATTERN as a regular expression
-s --case-sensitive Match case sensitively
-S --smart-case Match case insensitively unless PATTERN contains
uppercase characters (Enabled by default)
--search-binary Search binary files for matches
-t --all-text Search all text files (doesn't include hidden files)
-u --unrestricted Search all files (ignore .agignore, .gitignore, etc.;
searches binary and hidden files as well)
-U --skip-vcs-ignores Ignore VCS ignore files
(.gitignore, .hgignore, .svnignore; still obey .agignore)
-v --invert-match
-w --word-regexp Only match whole words
-z --search-zip Search contents of compressed (e.g., gzip) files
File Types:
The search can be restricted to certain types of files. Example:
ag --html needle
- Searches for 'needle' in files with suffix .htm, .html, .shtml or .xhtml.
For a list of supported file types run:
ag --list-file-types command
Diffstat (limited to '')
-rw-r--r-- | vim/.vimrc | 250 |
1 files changed, 129 insertions, 121 deletions
@@ -126,124 +126,132 @@ set cursorcolumn " ╹ ┗━╸┗━┛┗━┛╹╹ ╹ ┗━┛ ╹ ┗━┛╹ ╹ " i struggle with the decision to use plugins or a more vanilla vim. but right now i'm feeling sytanx completion, linting, and visual git diffs. don't judge me. " to install from the shell run: -"& git clone https://github.com/gmarik/Vundle.vim.git ~/dotfiles/vim/.vim/bundle/Vundle.vim && vim +BundleInstall +qall && PYTHON=/usr/bin/python2 ~/dotfiles/vim/.vim/bundle/YouCompleteMe/install.sh --clang-completer - -set rtp+=~/.vim/bundle/Vundle.vim -call vundle#begin() -Plugin 'gmarik/Vundle.vim' -Plugin 'Valloric/YouCompleteMe' -Plugin 'scrooloose/syntastic' -Plugin 'airblade/vim-gitgutter' -Plugin 'isa/vim-matchit' -Plugin 'shawncplus/phpcomplete.vim' -Plugin 'mustache/vim-mustache-handlebars' -Plugin 'itchyny/lightline.vim' -Plugin 'tpope/vim-fugitive' -call vundle#end() -filetype plugin indent on - -" syntatic http://git.io/syntastic.vim -" linters: (from aur) nodejs-jshint, nodejs-jsonlint, csslint, checkbashisms -let g:syntastic_always_populate_loc_list = 1 -let g:syntastic_auto_loc_list = 1 -let g:syntastic_check_on_open = 1 -let g:syntastic_check_on_wq = 0 -highlight SyntasticErrorSign ctermfg=red ctermbg=237 -highlight SyntasticWarningSign ctermfg=yellow ctermbg=237 -highlight SyntasticStyleErrorSign ctermfg=red ctermbg=237 -highlight SyntasticStyleWarningSign ctermfg=yellow ctermbg=237 - -" git-gutter http://git.io/vimgitgutter -let g:gitgutter_realtime = 1 -let g:gitgutter_eager = 1 -let g:gitgutter_diff_args = '-w' -let g:gitgutter_sign_added = '+' -let g:gitgutter_sign_modified = '~' -let g:gitgutter_sign_removed = '-' -let g:gitgutter_sign_removed_first_line = '^' -let g:gitgutter_sign_modified_removed = ':' -let g:gitgutter_max_signs = 1500 -highlight clear SignColumn -highlight GitGutterAdd ctermfg=green ctermbg=237 -highlight GitGutterChange ctermfg=yellow ctermbg=237 -highlight GitGutterDelete ctermfg=red ctermbg=237 -highlight GitGutterChangeDelete ctermfg=red ctermbg=237 - -" vim mustache http://git.io/vim-stash -let g:mustache_abbreviations = 1 - -" ┏━┓╺┳╸┏━┓╺┳╸╻ ╻┏━┓╻ ╻┏┓╻┏━╸ -" ┗━┓ ┃ ┣━┫ ┃ ┃ ┃┗━┓┃ ┃┃┗┫┣╸ -" ┗━┛ ╹ ╹ ╹ ╹ ┗━┛┗━┛┗━╸╹╹ ╹┗━╸ -" lightline http://git.io/lightline -" █▓▒░ wizard status line -set laststatus=2 -let g:lightline = { - \ 'colorscheme': 'sourcerer', - \ 'active': { - \ 'left': [ [ 'filename' ], - \ [ 'readonly', 'fugitive' ] ], - \ 'right': [ [ 'percent', 'lineinfo' ], - \ [ 'fileencoding', 'filetype' ], - \ [ 'fileformat', 'syntastic' ] ] - \ }, - \ 'component_function': { - \ 'modified': 'WizMod', - \ 'readonly': 'WizRO', - \ 'fugitive': 'WizGit', - \ 'filename': 'WizName', - \ 'filetype': 'WizType', - \ 'fileformat' : 'WizFormat', - \ 'fileencoding': 'WizEncoding', - \ 'mode': 'WizMode', - \ }, - \ 'component_expand': { - \ 'syntastic': 'SyntasticStatuslineFlag', - \ }, - \ 'component_type': { - \ 'syntastic': 'error', - \ }, - \ 'separator': { 'left': '▓▒░', 'right': '░▒▓' }, - \ 'subseparator': { 'left': '▒', 'right': '░' } - \ } - -function! WizMod() - return &ft =~ 'help\|vimfiler' ? '' : &modified ? '»' : &modifiable ? '' : '' -endfunction - -function! WizRO() - return &ft !~? 'help\|vimfiler' && &readonly ? 'x' : '' -endfunction - -function! WizGit() - if &ft !~? 'help\|vimfiler' && exists("*fugitive#head") - return fugitive#head() - endif - return '' -endfunction - -function! WizName() - return ('' != WizMod() ? WizMod() . ' ' : '') . - \ ('' != expand('%:t') ? expand('%:t') : '[none]') -endfunction - -function! WizType() - return winwidth(0) > 70 ? (strlen(&filetype) ? &filetype : '') : '' -endfunction - -function! WizFormat() - return '' -endfunction - -function! WizEncoding() - return winwidth(0) > 70 ? (strlen(&fenc) ? &enc : &enc) : '' -endfunction - -augroup AutoSyntastic - autocmd! - autocmd BufWritePost *.c,*.cpp call s:syntastic() -augroup END -function! s:syntastic() - SyntasticCheck - call lightline#update() -endfunction +" git clone https://github.com/gmarik/Vundle.vim.git ~/dotfiles/vim/.vim/bundle/Vundle.vim && vim +BundleInstall +qall && PYTHON=/usr/bin/python2 ~/dotfiles/vim/.vim/bundle/YouCompleteMe/install.sh --clang-completer && pacman -S the_silver_searcher +if 1 " boolean for plugin loading + set rtp+=~/.vim/bundle/Vundle.vim + call vundle#begin() + Plugin 'gmarik/Vundle.vim' + Plugin 'Valloric/YouCompleteMe' + Plugin 'scrooloose/syntastic' + Plugin 'airblade/vim-gitgutter' + Plugin 'isa/vim-matchit' + Plugin 'shawncplus/phpcomplete.vim' + Plugin 'mustache/vim-mustache-handlebars' + Plugin 'rking/ag.vim' + Plugin 'itchyny/lightline.vim' + Plugin 'tpope/vim-fugitive' + call vundle#end() + filetype plugin indent on + + " syntatic http://git.io/syntastic.vim + " linters: (from aur) nodejs-jshint, nodejs-jsonlint, csslint, checkbashisms + let g:syntastic_always_populate_loc_list = 1 + let g:syntastic_auto_loc_list = 1 + let g:syntastic_check_on_open = 1 + let g:syntastic_check_on_wq = 0 + highlight SyntasticErrorSign ctermfg=red ctermbg=237 + highlight SyntasticWarningSign ctermfg=yellow ctermbg=237 + highlight SyntasticStyleErrorSign ctermfg=red ctermbg=237 + highlight SyntasticStyleWarningSign ctermfg=yellow ctermbg=237 + + " git-gutter http://git.io/vimgitgutter + let g:gitgutter_realtime = 1 + let g:gitgutter_eager = 1 + let g:gitgutter_diff_args = '-w' + let g:gitgutter_sign_added = '+' + let g:gitgutter_sign_modified = '~' + let g:gitgutter_sign_removed = '-' + let g:gitgutter_sign_removed_first_line = '^' + let g:gitgutter_sign_modified_removed = ':' + let g:gitgutter_max_signs = 1500 + highlight clear SignColumn + highlight GitGutterAdd ctermfg=green ctermbg=237 + highlight GitGutterChange ctermfg=yellow ctermbg=237 + highlight GitGutterDelete ctermfg=red ctermbg=237 + highlight GitGutterChangeDelete ctermfg=red ctermbg=237 + + " vim mustache http://git.io/vim-stash + let g:mustache_abbreviations = 1 + + " ag, the silver searcher http://git.io/AEu3dQ + http://git.io/d9N0MA + let g:agprg="ag -i --vimgrep" + let g:ag_highlight=1 + " map \ to the ag command for quick searching + nnoremap \ :Ag<SPACE> + + " ┏━┓╺┳╸┏━┓╺┳╸╻ ╻┏━┓╻ ╻┏┓╻┏━╸ + " ┗━┓ ┃ ┣━┫ ┃ ┃ ┃┗━┓┃ ┃┃┗┫┣╸ + " ┗━┛ ╹ ╹ ╹ ╹ ┗━┛┗━┛┗━╸╹╹ ╹┗━╸ + " lightline http://git.io/lightline + " █▓▒░ wizard status line + set laststatus=2 + let g:lightline = { + \ 'colorscheme': 'sourcerer', + \ 'active': { + \ 'left': [ [ 'filename' ], + \ [ 'readonly', 'fugitive' ] ], + \ 'right': [ [ 'percent', 'lineinfo' ], + \ [ 'fileencoding', 'filetype' ], + \ [ 'fileformat', 'syntastic' ] ] + \ }, + \ 'component_function': { + \ 'modified': 'WizMod', + \ 'readonly': 'WizRO', + \ 'fugitive': 'WizGit', + \ 'filename': 'WizName', + \ 'filetype': 'WizType', + \ 'fileformat' : 'WizFormat', + \ 'fileencoding': 'WizEncoding', + \ 'mode': 'WizMode', + \ }, + \ 'component_expand': { + \ 'syntastic': 'SyntasticStatuslineFlag', + \ }, + \ 'component_type': { + \ 'syntastic': 'error', + \ }, + \ 'separator': { 'left': '▓▒░', 'right': '░▒▓' }, + \ 'subseparator': { 'left': '▒', 'right': '░' } + \ } + + function! WizMod() + return &ft =~ 'help\|vimfiler' ? '' : &modified ? '»' : &modifiable ? '' : '' + endfunction + + function! WizRO() + return &ft !~? 'help\|vimfiler' && &readonly ? 'x' : '' + endfunction + + function! WizGit() + if &ft !~? 'help\|vimfiler' && exists("*fugitive#head") + return fugitive#head() + endif + return '' + endfunction + + function! WizName() + return ('' != WizMod() ? WizMod() . ' ' : '') . + \ ('' != expand('%:t') ? expand('%:t') : '[none]') + endfunction + + function! WizType() + return winwidth(0) > 70 ? (strlen(&filetype) ? &filetype : '') : '' + endfunction + + function! WizFormat() + return '' + endfunction + + function! WizEncoding() + return winwidth(0) > 70 ? (strlen(&fenc) ? &enc : &enc) : '' + endfunction + + augroup AutoSyntastic + autocmd! + autocmd BufWritePost *.c,*.cpp call s:syntastic() + augroup END + function! s:syntastic() + SyntasticCheck + call lightline#update() + endfunction +endif |