Commit c85c37d

Ansari <ping@ansari.wtf>
2026-02-14 02:59:07
nvim added dashboard and updated plugins
1 parent 5e5b24c
Changed files (3)
.config/nvim/lua/plugins/alpha.lua
@@ -0,0 +1,219 @@
+return {
+  "goolord/alpha-nvim",
+  dependencies = { "nvim-mini/mini.icons" },
+  event = "VimEnter",
+
+  config = function()
+    ------------------------------------------------------------------
+    -- Load Alpha
+    ------------------------------------------------------------------
+    local alpha = require("alpha")
+    local dashboard = require("alpha.themes.dashboard")
+    local utils = require("alpha.utils")
+
+    ------------------------------------------------------------------
+    -- ASCII Logo
+    ------------------------------------------------------------------
+    local fill = vim.fn.winheight(0) - 43
+		local logo = (fill >= 0 and [[
+
+
+
+
+
+
+
+
+
+
+    ]] or '') ..
+        [[
+                                          
+       ███████████           █████      ██
+      ███████████             █████ 
+      ████████████████ ███████████ ███   ███████
+     ████████████████ ████████████ █████ ██████████████
+    █████████████████████████████ █████ █████ ████ █████
+  ██████████████████████████████████ █████ █████ ████ █████
+ ██████  ███ █████████████████ ████ █████ █████ ████ ██████
+ ██████   ██  ███████████████   ██ █████████████████
+
+      ]]
+
+		-- Header: Logo 
+		-------------------------------------------------------------------
+    local header_lines = vim.split(logo, "\n")
+    table.insert(header_lines, "")       -- spacer
+
+    dashboard.section.header.val = header_lines
+
+    ------------------------------------------------------------------
+    -- Optional: Logo Highlighting (kept from your theme)
+    ------------------------------------------------------------------
+    local header_hl = {}
+
+    if fill >= 0 then
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+      table.insert(header_hl, { { "Red", 1, 1 } })
+    end
+    table.insert(header_hl, { { "AlphaHeader0_0", 46, 48 } }) -- Line 10
+    table.insert(header_hl, {                                 -- Line 11
+      { "AlphaHeader1_0", 7,  22 },
+      { "AlphaHeader1_1", 33, 40 },
+      { "AlphaHeader1_2", 40, 50 }
+    })
+    table.insert(header_hl, { -- Line 12
+      { "AlphaHeader2_0", 6,  21 },
+      { "AlphaHeader2_1", 33, 45 },
+    })
+    table.insert(header_hl, { -- Line 13
+      { "AlphaHeader3_0", 6,  19 },
+      { "AlphaHeader3_1", 19, 20 },
+      { "AlphaHeader3_2", 20, 35 },
+      { "AlphaHeader3_3", 35, 45 },
+      { "AlphaHeader3_4", 45, 90 },
+    })
+    table.insert(header_hl, { -- Line 14
+      { "AlphaHeader4_0", 5,  18 },
+      { "AlphaHeader4_1", 18, 36 },
+      { "AlphaHeader4_2", 36, 45 },
+      { "AlphaHeader4_3", 45, 90 }
+    })
+    table.insert(header_hl, { -- Line 15
+      { "AlphaHeader5_0", 4,  17 },
+      { "AlphaHeader5_1", 17, 24 },
+      { "AlphaHeader5_2", 24, 28 },
+      { "AlphaHeader5_3", 28, 37 },
+      { "AlphaHeader5_4", 37, 46 },
+      { "AlphaHeader5_5", 46, 90 },
+    })
+    table.insert(header_hl, { -- Line 16
+      { "AlphaHeader6_0", 2,  17 },
+      { "AlphaHeader6_1", 17, 38 },
+      { "AlphaHeader6_2", 38, 45 },
+      { "AlphaHeader6_3", 46, 90 },
+    })
+    table.insert(header_hl, { -- Line 17
+      { "AlphaHeader7_0", 1,  17 },
+      { "AlphaHeader7_1", 17, 38 },
+      { "AlphaHeader7_2", 38, 45 },
+      { "AlphaHeader7_3", 46, 90 },
+    })
+    table.insert(header_hl, { -- Line 18
+      { "AlphaHeader8_0", 1,  37 },
+      { "AlphaHeader8_1", 37, 91 },
+    })
+
+		
+    vim.api.nvim_set_hl(0, "AlphaHeader0_0", { fg = "#a6c9ab" })
+    vim.api.nvim_set_hl(0, "AlphaHeader1_0", { fg = "#bb7744" })
+    vim.api.nvim_set_hl(0, "AlphaHeader1_1", { fg = "#386c3f" })
+    vim.api.nvim_set_hl(0, "AlphaHeader1_2", { fg = "#a6c9ab" })
+    vim.api.nvim_set_hl(0, "AlphaHeader2_0", { fg = "#be7d46" })
+    vim.api.nvim_set_hl(0, "AlphaHeader2_1", { fg = "#3d7344" })
+    vim.api.nvim_set_hl(0, "AlphaHeader3_0", { fg = "#c18250" })
+    vim.api.nvim_set_hl(0, "AlphaHeader3_1", { fg = "#5c441e" })
+    vim.api.nvim_set_hl(0, "AlphaHeader3_2", { fg = "#d6c383" })
+    vim.api.nvim_set_hl(0, "AlphaHeader3_3", { fg = "#407b48" })
+    vim.api.nvim_set_hl(0, "AlphaHeader3_4", { fg = "#98c09c" })
+    vim.api.nvim_set_hl(0, "AlphaHeader4_0", { fg = "#c38950" })
+    vim.api.nvim_set_hl(0, "AlphaHeader4_1", { fg = "#e0c785" })
+    vim.api.nvim_set_hl(0, "AlphaHeader4_2", { fg = "#44844b" })
+    vim.api.nvim_set_hl(0, "AlphaHeader4_3", { fg = "#a0c4a3" })
+    vim.api.nvim_set_hl(0, "AlphaHeader5_0", { fg = "#c58f56" })
+    vim.api.nvim_set_hl(0, "AlphaHeader5_1", { fg = "#e2cb85" })
+    vim.api.nvim_set_hl(0, "AlphaHeader5_2", { fg = "#5c441e" })
+    vim.api.nvim_set_hl(0, "AlphaHeader5_3", { fg = "#e2cb85" })
+    vim.api.nvim_set_hl(0, "AlphaHeader5_4", { fg = "#488c51" })
+    vim.api.nvim_set_hl(0, "AlphaHeader5_5", { fg = "#a6c9ab" })
+    vim.api.nvim_set_hl(0, "AlphaHeader6_0", { fg = "#c7955b" })
+    vim.api.nvim_set_hl(0, "AlphaHeader6_1", { fg = "#e3cf88" })
+    vim.api.nvim_set_hl(0, "AlphaHeader6_2", { fg = "#4d9356" })
+    vim.api.nvim_set_hl(0, "AlphaHeader6_3", { fg = "#aecdb3" })
+    vim.api.nvim_set_hl(0, "AlphaHeader7_0", { fg = "#c89b62" })
+    vim.api.nvim_set_hl(0, "AlphaHeader7_1", { fg = "#e5d38a" })
+    vim.api.nvim_set_hl(0, "AlphaHeader7_2", { fg = "#509b59" })
+    vim.api.nvim_set_hl(0, "AlphaHeader7_3", { fg = "#b7d1b9" })
+    vim.api.nvim_set_hl(0, "AlphaHeader8_0", { fg = "#5c441e" })
+    vim.api.nvim_set_hl(0, "AlphaHeader8_1", { fg = "#2e4e2a" })
+
+
+    header_hl = utils.charhl_to_bytehl(header_hl, header_lines, false)
+    dashboard.section.header.opts.hl = header_hl
+
+    ------------------------------------------------------------------
+    -- Buttons
+    ------------------------------------------------------------------
+    local config_path = vim.fn.stdpath("config")
+
+    dashboard.section.buttons.val = {
+      dashboard.button("n", "  New file", ":ene <BAR> startinsert<CR>"),
+      dashboard.button("r", "󰄉  Recent files", ":Telescope oldfiles<CR>"),
+      dashboard.button("u", "󱐥  Update plugins", "<cmd>Lazy update<CR>"),
+      dashboard.button("s", "  Settings", ":e " .. config_path .. "/init.lua<CR>"),
+      dashboard.button("q", "󰿅  Quit", "<cmd>q<CR>"),
+    }
+
+    dashboard.section.buttons.opts.spacing = 1
+    dashboard.section.buttons.opts.position = "center"
+
+    ------------------------------------------------------------------
+    -- Footer: Plugin Stats (loaded after Lazy starts)
+    ------------------------------------------------------------------
+    vim.api.nvim_create_autocmd("User", {
+      pattern = "LazyVimStarted",
+      once = true,
+      callback = function()
+        local stats = require("lazy").stats()
+        local ms = math.floor(stats.startuptime * 100 + 0.5) / 100
+
+        dashboard.section.footer.val = {
+          "",
+          "⚡ Loaded " .. stats.count .. " plugins in " .. ms .. " ms",
+        }
+
+        pcall(vim.cmd.AlphaRedraw)
+      end,
+    })
+
+    ------------------------------------------------------------------
+    -- Clean UI while dashboard is open
+    ------------------------------------------------------------------
+    local group = vim.api.nvim_create_augroup("AlphaCleanUI", {})
+
+    -- Hide ruler & showcmd in dashboard
+    vim.api.nvim_create_autocmd("User", {
+      group = group,
+      pattern = "AlphaReady",
+      callback = function()
+        vim.opt.showcmd = false
+        vim.opt.ruler = false
+      end,
+    })
+
+    -- Restore UI after leaving dashboard
+    vim.api.nvim_create_autocmd("BufUnload", {
+      group = group,
+      pattern = "<buffer>",
+      callback = function()
+        vim.opt.showcmd = true
+        vim.opt.ruler = true
+      end,
+    })
+
+    ------------------------------------------------------------------
+    -- Final setup
+    ------------------------------------------------------------------
+    dashboard.opts.opts.noautocmd = true
+    alpha.setup(dashboard.opts)
+  end,
+}
+
.config/nvim/lua/options.lua
@@ -41,3 +41,5 @@ opt.wrap = false
 
 opt.ruler = false
 opt.showmode = false
+
+opt.clipboard:append("unnamedplus")
.config/nvim/lazy-lock.json
@@ -1,11 +1,13 @@
 {
-  "catppuccin": { "branch": "main", "commit": "ce4a8e0d5267e67056f9f4dcf6cb1d0933c8ca00" },
-  "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
+  "alpha-nvim": { "branch": "main", "commit": "a9d8fb72213c8b461e791409e7feabb74eb6ce73" },
+  "catppuccin": { "branch": "main", "commit": "beaf41a30c26fd7d6c386d383155cbd65dd554cd" },
+  "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" },
   "lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
+  "mini.icons": { "branch": "main", "commit": "68c178e0958d95b3977a771f3445429b1bded985" },
   "neo-tree.nvim": { "branch": "v3.x", "commit": "f3df514fff2bdd4318127c40470984137f87b62e" },
   "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
   "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
-  "nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
+  "nvim-web-devicons": { "branch": "master", "commit": "746ffbb17975ebd6c40142362eee1b0249969c5c" },
   "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
   "telescope-git-branch.nvim": { "branch": "main", "commit": "acdc68011e07b349ead4c83c4c66cbdf061164b3" },
   "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },