dot_config/.vimrc
2023-04-07 21:56:17 -04:00

90 lines
2.5 KiB
VimL

set nocompatible
filetype off
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" let Vundle manage Vundle, required
Plugin 'gmarik/Vundle.vim'
Plugin 'vim-airline/vim-airline'
Plugin 'kien/ctrlp.vim'
Plugin 'scrooloose/nerdtree'
"Plugin 'edkolev/tmuxline.vim'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'leafgarland/typescript-vim'
Plugin 'peitalin/vim-jsx-typescript'
"Plugin 'Lokaltog/powerline', {'rtp': 'powerline/bindings/vim/'}
" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
map <C-j> <C-W>j
map <C-k> <C-W>k
map <C-h> <C-W>h
map <C-l> <C-W>l
let NERDTreeShowHidden=1
set tabstop=4 softtabstop=0 expandtab shiftwidth=4 smarttab
set mouse=a
set nowrap
colorscheme darkblue
syntax on
set splitright
set splitbelow
set number
"---------explorer------
let g:netrw_banner = 0
let g:netrw_liststyle = 3
let g:netrw_browse_split = 4
let g:netrw_altv = 1
let g:netrw_winsize = 25
"----airline tabs for buffers-------
let g:airline#extensions#tabline#enabled = 1
let g:airline_theme = 'violet'
let g:airline_solarized_bg='dark'
let g:tmuxline_powerline_separators = 1
let g:airline_powerline_fonts = 1
"----markdown folding------------
"let g:vim_markdown_folding_disabled = 1
set nofoldenable " disable folding
"---general--------------------
let mapleader = ";"
set showcmd
map <Leader>a :bn<cr>
map <Leader>f :bp<cr>
map <Leader>d :bp<cr>:bd #<cr>
"---move the whole page without moving the cursor---
nnoremap J <C-E>
nnoremap K <C-Y>
"-----nerdtree--------------------
nmap <Leader>e :NERDTreeToggle<CR>
" Search as you type, highlight results
set incsearch
set showmatch
set hlsearch
set mouse=a
"----disable the bell; t_vb is required to be set to nothing
set visualbell
set t_vb=
nnoremap \\ :noh<cr> " Clear higlighting
set nowrap
"nnoremap <esc> :noh<return><esc>
" Resize windows
nnoremap <silent> <Up> 5<C-W>+
nnoremap <silent> <Down> 5<C-W>-
nnoremap <silent> <Right> 10<C-W>>
nnoremap <silent> <Left> 10<C-W><
"----------funcion to comment out every line except current---------------
function! CommentOutUnselectedLines()
let l:highlighted_lines = sort(getpos("'<")[1], getpos("'>")[1])
let l:line_count = line("$")
let l:comment_char = "--"
for l:line_number in range(1, l:line_count)
if index(l:highlighted_lines, l:line_number) == -1
execute l:line_number . "s/^/" . l:comment_char . "/"
endif
endfor
endfunction
nnoremap <Leader>cc :call CommentOutUnselectedLines()<CR>