first commit
This commit is contained in:
commit
319e87099c
177
.vimrc
Normal file
177
.vimrc
Normal file
@ -0,0 +1,177 @@
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
"
|
||||
" ██╗ ██╗██╗███╗ ███╗██████╗ ██████╗
|
||||
" ██║ ██║██║████╗ ████║██╔══██╗██╔════╝
|
||||
" ██║ ██║██║██╔████╔██║██████╔╝██║
|
||||
" ╚██╗ ██╔╝██║██║╚██╔╝██║██╔══██╗██║
|
||||
" ╚████╔╝ ██║██║ ╚═╝ ██║██║ ██║╚██████╗
|
||||
" ╚═══╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝
|
||||
"
|
||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
|
||||
" Disable compatibility with vi which can cause unexpected issues.
|
||||
set nocompatible
|
||||
|
||||
" Enable type file detection. Vim will be able to try to detect the type of file in use.
|
||||
filetype on
|
||||
|
||||
" Enable plugins and load plugin for the detected file type.
|
||||
filetype plugin on
|
||||
|
||||
" Load an indent file for the detected file type.
|
||||
filetype indent on
|
||||
|
||||
" Turn syntax highlighting on.
|
||||
syntax on
|
||||
|
||||
" Add numbers to each line on the left-hand side.
|
||||
"set number
|
||||
|
||||
" Show numbers relative to current line.
|
||||
"set relativenumber
|
||||
|
||||
" Highlight cursor line underneath the cursor horizontally.
|
||||
"set cursorline
|
||||
|
||||
" Highlight cursor line underneath the cursor vertically.
|
||||
"set cursorcolumn
|
||||
|
||||
" Set shift width to 4 spaces.
|
||||
set shiftwidth=4
|
||||
|
||||
" Set tab width to 4 columns.
|
||||
set tabstop=4
|
||||
|
||||
" Use space characters instead of tabs.
|
||||
set expandtab
|
||||
|
||||
" Do not save backup files.
|
||||
set nobackup
|
||||
|
||||
" Do not let cursor scroll below or above N number of lines when scrolling.
|
||||
set scrolloff=10
|
||||
|
||||
" Do not wrap lines. Allow long lines to extend as far as the line goes.
|
||||
set nowrap
|
||||
|
||||
" While searching though a file incrementally highlight matching characters as
|
||||
" you type.
|
||||
set incsearch
|
||||
|
||||
" Ignore capital letters during search.
|
||||
set ignorecase
|
||||
|
||||
" Override the ignorecase option if searching for capital letters.
|
||||
" This will allow you to search specifically for capital letters.
|
||||
set smartcase
|
||||
|
||||
" Show partial command you type in the last line of the screen.
|
||||
set showcmd
|
||||
|
||||
" Show the mode you are on the last line.
|
||||
set showmode
|
||||
|
||||
" Show matching words during a search.
|
||||
set showmatch
|
||||
|
||||
" Use highlighting when doing a search.
|
||||
set hlsearch
|
||||
|
||||
" Set the commands to save in history default number is 20.
|
||||
set history=1000
|
||||
|
||||
" Set the max undos
|
||||
set undolevels=1000
|
||||
|
||||
" Enable auto completion menu after pressing TAB.
|
||||
set wildmenu
|
||||
|
||||
" Make wildmenu behave like similar to Bash completion.
|
||||
set wildmode=list:longest
|
||||
|
||||
" There are certain files that we would never want to edit with Vim.
|
||||
" Wildmenu will ignore files with these extensions.
|
||||
set wildignore=*.docx,*.jpg,*.png,*.gif,*.pdf,*.pyc,*.exe,*.flv,*.img,*.xlsx
|
||||
|
||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
" Visuals
|
||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
set title
|
||||
set ruler
|
||||
set novisualbell
|
||||
set noerrorbells
|
||||
set lazyredraw
|
||||
set laststatus=2
|
||||
" set colorcolumn=85
|
||||
set background=dark
|
||||
set encoding=utf-8
|
||||
colorscheme desert
|
||||
|
||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
" Mappings
|
||||
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
||||
let mapleader = " "
|
||||
|
||||
" Turn off search highlighting by pressing space after leader (double space)
|
||||
nnoremap <leader><space> :nohlsearch<CR>
|
||||
|
||||
" Map Ctrl+[hjkl] to navigate windows vim style
|
||||
nnoremap <silent> <C-h> <C-w>h
|
||||
nnoremap <silent> <C-j> <C-w>j
|
||||
nnoremap <silent> <C-k> <C-w>k
|
||||
nnoremap <silent> <C-l> <C-w>l
|
||||
|
||||
" Map Ctrl+[arrow] to navigate windows`
|
||||
nnoremap <silent> <C-Left> <C-w>h
|
||||
nnoremap <silent> <C-Down> <C-w>j
|
||||
nnoremap <silent> <C-Up> <C-w>k
|
||||
nnoremap <silent> <C-Right> <C-w>l
|
||||
|
||||
" Increase/descrease window split size
|
||||
if bufwinnr(1)
|
||||
map + <C-W>+
|
||||
map - <C-W>-
|
||||
endif
|
||||
|
||||
" Pageup/down will scroll half-page and center the current line on the screen
|
||||
nnoremap <silent> <PageUp> <C-U>zz
|
||||
vnoremap <silent> <PageUp> <C-U>zz
|
||||
inoremap <silent> <PageUp> <C-O><C-U><C-O>zz
|
||||
|
||||
nnoremap <silent> <PageDown> <C-D>zz
|
||||
vnoremap <silent> <PageDown> <C-D>zz
|
||||
inoremap <silent> <PageDown> <C-O><C-D><C-O>zz
|
||||
|
||||
" Open netrw filebrowser in current window, with current file selected
|
||||
nmap <leader>e :25Lex<CR>
|
||||
|
||||
" Rotate windows
|
||||
nmap <leader>r <C-w>r
|
||||
|
||||
" Close buffer without affecting splits
|
||||
nmap <leader>d :bprevious<CR>:bdelete #<CR>
|
||||
|
||||
" Easy buffer navigation
|
||||
nmap <leader>n :bn<CR>
|
||||
nmap <leader>p :bp<CR>
|
||||
nmap <leader>b :buffer <Tab>
|
||||
|
||||
" Load vimrc
|
||||
nmap <leader>v :e ~/.vimrc<CR>
|
||||
|
||||
" Toggle/cycle line number modes
|
||||
nmap <leader>l :call CycleLineNumbers()<CR>
|
||||
|
||||
function! CycleLineNumbers()
|
||||
if (&number == 1 && &relativenumber == 0)
|
||||
set relativenumber
|
||||
else
|
||||
if (&relativenumber == 1 && &number == 1)
|
||||
set norelativenumber
|
||||
set nonumber
|
||||
else
|
||||
set number
|
||||
set norelativenumber
|
||||
endif
|
||||
endif
|
||||
endfunc
|
Loading…
Reference in New Issue
Block a user