fix: nvim tree git ignore hide file

This commit is contained in:
Pojok Code 2024-10-12 16:42:46 +07:00
parent ad9f646417
commit e2afd37cae
4 changed files with 148 additions and 57 deletions

View file

@ -37,7 +37,7 @@ pcode.progress = 1
-- 2 = logo only -- 2 = logo only
-- 3 = initial only -- 3 = initial only
-- 4 = off -- 4 = off
pcode.show_mode = 3 pcode.show_mode = 2
-- true or false -- true or false
pcode.format_on_save = true pcode.format_on_save = true

View file

@ -25,7 +25,8 @@ return {
local notify = require("notify") local notify = require("notify")
-- this for transparency -- this for transparency
-- notify.setup { background_colour = "#000000", render = "compact" } -- notify.setup { background_colour = "#000000", render = "compact" }
notify.setup({ render = "compact" }) -- notify.setup({ render = "compact" })
notify.setup({ render = "wrapped-compact" })
-- this overwrites the vim notify function -- this overwrites the vim notify function
vim.notify = notify.notify vim.notify = notify.notify
end, end,

View file

@ -220,7 +220,7 @@ return {
end, end,
} }
]] ]]
return { return {
"nvim-tree/nvim-tree.lua", "nvim-tree/nvim-tree.lua",
cmd = { "NvimTreeFindFileToggle", "NvimTree", "NvimTreeOpen", "NvimTreeToggle", "NvimTreeFocus", "NvimTreeClose" }, cmd = { "NvimTreeFindFileToggle", "NvimTree", "NvimTreeOpen", "NvimTreeToggle", "NvimTreeFocus", "NvimTreeClose" },
@ -230,7 +230,6 @@ return {
opts = function() opts = function()
local icons = pcode.icons local icons = pcode.icons
return { return {
filters = { dotfiles = false },
disable_netrw = true, disable_netrw = true,
hijack_cursor = true, hijack_cursor = true,
sync_root_with_cwd = true, sync_root_with_cwd = true,
@ -304,6 +303,18 @@ return {
".prettierignore", ".prettierignore",
}, },
}, },
notify = {
threshold = vim.log.levels.INFO,
-- threshold = vim.log.levels.ERROR,
},
git = {
enable = true,
ignore = false,
show_on_dirs = true,
show_on_open_dirs = true,
disable_for_dirs = {},
timeout = 400,
},
} }
end, end,
config = function(_, opts) config = function(_, opts)
@ -313,4 +324,4 @@ return {
vim.cmd("edit " .. file.fname) vim.cmd("edit " .. file.fname)
end) end)
end, end,
} }

View file

