aboutsummaryrefslogtreecommitdiff
path: root/colors/plain.vim
diff options
context:
space:
mode:
Diffstat (limited to 'colors/plain.vim')
-rw-r--r--colors/plain.vim243
1 files changed, 243 insertions, 0 deletions
diff --git a/colors/plain.vim b/colors/plain.vim
new file mode 100644
index 0000000..0f2208b
--- /dev/null
+++ b/colors/plain.vim
@@ -0,0 +1,243 @@
1" Name: plain.vim
2" Version: 0.1
3" Maintainer: github.com/andreypopp
4" License: The MIT License (MIT)
5"
6" Based on
7"
8" https://github.com/pbrisbin/vim-colors-off (MIT License)
9"
10" which in turn based on
11"
12" https://github.com/reedes/vim-colors-pencil (MIT License)
13"
14"""
15hi clear
16
17if exists('syntax on')
18 syntax reset
19endif
20
21let g:colors_name='plain'
22
23let s:black = { "gui": "#121212", "cterm": "0" }
24let s:medium_gray = { "gui": "#767676", "cterm": "243" }
25let s:white = { "gui": "#F1F1F1", "cterm": "15" }
26let s:actual_white = { "gui": "#FFFFFF", "cterm": "231" }
27let s:light_black = { "gui": "#424242", "cterm": "8" }
28let s:lighter_black = { "gui": "#545454", "cterm": "240" }
29let s:subtle_black = { "gui": "#303030", "cterm": "236" }
30let s:light_gray = { "gui": "#999999", "cterm": "249" }
31let s:lighter_gray = { "gui": "#E1E1E1", "cterm": "251" }
32let s:pink = { "gui": "#fb007a", "cterm": "9" }
33let s:dark_red = { "gui": "#C30771", "cterm": "1" }
34let s:light_red = { "gui": "#E32791", "cterm": "1" }
35let s:orange = { "gui": "#D75F5F", "cterm": "167" }
36let s:darker_blue = { "gui": "#005F87", "cterm": "18" }
37let s:dark_blue = { "gui": "#008EC4", "cterm": "4" }
38let s:blue = { "gui": "#20BBFC", "cterm": "12" }
39let s:light_blue = { "gui": "#b6d6fd", "cterm": "153" }
40let s:dark_cyan = { "gui": "#20A5BA", "cterm": "6" }
41let s:light_cyan = { "gui": "#4FB8CC", "cterm": "14" }
42let s:dark_green = { "gui": "#10A778", "cterm": "2" }
43let s:light_green = { "gui": "#5FD7A7", "cterm": "10" }
44let s:dark_purple = { "gui": "#523C79", "cterm": "5" }
45let s:light_purple = { "gui": "#6855DE", "cterm": "13" }
46let s:light_yellow = { "gui": "#F3E430", "cterm": "11" }
47let s:dark_yellow = { "gui": "#A89C14", "cterm": "3" }
48
49if &background == "dark"
50 let s:bg = s:black
51 let s:bg_subtle = s:light_black
52 let s:bg_very_subtle = s:subtle_black
53 let s:norm = s:lighter_gray
54 let s:norm_subtle = s:light_gray
55 let s:purple = s:light_purple
56 let s:cyan = s:light_cyan
57 let s:green = s:light_green
58 let s:red = s:light_red
59 let s:yellow = s:light_yellow
60 let s:visual = s:lighter_black
61 let s:cursor_line = s:light_black
62 let s:status_line = s:light_black
63 let s:constant = s:light_blue
64 let s:comment = s:light_gray
65else
66 let s:bg = s:white
67 let s:bg_subtle = s:lighter_gray
68 let s:bg_very_subtle = s:light_gray
69 let s:norm = s:light_black
70 let s:norm_subtle = s:lighter_black
71 let s:purple = s:dark_purple
72 let s:cyan = s:dark_cyan
73 let s:green = s:dark_green
74 let s:red = s:dark_red
75 let s:yellow = s:dark_yellow
76 let s:visual = s:light_blue
77 let s:cursor_line = s:lighter_gray
78 let s:status_line = s:lighter_gray
79 let s:constant = s:dark_blue
80 let s:comment = s:light_gray
81endif
82
83" https://github.com/noahfrederick/vim-hemisu/
84function! s:h(group, style)
85 execute "highlight" a:group
86 \ "guifg=" (has_key(a:style, "fg") ? a:style.fg.gui : "NONE")
87 \ "guibg=" (has_key(a:style, "bg") ? a:style.bg.gui : "NONE")
88 \ "guisp=" (has_key(a:style, "sp") ? a:style.sp.gui : "NONE")
89 \ "gui=" (has_key(a:style, "gui") ? a:style.gui : "NONE")
90 \ "ctermfg=" (has_key(a:style, "fg") ? a:style.fg.cterm : "NONE")
91 \ "ctermbg=" (has_key(a:style, "bg") ? a:style.bg.cterm : "NONE")
92 \ "cterm=" (has_key(a:style, "cterm") ? a:style.cterm : "NONE")
93endfunction
94
95call s:h("Normal", {"bg": s:bg, "fg": s:norm})
96call s:h("Noise", {"bg": s:bg, "fg": s:norm_subtle})
97call s:h("Cursor", {"bg": s:blue, "fg": s:norm})
98call s:h("Comment", {"fg": s:comment, "gui": "italic"})
99
100call s:h("Constant", {"bg": s:bg, "fg": s:constant})
101hi! link Character Constant
102hi! link Number Constant
103hi! link Boolean Constant
104hi! link Float Constant
105hi! link String Constant
106
107"call s:h("Identifier", {"fg": s:dark_blue})
108hi! link Identifier Normal
109hi! link Function Identifier
110
111"hi! link Statement Normal
112call s:h("Statement", {"bg": s:bg, "fg": s:norm, "gui": "bold"})
113hi! link Conditonal Statement
114hi! link Repeat Statement
115hi! link Label Statement
116hi! link Operator Noise
117hi! link Keyword Statement
118hi! link Exception Statement
119
120"call s:h("PreProc", {"fg": s:red})
121hi! link PreProc Normal
122hi! link Include Statement
123hi! link Define PreProc
124hi! link Macro PreProc
125hi! link PreCondit PreProc
126
127"call s:h("Type", {"fg": s:purple})
128hi! link Type Normal
129hi! link StorageClass Type
130hi! link Structure Type
131hi! link Typedef Type
132
133"call s:h("Special", {"fg": s:pink})
134hi! link Special Normal
135hi! link SpecialChar Special
136hi! link Tag Special
137hi! link Delimiter Special
138hi! link SpecialComment Special
139hi! link Debug Special
140
141call s:h("Underlined", {"fg": s:norm, "gui": "underline", "cterm": "underline"})
142call s:h("Ignore", {"fg": s:bg})
143call s:h("Error", {"fg": s:red, "bg": s:bg, "cterm": "bold"})
144call s:h("Todo", {"fg": s:actual_white, "bg": s:pink, "gui": "bold", "cterm": "bold"})
145call s:h("SpecialKey", {"fg": s:light_green})
146call s:h("NonText", {"fg": s:medium_gray})
147call s:h("Directory", {"fg": s:dark_blue})
148call s:h("ErrorMsg", {"fg": s:pink})
149call s:h("IncSearch", {"bg": s:yellow, "fg": s:light_black})
150call s:h("Search", {"bg": s:yellow, "fg": s:light_black})
151call s:h("MoreMsg", {"fg": s:medium_gray, "cterm": "bold", "gui": "bold"})
152hi! link ModeMsg MoreMsg
153call s:h("LineNr", {"fg": s:bg_subtle})
154call s:h("CursorLineNr", {"fg": s:blue, "bg": s:bg_very_subtle})
155call s:h("Question", {"fg": s:red})
156call s:h("VertSplit", {"bg": s:bg_very_subtle, "fg": s:bg_very_subtle})
157call s:h("Title", {"fg": s:dark_blue})
158call s:h("Visual", {"bg": s:visual})
159call s:h("VisualNOS", {"bg": s:bg_subtle})
160call s:h("WarningMsg", {"fg": s:red})
161call s:h("WildMenu", {"fg": s:black, "bg": s:bg_very_subtle})
162call s:h("Folded", {"fg": s:medium_gray})
163call s:h("FoldColumn", {"fg": s:bg_subtle})
164call s:h("DiffAdd", {"fg": s:green})
165call s:h("DiffDelete", {"fg": s:red})
166call s:h("DiffChange", {"fg": s:dark_yellow})
167call s:h("DiffText", {"fg": s:dark_blue})
168call s:h("SignColumn", {"fg": s:light_green})
169
170if has("gui_running")
171 call s:h("SpellBad", {"gui": "underline", "sp": s:red})
172 call s:h("SpellCap", {"gui": "underline", "sp": s:light_green})
173 call s:h("SpellRare", {"gui": "underline", "sp": s:pink})
174 call s:h("SpellLocal", {"gui": "underline", "sp": s:dark_green})
175else
176 call s:h("SpellBad", {"cterm": "underline", "fg": s:red})
177 call s:h("SpellCap", {"cterm": "underline", "fg": s:light_green})
178 call s:h("SpellRare", {"cterm": "underline", "fg": s:pink})
179 call s:h("SpellLocal", {"cterm": "underline", "fg": s:dark_green})
180endif
181
182call s:h("StatusLine", {"gui": "underline", "bg": s:bg, "fg": s:light_gray})
183call s:h("StatusLineOk", {"gui": "underline", "bg": s:bg, "fg": s:green})
184call s:h("StatusLineError", {"gui": "underline", "bg": s:bg, "fg": s:pink})
185call s:h("StatusLineWarning", {"gui": "underline", "bg": s:bg, "fg": s:dark_yellow})
186call s:h("StatusLineNC", {"gui": "underline", "bg": s:bg, "fg": s:light_black})
187
188call s:h("Pmenu", {"fg": s:norm, "bg": s:cursor_line})
189call s:h("PmenuSel", {"fg": s:norm, "bg": s:blue})
190call s:h("PmenuSbar", {"fg": s:norm, "bg": s:bg_subtle})
191call s:h("PmenuThumb", {"fg": s:norm, "bg": s:bg_subtle})
192call s:h("TabLine", {"fg": s:norm, "bg": s:bg_very_subtle})
193call s:h("TabLineSel", {"fg": s:blue, "bg": s:bg_subtle, "gui": "bold", "cterm": "bold"})
194call s:h("TabLineFill", {"fg": s:norm, "bg": s:bg_very_subtle})
195call s:h("CursorColumn", {"bg": s:bg_very_subtle})
196call s:h("CursorLine", {"bg": s:cursor_line})
197call s:h("ColorColumn", {"bg": s:bg_subtle})
198
199call s:h("MatchParen", {"bg": s:bg_subtle, "fg": s:norm})
200call s:h("qfLineNr", {"fg": s:medium_gray})
201
202call s:h("htmlH1", {"bg": s:bg, "fg": s:norm})
203call s:h("htmlH2", {"bg": s:bg, "fg": s:norm})
204call s:h("htmlH3", {"bg": s:bg, "fg": s:norm})
205call s:h("htmlH4", {"bg": s:bg, "fg": s:norm})
206call s:h("htmlH5", {"bg": s:bg, "fg": s:norm})
207call s:h("htmlH6", {"bg": s:bg, "fg": s:norm})
208
209hi link diffRemoved DiffDelete
210hi link diffAdded DiffAdd
211
212" Signify, git-gutter
213hi link SignifySignAdd LineNr
214hi link SignifySignDelete LineNr
215hi link SignifySignChange LineNr
216hi link GitGutterAdd LineNr
217hi link GitGutterDelete LineNr
218hi link GitGutterChange LineNr
219hi link GitGutterChangeDelete LineNr
220
221hi link jsFlowTypeKeyword Statement
222hi link jsFlowImportType Statement
223hi link jsFunction Statement
224hi link jsGlobalObjects Normal
225hi link jsGlobalNodeObjects Normal
226hi link jsArrowFunction Noise
227hi link StorageClass Statement
228
229call s:h("xmlTag", {"bg": s:bg, "fg": s:dark_blue, "gui": "italic"})
230hi link xmlTagName xmlTag
231hi link xmlEndTag xmlTag
232hi link xmlAttrib xmlTag
233
234hi link markdownH1 Statement
235hi link markdownH2 Statement
236hi link markdownH3 Statement
237hi link markdownH4 Statement
238hi link markdownH5 Statement
239hi link markdownH6 Statement
240hi link markdownListMarker Statement
241hi link markdownCode Statement
242hi link markdownCodeDelimiter Statement
243hi link markdownHeadingDelimiter Statement