Files
nix-config/.config/nvim/colors/abyss.vim
2020-07-15 09:28:34 -04:00

139 lines
6.9 KiB
VimL
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

" -------------------------------------------------------------------
" Name: abyss.vim
" Description: dark colorscheme for NeoVim
" -------------------------------------------------------------------
set termguicolors
set background=light
syntax enable " Switch on syntax highlighting
augroup toggle_cursorline_color
autocmd!
" Set CursorLine highlighting.
autocmd InsertEnter * set cursorline
" Reset CursorLine highlighting to the defaults.
autocmd InsertLeave * set nocursorline
augroup END
" Hilighting double-byte space
scriptencoding utf-8
augroup doublebyte_space
autocmd!
autocmd VimEnter,WinEnter * match DoubleByteSpace / /
augroup END
" -------------------------------------------------------------------
function! s:hi(name, fg, bg, attr) abort
let l:attr = type(a:attr) != type(0) ? ('gui=' . a:attr) : ''
let l:fg = type(a:fg) != type(0) ? ('guifg=' . a:fg) : ''
let l:bg = type(a:bg) != type(0) ? ('guibg=' . a:bg) : ''
execute 'highlight' a:name l:attr l:fg l:bg
endfunction
let s:fg = '#DDDDDD'
let s:bg = '#000000'
let s:red = '#C40000' " 160
let s:lightgreen = '#00FFFF' " 51
let s:green = '#00FF00' " 46
let s:lightblue = '#5FAFFF' " 75
let s:blue = '#0000C8' " 21
let s:darkblue = '#00014E' " 17
let s:cyan = '#00AFFF' " 39
let s:darkcyan = '#005FFF' " 27
let s:lightpurple = '#5F87FF' " 69
let s:purple = '#875FFF' " 99
let s:lightgray = '#4C4C4C' " 240
let s:gray = '#808080' " 245
let s:darkgray = '#303030' " 236
call s:hi('Comment', s:gray, 0, 0)
call s:hi('Boolean', s:darkcyan, 0, 0)
call s:hi('LineNr', s:darkcyan, 0, 0)
call s:hi('Constant', s:cyan, 0, 0)
call s:hi('Statement', s:lightblue, 0, 'bold')
call s:hi('PreProc', s:lightpurple, 0, 0)
call s:hi('Type', s:lightblue, 0, 0)
call s:hi('Cursor', 0, s:darkblue, 0)
call s:hi('CursorLine', 0, s:darkblue, 0)
call s:hi('CursorLineNr', 'NONE', s:bg, 'bold')
call s:hi('CursorColumn', 0, s:bg, 0)
call s:hi('DiffAdd', s:green, 'NONE', 0)
call s:hi('DiffChange', s:fg, 'NONE', 0)
call s:hi('DiffDelete', s:bg, s:bg, 0)
call s:hi('DiffText', s:red, 'NONE', 0)
call s:hi('DiffNewFile', s:lightblue, 'NONE', 0)
call s:hi('DiffFile', s:lightblue, 'NONE', 0)
call s:hi('diffAdded', s:green, 'NONE', 0)
call s:hi('diffChanged', s:fg, 'NONE', 0)
call s:hi('diffRemoved', s:red, 'NONE', 0)
call s:hi('FoldColumn', s:darkcyan, 0, 0)
call s:hi('Folded', s:darkcyan, s:darkgray, 0)
call s:hi('Directory', s:darkcyan, 0, 0)
call s:hi('ErrorMsg', s:red, 'NONE', 0)
call s:hi('Function', s:darkcyan, 0, 0)
call s:hi('Identifier', s:lightgreen, 0, 0)
call s:hi('IncSearch', s:darkcyan, 0, 0)
call s:hi('MatchParen', s:darkcyan, 0, 0)
call s:hi('ModeMsg', s:darkcyan, 0, 0)
call s:hi('MoreMsg', s:darkcyan, 0, 0)
call s:hi('NonText', s:gray, 'NONE', 0)
call s:hi('Normal', s:fg, 0, 0)
call s:hi('Operator', s:gray, 'NONE', 0)
call s:hi('Pmenu', s:fg, s:bg, 0)
call s:hi('PmenuSel', s:fg, s:darkblue, 0)
call s:hi('PmenuSbar', s:fg, s:darkblue, 0)
call s:hi('Question', s:darkcyan, 0, 0)
call s:hi('Search', s:fg, s:darkcyan, 0)
call s:hi('SignColumn', s:fg, 'NONE', 0)
call s:hi('Special', s:fg, 'NONE', 0)
call s:hi('SpecialKey', s:gray, 'NONE', 0)
call s:hi('SpellBad', s:red, 'NONE', 0)
call s:hi('StatusLine', s:bg, s:gray, 0)
call s:hi('StatusLineNC', s:bg, s:gray, 0)
call s:hi('String', s:cyan, 0, 0)
call s:hi('TabLine', s:fg, s:gray, 0)
call s:hi('TabLineFill', s:gray, 'NONE', 'underline')
call s:hi('TabLineSel', s:fg, s:darkblue, 0)
call s:hi('Title', s:darkcyan, 0, 0)
call s:hi('Todo', s:red, 'NONE', 0)
call s:hi('VertSplit', s:fg, 'NONE', 0)
call s:hi('Visual', s:fg, s:darkcyan, 0)
call s:hi('WarningMsg', s:bg, s:gray, 0)
call s:hi('WildMenu', s:fg, s:bg, 'bold')
call s:hi('EndOfBuffer', s:bg, 'NONE', 0)
call s:hi('DoubleByteSpace', s:darkcyan, 0, 'reverse')
call s:hi('rubyBlock', s:red, 'NONE', 0)
call s:hi('zshVariableDef', s:cyan, 'NONE', 0)
call s:hi('zshFunction', s:cyan, 'NONE', 0)
" Plugin
call s:hi('ShotFGraph', s:darkcyan, 'NONE', 'bold')
call s:hi('ShotFBlank', 'NONE', s:blue, 'NONE')
call s:hi('EasyMotionIncSearch', s:lightblue, 'NONE', 'bold')
call s:hi('EasyMotionMoveHL', s:fg, s:darkcyan, 'bold')
call s:hi('EasyMotionIncCursor', s:fg, s:darkcyan, 0)
call s:hi('EasyMotionTarget', s:purple, 'NONE', 'bold')
call s:hi('EasyMotionTarget2First', s:purple, 'NONE', 'bold')
call s:hi('EasyMotionTarget2Second', s:darkcyan, 'NONE', 'bold')
call s:hi('deniteMatched', s:darkcyan, 'NONE', 'NONE')
call s:hi('agitDiffAdd', s:green, 'NONE', 0)
call s:hi('agitDiffRemove', s:red, 'NONE', 0)
call s:hi('agitStatAdded', s:green, 'NONE', 0)
call s:hi('agitStatRemoved', s:red, 'NONE', 0)
call s:hi('agitStatMessage', s:lightblue, 'NONE', 'bold')
call s:hi('agitStatFile', s:fg, 'NONE', 0)
call s:hi('agitDiffHeader', s:lightblue, 'NONE', 'bold')
call s:hi('agitDiffIndex', s:lightblue, 'NONE', 'bold')
call s:hi('agitDiffFileName', s:fg, 'NONE', 0)
call s:hi('agitTree', s:lightblue, 'NONE', 'bold')
call s:hi('agitDate', s:gray, 'NONE', 0)
call s:hi('agitAuthor', s:purple, 'NONE', 0)
call s:hi('Flashy', s:bg, s:darkcyan, 0)