Public Access
disable oil, enable mini.files
This commit is contained in:
@@ -53,13 +53,9 @@ Refresh shortcuts (oil and buffers):
|
|||||||
- `gR` refresh the current buffer
|
- `gR` refresh the current buffer
|
||||||
- `<F5>` refresh the current buffer
|
- `<F5>` refresh the current buffer
|
||||||
|
|
||||||
Oil usage:
|
Files usage:
|
||||||
|
|
||||||
- `<leader>dl` opens the file browser
|
- `<leader>e` opens the file browser
|
||||||
- `-`, `<BS>` goes to the parent directory
|
|
||||||
- `<A-h>` also goes to the parent directory
|
|
||||||
- `<A-l>` opens the selected file or enters the selected directory
|
|
||||||
- `<C-p>` previews the selected entry
|
|
||||||
- `gx` opens the file in external viewer
|
- `gx` opens the file in external viewer
|
||||||
|
|
||||||
Toggle shortcuts:
|
Toggle shortcuts:
|
||||||
|
|||||||
@@ -20,7 +20,9 @@ end
|
|||||||
|
|
||||||
map("n", "<leader><leader>r", ":source ~/.config/nvim/init.lua<CR>", { desc = "reload init.lua" })
|
map("n", "<leader><leader>r", ":source ~/.config/nvim/init.lua<CR>", { desc = "reload init.lua" })
|
||||||
map("n", "<leader><leader>h", telescope_picker("keymaps"), { desc = "show keymaps" })
|
map("n", "<leader><leader>h", telescope_picker("keymaps"), { desc = "show keymaps" })
|
||||||
map("n", "<leader>dl", "<Cmd>Oil<CR>", { desc = "open oil" })
|
map("n", "<leader>e", function()
|
||||||
|
MiniFiles.open()
|
||||||
|
end, { desc = "open mini.files" })
|
||||||
map("n", "<leader>ff", telescope_picker("find_files"), { desc = "find files" })
|
map("n", "<leader>ff", telescope_picker("find_files"), { desc = "find files" })
|
||||||
map("n", "<leader>fg", telescope_picker("live_grep"), { desc = "live grep" })
|
map("n", "<leader>fg", telescope_picker("live_grep"), { desc = "live grep" })
|
||||||
map("n", "<leader>fb", telescope_picker("buffers"), { desc = "find buffers" })
|
map("n", "<leader>fb", telescope_picker("buffers"), { desc = "find buffers" })
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ vim.pack.add({
|
|||||||
local clue = require("mini.clue")
|
local clue = require("mini.clue")
|
||||||
local completion = require("mini.completion")
|
local completion = require("mini.completion")
|
||||||
local icons = require("mini.icons")
|
local icons = require("mini.icons")
|
||||||
|
local files = require("mini.files")
|
||||||
local git = require("mini.git")
|
local git = require("mini.git")
|
||||||
local diff = require("mini.diff")
|
local diff = require("mini.diff")
|
||||||
local statusline = require("mini.statusline")
|
local statusline = require("mini.statusline")
|
||||||
@@ -42,6 +43,8 @@ clue.setup({
|
|||||||
|
|
||||||
icons.setup({})
|
icons.setup({})
|
||||||
|
|
||||||
|
files.setup({})
|
||||||
|
|
||||||
git.setup({})
|
git.setup({})
|
||||||
|
|
||||||
diff.setup({})
|
diff.setup({})
|
||||||
|
|||||||
@@ -1,89 +1,89 @@
|
|||||||
vim.pack.add({
|
-- vim.pack.add({
|
||||||
{
|
-- {
|
||||||
src = "https://github.com/stevearc/oil.nvim",
|
-- src = "https://github.com/stevearc/oil.nvim",
|
||||||
name = "oil.nvim",
|
-- name = "oil.nvim",
|
||||||
},
|
-- },
|
||||||
{
|
-- {
|
||||||
src = "https://github.com/malewicz1337/oil-git.nvim",
|
-- src = "https://github.com/malewicz1337/oil-git.nvim",
|
||||||
name = "oil-git.nvim",
|
-- name = "oil-git.nvim",
|
||||||
},
|
-- },
|
||||||
})
|
-- })
|
||||||
|
--
|
||||||
local function set_oil_git_highlights()
|
-- local function set_oil_git_highlights()
|
||||||
vim.api.nvim_set_hl(0, "OilGitAdded", { link = "MiniDiffSignAdd" })
|
-- vim.api.nvim_set_hl(0, "OilGitAdded", { link = "MiniDiffSignAdd" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitUntracked", { link = "MiniDiffSignAdd" })
|
-- vim.api.nvim_set_hl(0, "OilGitUntracked", { link = "MiniDiffSignAdd" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitModifiedStaged", { link = "MiniDiffSignChange" })
|
-- vim.api.nvim_set_hl(0, "OilGitModifiedStaged", { link = "MiniDiffSignChange" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitModifiedUnstaged", { link = "MiniDiffSignChange" })
|
-- vim.api.nvim_set_hl(0, "OilGitModifiedUnstaged", { link = "MiniDiffSignChange" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitRenamed", { link = "MiniDiffSignChange" })
|
-- vim.api.nvim_set_hl(0, "OilGitRenamed", { link = "MiniDiffSignChange" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitCopied", { link = "MiniDiffSignChange" })
|
-- vim.api.nvim_set_hl(0, "OilGitCopied", { link = "MiniDiffSignChange" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitDeleted", { link = "MiniDiffSignDelete" })
|
-- vim.api.nvim_set_hl(0, "OilGitDeleted", { link = "MiniDiffSignDelete" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitConflict", { link = "MiniDiffSignDelete" })
|
-- vim.api.nvim_set_hl(0, "OilGitConflict", { link = "MiniDiffSignDelete" })
|
||||||
vim.api.nvim_set_hl(0, "OilGitIgnored", { link = "Comment" })
|
-- vim.api.nvim_set_hl(0, "OilGitIgnored", { link = "Comment" })
|
||||||
end
|
-- end
|
||||||
|
--
|
||||||
require("oil").setup({
|
-- require("oil").setup({
|
||||||
keymaps = {
|
-- keymaps = {
|
||||||
["<C-h>"] = false,
|
-- ["<C-h>"] = false,
|
||||||
["<C-j>"] = false,
|
-- ["<C-j>"] = false,
|
||||||
["<C-k>"] = false,
|
-- ["<C-k>"] = false,
|
||||||
["<C-l>"] = false,
|
-- ["<C-l>"] = false,
|
||||||
["gR"] = "actions.refresh", -- replaces default <C-l> behavior
|
-- ["gR"] = "actions.refresh", -- replaces default <C-l> behavior
|
||||||
["<F5>"] = "actions.refresh",
|
-- ["<F5>"] = "actions.refresh",
|
||||||
["<C-s>"] = false,
|
-- ["<C-s>"] = false,
|
||||||
["<C-p>"] = { "actions.preview", opts = { vertical = true, split = "belowright" } },
|
-- ["<C-p>"] = { "actions.preview", opts = { vertical = true, split = "belowright" } },
|
||||||
["<BS>"] = { "actions.parent", mode = "n" },
|
-- ["<BS>"] = { "actions.parent", mode = "n" },
|
||||||
},
|
-- },
|
||||||
view_options = {
|
-- view_options = {
|
||||||
show_hidden = true,
|
-- show_hidden = true,
|
||||||
is_hidden_file = function(_, _)
|
-- is_hidden_file = function(_, _)
|
||||||
return false
|
-- return false
|
||||||
end,
|
-- end,
|
||||||
is_always_hidden = function(name, _)
|
-- is_always_hidden = function(name, _)
|
||||||
return name == ".git"
|
-- return name == ".git"
|
||||||
end,
|
-- end,
|
||||||
},
|
-- },
|
||||||
})
|
-- })
|
||||||
|
--
|
||||||
local oil_git_trie = require("oil-git.trie")
|
-- local oil_git_trie = require("oil-git.trie")
|
||||||
local oil_git_lookup = oil_git_trie.lookup
|
-- local oil_git_lookup = oil_git_trie.lookup
|
||||||
|
--
|
||||||
-- ugly internal monkey patch to not show partially git-ignored foldres as grey
|
-- -- ugly internal monkey patch to not show partially git-ignored foldres as grey
|
||||||
rawset(oil_git_trie, "lookup", function(root, entry_path, git_root, exclude_ignored)
|
-- rawset(oil_git_trie, "lookup", function(root, entry_path, git_root, exclude_ignored)
|
||||||
local status = oil_git_lookup(root, entry_path, git_root, exclude_ignored)
|
-- local status = oil_git_lookup(root, entry_path, git_root, exclude_ignored)
|
||||||
if status ~= "!!" or exclude_ignored then
|
-- if status ~= "!!" or exclude_ignored then
|
||||||
return status
|
-- return status
|
||||||
end
|
-- end
|
||||||
|
--
|
||||||
local relative_path = entry_path:sub(#git_root + 2)
|
-- local relative_path = entry_path:sub(#git_root + 2)
|
||||||
local node = root
|
-- local node = root
|
||||||
for segment in relative_path:gmatch("[^/\\]+") do
|
-- for segment in relative_path:gmatch("[^/\\]+") do
|
||||||
node = node.children[segment]
|
-- node = node.children[segment]
|
||||||
if not node then
|
-- if not node then
|
||||||
return nil
|
-- return nil
|
||||||
end
|
-- end
|
||||||
end
|
-- end
|
||||||
|
--
|
||||||
-- oil-git normally propagates an ignored child's status to every parent.
|
-- -- oil-git normally propagates an ignored child's status to every parent.
|
||||||
-- Only grey a directory when Git reported that directory itself as ignored.
|
-- -- Only grey a directory when Git reported that directory itself as ignored.
|
||||||
if not node.is_dir_ignored then
|
-- if not node.is_dir_ignored then
|
||||||
return nil
|
-- return nil
|
||||||
end
|
-- end
|
||||||
|
--
|
||||||
return status
|
-- return status
|
||||||
end)
|
-- end)
|
||||||
|
--
|
||||||
require("oil-git").setup({
|
-- require("oil-git").setup({
|
||||||
show_file_highlights = true,
|
-- show_file_highlights = true,
|
||||||
show_directory_highlights = true,
|
-- show_directory_highlights = true,
|
||||||
show_ignored_files = true,
|
-- show_ignored_files = true,
|
||||||
show_ignored_directories = true,
|
-- show_ignored_directories = true,
|
||||||
show_file_symbols = true,
|
-- show_file_symbols = true,
|
||||||
show_directory_symbols = true,
|
-- show_directory_symbols = true,
|
||||||
symbol_position = "none",
|
-- symbol_position = "none",
|
||||||
})
|
-- })
|
||||||
|
--
|
||||||
set_oil_git_highlights()
|
-- set_oil_git_highlights()
|
||||||
vim.api.nvim_create_autocmd("ColorScheme", {
|
-- vim.api.nvim_create_autocmd("ColorScheme", {
|
||||||
group = vim.api.nvim_create_augroup("romanzy_oil_git_highlights", { clear = true }),
|
-- group = vim.api.nvim_create_augroup("romanzy_oil_git_highlights", { clear = true }),
|
||||||
callback = set_oil_git_highlights,
|
-- callback = set_oil_git_highlights,
|
||||||
})
|
-- })
|
||||||
|
|||||||
Reference in New Issue
Block a user