@ -1,62 +1,141 @@
-- autocmd BufWinEnter * :set formatoptions-=cro -- autocmd BufWinEnter * :set formatoptions-=cro
vim.cmd([[ -- vim.cmd([[
augroup _general_settings -- augroup _general_settings
autocmd! -- autocmd!
autocmd FileType qf,help,man,lspinfo nnoremap <silent> <buffer> q :close<CR> -- autocmd FileType qf,help,man,lspinfo nnoremap <silent> <buffer> q :close<CR>
autocmd TextYankPost * silent!lua require('vim.highlight').on_yank({higroup = 'Visual', timeout = 200}) -- autocmd TextYankPost * silent!lua require('vim.highlight').on_yank({higroup = 'Visual', timeout = 200})
" autocmd BufWinEnter * :set formatoptions=croql -- " autocmd BufWinEnter * :set formatoptions=croql
" autocmd BufWinEnter * :set textwidth=80 -- " autocmd BufWinEnter * :set textwidth=80
" autocmd BufWinEnter * :set colorcolumn=+1 -- " autocmd BufWinEnter * :set colorcolumn=+1
" autocmd BufWinEnter * :set nolazyredraw -- " autocmd BufWinEnter * :set nolazyredraw
" autocmd BufWinEnter * :hi ColorColumn guibg=#1B243000 ctermbg=246 -- " autocmd BufWinEnter * :hi ColorColumn guibg=#1B243000 ctermbg=246
autocmd FileType qf set nobuflisted -- autocmd FileType qf set nobuflisted
augroup end -- augroup end
--
-- augroup _git
-- autocmd!
-- autocmd FileType gitcommit setlocal wrap
-- autocmd FileType gitcommit setlocal spell
-- augroup end
--
-- augroup _markdown
-- autocmd!
-- autocmd FileType markdown setlocal wrap
-- autocmd FileType markdown setlocal spell
-- augroup end
--
-- augroup _auto_resize
-- autocmd!
-- autocmd VimResized * tabdo wincmd =
-- augroup end
--
-- augroup _alpha
-- autocmd!
-- autocmd User AlphaReady set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2
-- augroup end
--
-- augroup neovim_terminal
-- autocmd!
-- " Enter Terminal-mode (insert) automatically
-- autocmd TermOpen * startinsert
-- " Disables number lines on terminal buffers
-- autocmd TermOpen * :set nonumber norelativenumber
-- " allows you to use Ctrl-c on terminal window
-- autocmd TermOpen * nnoremap <buffer> <C-c> i<C-c>
-- augroup END
--
-- function s:MkNonExDir(file, buf)
-- if empty(getbufvar(a:buf, '&buftype')) && a:file!~#'\v^\w+\:\/'
-- let dir=fnamemodify(a:file, ':h')
-- if !isdirectory(dir)
-- call mkdir(dir, 'p')
-- endif
-- endif
-- endfunction
-- augroup BWCCreateDir
-- autocmd!
-- autocmd BufWritePre * :call s:MkNonExDir(expand('<afile>'), +expand('<abuf>'))
-- augroup END
-- ]])
augroup _git local api = vim.api
autocmd!
autocmd FileType gitcommit setlocal wrap
autocmd FileType gitcommit setlocal spell
augroup end
augroup _markdown -- General Settings
autocmd! api.nvim_create_augroup("_general_settings", { clear = true })
autocmd FileType markdown setlocal wrap api.nvim_create_autocmd({ "FileType" }, {
autocmd FileType markdown setlocal spell group = "_general_settings",
augroup end pattern = { "qf", "help", "man", "lspinfo" },
command = "nnoremap <silent> <buffer> q :close<CR>",
})
augroup _auto_resize api.nvim_create_autocmd("TextYankPost", {
autocmd! group = "_general_settings",
autocmd VimResized * tabdo wincmd = callback = function()
augroup end require("vim.highlight").on_yank({ higroup = "Visual", timeout = 200 })
end,
})
augroup _alpha api.nvim_create_autocmd("FileType", {
autocmd! group = "_general_settings",
autocmd User AlphaReady set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2 pattern = "qf",
augroup end command = "set nobuflisted",
})
augroup neovim_terminal -- Git Settings
autocmd! api.nvim_create_augroup("_git", { clear = true })
" Enter Terminal-mode (insert) automatically api.nvim_create_autocmd("FileType", {
autocmd TermOpen * startinsert group = "_git",
" Disables number lines on terminal buffers pattern = "gitcommit",
autocmd TermOpen * :set nonumber norelativenumber command = "setlocal wrap spell",
" allows you to use Ctrl-c on terminal window })
autocmd TermOpen * nnoremap <buffer> <C-c> i<C-c>
augroup END
function s:MkNonExDir(file, buf) -- Markdown Settings
if empty(getbufvar(a:buf, '&buftype')) && a:file!~#'\v^\w+\:\/' api.nvim_create_augroup("_markdown", { clear = true })
let dir=fnamemodify(a:file, ':h') api.nvim_create_autocmd("FileType", {
if !isdirectory(dir) group = "_markdown",
call mkdir(dir, 'p') pattern = "markdown",
endif command = "setlocal wrap spell",
endif })
endfunction
augroup BWCCreateDir -- Auto Resize
autocmd! api.nvim_create_augroup("_auto_resize", { clear = true })
autocmd BufWritePre * :call s:MkNonExDir(expand('<afile>'), +expand('<abuf>')) api.nvim_create_autocmd("VimResized", {
augroup END group = "_auto_resize",
]]) command = "tabdo wincmd =",
})
-- Alpha Settings
api.nvim_create_augroup("_alpha", { clear = true })
api.nvim_create_autocmd("User", {
group = "_alpha",
pattern = "AlphaReady",
command = "set showtabline=0 | autocmd BufUnload <buffer> set showtabline=2",
})
-- Terminal Settings
api.nvim_create_augroup("neovim_terminal", { clear = true })
api.nvim_create_autocmd("TermOpen", {
group = "neovim_terminal",
command = "startinsert | set nonumber norelativenumber | nnoremap <buffer> <C-c> i<C-c>",
})
-- Function to Create Non-Existent Directory on BufWrite
local function MkNonExDir(file, buf)
if vim.fn.empty(vim.fn.getbufvar(buf, "&buftype")) == 1 and not string.match(file, "^%w+://") then
local dir = vim.fn.fnamemodify(file, ":h")
if vim.fn.isdirectory(dir) == 0 then
vim.fn.mkdir(dir, "p")
end
end
end
api.nvim_create_augroup("BWCCreateDir", { clear = true })
api.nvim_create_autocmd("BufWritePre", {
group = "BWCCreateDir",
callback = function(_)
MkNonExDir(vim.fn.expand("<afile>"), vim.fn.expand("<abuf>"))
end,
})
-- for fix error last close buffer -- for fix error last close buffer
vim.api.nvim_create_autocmd({ "QuitPre" }, { vim.api.nvim_create_autocmd({ "QuitPre" }, {