Skip to content

Commit

Permalink
Merge pull request #5 from niveK77pur/main
Browse files Browse the repository at this point in the history
Customizing invidivual highlight groups
  • Loading branch information
Matsuuu authored Dec 5, 2023
2 parents c72fb3a + efa27fc commit 581dc6c
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 62 deletions.
58 changes: 58 additions & 0 deletions autoload/pinkmare.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
function pinkmare#get_default_palette() " {{{
if &background ==# 'dark'
return {
\ 'bg0': ['#202330', '235', 'Black'],
\ 'bg1': ['#472541', '236', 'DarkGrey'],
\ 'bg2': ['#242021', '237', 'DarkGrey'],
\ 'bg3': ['#242021', '238', 'DarkGrey'],
\ 'bg4': ['#2d2f42', '239', 'Grey'],
\ 'bg_red': ['#f2448b', '52', 'DarkRed'],
\ 'bg_green': ['#333b2f', '22', 'DarkGreen'],
\ 'bg_blue': ['#203a41', '17', 'DarkBlue'],
\ 'fg': ['#FAE8B6', '223', 'White'],
\ 'red': ['#FF38A2', '167', 'Red'],
\ 'orange': ['#ffb347', '208', 'Red'],
\ 'yellow': ['#ffc85b', '214', 'Yellow'],
\ 'green': ['#9cd162', '108', 'Green'],
\ 'cyan': ['#87c095', '108', 'Cyan'],
\ 'blue': ['#eba4ac', '109', 'Blue'],
\ 'purple': ['#d9bcef', '175', 'Magenta'],
\ 'grey': ['#444444', '245', 'LightGrey'],
\ 'light_grey': ['#6D7A72', '245', 'LightGrey'],
\ 'gold': ['#fff0f5', '214', 'Yellow'],
\ 'findme': ['#4DB560', '215', 'FindMe'],
\ 'none': ['NONE', 'NONE', 'NONE']
\ }
elseif &background ==# 'light'
return {
\ 'bg0': ['#202330', '235', 'Black'],
\ 'bg1': ['#472541', '236', 'DarkGrey'],
\ 'bg2': ['#242021', '237', 'DarkGrey'],
\ 'bg3': ['#242021', '238', 'DarkGrey'],
\ 'bg4': ['#2d2f42', '239', 'Grey'],
\ 'bg_red': ['#f2448b', '52', 'DarkRed'],
\ 'bg_green': ['#333b2f', '22', 'DarkGreen'],
\ 'bg_blue': ['#203a41', '17', 'DarkBlue'],
\ 'fg': ['#FAE8B6', '223', 'White'],
\ 'red': ['#FF38A2', '167', 'Red'],
\ 'orange': ['#ffb347', '208', 'Red'],
\ 'yellow': ['#ffc85b', '214', 'Yellow'],
\ 'green': ['#9cd162', '108', 'Green'],
\ 'cyan': ['#87c095', '108', 'Cyan'],
\ 'blue': ['#eba4ac', '109', 'Blue'],
\ 'purple': ['#d9bcef', '175', 'Magenta'],
\ 'grey': ['#444444', '245', 'LightGrey'],
\ 'light_grey': ['#6D7A72', '245', 'LightGrey'],
\ 'gold': ['#fff0f5', '214', 'Yellow'],
\ 'findme': ['#4DB560', '215', 'FindMe'],
\ 'none': ['NONE', 'NONE', 'NONE']
\ }
endif
endfunction " }}}

