我正在寻找一种在 Vim 中配置用于行编号的颜色的方法(如:
:set nu
)。 大多数平台上的默认值似乎是黄色(也用于一些突出显示的令牌)。 我想要将行号涂成暗灰色; #555
附近的某处。 不过我不挑剔,任何柔和的颜色都可以接受。help hl-LineNr
我通过以下方式找到了这个:
help 'number'
这是获取有关
'number'
选项(而不是
:number
命令)帮助的方法。要实际更改显示的颜色:
:highlight LineNr ctermfg=grey
这会将字符终端上的 LineNr 的前景色更改为灰色。如果您使用 gVim,您可以:
:highlight LineNr guifg=#050505
.vimrc
highlight LineNr term=bold cterm=NONE ctermfg=DarkGrey ctermbg=NONE gui=NONE guifg=DarkGrey guibg=NONE
当然,您可以将
ctermfg
和
guifg
更改为您想要的任何颜色。CursorLineNr
可以工作:
hi CursorLineNr guifg=#050505
colorscheme trivial256 " for light background
hi LineNr term=bold cterm=bold ctermfg=2 guifg=Grey guibg=Grey90
neovim
中使用
lua
。希望它对某人有帮助。-- Enable line numbers
vim.opt.nu = true
vim.opt.relativenumber = true
local function set_highlights()
vim.api.nvim_set_hl(0, 'HighlightOfStatusColumnSign', {
fg = '#FFA500',
bold = true
})
vim.api.nvim_set_hl(0, 'HighlightOfAbsoluteLineNumber', {
fg = '#FFD700',
bold = true
})
vim.api.nvim_set_hl(0, 'HighlightOfRelativeLineNumberAbove', {
fg = '#FB508F',
bold = true
})
vim.api.nvim_set_hl(0, 'HighlightOfRelativeLineNumberBelow', {
fg = '#00FF00',
bold = true
})
vim.api.nvim_set_hl(0, 'HighlightOfRelativeLineNumberDefault', {
fg = '#FFFFFF',
bold = false
}) -- Default color for reset
end
set_highlights()
function _G.update_status_column()
local absolute_number_of_current_line = vim.v.lnum
local relative_number_of_current_line = vim.v.lnum - vim.fn.line('.')
local padding = absolute_number_of_current_line < 10 and " " or " "
local highlight_of_relative_line_number
if relative_number_of_current_line > 0 then
highlight_of_relative_line_number = "%#HighlightOfRelativeLineNumberBelow#"
elseif relative_number_of_current_line < 0 then
highlight_of_relative_line_number = "%#HighlightOfRelativeLineNumberAbove#"
else
highlight_of_relative_line_number = "%#HighlightOfRelativeLineNumberDefault#"
end
return
("%#HighlightOfAbsoluteLineNumber#" .. absolute_number_of_current_line .. padding .. highlight_of_relative_line_number ..
(relative_number_of_current_line ~= 0 and math.abs(relative_number_of_current_line) or '') .. ' ')
end
-- Set the status column
vim.o.statuscolumn = "%#HighlightOfStatusColumnSign#%s %{%v:lua.update_status_column()%}"
-- Create an autocommand to reset highlights when colorscheme changes
vim.api.nvim_create_autocmd("ColorScheme", {
pattern = "*",
callback = set_highlights
})