1
1
Fork 0
dotfiles/nvim/init.vim
Ava Gaiety Wroten f81dd4b497 More WIP
2022-04-08 10:29:34 -05:00

171 lines
3.5 KiB
VimL

"" Encoding
set encoding=utf8
"" Disable modeline
set nomodeline
"" System undo levels
set undofile
set undolevels=100
" Line Numbers
set number
set relativenumber
"" Stop word wrapping
set nowrap
"" Hide Buffers
set hidden
"" Statusline
set laststatus=0
"" Top/Bottom scroll padding
set scrolloff=3
set sidescrolloff=5
" Syntax Colors
set termguicolors
" Misc
set title
" Indentation
set softtabstop=2
set tabstop=2
set shiftwidth=2
set autoindent
" Syntax
syntax on
" Save on close
set confirm
" Use system clipboard
set clipboard=unnamedplus
" Faster scrolling
set ttyfast
" Search
set hlsearch
set smartcase
set showmatch
" Undo
set undolevels=1000
" Filetypes
filetype plugin on
" auto-install vim-plug
if empty(glob('~/.config/nvim/autoload/plug.vim'))
silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
autocmd VimEnter * PlugInstall
autocmd VimEnter * PlugInstall | source $MYVIMRC
endif
call plug#begin('~/.config/nvim/autoload/plugged')
Plug 'neovim/nvim-lspconfig'
Plug 'nvim-treesitter/nvim-treesitter', { 'do': ':TSUpdate' }
Plug 'nvim-lua/plenary.nvim'
Plug 'nvim-telescope/telescope.nvim'
Plug 'BurntSushi/ripgrep'
Plug 'sharkdp/fd'
Plug 'baliestri/aura-theme', { 'branch': 'feat/neovim-port', 'rtp': 'packages/neovim' }
Plug 'lukelbd/vim-toggle'
Plug 'kyazdani42/nvim-tree.lua'
Plug 'dense-analysis/ale'
Plug 'preservim/nerdcommenter'
Plug 'akinsho/bufferline.nvim', { 'tag': '*' }
Plug 'skywind3000/asyncrun.vim'
call plug#end()
" Use aura theme installed above
colorscheme aura-soft-dark
" - Core Key Bindings -
"" Map Leader to spacebar
let mapleader=" "
"" Shortcut to save
nnoremap <Leader>s :w<CR>
"" Shortcut to close buffer
nnoremap <Leader>w :bd<CR>
"" Moving current lines up/down
nnoremap <Leader>k :<c-u>execute 'move -1-'. v:count1<cr>
nnoremap <Leader>j :<c-u>execute 'move +'. v:count1<cr>
"" Buffers Next/Previous
nnoremap <Tab> :bnext<CR>
nnoremap <S-Tab> :bprev<CR>
"" Shortcut to close buffer
nnoremap <Esc><Esc> :bd<CR>
"" Shortcut to reopen closed buffer
nmap <Leader><Leader> <c-^>
"" Toggle
let g:toggle_map = '<C-a>'
"" Tree
lua require'nvim-tree'.setup {}
let g:nvim_tree_icons = {
\ 'default': "",
\ 'symlink': "",
\ 'git': {
\ 'unstaged': "✗",
\ 'staged': "✓",
\ 'unmerged': "",
\ 'renamed': "➜",
\ 'untracked': "★",
\ 'deleted': "R",
\ 'ignored': "◌"
\ },
\ 'folder': {
\ 'arrow_open': ">",
\ 'arrow_closed': "<",
\ 'default': "",
\ 'open': "",
\ 'empty': "=",
\ 'empty_open': "==",
\ 'symlink': "-",
\ 'symlink_open': "--",
\ }
\ }
nnoremap <Leader>` :NvimTreeToggle<CR>
"" Lint
let b:ale_fixers = ['prettier', 'eslint']
"" LSP
lua <<EOF
require'lspconfig'.pyright.setup{}
EOF
"" Telescope
nnoremap <leader>ff <cmd>Telescope find_files<cr>
nnoremap <leader>fb <cmd>Telescope buffers<cr>
nnoremap <leader>fs <cmd>Telescope spell_suggest<cr>
nnoremap <leader>fr <cmd>Telescope registers<cr>
nnoremap <leader>fo <cmd>Telescope oldfiles<cr>
nnoremap <leader>fg <cmd>Telescope live_grep<cr>
nnoremap <leader>/ <cmd>Telescope current_buffer_fuzzy_find<cr>
" Bufferline
lua << EOF
require("bufferline").setup {
options = {
show_buffer_close_icons = false,
diagnostics = "nvim_lsp"
}
}
EOF
" Async Run (:AsyncRun)
let g:asyncrun_open=1
nnoremap <leader>a :AsyncRun -mode=term
nnoremap <leader>ga <cmd>:AsyncRun -mode=term git add -p<cr>
nnoremap <leader>gc :AsyncRun -mode=term git add commit -m ""