From 50ceb1645297a9fc2a076eef3dd8172d6a825e34 Mon Sep 17 00:00:00 2001 From: Daniel Fichtinger Date: Wed, 18 Dec 2024 16:55:04 -0500 Subject: [PATCH] AutoYADM commit: 2024-12-18 16:55:04 --- .config/nvim/lua/oil-extras.lua | 24 ++++++++++++++++++------ .config/nvim/lua/plugins/oil.lua | 3 +++ 2 files changed, 21 insertions(+), 6 deletions(-) diff --git a/.config/nvim/lua/oil-extras.lua b/.config/nvim/lua/oil-extras.lua index 696e1375..faec7802 100644 --- a/.config/nvim/lua/oil-extras.lua +++ b/.config/nvim/lua/oil-extras.lua @@ -37,13 +37,25 @@ local new_git_status = function() }) end -M.git_status = new_git_status() +local git_status = new_git_status() -local refresh = require("oil.actions").refresh -local orig_refresh = refresh.callback -refresh.callback = function(...) - M.git_status = new_git_status() - orig_refresh(...) +M.handle_git = function(name, bufnr) + local refresh = require("oil.actions").refresh + local orig_refresh = refresh.callback + refresh.callback = function(...) + git_status = new_git_status() + orig_refresh(...) + end + local dir = require("oil").get_current_dir(bufnr) + local is_dotfile = vim.startswith(name, ".") and name ~= ".." + if not dir then + return is_dotfile + end + if is_dotfile then + return not git_status[dir].tracked[name] + else + return git_status[dir].ignored[name] + end end return M diff --git a/.config/nvim/lua/plugins/oil.lua b/.config/nvim/lua/plugins/oil.lua index 3d3f965c..31f93ca4 100644 --- a/.config/nvim/lua/plugins/oil.lua +++ b/.config/nvim/lua/plugins/oil.lua @@ -32,6 +32,9 @@ return { -- There's a recipe for this in the docs -- "permissions", }, + view_options = { + is_hidden_file = require("oil-extras").handle_git, + }, keymaps = { [""] = "actions.parent", ["gd"] = {