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

12

如何在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://github.com/nanotee/nvim-lua-guide? - jdhao
3
我只想将这个配置转换成.lua格式。 - monzim
1个回答

11

对于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,
)

我该如何了解这个问题呢?每次使用帮助时,似乎都找不到想要的内容,最后只能求助于谷歌搜索。是否有一些从VimL命令到Lua绑定的映射已经被实现了呢? - Tiseno

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接