function pinkmare#get_palette()
let l:config_palette = get(g:, 'pinkmare_palette', {})
return extend(pinkmare#get_default_palette(), l:config_palette)
endfunction

"vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker fmr={{{,}}}:
76 changes: 14 additions & 62 deletions colors/pinkmare.vim
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ let g:colors_name = 'pinkmare'
" }}}
" Configuration: {{{
let s:configuration = {}
let s:configuration.palette = get(g:, 'pinkmare_palette', {})
let s:configuration.overwrite_groups = get(g:, 'pinkmare_overwrite_groups', {})
let s:configuration.transparent_background = get(g:, 'pinkmare_transparent_background', 0)
let s:configuration.disable_italic_comment = get(g:, 'pinkmare_disable_italic_comment', 0)
let s:configuration.enable_italic_string = get(g:, 'pinkmare_enable_italic_string', 0)
Expand All @@ -29,61 +29,7 @@ let s:configuration.cursor = get(g:, 'pinkmare_cursor', 'auto')
let s:configuration.current_word = get(g:, 'pinkmare_current_word', get(g:, 'pinkmare_transparent_background', 0) == 0 ? 'grey background' : 'bold')
" }}}
" Palette: {{{
if &background ==# 'dark'
let s:palette = {
\ 'bg0': ['#202330', '235', 'Black'],
\ 'bg1': ['#472541', '236', 'DarkGrey'],
\ 'bg2': ['#242021', '237', 'DarkGrey'],
\ 'bg3': ['#242021', '238', 'DarkGrey'],
\ 'bg4': ['#2d2f42', '239', 'Grey'],
\ 'bg_red': ['#f2448b', '52', 'DarkRed'],
\ 'bg_green': ['#333b2f', '22', 'DarkGreen'],
\ 'bg_blue': ['#203a41', '17', 'DarkBlue'],
\ 'fg': ['#FAE8B6', '223', 'White'],
\ 'red': ['#FF38A2', '167', 'Red'],
\ 'orange': ['#ffb347', '208', 'Red'],
\ 'yellow': ['#ffc85b', '214', 'Yellow'],
\ 'green': ['#9cd162', '108', 'Green'],
\ 'cyan': ['#87c095', '108', 'Cyan'],
\ 'blue': ['#eba4ac', '109', 'Blue'],
\ 'purple': ['#d9bcef', '175', 'Magenta'],
\ 'grey': ['#444444', '245', 'LightGrey'],
\ 'light_grey': ['#6D7A72', '245', 'LightGrey'],
\ 'gold': ['#fff0f5', '214', 'Yellow'],
\ 'findme': ['#4DB560', '215', 'FindMe'],
\ 'none': ['NONE', 'NONE', 'NONE']
\ }

call extend(s:palette, s:configuration.palette)
endif

if &background ==# 'light'
let s:palette = {
\ 'bg0': ['#202330', '235', 'Black'],
\ 'bg1': ['#472541', '236', 'DarkGrey'],
\ 'bg2': ['#242021', '237', 'DarkGrey'],
\ 'bg3': ['#242021', '238', 'DarkGrey'],
\ 'bg4': ['#2d2f42', '239', 'Grey'],
\ 'bg_red': ['#f2448b', '52', 'DarkRed'],
\ 'bg_green': ['#333b2f', '22', 'DarkGreen'],
\ 'bg_blue': ['#203a41', '17', 'DarkBlue'],
\ 'fg': ['#FAE8B6', '223', 'White'],
\ 'red': ['#FF38A2', '167', 'Red'],
\ 'orange': ['#ffb347', '208', 'Red'],
\ 'yellow': ['#ffc85b', '214', 'Yellow'],
\ 'green': ['#9cd162', '108', 'Green'],
\ 'cyan': ['#87c095', '108', 'Cyan'],
\ 'blue': ['#eba4ac', '109', 'Blue'],
\ 'purple': ['#d9bcef', '175', 'Magenta'],
\ 'grey': ['#444444', '245', 'LightGrey'],
\ 'light_grey': ['#6D7A72', '245', 'LightGrey'],
\ 'gold': ['#fff0f5', '214', 'Yellow'],
\ 'findme': ['#4DB560', '215', 'FindMe'],
\ 'none': ['NONE', 'NONE', 'NONE']
\ }

call extend(s:palette, s:configuration.palette)
endif
let s:palette = pinkmare#get_palette()
" }}}
" Function: {{{
" call s:HL(group, foreground, background)
Expand All @@ -94,10 +40,12 @@ endif

if (has('termguicolors') && &termguicolors) || has('gui_running') " guifg guibg gui cterm guisp
function! s:HL(group, fg, bg, ...)
let l:fg = get(get(s:configuration.overwrite_groups, a:group, {}), 'fg', a:fg)
let l:bg = get(get(s:configuration.overwrite_groups, a:group, {}), 'bg', a:bg)
let hl_string = [
\ 'highlight', a:group,
\ 'guifg=' . a:fg[0],
\ 'guibg=' . a:bg[0],
\ 'guifg=' . l:fg[0],
\ 'guibg=' . l:bg[0],
\ ]
if a:0 >= 1
if a:1 ==# 'undercurl'
Expand All @@ -118,10 +66,12 @@ if (has('termguicolors') && &termguicolors) || has('gui_running') " guifg guibg
endfunction
elseif s:t_Co >= 256 " ctermfg ctermbg cterm
function! s:HL(group, fg, bg, ...)
let l:fg = get(get(s:configuration.overwrite_groups, a:group, {}), 'fg', a:fg)
let l:bg = get(get(s:configuration.overwrite_groups, a:group, {}), 'bg', a:bg)
let hl_string = [
\ 'highlight', a:group,
\ 'ctermfg=' . a:fg[1],
\ 'ctermbg=' . a:bg[1],
\ 'ctermfg=' . l:fg[1],
\ 'ctermbg=' . l:bg[1],
\ ]
if a:0 >= 1
if a:1 ==# 'undercurl'
Expand All @@ -136,10 +86,12 @@ elseif s:t_Co >= 256 " ctermfg ctermbg cterm
endfunction
else " ctermfg ctermbg cterm
function! s:HL(group, fg, bg, ...)
let l:fg = get(get(s:configuration.overwrite_groups, a:group, {}), 'fg', a:fg)
let l:bg = get(get(s:configuration.overwrite_groups, a:group, {}), 'bg', a:bg)
let hl_string = [
\ 'highlight', a:group,
\ 'ctermfg=' . a:fg[2],
\ 'ctermbg=' . a:bg[2],
\ 'ctermfg=' . l:fg[2],
\ 'ctermbg=' . l:bg[2],
\ ]
if a:0 >= 1
if a:1 ==# 'undercurl'
Expand Down

0 comments on commit 581dc6c

Please sign in to comment.