add: config nvim tree float

This commit is contained in:
asep.komarudin 2024-05-31 14:00:49 +07:00
parent 990f8606e0
commit 1f5323945b
5 changed files with 547 additions and 474 deletions

View file

@ -37,7 +37,7 @@
"nvim-notify": { "branch": "master", "commit": "d333b6f167900f6d9d42a59005d82919830626bf" },
"nvim-scrollview": { "branch": "main", "commit": "c29c5f69d37040a1fac88cbea7f5e6f06f0aff4d" },
"nvim-tree.lua": { "branch": "master", "commit": "2bc725a3ebc23f0172fb0ab4d1134b81bcc13812" },
"nvim-treesitter": { "branch": "master", "commit": "f770df9c8cd56c05b878cdf35115ad872c822bc0" },
"nvim-treesitter": { "branch": "master", "commit": "b7d50e59b1b2990b3ce8761d4cf595f4b71c87e2" },
"nvim-treesitter-textobjects": { "branch": "master", "commit": "3557e41418b4a6c5b85d5d64abe94c9c50fa9b14" },
"nvim-ts-autotag": { "branch": "main", "commit": "bcf3146864262ef2d3c877beba3e222b5c73780d" },
"nvim-ts-context-commentstring": { "branch": "main", "commit": "cb064386e667def1d241317deed9fd1b38f0dc2e" },

View file

@ -108,3 +108,7 @@ vim.g.pcode_coderunner = {
vim.g.pcode_cmprg = false --https://github.com/lukas-reineke/cmp-rg
vim.g.pcode_cmpcalc = false --https://github.com/hrsh7th/cmp-calc
vim.g.pcode_cmptag = false --https://github.com/quangnguyen30192/cmp-nvim-tags
-- 0 = normal
-- 1 = float
vim.g.pcode_nvimtree_isfloat = 0

View file

@ -1,10 +1,10 @@
local icons = vim.g.pcode_icons
local HEIGHT_RATIO = 0.9 -- You can change this
local WIDTH_RATIO = 0.5 -- You can change this too
-- local icons = vim.g.pcode_icons
-- local HEIGHT_RATIO = 0.9 -- You can change this
-- local WIDTH_RATIO = 0.5 -- You can change this too
return {
-- "kyazdani42/nvim-tree.lua",
-- lazy = true,
-- cmd = { "NvimTreeFindFileToggle","NvimTree", "NvimTreeOpen", "NvimTreeToggle", "NvimTreeFocus", "NvimTreeClose" },
-- cmd = { "NvimTreeFindFileToggle", "NvimTree", "NvimTreeOpen", "NvimTreeToggle", "NvimTreeFocus", "NvimTreeClose" },
-- opts = {
-- auto_reload_on_write = false,
-- disable_netrw = false,

View file

@ -1,8 +1,14 @@
local icons = vim.g.pcode_icons
local set_view = {}
if vim.g.pcode_nvimtree_isfloat == 1 then
set_view = require("user.utils.nvimtree").float
else
set_view = require("user.utils.nvimtree").normal
end
return {
"kyazdani42/nvim-tree.lua",
lazy = true,
cmd = { "NvimTree", "NvimTreeOpen", "NvimTreeToggle", "NvimTreeFocus", "NvimTreeClose" },
cmd = { "NvimTreeFindFileToggle", "NvimTree", "NvimTreeOpen", "NvimTreeToggle", "NvimTreeFocus", "NvimTreeClose" },
opts = {
auto_reload_on_write = false,
disable_netrw = false,
@ -17,28 +23,29 @@ return {
respect_buf_cwd = false,
on_attach = "default",
select_prompts = false,
view = {
adaptive_size = false,
centralize_selection = true,
width = 30,
side = "left",
preserve_window_proportions = false,
number = false,
relativenumber = false,
signcolumn = "yes",
float = {
enable = false,
quit_on_focus_loss = true,
open_win_config = {
relative = "editor",
border = "rounded",
width = 30,
height = 30,
row = 1,
col = 1,
},
},
},
-- view = {
-- adaptive_size = false,
-- centralize_selection = true,
-- width = 30,
-- side = "left",
-- preserve_window_proportions = false,
-- number = false,
-- relativenumber = false,
-- signcolumn = "yes",
-- float = {
-- enable = false,
-- quit_on_focus_loss = true,
-- open_win_config = {
-- relative = "editor",
-- border = "rounded",
-- width = 30,
-- height = 30,
-- row = 1,
-- col = 1,
-- },
-- },
-- },
view = set_view,
renderer = {
add_trailing = false,
group_empty = false,

View file

@ -0,0 +1,62 @@
local M = {}
local HEIGHT_RATIO = 0.9 -- You can change this
local WIDTH_RATIO = 0.5 -- You can change this too
M.float = {
adaptive_size = false,
centralize_selection = true,
-- width = 30,
side = "left",
preserve_window_proportions = false,
number = false,
relativenumber = false,
signcolumn = "yes",
float = {
enable = true,
open_win_config = function()
local screen_w = vim.opt.columns:get()
local screen_h = vim.opt.lines:get() - vim.opt.cmdheight:get()
local window_w = screen_w * WIDTH_RATIO
local window_h = screen_h * HEIGHT_RATIO
local window_w_int = math.floor(window_w)
local window_h_int = math.floor(window_h)
local center_x = (screen_w - window_w) / 2
local center_y = ((vim.opt.lines:get() - window_h) / 2) - vim.opt.cmdheight:get()
return {
border = "rounded",
relative = "editor",
row = center_y,
col = center_x,
width = window_w_int,
height = window_h_int,
}
end,
},
width = function()
return math.floor(vim.opt.columns:get() * WIDTH_RATIO)
end,
}
M.normal = {
adaptive_size = false,
centralize_selection = true,
width = 30,
side = "left",
preserve_window_proportions = false,
number = false,
relativenumber = false,
signcolumn = "yes",
float = {
enable = false,
quit_on_focus_loss = true,
open_win_config = {
relative = "editor",
border = "rounded",
width = 30,
height = 30,
row = 1,
col = 1,
},
},
}
return M