removed NerdTree and replaced with Nvim-Tree
This commit is contained in:
parent
b97919a896
commit
400997a378
2 changed files with 541 additions and 54 deletions
124
nvim/init.vim
124
nvim/init.vim
|
|
@ -1,11 +1,8 @@
|
|||
" Specify a directory for plugins default is ~/.config/nvim/init.vim
|
||||
|
||||
call plug#begin('~/.vim/plugged')
|
||||
Plug 'neoclide/coc.nvim', {'branch': 'release'}
|
||||
Plug 'scrooloose/nerdtree' "Plug 'tsony-tsonev/nerdtree-git-plugin'
|
||||
Plug 'Xuyuanp/nerdtree-git-plugin'
|
||||
Plug 'tiagofumo/vim-nerdtree-syntax-highlight'
|
||||
Plug 'ryanoasis/vim-devicons'
|
||||
Plug 'kyazdani42/nvim-web-devicons' " for file icons
|
||||
Plug 'kyazdani42/nvim-tree.lua'
|
||||
Plug 'mattn/emmet-vim'
|
||||
Plug 'ap/vim-css-color'
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
|
|
@ -27,24 +24,77 @@ Plug 'jremmen/vim-ripgrep'
|
|||
" Initialize plugin system
|
||||
call plug#end()
|
||||
|
||||
"Toggle NerdTree with Ctrl + l
|
||||
nmap <C-b> :NERDTreeToggle<CR>
|
||||
"nvim tree default setup
|
||||
lua require'nvim-tree'.setup {}
|
||||
let g:nvim_tree_git_hl = 1 "0 by default, will enable file highlight for git attributes (can be used without the icons).
|
||||
let g:nvim_tree_highlight_opened_files = 1 "0 by default, will enable folder and file icon highlight for opened files/directories.
|
||||
let g:nvim_tree_root_folder_modifier = ':~' "This is the default. See :help filename-modifiers for more options
|
||||
let g:nvim_tree_add_trailing = 1 "0 by default, append a trailing slash to folder names
|
||||
let g:nvim_tree_group_empty = 1 " 0 by default, compact folders that only contain a single folder into one node in the file tree
|
||||
let g:nvim_tree_icon_padding = ' ' "one space by default, used for rendering the space between the icon and the filename. Use with caution, it could break rendering if you set an empty string depending on your font.
|
||||
let g:nvim_tree_symlink_arrow = ' >> ' " defaults to ' ➛ '. used as a separator between symlinks' source and target.
|
||||
let g:nvim_tree_respect_buf_cwd = 1 "0 by default, will change cwd of nvim-tree to that of new buffer's when opening nvim-tree.
|
||||
let g:nvim_tree_create_in_closed_folder = 1 "0 by default, When creating files, sets the path of a file when cursor is on a closed folder to the parent folder when 0, and inside the folder when 1.
|
||||
let g:nvim_tree_special_files = { 'README.md': 1, 'Makefile': 1, 'MAKEFILE': 1 } " List of filenames that gets highlighted with NvimTreeSpecialFile
|
||||
let g:nvim_tree_show_icons = {
|
||||
\ 'git': 1,
|
||||
\ 'folders': 0,
|
||||
\ 'files': 0,
|
||||
\ 'folder_arrows': 0,
|
||||
\ }
|
||||
"If 0, do not show the icons for one of 'git' 'folder' and 'files'
|
||||
"1 by default, notice that if 'files' is 1, it will only display
|
||||
"if nvim-web-devicons is installed and on your runtimepath.
|
||||
"if folder is 1, you can also tell folder_arrows 1 to show small arrows next to the folder icons.
|
||||
"but this will not work when you set renderer.indent_markers.enable (because of UI conflict)
|
||||
|
||||
" Start NERDTree. If a file is specified, move the cursor to its window.
|
||||
autocmd StdinReadPre * let s:std_in=1
|
||||
autocmd VimEnter * NERDTree | if argc() > 0 || exists("s:std_in") | wincmd p | endif
|
||||
" default will show icon by default if no icon is provided
|
||||
" default shows no icon by default
|
||||
let g:nvim_tree_icons = {
|
||||
\ 'default': "",
|
||||
\ 'symlink': "",
|
||||
\ 'git': {
|
||||
\ 'unstaged': "✗",
|
||||
\ 'staged': "✓",
|
||||
\ 'unmerged': "",
|
||||
\ 'renamed': "➜",
|
||||
\ 'untracked': "★",
|
||||
\ 'deleted': "",
|
||||
\ 'ignored': "◌"
|
||||
\ },
|
||||
\ 'folder': {
|
||||
\ 'arrow_open': "",
|
||||
\ 'arrow_closed': "",
|
||||
\ 'default': "",
|
||||
\ 'open': "",
|
||||
\ 'empty': "",
|
||||
\ 'empty_open': "",
|
||||
\ 'symlink': "",
|
||||
\ 'symlink_open': "",
|
||||
\ }
|
||||
\ }
|
||||
|
||||
"NerdTree opens on right
|
||||
let g:NERDTreeWinPos = "right"
|
||||
nnoremap <C-b> :NvimTreeToggle<CR>
|
||||
nnoremap <leader>r :NvimTreeRefresh<CR>
|
||||
nnoremap <leader>n :NvimTreeFindFile<CR>
|
||||
" More available functions:
|
||||
" NvimTreeOpen
|
||||
" NvimTreeClose
|
||||
" NvimTreeFocus
|
||||
" NvimTreeFindFileToggle
|
||||
nnoremap <C-e> :NvimTreeResize<CR>
|
||||
" NvimTreeCollapse
|
||||
" NvimTreeCollapseKeepBuffers
|
||||
|
||||
"Adjust NerdTree size
|
||||
let g:NERDTreeWinSize=28
|
||||
set termguicolors " this variable must be enabled for colors to be applied properly
|
||||
|
||||
"Show hidden files in NERDTree
|
||||
let NERDTreeShowHidden=1
|
||||
set nosplitright
|
||||
"
|
||||
" Automatically closes Nvim tree if last window open
|
||||
autocmd BufEnter * ++nested if winnr('$') == 1 && bufname() == 'NvimTree_' . tabpagenr() | quit | endif
|
||||
|
||||
" Exit Vim if NERDTree is the only window remaining in the only tab.
|
||||
autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTree') && b:NERDTree.isTabTree() | quit | endif
|
||||
" a list of groups can be found at `:help nvim_tree_highlight`
|
||||
highlight NvimTreeFolderIcon guibg=blue
|
||||
|
||||
"set colored brackets via rainbow"
|
||||
let g:rainbow_active = 1 "set to 0 if you want to enable it later via :RainbowToggle"
|
||||
|
|
@ -61,24 +111,8 @@ let g:auto_save = 1
|
|||
"silence AutoSave messages
|
||||
let g:auto_save_silent = 1
|
||||
|
||||
let g:webdevicons_enable = 1
|
||||
let g:webdevicons_enable_nerdtree = 1
|
||||
|
||||
let g:NERDTreeGitStatusWithFlags = 1
|
||||
"let g:WebDevIconsUnicodeDecorateFolderNodes = 1
|
||||
"let g:NERDTreeGitStatusNodeColorization = 1
|
||||
"let g:NERDTreeColorMapCustom = {
|
||||
"\ "Staged" : "#0ee375",
|
||||
"\ "Modified" : "#d9bf91",
|
||||
"\ "Renamed" : "#51C9FC",
|
||||
"\ "Untracked" : "#FCE77C",
|
||||
"\ "Unmerged" : "#FC51E6",
|
||||
"\ "Dirty" : "#FFBD61",
|
||||
"\ "Clean" : "#/87939A",
|
||||
"\ "Ignored" : "#808080"
|
||||
"\ }
|
||||
|
||||
let g:NERDTreeIgnore = ['^node_modules$']
|
||||
" let g:webdevicons_enable = 1
|
||||
" let g:webdevicons_enable_nerdtree = 1
|
||||
|
||||
" do not close the markdown preview tab when switching to other buffers
|
||||
let g:mkdp_auto_close = 0
|
||||
|
|
@ -178,24 +212,6 @@ hi Normal guibg=NONE ctermbg=NONE
|
|||
"Enable Comments with Italics (below selected colorscheme)
|
||||
highlight Comment cterm=italic gui=italic
|
||||
|
||||
" sync open file with NERDTree
|
||||
" " Check if NERDTree is open or active
|
||||
function! IsNERDTreeOpen()
|
||||
return exists("t:NERDTreeBufName") && (bufwinnr(t:NERDTreeBufName) != -1)
|
||||
endfunction
|
||||
|
||||
" Call NERDTreeFind iff NERDTree is active, current window contains a modifiable
|
||||
" file, and we're not in vimdiff
|
||||
function! SyncTree()
|
||||
if &modifiable && IsNERDTreeOpen() && strlen(expand('%')) > 0 && !&diff
|
||||
NERDTreeFind
|
||||
wincmd p
|
||||
endif
|
||||
endfunction
|
||||
|
||||
" Highlight currently open buffer in NERDTree
|
||||
autocmd BufEnter * call SyncTree()
|
||||
|
||||
" coc config
|
||||
let g:coc_global_extensions = [
|
||||
\ 'coc-snippets',
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue