Skip to content
On this page

UI自定义

状态栏(Statusline)和标签页(tabufline)

我们使用我们自己的 插件 来实现状态栏(statusline)和标签页(tabufline)。 默认的配置是 (请记住,每个插件的默认配置只是一个table):

lua
M.ui = {
  -- ...other options

  statusline = {
    theme = "default", -- default/vscode/vscode_colored/minimal

    -- default/round/block/arrow (分隔符[separator]只在"default"状态栏(statusline)主题下才生效;
    -- round 和 block 只在 minimal主题下生效)
    separator_style = "default",
    overriden_modules = nil,
  },

  tabufline = {
    lazyload = true,
    overriden_modules = nil,
  },

  -- ...other options
}

覆盖状态栏statusline 模块

我们也可以覆盖插件的配置:

lua
M.ui = {
  statusline = {
    overriden_modules = function()
      local st_modules = require "nvchad_ui.statusline.default"
      -- 这里是状态栏模块的默认配置表
  
      return {
        mode = function()
          return st_modules.mode() .. " bruh " 
          -- or just return "" to hide this module
        end,
      }
    end,
  },
}

建议检查 statusline模块文件中的文件列表。 在上面的代码中,您可以看到我们想要在状态栏的模式旁边打印"bruh"。为了添加高亮显示,请执行以下操作:

lua
"%#BruhHl#" .. " bruh " -- the highlight group here is BruhHl

覆盖标签页tabufline模块

覆盖标签页tabufline的配置与状态栏statusline类似:

lua
M.ui = {
  tabufline = {
     overriden_modules = function()
       local modules = require "nvchad_ui.tabufline.modules"
  
       return {
         buttons = function()
           return modules.buttons() .. " my button "
         end,
         -- or buttons = "" , this will hide the buttons
       }
     end,
  },
}

更多信息你可以查看 tabufline模块文件.

Powered by VitePress