LazyVim 启动页自定义指南:3步把默认首页换成你的专属版本
【免费下载链接】LazyVimNeovim config for the lazy项目地址: https://gitcode.com/GitHub_Trending/la/LazyVim
LazyVim 的默认启动页固定是「LAZYVIM」大字 logo 加九个功能按钮,换不来一张属于自己的画面。这篇文章给你一条最短路径:启用官方 extras 里的替换方案,再改 logo、改按钮、改主题,几分钟就能重启看到效果,全部改动都发生在几个 Lua 配置文件里。
快速上手:3步启用替换启动页 🚀
LazyVim 把可选组件(extras)做成开关形式,UI 目录下就内置了三个启动页方案,位置在 lua/lazyvim/plugins/extras/ui/:
| 方案 | extras 名称 | 背后插件 | 风格 |
|---|---|---|---|
| Alpha | ui.alpha | goolord/alpha-nvim | 轻量,区块式布局,高度可改 |
| Dashboard | ui.dashboard-nvim | nvimdev/dashboard-nvim | 带内置主题,视觉元素多 |
| Mini.starter | ui.mini-starter | nvim-mini/mini.starter | 极简,条目式列表 |
三步跑通(以 Alpha 为例):
- 在 Neovim 里输入
:LazyExtras打开组件选择浮层 - 找到
ui.alpha一行,按x切换启用 - 重启 Neovim(浮层会提示 "Please restart LazyVim to apply the changes"),启动后默认首页即被替换
三个方案互斥使用,启用其中任意一个时,配置里都会顺手把 snacks.nvim 自带的 dashboard 关掉(dashboard = { enabled = false }),避免两套启动页打架。
不想用浮层手动切?也可以直接编辑
~/.config/nvim/lazyvim.json,把"lazyvim.plugins.extras.ui.alpha"加进extras数组,效果等同。
按「你想改什么」拆解配置 🔧
三个 extras 的结构大同小异:一个 logo 字符串、一组按钮、一个 footer。下面按改动目标分别说。
启动 logo 怎么换
打开 lua/lazyvim/plugins/extras/ui/alpha.lua,找到local logo = [[ ... ]]这段多行字符串,把里面的 ASCII 字符画换成你自己的即可,它会被按行拆分后渲染到头部区块。几个小建议:
- 用
box drawing(█ ╔ ═ 这类)字符拼 logo,在等宽终端里对齐最稳 - 总宽尽量不超过 90 列,否则窄窗口会折行
- dashboard-nvim 的 dashboard-nvim.lua 里同样有
local logo,改法一样;它额外会在 logo 前补 8 行空行使画面更居中
快捷按钮行怎么增删
Alpha 的按钮定义在dashboard.section.buttons.val里,每行一个入口:
dashboard.button("f", " " .. " Find file", "<cmd> lua LazyVim.pick()() <cr>")三个参数依次是:快捷键字母、显示文本(含图标字符)、触发命令。默认给了 9 个(f 找文件、n 新建、r 最近文件、g 全文搜索、c 配置文件、s 恢复会话、x Lazy Extras、l Lazy、q 退出)。增删就是加一行或删一行,例如加一个项目管理入口:
dashboard.button("p", " " .. " Projects", "<cmd>Telescope projects<cr>")Dashboard 方案的按钮在config.center列表里,字段换成key/desc/action:
{ action = "LazyExtras", desc = " Lazy Extras", icon = " ", key = "x" }主题配色怎么调
- Dashboard 方案:在 dashboard-nvim.lua 的
opts中找到theme项,取值为插件内置主题名(如doom),改一个单词就换整套配色 - Alpha 方案:没有内置主题字段,配色由高亮组控制,找到
button.opts.hl = "AlphaButtons"、dashboard.section.header.opts.hl = "AlphaHeader"这类hl赋值,指向你当前色板里任意高亮组即可 - Mini.starter 方案:走纯文本渲染,基本跟随色板,无需单独调
底部加载统计从哪来
默认启动页底部那句「⚡ Neovim loaded X/Y plugins in Zms」不是硬编码,而是启动完成后从 Lazy 拿真实数据拼出来的。在 alpha.lua 的config函数里找到local stats = require("lazy").stats(),其中stats.loaded、stats.count、stats.startuptime分别是已加载插件数、总插件数、启动耗时(秒,所以乘 100 转成毫秒)。想改文案或格式,直接改那几行字符串拼接就行。
进阶玩法 🛠️
一行配置切换启动页
三个方案本质都是import一个 extras 模块。在用户配置里按需引入,就能按条件换首页:
-- lazy 配置列表中 { import = "lazyvim.plugins.extras.ui.alpha" }把模块名换成ui.dashboard-nvim或ui.mini-starter即可切换;配合环境变量判断(vim.env)可以实现「不同机器用不同首页」。注意同一时间只保留一个 UI extras,重复启用会互相覆盖。
保留默认首页的同时微调
如果你只是想改 logo 或按钮、不想换引擎,直接改 snacks.nvim 默认 dashboard 的对应配置即可,不必启用上面任何 extras——这三个 extras 的定位就是「整体替换」。
常见坑位与生效方式 ⚠️
- 改完不生效:extras 的启用/禁用写入的是
lazyvim.json,必须完整重启 Neovim,:Lazy reload对启用类变更不总是可靠 - logo 折行错位:ASCII 图里混入了全角字符或不可见空格,先粘贴到纯文本编辑器检查一遍
- 两套启动页都出现:确认 snacks 的 dashboard 已被
enabled = false关闭,这是各 extras 文件的第一个条目,别手动删掉它
资源清单
- 三个启动页 extras 源码:lua/lazyvim/plugins/extras/ui/(alpha.lua、dashboard-nvim.lua、mini-starter.lua)
- extras 开关与优先级逻辑:lua/lazyvim/plugins/xtras.lua、lua/lazyvim/util/extras.lua
- 项目说明文档:doc/LazyVim.txt
- 仓库克隆地址(需要时):https://gitcode.com/GitHub_Trending/la/LazyVim
改一行 logo、加一个按钮、重启一次 Neovim——启动页的第一眼,从此由你定义。
【免费下载链接】LazyVimNeovim config for the lazy项目地址: https://gitcode.com/GitHub_Trending/la/LazyVim
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考