Last active
February 16, 2022 17:28
-
-
Save amiralles/dda6dd86893e3b944f6d728afd00cd3d to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
execute pathogen#infect() | |
syntax on | |
syntax enable | |
filetype plugin indent on | |
colorscheme monokai_pro | |
set cursorline | |
highlight CursorLine ctermbg=333333 | |
highlight ColorColumn ctermbg=999999 | |
set encoding=utf-8 | |
set path+=** | |
set formatoptions=l | |
set lbr | |
command WQ wq | |
command Wq wq | |
command WA wa | |
command Wa wa | |
command W w | |
command Q q | |
set laststatus=2 | |
set statusline=%<%f\ %h%m%r%=%-.(Line\ %l,%c%)\ %P\ | | |
set nu | |
let mapleader = "," | |
set columns=120 | |
set lines=38 | |
set tabstop=2 | |
set shiftwidth=2 | |
set softtabstop=2 | |
set wildmenu | |
set t_Co=256 | |
"================================================== | |
"turns off blinking | |
set visualbell t_vb= " turn off error beep/flash | |
set novisualbell " turn off visual bell | |
"================================================== | |
" | |
set wildignore+=*.dll,*.exe,.git,*.pdb,*.resx,*.git,tmp,node_modules | |
set wildignore=*.o,*.obj,*~ "stuff to ignore when tab completing | |
set wildignore+=*sass-cache* | |
set wildignore+=*DS_Store* | |
set wildignore+=vendor/rails/** | |
set wildignore+=vendor/cache/** | |
set wildignore+=*.gem | |
set wildignore+=log/** | |
set wildignore+=tmp/** | |
set wildignore+=*.png,*.jpg,*.gif | |
set wildignore+=*.rbenv/** | |
set wildignore+=doc/** | |
set wildignore+=documentation/** | |
set cc=81 | |
imap jj <esc> | |
nmap <space> i | |
nmap <leader><leader> <C-^> | |
nmap <leader>l :set list!<CR> | |
nmap <leader>h :set hlsearch!<CR> | |
nmap <leader>m :MRU<CR> | |
nmap <leader>w :set nowrap!<CR> | |
nmap <leader>n :call NERDTreeToggle()<CR> | |
" Find all files in all non-dot directories starting in the working directory. | |
" Fuzzy select one of those. Open the selected file with :e. | |
" | |
" Use this one: | |
" find * -type f -not -path "node_modules/*" -not -path "*.sh" -not -path "*.beam" | |
nnoremap <leader>t :call SelectaCommand("find * -type f", "", ":e")<CR> | |
nmap <leader>r :ReplaceWordUnderCursor<CR> | |
nmap <leader>/ gcc | |
vmap <leader>/ gcc | |
" NERDTree settings | |
let g:NERDTreeWinSize=40 | |
"" Run a given vim command on the results of fuzzy selecting from a given shell | |
" command. See usage below. | |
function! SelectaCommand(choice_command, selecta_args, vim_command) | |
try | |
let selection = system(a:choice_command . " | selecta " . a:selecta_args) | |
catch /Vim:Interrupt/ | |
" Swallow the ^C so that the redraw below happens; otherwise there will be | |
" leftovers from selecta on the screen | |
redraw! | |
return | |
endtry | |
redraw! | |
exec a:vim_command . " " . selection | |
endfunction | |
" Replaces the current word under cursor prompting for a new value. | |
function ReplaceWordUnderCursor() | |
call inputsave() | |
let word = expand("<cword>") | |
if (word != "") | |
let newword = input("Replace [".word."] with: ") | |
call inputrestore() | |
execute "%s/".word."/".newword."/gc" | |
else | |
echo "No word under cursor." | |
end | |
endfunction | |
function BlameFile() | |
let current_file = expand("%") | |
execute "!" . "smerge blame " . l:current_file | |
endfunction | |
function FileHistory() | |
let current_file = expand("%") | |
execute "!" . "smerge log " . l:current_file | |
endfunction | |
" Grep for *term* on Elixir files | |
function EGrep(term) | |
execute "!" . "git grep -n " . a:term . " -- \"*.ex\" \"*.exs\" \"*.leex\" | sort" | |
endfunction | |
" Find references to *term* on Elixir files | |
function ERefs(term) | |
execute "!" . "git grep --name-only " . a:term . " -- \"*.ex\" \"*.exs\" \"*.leex\" | wc -l" | |
endfunction | |
command ReplaceWordUnderCursor call ReplaceWordUnderCursor() | |
command BlameFile call BlameFile() | |
command FileHistory call FileHistory() | |
command -nargs=1 EGrep call EGrep(<f-args>) | |
command -nargs=1 ERefs call ERefs(<f-args>) | |
set linebreak | |
set textwidth=79 | |
set wrapmargin=2 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment