set autoread
set autowrite
set backspace=2
set breakindent
set clipboard=unnamed
set cmdheight=2
set colorcolumn=+1
set complete+=kspell
set cursorline
set diffopt+=vertical
set encoding=utf-8
set expandtab
set exrc
set fillchars=vert:▐
set foldlevelstart=1
set foldmethod=manual
set hidden
set history=50
set incsearch
set laststatus=2
set listchars=tab:▸\ ,eol:¬,nbsp:␣,trail:•,space:.,extends:→,precedes:← 
set modelines=0
set mouse=a
set nobackup
set nojoinspaces
set nomodeline
set noswapfile
set nowritebackup
set number
set numberwidth=5
set ruler
set scrolloff=12
set shiftround
set shiftwidth=2
set shortmess+=c
set showbreak=··
set showcmd
set signcolumn=yes
set smartcase
set splitbelow
set splitright
set tabstop=2
set termencoding=utf-8
set textwidth=80
set title
set ttyfast
set updatetime=300
set vb t_vb=

syntax enable
syntax sync minlines=128 maxlines=512

" Cursor shapes
let &t_SI = "\<Esc>[6 q"
let &t_SR = "\<Esc>[4 q"
let &t_EI = "\<Esc>[0 q"

if executable('rg')
  " Use rg over grep
  set grepprg=rg\ --color\ never
endif

" Plugins
call plug#begin('~/.vim/plugged')
if filereadable(expand("~/.config/nvim/plugins.vimrc"))
  source ~/.config/nvim/plugins.vimrc
endif
call plug#end()

" Keybindings
if filereadable(expand("~/.config/nvim/keybindings.vimrc"))
  source ~/.config/nvim/keybindings.vimrc
endif

" CoC
if filereadable(expand("~/.config/nvim/coc.vimrc"))
  source ~/.config/nvim/coc.vimrc
endif

" Lightline setup
if filereadable(expand("~/.config/nvim/lightline.vimrc"))
  source ~/.config/nvim/lightline.vimrc
endif

" Tmuxline setup
if filereadable(expand("~/.config/nvim/tmuxline.vimrc"))
  source ~/.config/nvim/tmuxline.vimrc
endif

" Git setup
if filereadable(expand("~/.config/nvim/git.vimrc"))
  source ~/.config/nvim/git.vimrc
endif

" NERDTree setup
if filereadable(expand("~/.config/nvim/nerdtree.vimrc"))
  source ~/.config/nvim/nerdtree.vimrc
endif

" Projections 
if filereadable(expand("~/.config/nvim/projections.vimrc"))
  source ~/.config/nvim/projections.vimrc
endif

" Telescope setup
if filereadable(expand("~/.config/nvim/telescope.vimrc"))
  source ~/.config/nvim/telescope.vimrc
endif

" Test setup
if filereadable(expand("~/.config/nvim/test.vimrc"))
  source ~/.config/nvim/test.vimrc
endif

" Markdown setup
if filereadable(expand("~/.config/nvim/markdown.vimrc"))
  source ~/.config/nvim/markdown.vimrc
endif

" Ruby setup
if filereadable(expand("~/.config/nvim/ruby.vimrc"))
  source ~/.config/nvim/ruby.vimrc
endif

" Rust setup
if filereadable(expand("~/.config/nvim/rust.vimrc"))
  source ~/.config/nvim/rust.vimrc
endif

" Color setup
if filereadable(expand("~/.config/nvim/colors.vimrc"))
  source ~/.config/nvim/colors.vimrc
endif

" Set secure AFTER any other rc importing
set secure