Skip to content

Latest commit

 

History

History
188 lines (138 loc) · 5.51 KB

colors.zh.md

File metadata and controls

188 lines (138 loc) · 5.51 KB

颜色和高亮

English | 中文

你可以修改默认配色和高亮。

色彩设计原则

  • 主色调:蓝色
  • 副色调:绿色
  • 搜索/匹配色:橙色

颜色层次

优先级从高到低:

色彩空间

什么是色彩空间?可参考这篇文章

本项目的颜色是根据 Display P3 色彩空间设计的。对于 MacOS 系统和 iTerm2 用户友好。

如果你的 nvim 配色看起来跟下图有点不一样。你的终端应该不是处于 Display P3 色彩空间。 你可以尝试 sRGB 配色

色彩空间由终端应用程序和操作系统管理。您应该根据自己的环境选择合适的色彩空间。

当前 one.nvim 提供 Display P3sRGB 色彩预设。 默认使用 Display P3 预设。您可以参考下面的代码使用 sRGB 预设。

require('one').setup {
  config = {
    colors = require('one.colors.srgb')
  }
}

对于 Kitty 用户,应在 Kitty 配置中设置 macos_colorspace displayp3 。或者设置 macos_colorspace srgb,并使用 sRGB 色彩预设。

对于 Windows 用户,请阅读 Microsoft - About Color Management Windows Central - How to find the right color profile for your monitor using Windows 10。(尽管目前 one.nvim 对 Windows 用户不起作用)。

背景色、前景色、光标颜色

通过配置项 config.colors 修改基本配色。

默认颜色配置定义在 ../lua/one/colors/display-p3.lua

require('one').setup {
  config = {
    colors = { -- basic colors
      white = '#BEC0C4', -- frontground
      black = '#15181D', -- background
      cursorLine = '#252931',
    },
  }
}

给插件设置高亮

通过 plugins 配置覆盖插件的高亮。

require('one').setup {
  plugins = {
    {
      'stevearc/aerial.nvim',
      highlights = {
        AerialLine = { bg = 'green' },
      }
    },
  },
}

语法高亮

本项目高度依赖 nvim-treesitter。The nvim-treesitter will set highlights for each syntax. See the treesitter highlights and colors/highlights.

如果语法高亮失效,尝试重新安装你的 treesitter parsers。阅读 doc/treesitter.md 查看如何排查问题。

注意:这些语法高亮对 treesitter 无效

treesitter 禁用了 markdown 语法高亮(参见 config.treesitter.highlight.disable)。 但它的语法解析器仍在工作。 它的语法高亮定义在 lua/one/plugins/markdown/highlights.lua 中。

在使用 nvim 内置高亮时,help 语法高亮对 treesitter 无效。

主题

默认主题是 'onedarkpro'.

主题: onedarkpro

require('one').setup {
  config = {
    theme = {
      use = 'onedarkpro',
      -- The onedarkpro plugin provides four themes.
      onedarkpro = {
        theme = 'onedark', -- 'onelight', 'onedark_vivid', 'onedark_dark'

        -- You can override options
        -- Options see https://github.com/olimorris/onedarkpro.nvim#wrench-configuration
        colors = {},
        highlights = {},
        plugins = {},
        styles = {},
        options = {},
      }
    }
  },
}

主题: material

require('one').setup {
  config = {
    theme = {
      use = 'material',
      -- The material plugin provides five themes.
      material = {
        style = 'darker', -- 'darker', 'lighter', 'oceanic', 'palenight' 'deep ocean'
        -- Options see https://github.com/marko-cerovac/material.nvim
      }
    }
  },
}

禁用 one.nvim 主题

你可以 config.theme.use = false 禁用主题。

如果你更喜欢 tokyonight.nvim,按如下代码编辑你的 init.lua

require('one').setup {
  config = {
    theme = { use = false },
  },

  plugins = {
    { 'onedarkpro', disable = true },

    {
      'folke/tokyonight.nvim',

      config = function(config)
        local conf = config.tokyonight
        vim.cmd('colorscheme ' .. conf.colorscheme)
        require('tokyonight').setup(conf.setup)
      end,

      defaultConfig = {
        'tokyonight',
        {
          colorscheme = 'tokyonight', -- https://github.com/folke/tokyonight.nvim#-usage
          setup = {}, -- https://github.com/folke/tokyonight.nvim#%EF%B8%8F-configuration
        },
      },
    },
  },
}

这个配置很简陋,需要你自己调整。