summaryrefslogtreecommitdiff
path: root/lua/style.lua
blob: 365ea9ae145b665618cdf769b1d78d8739b296f9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
vim.o.background = "dark"

local ayu_colors = require('ayu.colors')

ayu_colors.generate()

ayu_colors.entity = "#3EB8FF"
ayu_colors.tag = ayu_colors.fg

-- The colors should not be regenerated
require("ayu.colors").generate = function() end

require('ayu').setup({
  overrides = {
	WinSeparator = { fg = ayu_colors.comment, bg = ayu_colors.bg },
	LineNrAbove = { fg = ayu_colors.comment },
	LineNrBelow = { fg = ayu_colors.comment },
	LineNr = { fg = ayu_colors.accent },
	TerminalWindow = { fg = ayu_colors.fg, bg = ayu_colors.panel_bg },
	ColorColumn = { bg = ayu_colors.error },
  }
})

vim.cmd("colorscheme ayu-dark")

local ayu_dark_lualine_theme = require'lualine.themes.ayu_dark'

require('lualine').setup({
	options = {
		theme = ayu_dark_lualine_theme,
		globalstatus = true,
	},
})

local bufferline = require("bufferline")

local selected_buffer_bg = "#1E2126"

bufferline.setup {
	options = {
		style_preset = bufferline.style_preset.no_italic,
		show_buffer_close_icons = false,
		show_close_icon = false,
		indicator = {
			style = "none"
		},
		diagnostics = "coc",
	},
	highlights = {
		buffer_selected = {
			bg = selected_buffer_bg
		},
		buffer_visible = {
			bg = selected_buffer_bg
		},
		diagnostic_selected = {
			bg = selected_buffer_bg
		},
		hint_selected = {
			bg = selected_buffer_bg
		},
		info_selected = {
			bg = selected_buffer_bg
		},
		warning_selected = {
			bg = selected_buffer_bg
		},
		error_selected = {
			bg = selected_buffer_bg
		},
		indicator_selected = {
			fg = ayu_colors.accent
		}
	}
}

local highlight = {
    "RainbowRed",
    "RainbowYellow",
    "RainbowBlue",
    "RainbowOrange",
    "RainbowGreen",
    "RainbowViolet",
    "RainbowCyan",
}

local hooks = require "ibl.hooks"

-- create the highlight groups in the highlight setup hook, so they are reset
-- every time the colorscheme changes
hooks.register(hooks.type.HIGHLIGHT_SETUP, function()
    vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#E06C75" })
    vim.api.nvim_set_hl(0, "RainbowYellow", { fg = "#E5C07B" })
    vim.api.nvim_set_hl(0, "RainbowBlue", { fg = "#61AFEF" })
    vim.api.nvim_set_hl(0, "RainbowOrange", { fg = "#D19A66" })
    vim.api.nvim_set_hl(0, "RainbowGreen", { fg = "#98C379" })
    vim.api.nvim_set_hl(0, "RainbowViolet", { fg = "#C678DD" })
    vim.api.nvim_set_hl(0, "RainbowCyan", { fg = "#56B6C2" })
end)

vim.g.rainbow_delimiters = { highlight = highlight }

require("ibl").setup {
	indent = { char = '¦' },
	scope = { highlight = highlight, show_start = false, show_exact_scope = false }
}

hooks.register(hooks.type.SCOPE_HIGHLIGHT, hooks.builtin.scope_highlight_from_extmark)