如何在neovim lua配置文件中覆盖颜色方案?

我如何在neovim lua配置文件中覆盖某些颜色方案值?我正在尝试使用.lua代替.vim。之前在我的init.vim文件中,我有这个来覆盖一些我想启用这些设置的设置,以便在init.lua文件中也可以使用。我该如何实现这一点?

highlight ColorColumn ctermbg=0 guibg=lightgrey
highlight Normal ctermfg=white ctermbg=black
autocmd ColorScheme * highlight CursorLineNr cterm=bold term=bold gui=bold

配置文件

原文链接 https://stackoverflow.com/questions/71152802

点赞
stackoverflow用户12734169
stackoverflow用户12734169

对于 Neovim

在你的 Lua 配置 init.lua 中,你可以使用 vim.cmd 函数来添加高亮和创建自动命令:

vim.cmd([[highlight ColorColumn ctermbg=0 guibg=lightgrey]])
vim.cmd([[highlight Normal ctermfg=white ctermbg=black]])
vim.cmd([[autocmd ColorScheme * highlight CursorLineNr cterm=bold term=bold gui=bold]])

对于 Neovim >= 0.7

在这个版本的 Neovim 中,API 中有一个新的函数来设置高亮: nvim_set_hl

你可以在 Lua 中使用它定义你的高亮:

vim.api.nvim_set_hl(0, "ColorColumn", { ctermbg=0, bg=LightGrey })
vim.api.nvim_set_hl(0, "Normal", { ctermfg=White,  ctermbg=Black })

API 中还有 nvim_create_autocmd 函数来在 Lua 中创建自动命令:

vim.api.nvim_create_autocmd("ColorScheme",
  pattern="*",
  callback = function()
    vim.api.nvim_set_hl(0, "CursorLineNr", { cterm=bold, bold=true })
  end,
)
2022-08-16 07:42:51