You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
158 lines
6.3 KiB
158 lines
6.3 KiB
"BASICS--------------------------------------------------------------
|
|
set exrc ""You can get some cuntomizations if therre is a vimrc on the local eare that you are it will use it.
|
|
set guicursor= ""Bi cursor for oldstyle lovers.
|
|
set relativenumber ""Show the line beofre and ofetr starting from your line.
|
|
set noerrorbells ""No sound effects.
|
|
set tabstop=4 ""TabSize of 4.
|
|
set shiftwidth=4 ""Indentation fo 4.
|
|
set softtabstop=4 ""Enabeling it will remplace tabs by spaces in insert mode
|
|
set noexpandtab ""Enabeling it will remplace tabs by spaces
|
|
set smartindent ""will try it's best to indent for you.
|
|
set nowrap ""Will continue to go right when line is too long
|
|
set incsearch ""incremental searching as i am typing the words will be highligted.
|
|
set number ""Self explanatory
|
|
set scrolloff=8 ""Will start to scroll down wehn there is still 8 Lines before end of page.
|
|
"Backup and Undo
|
|
set noswapfile ""No swap file. they are anoying
|
|
set nobackup ""Nobackup because we will do a undo dir
|
|
set undodir=~/.vim/undodir
|
|
set undofile
|
|
packadd termdebug
|
|
let g:termdebug_wide=1
|
|
filetype plugin indent on
|
|
syntax enable
|
|
:autocmd InsertEnter,InsertLeave * set cul!
|
|
"--------------------------------------------------------------------
|
|
|
|
"PLUGINS-------------------------------------------------------------
|
|
"plugins(included with vim) for file specific mappings Located at ~/.vim/ftplugin/
|
|
"Example for c Would be: ~/.vim/ftplugin/c_mappings.vim
|
|
filetype plugin on
|
|
|
|
"Plug pkluginmanager start and end
|
|
call plug#begin('~/.vim/plugged')
|
|
Plug 'gruvbox-community/gruvbox'
|
|
Plug 'arcticicestudio/nord-vim'
|
|
Plug 'vim-utils/vim-man'
|
|
Plug 'mbbill/undotree'
|
|
Plug 'gyim/vim-boxdraw'
|
|
Plug 'vim-airline/vim-airline'
|
|
call plug#end()
|
|
"--------------------------------------------------------------------
|
|
|
|
"VISUALS-------------------------------------------------------------
|
|
set colorcolumn=100
|
|
highlight ColorColumn ctermbg=0 guibg=lightgrey
|
|
set signcolumn=yes
|
|
colorscheme gruvbox
|
|
set background=dark
|
|
highlight Normal guibg=blue
|
|
"--------------------------------------------------------------------
|
|
|
|
"REMAPS--------------------------------------------------------------
|
|
"(VIM) Remaps Spca bar as the Leader command
|
|
let mapleader=" "
|
|
|
|
"(NAVIGATION)
|
|
"Switches to the Left window
|
|
map <silent> <leader>h :wincmd h<CR><CR>
|
|
"Switches to the Bottom window
|
|
map <silent> <leader>j :wincmd j<CR><CR>
|
|
"Switches to the Top window
|
|
map <silent> <leader>k :wincmd k<CR><CR>
|
|
"Switches to the Right window
|
|
map <silent> <leader>l :wincmd l<CR><CR>
|
|
|
|
"(FILES)
|
|
map <leader>fw :Sex! <bar> :vertical resize 30<CR>
|
|
map <leader>u :UndotreeShow<CR>
|
|
|
|
"(POSITION)
|
|
"[P]ut one line [U]p everything from the cursor till the end of the line
|
|
map <leader>pu d$O<ESC>p
|
|
"[P]ut one line [D]own everything from the cursor till the end of the line
|
|
map <leader>pd d$o<ESC>p
|
|
|
|
"(WORD) Manipulation
|
|
"[W]ord [R]reformat for word under the cursor
|
|
map <leader>wr ebvey:%s/<C-R>0//g<left><left>
|
|
"[C]hange [W]ord in registered buffer To be more similar to whant vim implment
|
|
map <leader>cw ebvey/<C-R>0<CR>Ncw
|
|
"[C]hange [N]ext word in registered buffer To be more similar to what vim implements
|
|
map <leader>cn ncw
|
|
"[W]ord [N]ext occurence for word under the cursor
|
|
map <leader>wn ebvey/<C-R>0<CR>
|
|
"[W]ord [P]revious occurence for word under the cursor
|
|
map <leader>wp ebvey/<C-R>0<CR>NN
|
|
"[W]ord [S]earch for word under the cursor
|
|
map <leader>ws ebvey/<C-R>0
|
|
"[W]ord [F]ind [F]irst for word under the cursor
|
|
map <silent> <leader>wff ebveyG/<C-R>0<CR>
|
|
"[W]ord [F]ind [L]ast for word under the cursor
|
|
map <silent> <leader>wfl ebveyG/<C-R>0<CR>N
|
|
"--------------------------------------------------------------------
|
|
|
|
"DEBUGER--------------------------------------------------------------
|
|
map <leader>db :Termdebug <bar> :vertical resize 30<CR>
|
|
noremap <silent> <leader>ts :Step<cr>
|
|
noremap <silent> <leader>to :Over<cr>
|
|
noremap <silent> <leader>tn :Next<cr>
|
|
noremap <silent> <leader>tc :Cont<cr>
|
|
"--------------------------------------------------------------------
|
|
|
|
"WILDMENU FOR FUZZY FILE SEARCH--------------------------------------
|
|
set path+=**
|
|
|
|
set wildmenu "Display all matching files when we tab complete
|
|
" NOW WE CAN:
|
|
" Type :find
|
|
" - Hit tab to :find by partial match
|
|
" - Use * to make it fuzzy
|
|
" - Opened files will be buffered try it out
|
|
" - :b lets you autocomplete any open buffer
|
|
"--------------------------------------------------------------------
|
|
|
|
"TAG JUMPING---------------------------------------------------------
|
|
" Create the `tags` file (need to install ctags first)
|
|
command! MakeTags !ctags -R .
|
|
" NOW WE CAN:
|
|
" - Use ^] to jump to tag under cursor
|
|
" - Use g^] for ambiguous tags
|
|
" - Use ^t to jump back up the tag stack
|
|
" THINGS TO CONSIDER:
|
|
" - This doesn't help if you want a visual list of tags
|
|
" AUTOCOMPLETE:
|
|
" The good stuff is documented in |ins-completion|
|
|
" HIGHLIGHTS:
|
|
" - ^x^n for JUST this file
|
|
" - ^x^f for filenames (works with our path trick!)
|
|
" - ^x^] for tags only
|
|
" - ^n for anything specified by the 'complete' option
|
|
" NOW WE CAN:
|
|
" - Use ^n and ^p to go back and forth in the suggestion list
|
|
"--------------------------------------------------------------------
|
|
|
|
"SNIPPETS------------------------------------------------------------
|
|
" Command Read template move cursor
|
|
nnoremap <leader>shs :-1read $HOME/.vim/snippets/html_skeleton.html<CR>5jwf>a
|
|
nnoremap <leader>shb :-1read $HOME/.vim/snippets/html_vertical_bracets.html<CR>:s/VARTOCHANGE//g<left><left>
|
|
nnoremap <leader>sht :-1read $HOME/.vim/snippets/html_horizontal_bracets.html<CR>:.,+2s/VARTOCHANGE//g<left><left>
|
|
nnoremap <leader>scf :-1read $HOME/.vim/snippets/c_for.c<CR>yi)/<C-R>0<CR>N:s/VARTOCHANGE//g<left><left>
|
|
nnoremap <leader>scs :-1read $HOME/.vim/snippets/c_switch.c<CR>yi)/<C-R>0<CR>Ncw
|
|
nnoremap <leader>scw :-1read $HOME/.vim/snippets/c_while.c<CR>yi)/<C-R>0<CR>Ncw
|
|
"--------------------------------------------------------------------
|
|
|
|
|
|
"BUILD INTEGRATION---------------------------------------------------
|
|
" Steal Mr. Bradley's formatter & add it to our spec_helper
|
|
" http://philipbradley.net/rspec-into-vim-with-quickfix
|
|
" Configure the `make` command to run RSpec
|
|
set makeprg=bundle\ exec\ rspec\ -f\ QuickfixFormatter
|
|
|
|
" NOW WE CAN:
|
|
" - Run :make to run RSpec
|
|
" - :cl to list errors
|
|
" - :cc# to jump to error by number
|
|
" - :cn and :cp to navigate forward and back
|
|
"--------------------------------------------------------------------
|