diff --git a/lua/custom/plugins/init.lua b/lua/custom/plugins/init.lua index 7303ba9..aba2335 100644 --- a/lua/custom/plugins/init.lua +++ b/lua/custom/plugins/init.lua @@ -1,4 +1,4 @@ -local icons = vim.g.pcode_icons +local icons = pcode.icons return { --- masukan plugin tambahan disini -- { diff --git a/lua/custom/plugins/nvim_tree.lua b/lua/custom/plugins/nvim_tree.lua index 904992a..b59e3e0 100644 --- a/lua/custom/plugins/nvim_tree.lua +++ b/lua/custom/plugins/nvim_tree.lua @@ -1,4 +1,4 @@ --- local icons = vim.g.pcode_icons +-- local icons = pcode.icons -- local HEIGHT_RATIO = 0.9 -- You can change this -- local WIDTH_RATIO = 0.5 -- You can change this too return { diff --git a/lua/custom/plugins/nvimufo.lua b/lua/custom/plugins/nvimufo.lua index ec0abef..c557746 100644 --- a/lua/custom/plugins/nvimufo.lua +++ b/lua/custom/plugins/nvimufo.lua @@ -8,7 +8,7 @@ function TABLE_CONTAINS(tbl, x) return found end -local icons = vim.g.pcode_icons.folding +local icons = pcode.icons.folding return { -- "kevinhwang91/nvim-ufo", diff --git a/lua/plugins/_default.lua b/lua/plugins/_default.lua index c6bbef0..529a7f0 100644 --- a/lua/plugins/_default.lua +++ b/lua/plugins/_default.lua @@ -14,5 +14,5 @@ end -- if onsave then -- require("user.format_onsave") -- end -vim.g.pcode_icons = require("user.icons") +pcode.icons = require("user.icons") return {} diff --git a/lua/plugins/_lsp.lua b/lua/plugins/_lsp.lua index 1ff267d..3705e32 100644 --- a/lua/plugins/_lsp.lua +++ b/lua/plugins/_lsp.lua @@ -26,7 +26,7 @@ return { "MasonLog", }, opts = function() - local icons = vim.g.pcode_icons.ui + local icons = pcode.icons.ui return { ui = { -- border = "none", diff --git a/lua/plugins/bufferline.lua b/lua/plugins/bufferline.lua index 97d8d3d..ee676a7 100644 --- a/lua/plugins/bufferline.lua +++ b/lua/plugins/bufferline.lua @@ -8,7 +8,7 @@ return { return end - local icons = vim.g.pcode_icons + local icons = pcode.icons local use_icons = true -- get folder name from current directory diff --git a/lua/plugins/gitsigns.lua b/lua/plugins/gitsigns.lua index dd82377..7efaa0d 100644 --- a/lua/plugins/gitsigns.lua +++ b/lua/plugins/gitsigns.lua @@ -1,4 +1,4 @@ -local icons = vim.g.pcode_icons +local icons = pcode.icons return { "lewis6991/gitsigns.nvim", lazy = true, diff --git a/lua/plugins/indentscupe.lua b/lua/plugins/indentscupe.lua index 2fc9504..a148671 100644 --- a/lua/plugins/indentscupe.lua +++ b/lua/plugins/indentscupe.lua @@ -1,4 +1,4 @@ -local icons = vim.g.pcode_icons +local icons = pcode.icons if pcode.indentscope and true or false then return { "echasnovski/mini.indentscope", diff --git a/lua/plugins/nvimtree.lua b/lua/plugins/nvimtree.lua index 0d493a6..2fd955c 100644 --- a/lua/plugins/nvimtree.lua +++ b/lua/plugins/nvimtree.lua @@ -1,4 +1,4 @@ -local icons = vim.g.pcode_icons +local icons = pcode.icons local set_view = {} if pcode.nvimtree_isfloat == 1 then set_view = require("user.utils.nvimtree").float diff --git a/lua/plugins/nvimufo.lua b/lua/plugins/nvimufo.lua index f7993d0..fda49ef 100644 --- a/lua/plugins/nvimufo.lua +++ b/lua/plugins/nvimufo.lua @@ -8,7 +8,7 @@ function TABLE_CONTAINS(tbl, x) return found end -local icons = vim.g.pcode_icons.folding +local icons = pcode.icons.folding local M = {} diff --git a/lua/plugins/vertcolumn.lua b/lua/plugins/vertcolumn.lua index a0cc4b5..ad924b1 100644 --- a/lua/plugins/vertcolumn.lua +++ b/lua/plugins/vertcolumn.lua @@ -6,7 +6,7 @@ if pcode.columnline then event = "BufRead", opts = {}, config = function() - local icons = vim.g.pcode_icons + local icons = pcode.icons require("virt-column").overwrite({ exclude = { filetypes = { "help", "text", "markdown" }, diff --git a/lua/plugins/whichkey.lua b/lua/plugins/whichkey.lua index 9800256..4aef781 100644 --- a/lua/plugins/whichkey.lua +++ b/lua/plugins/whichkey.lua @@ -4,7 +4,7 @@ return { keys = { "", '"', "'", "`", "c", "v" }, event = "VeryLazy", opts = function() - local icons = vim.g.pcode_icons + local icons = pcode.icons return { plugins = { marks = false, -- shows a list of your marks on ' and ` diff --git a/lua/user/breadcrumb.lua b/lua/user/breadcrumb.lua index f2c16db..e7db724 100644 --- a/lua/user/breadcrumb.lua +++ b/lua/user/breadcrumb.lua @@ -3,7 +3,7 @@ if not status_ok then return end -local ico = vim.g.pcode_icons +local ico = pcode.icons local icons = ico.kind navic.setup({ diff --git a/lua/user/lsp/handlers.lua b/lua/user/lsp/handlers.lua index 3ef7adc..7b9b5ac 100644 --- a/lua/user/lsp/handlers.lua +++ b/lua/user/lsp/handlers.lua @@ -6,7 +6,7 @@ if not status_cmp_ok then end local lspvitualtext = pcode.lsp_virtualtext or false -local icons = vim.g.pcode_icons +local icons = pcode.icons M.capabilities = vim.lsp.protocol.make_client_capabilities() M.capabilities.textDocument.completion.completionItem.snippetSupport = true diff --git a/lua/user/lsp/mason_cfg.lua b/lua/user/lsp/mason_cfg.lua index 8bf2917..cf76fda 100644 --- a/lua/user/lsp/mason_cfg.lua +++ b/lua/user/lsp/mason_cfg.lua @@ -17,7 +17,7 @@ -- end -- -- local unregis_lsp = pcode.unregister_lsp or {} --- local icons = vim.g.pcode_icons.ui +-- local icons = pcode.icons.ui -- -- local settings = { -- ui = { diff --git a/lua/user/utils/breadcrumbs.lua b/lua/user/utils/breadcrumbs.lua deleted file mode 100644 index 523d79e..0000000 --- a/lua/user/utils/breadcrumbs.lua +++ /dev/null @@ -1,236 +0,0 @@ -local M = {} - --- local Log = require "pcode.core.log" -local icons = vim.g.pcode_icons.kind - -M.config = function() - pcode.builtin.breadcrumbs = { - active = true, - on_config_done = nil, - winbar_filetype_exclude = { - "help", - "startify", - "dashboard", - "lazy", - "neo-tree", - "neogitstatus", - "NvimTree", - "Trouble", - "alpha", - "lir", - "Outline", - "spectre_panel", - "toggleterm", - "DressingSelect", - "Jaq", - "harpoon", - "dap-repl", - "dap-terminal", - "dapui_console", - "dapui_hover", - "lab", - "notify", - "noice", - "neotest-summary", - "", - }, - options = { - icons = { - Array = icons.Array .. " ", - Boolean = icons.Boolean .. " ", - Class = icons.Class .. " ", - Color = icons.Color .. " ", - Constant = icons.Constant .. " ", - Constructor = icons.Constructor .. " ", - Enum = icons.Enum .. " ", - EnumMember = icons.EnumMember .. " ", - Event = icons.Event .. " ", - Field = icons.Field .. " ", - File = icons.File .. " ", - Folder = icons.Folder .. " ", - Function = icons.Function .. " ", - Interface = icons.Interface .. " ", - Key = icons.Key .. " ", - Keyword = icons.Keyword .. " ", - Method = icons.Method .. " ", - Module = icons.Module .. " ", - Namespace = icons.Namespace .. " ", - Null = icons.Null .. " ", - Number = icons.Number .. " ", - Object = icons.Object .. " ", - Operator = icons.Operator .. " ", - Package = icons.Package .. " ", - Property = icons.Property .. " ", - Reference = icons.Reference .. " ", - Snippet = icons.Snippet .. " ", - String = icons.String .. " ", - Struct = icons.Struct .. " ", - Text = icons.Text .. " ", - TypeParameter = icons.TypeParameter .. " ", - Unit = icons.Unit .. " ", - Value = icons.Value .. " ", - Variable = icons.Variable .. " ", - }, - highlight = true, - separator = " " .. pcode.icons.ui.ChevronRight .. " ", - depth_limit = 0, - depth_limit_indicator = "..", - }, - } -end - -M.setup = function() - local status_ok, navic = pcall(require, "nvim-navic") - if not status_ok then - return - end - - M.create_winbar() - navic.setup(pcode.builtin.breadcrumbs.options) - - if pcode.builtin.breadcrumbs.on_config_done then - pcode.builtin.breadcrumbs.on_config_done() - end -end - -local function isempty(s) - return s == nil or s == "" -end - -M.get_filename = function() - local filename = vim.fn.expand("%:t") - local extension = vim.fn.expand("%:e") - - if not isempty(filename) then - local file_icon, hl_group - local devicons_ok, devicons = pcall(require, "nvim-web-devicons") - if pcode.use_icons and devicons_ok then - file_icon, hl_group = devicons.get_icon(filename, extension, { default = true }) - - if isempty(file_icon) then - file_icon = pcode.icons.kind.File - end - else - file_icon = "" - hl_group = "Normal" - end - - local buf_ft = vim.bo.filetype - - if buf_ft == "dapui_breakpoints" then - file_icon = pcode.icons.ui.Bug - end - - if buf_ft == "dapui_stacks" then - file_icon = pcode.icons.ui.Stacks - end - - if buf_ft == "dapui_scopes" then - file_icon = pcode.icons.ui.Scopes - end - - if buf_ft == "dapui_watches" then - file_icon = pcode.icons.ui.Watches - end - - -- if buf_ft == "dapui_console" then - -- file_icon = pcode.icons.ui.DebugConsole - -- end - - local navic_text_hl = vim.api.nvim_get_hl(0, { name = "Normal" }) - vim.api.nvim_set_hl(0, "Winbar", { fg = navic_text_hl.fg }) - - return " " .. "%#" .. hl_group .. "#" .. file_icon .. "%*" .. " " .. "%#Winbar#" .. filename .. "%*" - end -end - -local get_gps = function() - local status_gps_ok, gps = pcall(require, "nvim-navic") - if not status_gps_ok then - return "" - end - - local status_ok, gps_location = pcall(gps.get_location, {}) - if not status_ok then - return "" - end - - if not gps.is_available() or gps_location == "error" then - return "" - end - - if not isempty(gps_location) then - return "%#NavicSeparator#" .. pcode.icons.ui.ChevronRight .. "%* " .. gps_location - else - return "" - end -end - -local excludes = function() - return vim.tbl_contains(pcode.builtin.breadcrumbs.winbar_filetype_exclude or {}, vim.bo.filetype) -end - -M.get_winbar = function() - if excludes() then - return - end - local value = M.get_filename() - - local gps_added = false - if not isempty(value) then - local gps_value = get_gps() - value = value .. " " .. gps_value - if not isempty(gps_value) then - gps_added = true - end - end - - if not isempty(value) and vim.api.nvim_get_option_value("mod", { buf = 0 }) then - -- TODO: replace with circle - local mod = "%#LspCodeLens#" .. pcode.icons.ui.Circle .. "%*" - if gps_added then - value = value .. " " .. mod - else - value = value .. mod - end - end - - local num_tabs = #vim.api.nvim_list_tabpages() - - if num_tabs > 1 and not isempty(value) then - local tabpage_number = tostring(vim.api.nvim_tabpage_get_number(0)) - value = value .. "%=" .. tabpage_number .. "/" .. tostring(num_tabs) - end - - local status_ok, _ = pcall(vim.api.nvim_set_option_value, "winbar", value, { scope = "local" }) - if not status_ok then - return - end -end - -M.create_winbar = function() - vim.api.nvim_create_augroup("_winbar", {}) - vim.api.nvim_create_autocmd({ - "CursorHoldI", - "CursorHold", - "BufWinEnter", - "BufFilePost", - "InsertEnter", - "BufWritePost", - "TabClosed", - "TabEnter", - }, { - group = "_winbar", - callback = function() - if pcode.builtin.breadcrumbs.active then - local status_ok, _ = pcall(vim.api.nvim_buf_get_var, 0, "lsp_floating_window") - if not status_ok then - -- TODO: - require("pcode.core.breadcrumbs").get_winbar() - end - end - end, - }) -end - -return M diff --git a/lua/user/winbar.lua b/lua/user/winbar.lua index e7637f9..b6662cf 100644 --- a/lua/user/winbar.lua +++ b/lua/user/winbar.lua @@ -1,5 +1,5 @@ local active = true -local icons = vim.g.pcode_icons +local icons = pcode.icons local excludes = function() return vim.tbl_contains({ "help", @@ -138,20 +138,18 @@ local get_winbar = function() end vim.api.nvim_create_augroup("_winbar", {}) -if vim.fn.has("nvim-0.8") == 1 then - vim.api.nvim_create_autocmd( - { "CursorHoldI", "CursorHold", "BufWinEnter", "BufFilePost", "InsertEnter", "BufWritePost", "TabClosed" }, - { - group = "_winbar", - callback = function() - if active then - local status_ok, _ = pcall(vim.api.nvim_buf_get_var, 0, "lsp_floating_window") - if not status_ok then - -- TODO: - get_winbar() - end +vim.api.nvim_create_autocmd( + { "CursorHoldI", "CursorHold", "BufWinEnter", "BufFilePost", "InsertEnter", "BufWritePost", "TabClosed" }, + { + group = "_winbar", + callback = function() + if active then + local status_ok, _ = pcall(vim.api.nvim_buf_get_var, 0, "lsp_floating_window") + if not status_ok then + -- TODO: + get_winbar() end - end, - } - ) -end + end + end, + } +)