mirror of
https://github.com/davegallant/nix-config
synced 2025-08-06 11:23:40 +00:00
391 lines
15 KiB
VimL
391 lines
15 KiB
VimL
" File: last256.vim
|
||
" Maintainer: Kai Yuan
|
||
" URL: https://github.com/sk1418/last256
|
||
" __ __ ___ ___________
|
||
" / / ____ ______/ /_ |__ \ / ____/ ___/
|
||
" / / / __ `/ ___/ __/ __/ //___ \/ __ \
|
||
" / /___/ /_/ (__ ) /_ / __/____/ / /_/ /
|
||
" /_____/\__,_/____/\__/ /____/_____/\____/
|
||
" "
|
||
" License: {{{
|
||
" Copyright (c) 2013-2016 Kai Yuan
|
||
"
|
||
" Permission is hereby granted, free of charge, to any per‐ son obtaining a
|
||
" copy of this software and associated doc‐ umentation files (the “Software”),
|
||
" to deal in the Soft‐ ware without restriction, including without limitation
|
||
" the rights to use, copy, modify, merge, publish, distrib‐ ute, sublicense,
|
||
" and/or sell copies of the Software, and to permit persons to whom the
|
||
" Software is furnished to do so, subject to the following conditions:
|
||
"
|
||
" The above copyright notice and this permission notice shall be included in
|
||
" all copies or substantial portions of the Software.
|
||
"
|
||
" THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||
" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||
" FITNESS FOR A PARTICU‐ LAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||
" THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||
" LIABILITY, WHETHER IN AN ACTION OF CON‐ TRACT, TORT OR OTHERWISE, ARISING
|
||
" FROM, OUT OF OR IN CON‐ NECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||
" DEALINGS IN THE SOFTWARE.
|
||
"
|
||
" }}}
|
||
|
||
" ChangeLog: {{{
|
||
"
|
||
" 2014-01-12 v1.1.0
|
||
" - adjusted many colors
|
||
" - fit terminal if terminal has solarized color scheme
|
||
" - add tabline colors
|
||
" - add new screenshot (github readme.md)
|
||
"
|
||
" 2013-03-28 v1.0.0
|
||
" inital release
|
||
" }}}
|
||
" Description:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
"vim color scheme based on hybrid (https://github.com/w0ng/vim-hybrid)
|
||
"
|
||
" compare to hybrid:
|
||
"- Xresource based color highlighting was removed
|
||
"- colors are refined. e.g. comments color, visual selection ...
|
||
"- add FIXME, !Important!, !MARK1, !MARK2, !MARK3 hi-groups
|
||
"
|
||
"
|
||
"}}}
|
||
" Requirements And Recommendations:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
" This colourscheme is intended for use on:
|
||
" - gVim 7.3 for Linux, Mac and Windows.
|
||
" - Vim 7.3 for Linux, using a 256 colour enabled terminal.
|
||
"}}}
|
||
" Initialisation:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
if !has("gui_running") && &t_Co < 256
|
||
finish
|
||
endif
|
||
|
||
set background=dark
|
||
hi clear
|
||
|
||
if exists("syntax_on")
|
||
syntax reset
|
||
endif
|
||
|
||
let colors_name = "last256"
|
||
|
||
"}}}
|
||
" GUI And Cterm Palettes:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
if has("gui_running")
|
||
let s:vmode = "gui"
|
||
let s:white = "#c6c6c6"
|
||
let s:background = "#002b30"
|
||
let s:window = "#5f5f5f"
|
||
let s:darkcolumn = "#1c1c1c"
|
||
let s:addbg = "#5f875f"
|
||
let s:addfg = "#d7ffaf"
|
||
let s:changebg = "#5f5f87"
|
||
let s:changefg = "#d7d7ff"
|
||
let s:brown = "#87875f"
|
||
let s:foreground = "#808080"
|
||
let s:selection = "#585858"
|
||
let s:visual = "#5f8787"
|
||
let s:line = "#204444"
|
||
let s:comment = "#585858"
|
||
let s:red = "#d75f5f"
|
||
let s:orange = "#d78700"
|
||
let s:yellow = "#d7af5f"
|
||
let s:green = "#5faf5f"
|
||
let s:aqua = "#5fafd7"
|
||
let s:blue = "#5f87ff"
|
||
let s:purple = "#8787ff"
|
||
else
|
||
let s:vmode = "cterm"
|
||
let s:white = "251"
|
||
let s:background = "16"
|
||
let s:window = "59"
|
||
let s:darkcolumn = "234"
|
||
let s:addbg = "65"
|
||
let s:addfg = "193"
|
||
let s:changebg = "60"
|
||
let s:changefg = "189"
|
||
let s:brown = "101"
|
||
let s:foreground = "244"
|
||
let s:selection = "240"
|
||
let s:visual = "66"
|
||
let s:line = "236"
|
||
let s:comment = "240"
|
||
let s:red = "167"
|
||
let s:orange = "172"
|
||
let s:yellow = "178"
|
||
let s:green = "71"
|
||
let s:aqua = "111"
|
||
let s:blue = "69"
|
||
let s:purple = "105"
|
||
endif
|
||
|
||
"}}}
|
||
" Formatting Options:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
let s:none = "NONE"
|
||
let s:t_none = "NONE"
|
||
let s:n = "NONE"
|
||
let s:c = ",undercurl"
|
||
let s:r = ",reverse"
|
||
let s:s = ",standout"
|
||
let s:b = ",bold"
|
||
let s:u = ",underline"
|
||
let s:i = ",italic"
|
||
|
||
"}}}
|
||
" Highlighting Primitives:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
exe "let s:bg_none = ' ".s:vmode."bg = ".s:none ."'"
|
||
exe "let s:bg_foreground = ' ".s:vmode."bg = ".s:foreground."'"
|
||
exe "let s:bg_background = ' ".s:vmode."bg = ".s:background."'"
|
||
exe "let s:bg_selection = ' ".s:vmode."bg = ".s:selection ."'"
|
||
exe "let s:bg_visual = ' ".s:vmode."bg = ".s:visual ."'"
|
||
exe "let s:bg_line = ' ".s:vmode."bg = ".s:line ."'"
|
||
exe "let s:bg_comment = ' ".s:vmode."bg = ".s:comment ."'"
|
||
exe "let s:bg_brown = ' ".s:vmode."bg = ".s:brown ."'"
|
||
exe "let s:bg_white = ' ".s:vmode."bg = ".s:white ."'"
|
||
exe "let s:bg_red = ' ".s:vmode."bg = ".s:red ."'"
|
||
exe "let s:bg_orange = ' ".s:vmode."bg = ".s:orange ."'"
|
||
exe "let s:bg_yellow = ' ".s:vmode."bg = ".s:yellow ."'"
|
||
exe "let s:bg_green = ' ".s:vmode."bg = ".s:green ."'"
|
||
exe "let s:bg_aqua = ' ".s:vmode."bg = ".s:aqua ."'"
|
||
exe "let s:bg_blue = ' ".s:vmode."bg = ".s:blue ."'"
|
||
exe "let s:bg_purple = ' ".s:vmode."bg = ".s:purple ."'"
|
||
exe "let s:bg_window = ' ".s:vmode."bg = ".s:window ."'"
|
||
exe "let s:bg_darkcolumn = ' ".s:vmode."bg = ".s:darkcolumn."'"
|
||
exe "let s:bg_addbg = ' ".s:vmode."bg = ".s:addbg ."'"
|
||
exe "let s:bg_addfg = ' ".s:vmode."bg = ".s:addfg ."'"
|
||
exe "let s:bg_changebg = ' ".s:vmode."bg = ".s:changebg ."'"
|
||
exe "let s:bg_changefg = ' ".s:vmode."bg = ".s:changefg ."'"
|
||
|
||
exe "let s:fg_none = ' ".s:vmode."fg = ".s:none ."'"
|
||
exe "let s:fg_foreground = ' ".s:vmode."fg = ".s:foreground."'"
|
||
exe "let s:fg_background = ' ".s:vmode."fg = ".s:background."'"
|
||
exe "let s:fg_selection = ' ".s:vmode."fg = ".s:selection ."'"
|
||
exe "let s:fg_visual = ' ".s:vmode."fg = ".s:visual ."'"
|
||
exe "let s:fg_line = ' ".s:vmode."fg = ".s:line ."'"
|
||
exe "let s:fg_comment = ' ".s:vmode."fg = ".s:comment ."'"
|
||
exe "let s:fg_brown = ' ".s:vmode."fg = ".s:brown ."'"
|
||
exe "let s:fg_white = ' ".s:vmode."fg = ".s:white ."'"
|
||
exe "let s:fg_red = ' ".s:vmode."fg = ".s:red ."'"
|
||
exe "let s:fg_orange = ' ".s:vmode."fg = ".s:orange ."'"
|
||
exe "let s:fg_yellow = ' ".s:vmode."fg = ".s:yellow ."'"
|
||
exe "let s:fg_green = ' ".s:vmode."fg = ".s:green ."'"
|
||
exe "let s:fg_aqua = ' ".s:vmode."fg = ".s:aqua ."'"
|
||
exe "let s:fg_blue = ' ".s:vmode."fg = ".s:blue ."'"
|
||
exe "let s:fg_purple = ' ".s:vmode."fg = ".s:purple ."'"
|
||
exe "let s:fg_window = ' ".s:vmode."fg = ".s:window ."'"
|
||
exe "let s:fg_darkcolumn = ' ".s:vmode."fg = ".s:darkcolumn."'"
|
||
exe "let s:fg_addbg = ' ".s:vmode."fg = ".s:addbg ."'"
|
||
exe "let s:fg_addfg = ' ".s:vmode."fg = ".s:addfg ."'"
|
||
exe "let s:fg_changebg = ' ".s:vmode."fg = ".s:changebg ."'"
|
||
exe "let s:fg_changefg = ' ".s:vmode."fg = ".s:changefg ."'"
|
||
|
||
exe "let s:fmt_none = ' ".s:vmode." = NONE". " term = NONE" ."'"
|
||
exe "let s:fmt_bold = ' ".s:vmode." = NONE".s:b. " term = NONE".s:b ."'"
|
||
exe "let s:fmt_bldi = ' ".s:vmode." = NONE".s:b. " term = NONE".s:b ."'"
|
||
exe "let s:fmt_undr = ' ".s:vmode." = NONE".s:u. " term = NONE".s:u ."'"
|
||
exe "let s:fmt_undb = ' ".s:vmode." = NONE".s:u.s:b. " term = NONE".s:u.s:b."'"
|
||
exe "let s:fmt_undi = ' ".s:vmode." = NONE".s:u. " term = NONE".s:u ."'"
|
||
exe "let s:fmt_curl = ' ".s:vmode." = NONE".s:c. " term = NONE".s:c ."'"
|
||
exe "let s:fmt_ital = ' ".s:vmode." = NONE".s:i. " term = NONE".s:i ."'"
|
||
exe "let s:fmt_stnd = ' ".s:vmode." = NONE".s:s. " term = NONE".s:s ."'"
|
||
exe "let s:fmt_revr = ' ".s:vmode." = NONE".s:r. " term = NONE".s:r ."'"
|
||
exe "let s:fmt_revb = ' ".s:vmode." = NONE".s:r.s:b. " term = NONE".s:r.s:b."'"
|
||
|
||
if has("gui_running")
|
||
exe "let s:sp_none = ' guisp=".s:none ."'"
|
||
exe "let s:sp_foreground = ' guisp=".s:foreground."'"
|
||
exe "let s:sp_background = ' guisp=".s:background."'"
|
||
exe "let s:sp_selection = ' guisp=".s:selection ."'"
|
||
exe "let s:sp_visual = ' guisp=".s:visual ."'"
|
||
exe "let s:sp_line = ' guisp=".s:line ."'"
|
||
exe "let s:sp_comment = ' guisp=".s:comment ."'"
|
||
exe "let s:sp_brown = ' guisp=".s:brown ."'"
|
||
exe "let s:sp_red = ' guisp=".s:red ."'"
|
||
exe "let s:sp_orange = ' guisp=".s:orange ."'"
|
||
exe "let s:sp_yellow = ' guisp=".s:yellow ."'"
|
||
exe "let s:sp_green = ' guisp=".s:green ."'"
|
||
exe "let s:sp_aqua = ' guisp=".s:aqua ."'"
|
||
exe "let s:sp_blue = ' guisp=".s:blue ."'"
|
||
exe "let s:sp_purple = ' guisp=".s:purple ."'"
|
||
exe "let s:sp_window = ' guisp=".s:window ."'"
|
||
exe "let s:sp_addbg = ' guisp=".s:addbg ."'"
|
||
exe "let s:sp_addfg = ' guisp=".s:addfg ."'"
|
||
exe "let s:sp_changebg = ' guisp=".s:changebg ."'"
|
||
exe "let s:sp_changefg = ' guisp=".s:changefg ."'"
|
||
else
|
||
let s:sp_none = ""
|
||
let s:sp_foreground = ""
|
||
let s:sp_background = ""
|
||
let s:sp_selection = ""
|
||
let s:sp_line = ""
|
||
let s:sp_comment = ""
|
||
let s:sp_brown = ""
|
||
let s:sp_red = ""
|
||
let s:sp_orange = ""
|
||
let s:sp_yellow = ""
|
||
let s:sp_green = ""
|
||
let s:sp_aqua = ""
|
||
let s:sp_blue = ""
|
||
let s:sp_purple = ""
|
||
let s:sp_window = ""
|
||
let s:sp_addbg = ""
|
||
let s:sp_addfg = ""
|
||
let s:sp_changebg = ""
|
||
let s:sp_changefg = ""
|
||
endif
|
||
|
||
"}}}
|
||
" Vim Highlighting: (see :help highlight-groups)"{{{
|
||
" ----------------------------------------------------------------------------
|
||
exe "hi! ColorColumn" .s:fg_none .s:bg_line .s:fmt_none
|
||
" Conceal"
|
||
" Cursor"
|
||
" CursorIM"
|
||
exe "hi! Title" .s:fg_white .s:bg_none .s:fmt_bold
|
||
exe "hi! CursorColumn" .s:fg_none .s:bg_line .s:fmt_none
|
||
exe "hi! CursorLine" .s:fg_none .s:bg_line .s:fmt_none
|
||
exe "hi! Directory" .s:fg_aqua .s:bg_none .s:fmt_none
|
||
exe "hi! DiffAdd" .s:fg_addfg .s:bg_addbg .s:fmt_none
|
||
exe "hi! DiffChange" .s:fg_changefg .s:bg_changebg .s:fmt_none
|
||
exe "hi! DiffDelete" .s:fg_background .s:bg_red .s:fmt_none
|
||
exe "hi! DiffText" .s:fg_background .s:bg_blue .s:fmt_none
|
||
exe "hi! ErrorMsg" .s:fg_background .s:bg_red .s:fmt_stnd
|
||
exe "hi! VertSplit" .s:fg_brown .s:bg_none .s:fmt_stnd
|
||
exe "hi! Folded" .s:fg_comment .s:bg_darkcolumn .s:fmt_none
|
||
exe "hi! FoldColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
|
||
exe "hi! SignColumn" .s:fg_none .s:bg_darkcolumn .s:fmt_none
|
||
" Incsearch"
|
||
exe "hi! LineNr" .s:fg_selection .s:bg_none .s:fmt_none
|
||
exe "hi! CursorLineNr" .s:fg_yellow .s:bg_none .s:fmt_bold
|
||
exe "hi! MatchParen" .s:fg_background .s:bg_changebg .s:fmt_none
|
||
exe "hi! MoreMsg" .s:fg_green .s:bg_none .s:fmt_bold
|
||
exe "hi! NonText" .s:fg_selection .s:bg_none .s:fmt_none
|
||
exe "hi! Pmenu" .s:fg_foreground .s:bg_selection .s:fmt_none
|
||
exe "hi! PmenuSel" .s:fg_background .s:bg_visual .s:fmt_none
|
||
" PmenuSbar"
|
||
" PmenuThumb"
|
||
exe "hi! Question" .s:fg_green .s:bg_none .s:fmt_none
|
||
exe "hi! Search" .s:fg_background .s:bg_yellow .s:fmt_none
|
||
exe "hi! SpecialKey" .s:fg_selection .s:bg_none .s:fmt_none
|
||
exe "hi! SpellBad" .s:fg_red .s:bg_none .s:fmt_undr
|
||
exe "hi! SpellCap" .s:fg_blue .s:bg_none .s:fmt_undr
|
||
exe "hi! SpellLocal" .s:fg_aqua .s:bg_none .s:fmt_undr
|
||
exe "hi! SpellRare" .s:fg_purple .s:bg_none .s:fmt_undr
|
||
exe "hi! StatusLine" .s:fg_background .s:bg_brown .s:fmt_none
|
||
exe "hi! StatusLineNC" .s:fg_window .s:bg_comment .s:fmt_revr
|
||
|
||
" VisualNos"
|
||
exe "hi! WarningMsg" .s:fg_red .s:bg_none .s:fmt_none
|
||
" WildMenu"
|
||
|
||
if has('gui_running')
|
||
exe "hi! Normal" .s:fg_foreground .s:bg_background .s:fmt_none
|
||
else
|
||
exe "hi! Normal" .s:fg_foreground .s:bg_none .s:fmt_none
|
||
endif
|
||
|
||
"}}}
|
||
" Generic Syntax Highlighting: (see :help group-name)"{{{
|
||
" ----------------------------------------------------------------------------
|
||
exe "hi! Comment" .s:fg_comment .s:bg_none .s:fmt_none
|
||
|
||
exe "hi! Constant" .s:fg_red .s:bg_none .s:fmt_none
|
||
exe "hi! String" .s:fg_green .s:bg_none .s:fmt_none
|
||
" Character"
|
||
" Number"
|
||
" Boolean"
|
||
" Float"
|
||
|
||
exe "hi! Identifier" .s:fg_purple .s:bg_none .s:fmt_none
|
||
exe "hi! Function" .s:fg_yellow .s:bg_none .s:fmt_none
|
||
|
||
exe "hi! Statement" .s:fg_aqua .s:bg_none .s:fmt_bold
|
||
" Conditional"
|
||
" Repeat"
|
||
" Label"
|
||
exe "hi! Operator" .s:fg_foreground .s:bg_none .s:fmt_none
|
||
" Keyword"
|
||
" Exception"
|
||
|
||
exe "hi! PreProc" .s:fg_blue .s:bg_none .s:fmt_none
|
||
" Include"
|
||
" Define"
|
||
" Macro"
|
||
" PreCondit"
|
||
|
||
exe "hi! Type" .s:fg_orange .s:bg_none .s:fmt_bold
|
||
" StorageClass"
|
||
exe "hi! Structure" .s:fg_aqua .s:bg_none .s:fmt_bold
|
||
" Typedef"
|
||
|
||
exe "hi! Special" .s:fg_green .s:bg_none .s:fmt_none
|
||
exe "hi! SpecialComment" .s:fg_brown .s:bg_none .s:fmt_none
|
||
" SpecialChar"
|
||
" Tag"
|
||
" Delimiter"
|
||
" SpecialComment"
|
||
" Debug"
|
||
"
|
||
exe "hi! Underlined" .s:fg_aqua .s:bg_none .s:fmt_none
|
||
|
||
exe "hi! Ignore" .s:fg_none .s:bg_none .s:fmt_none
|
||
|
||
exe "hi! Error" .s:fg_red .s:bg_none .s:fmt_undr
|
||
|
||
exe "hi! Todo" .s:fg_background .s:bg_green .s:fmt_none
|
||
|
||
|
||
" Quickfix window highlighting
|
||
exe "hi! qfLineNr" .s:fg_yellow .s:bg_none .s:fmt_none
|
||
" qfFileName"
|
||
" qfLineNr"
|
||
" qfError"
|
||
|
||
"add Important and mark1-3 groups
|
||
exe "hi! MK1" . s:fg_background . s:bg_blue . s:fmt_none
|
||
exe "hi! MK2" . s:fg_background . s:bg_purple . s:fmt_none
|
||
exe "hi! MK3" . s:fg_background . s:bg_orange . s:fmt_none
|
||
exe "hi! Important" . s:fg_background . s:bg_red . s:fmt_bold
|
||
exe "hi! FIXME" . s:fg_addfg . s:bg_red . s:fmt_bold
|
||
"add autocommands
|
||
autocmd BufWinEnter * call matchadd("Important","!Important!")
|
||
autocmd BufWinEnter * call matchadd("MK1","!MARK1")
|
||
autocmd BufWinEnter * call matchadd("MK2","!MARK2")
|
||
autocmd BufWinEnter * call matchadd("MK3","!MARK3")
|
||
autocmd BufWinEnter * call matchadd("FIXME","FIXME")
|
||
"}}}
|
||
" Diff Syntax Highlighting:"{{{
|
||
" ----------------------------------------------------------------------------
|
||
" Diff
|
||
" diffOldFile
|
||
" diffNewFile
|
||
" diffFile
|
||
" diffOnly
|
||
" diffIdentical
|
||
" diffDiffer
|
||
" diffBDiffer
|
||
" diffIsA
|
||
" diffNoEOL
|
||
" diffCommon
|
||
hi! link diffRemoved Constant
|
||
" diffChanged
|
||
hi! link diffAdded Special
|
||
" diffLine
|
||
" diffSubname
|
||
" diffComment
|
||
|
||
" Tabline
|
||
hi! link TabLineFill StatusLineNC
|
||
hi! link TabLineSel StatusLine
|
||
hi! link TabLine Pmenu
|
||
"}}}
|
||
|
||
" vim: fdm=marker:sw=2:ts=2:tw=80
|