pojokcodeid.nvim-lazy/lua/user/startify.lua

77 lines
2.5 KiB
Lua
Raw Normal View History

2024-06-07 18:53:54 +07:00
local alpha = require "alpha"
local startify = require "alpha.themes.startify"
2023-02-15 20:00:17 +07:00
local dash_model = {}
dash_model = {
2024-06-07 18:53:54 +07:00
[[ _ __ __ ]],
[[ ___ ___ (____ / /__ _______ ___/ ___ ]],
[[ / _ / _ \ / / _ \/ '_/ / __/ _ / _ / -_) ]],
[[ / .__\_____/ /\___/_/\_\ \__/\___\_,_/\__/ ]],
[[ /_/ |___/ ]],
2023-02-12 23:00:38 +07:00
}
2023-02-15 20:00:17 +07:00
2024-05-21 14:20:50 +07:00
local board = vim.g.pcode_header1
if board ~= nil then
2024-06-07 18:53:54 +07:00
dash_model = board
2023-02-15 20:00:17 +07:00
end
2024-05-21 14:20:50 +07:00
2023-02-15 20:00:17 +07:00
startify.section.header.val = dash_model
2023-02-12 23:00:38 +07:00
startify.section.top_buttons.val = {
2024-06-07 18:53:54 +07:00
startify.button("F", "󰈞 Find file", ":Telescope find_files <CR>"),
startify.button("e", " New file", ":ene <BAR> startinsert <CR>"),
startify.button("p", "󰉋 Find project", ":Telescope projects <CR>"),
startify.button("r", "󰦛 Recently used files", ":Telescope oldfiles <CR>"),
startify.button("t", "󰊄 Find text", ":Telescope live_grep <CR>"),
startify.button("c", " Configuration", ":e $MYVIMRC <CR>"),
startify.button("z", "󰒲 Lazy", ":Lazy<CR>"),
2023-02-12 23:00:38 +07:00
}
-- disable MRU
startify.section.mru.val = { { type = "padding", val = 4 } }
-- disable MRU cwd
startify.section.mru_cwd.val = { { type = "padding", val = 0 } }
-- disable nvim_web_devicons
startify.nvim_web_devicons.enabled = false
-- startify.nvim_web_devicons.highlight = false
-- startify.nvim_web_devicons.highlight = 'Keyword'
--
startify.section.bottom_buttons.val = {
2024-06-07 18:53:54 +07:00
startify.button("q", "󰅚 Quit", ":qa<CR>"),
2023-02-12 23:00:38 +07:00
}
2023-02-19 18:27:34 +07:00
local footer_text = "Pojok Code"
2024-05-21 14:20:50 +07:00
local data_txt = vim.g.pcode_footer
if data_txt ~= nil then
2024-06-07 18:53:54 +07:00
footer_text = data_txt
2023-02-19 18:27:34 +07:00
end
2024-03-31 16:35:21 +07:00
vim.api.nvim_create_autocmd("User", {
2024-06-07 18:53:54 +07:00
pattern = "LazyVimStarted",
desc = "Add Alpha dashboard footer",
once = true,
callback = function()
local stats = require("lazy").stats()
local ms = math.floor(stats.startuptime * 100 + 0.5) / 100
startify.section.footer.val = {
{
type = "text",
val = { footer_text .. " " .. stats.loaded .. "/" .. stats.count .. " plugins  in " .. ms .. "ms" },
},
}
pcall(vim.cmd.AlphaRedraw)
end,
2024-03-31 16:35:21 +07:00
})
2024-04-18 07:17:54 +07:00
vim.api.nvim_create_autocmd({ "User" }, {
2024-06-07 18:53:54 +07:00
pattern = { "AlphaReady" },
callback = function()
vim.cmd [[
2024-04-18 07:17:54 +07:00
set laststatus=0 | autocmd BufUnload <buffer> set laststatus=3
2024-06-07 18:53:54 +07:00
]]
end,
2024-04-18 07:17:54 +07:00
})
2023-02-12 23:00:38 +07:00
-- ignore filetypes in MRU
2024-05-22 06:39:38 +07:00
local default_mru_ignore = {}
2023-02-12 23:00:38 +07:00
startify.mru_opts.ignore = function(path, ext)
2024-06-07 18:53:54 +07:00
return (string.find(path, "COMMIT_EDITMSG")) or (vim.tbl_contains(default_mru_ignore, ext))
2023-02-12 23:00:38 +07:00
end
alpha.setup(startify.config)