Unable to use theta theme
Opened this issue · 2 comments
KikeSenpai commented
Hi, I am unable to use the theta theme, the startify works well, I wanted to try the theta theme to get a centralized greeter page.
the error is
Failed to run `config` for alpha-nvim
...nrique.delgado/.config/nvim/lua/custom/plugins/alpha.lua:12: attempt to index field 'section' (a nil value)
# stacktrace:
- lua/custom/plugins/alpha.lua:12 _in_ **config**
- lua/lazy-plugins.lua:3
- init.lua:70
This is my config for alpha
return {
'goolord/alpha-nvim',
dependencies = {
'nvim-tree/nvim-web-devicons',
'nvim-lua/plenary.nvim',
},
config = function()
local alpha = require 'alpha'
local dashboard = require 'alpha.themes.theta'
dashboard.section.header.val = {
[[ ]],
[[ ]],
[[ ]],
[[ ████████ ██ ██ ████ ████████ ]],
[[ █████ ██ ██ ████ █████ ████ ]],
[[ ███ ██ ██ ███ ███ ██ ]],
[[ ██ ██ ██ ███ ██ ██ ]],
[[ ██ ██ ██ ██ ██ █████████████████████████ ]],
[[ ██ ██ ██ ██ ██ ██ ]],
[[ ███ ██ ██ ██ ██ ██ ]],
[[ █████ ████ ████ ██ ██ ████ ]],
[[ ████████ █████ ██ ██ ████████ ]],
[[ ]],
[[ ]],
[[ ]],
}
-- Set buttons
dashboard.section.top_buttons.val = {
dashboard.button('e', ' New file', ':ene <BAR> startinsert <CR>'),
}
dashboard.section.bottom_buttons.val = {
dashboard.button('q', ' Quit NVIM', ':qa<CR>'),
}
-- Disable MRU
dashboard.section.mru.val = { { type = "padding", val = 0 } }
-- Set footer
local footer = [[
I must not fear. Fear is the mind-killer. Fear is the little-death that brings total obliteration.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past
I will turn the inner eye to see its path. Where the fear has gone there will be nothing. Only I will remain.
]]
dashboard.section.footer.val = {
{
type = 'text',
val = footer,
},
}
-- Keymaps
vim.keymap.set('n', '<leader>a', ':Alpha<CR>', { desc = 'Goto Greeter Screen' })
alpha.setup(dashboard.config)
end,
}
-- vim: ts=2 sts=2 sw=2 et
nohr commented
theta uses buttons from the dashboard theme. I think what makes it different from dashboard is its use of recent files. since you don't need those, you can accomplish this with the dashboard theme instead. see alpha-dune.lua
:
return {
"goolord/alpha-nvim",
dependencies = {
"nvim-tree/nvim-web-devicons",
"nvim-lua/plenary.nvim",
},
lazy = false,
config = function()
local alpha = require "alpha"
local dashboard = require "alpha.themes.dashboard"
dashboard.section.header.val = {
[[ ]],
[[ ]],
[[ ]],
[[ ████████ ██ ██ ████ ████████ ]],
[[ █████ ██ ██ ████ █████ ████ ]],
[[ ███ ██ ██ ███ ███ ██ ]],
[[ ██ ██ ██ ███ ██ ██ ]],
[[ ██ ██ ██ ██ ██ █████████████████ ]],
[[ ██ ██ ██ ██ ██ ██ ]],
[[ ███ ██ ██ ██ ██ ██ ]],
[[ █████ ████ ████ ██ ██ ████ ]],
[[ ████████ █████ ██ ██ ████████ ]],
[[ ]],
[[ ]],
[[ ]],
}
dashboard.section.buttons.val = {
dashboard.button("e", " New file", ":ene <BAR> startinsert <CR>"),
dashboard.button("q", " Quit NVIM", ":qa<CR>"),
{ type = "padding", val = 2 },
}
-- Set footer
local footer = [[
I must not fear. Fear is the mind-killer. Fear is the little-death that brings total obliteration.
I will face my fear. I will permit it to pass over me and through me. And when it has gone past
I will turn the inner eye to see its path. Where the fear has gone there will be nothing. Only I will remain.
]]
dashboard.section.footer.val = footer
dashboard.section.footer.type = "text"
dashboard.section.footer.opts = {
position = "center",
hl = "Number",
}
-- Keymaps
vim.keymap.set("n", "<leader>a", ":Alpha<CR>", { desc = "Goto Greeter Screen" })
alpha.setup(dashboard.config)
end,
}
steven-na commented
Theta doesn't have the same layout as startify, so the variables have different names.
You can access the header of theta by using dashboard.header.val
rather than dashboard.section.header.val
(My variable is named theta, while yours is dashboard)
You can see the structure of the theta theme here