vim setup implementation

master
Kerem Yollu 4 years ago
parent 454150868a
commit 6e97b6ebe1

@ -0,0 +1,133 @@
"BASICS--------------------------------------------------------------
set exrc ""You can get some cuntomizations if therre is a vimrc on the local eare that you are it wiil 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
filetype plugin indent on
syntax enable
:autocmd InsertEnter,InsertLeave * set cul!
"--------------------------------------------------------------------
"PLUGINS-------------------------------------------------------------
call plug#begin('~/.vim/plugged')
Plug 'gruvbox-community/gruvbox'
Plug 'arcticicestudio/nord-vim'
Plug 'vim-utils/vim-man'
Plug 'mbbill/undotree'
""Plug 'theprimeagen/vim-be-good'
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
" lightline
"" set noshowmode
""let g:lightline = { 'colorscheme': 'nord' }
"--------------------------------------------------------------------
"REMAPS--------------------------------------------------------------
let mapleader=" "
"Ease of window jumg intead of ^wj etc..
map <leader>h :wincmd h<CR>
map <leader>j :wincmd j<CR>
map <leader>k :wincmd k<CR>
map <leader>l :wincmd l<CR>
map <leader>u :UndotreeShow<CR> ""Remapin undotree
map <leader>pv :Sex! <bar> :vertical resize 30<CR>
map ,/ :s/^/\/\//<CR>
map ,{ :s/);/)\r{\r\t\r}\r/g<CR>
"--------------------------------------------------------------------
"WILDMENU FOR FUZZY FILE SEARCH--------------------------------------
filetype plugin on "plugins(included with vim) for netrw
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
"--------------------------------------------------------------------
"FILE BROWSING-------------------------------------------------------
let g:netrw_banner=0 " disable annoying banner
let g:netrw_browse_split=4 " open in prior window
let g:netrw_altv=1 " open splits to the right
let g:netrw_liststyle=3 " tree view
let g:netrw_list_hide=netrw_gitignore#Hide()
let g:netrw_list_hide.=',\(^\|\s\s\)\zs\.\S\+'
" NOW WE CAN:
" - :edit a folder to open a file browser
" - <CR>/v/t to open in an h-split/v-split/tab
" - check |netrw-browse-maps| for more mappings
"PLUGINS-------------------------------------------------------------
"--------------------------------------------------------------------
"SNIPPETS------------------------------------------------------------
" Command Read template move cursor
nnoremap ,html :-1read $HOME/.vim/.skeleton.html<CR>3jwf>a
" NOW WE CAN:
" - Take over the world!
" (with much fewer keystrokes)
"--------------------------------------------------------------------
"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
"--------------------------------------------------------------------

@ -0,0 +1,68 @@
#!/bin/bash
VIMVER="neovim"
DOTCONFIG="/home/$USER/.config"
LOCALVIMRC="init.vim"
VIMRC="/home/$USER/.vimrc"
VIMDIR="/home/$USER/"
NVIMRC="/home/$USER/.config/nvim/init.vim"
NVIMDIR="/home/$USER/.config/nvim/"
CURDATE=$(date +%m%d%Y%H%M%S)
#sudo apt install -y exuberant-ctags
#sudo apt install -y curl
echo $CURDATE
if [[ $VIMVER = "neovim" ]]
then
echo Installing NEOVIM
sudo apt install -y neovim
curl -fLo ~/.var/app/io.neovim.nvim/data/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
if [ -d "$DOTCONFIG" ];
then
echo "$DOTCONFIG existst and will not be created"
else
mkdir $DOTCONFIG
fi
if [ -d "$NVIMDIR" ];
then
echo "$NVIMDIR existst and will not be created"
else
mkdir $NVIMDIR
fi
if [ -f $NVIMRC ];
then
echo Backing the old config file with the current date
cp $NVIMRC "$NVIMRC"."$CURDATE"
cp $LOCALVIMRC $NVIMDIR
else
cp $LOCALVIMRC $NVIMDIR
fi
else
echo Installing VIM
sudo apt install -y vim
curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
if [ -f $VIMRC ];
then
echo Backing the old config file with the current date
cp $VIMRC "$VIMRC"."$CURDATE"
cp $LOCALVIMRC $VIMDIR
cd $VIMDIR
mv $LOCALVIMRC .vimrc
else
cp $LOCALVIMRC $VIMDIR
cd $VIMDIR
mv $LOCALVIMRC .vimrc
fi
fi
Loading…
Cancel
Save