Switch from gruvbox to PaperColor
This commit is contained in:
parent
5b2826d221
commit
aced103ceb
22 changed files with 3049 additions and 4027 deletions
4
pack/acp/start/gruvbox/.gitignore
vendored
4
pack/acp/start/gruvbox/.gitignore
vendored
|
@ -1,4 +0,0 @@
|
||||||
.DS_Store
|
|
||||||
node_modules
|
|
||||||
npm-debug.log*
|
|
||||||
yarn-error.log*
|
|
|
@ -1,6 +0,0 @@
|
||||||
# Change Log
|
|
||||||
|
|
||||||
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
||||||
|
|
||||||
<a name="3.0.1-rc.0"></a>
|
|
||||||
## [3.0.1-rc.0](https://github.com/morhetz/gruvbox/compare/v2.0.0...v3.0.1-rc.0) (2018-05-16)
|
|
|
@ -1,113 +0,0 @@
|
||||||
<p align="center"><img src="http://svgur.com/i/3Dp.svg"></p>
|
|
||||||
|
|
||||||
gruvbox is heavily inspired by [badwolf][], [jellybeans][] and [solarized][].
|
|
||||||
|
|
||||||
Designed as a bright theme with pastel 'retro groove' colors and light/dark mode switching in the way of [solarized][]. The main focus when developing gruvbox is to keep colors easily distinguishable, contrast enough and still pleasant for the eyes.
|
|
||||||
|
|
||||||
[badwolf]: https://github.com/sjl/badwolf
|
|
||||||
[jellybeans]: https://github.com/nanotech/jellybeans.vim
|
|
||||||
[solarized]: http://ethanschoonover.com/solarized
|
|
||||||
|
|
||||||
Attention
|
|
||||||
---------
|
|
||||||
|
|
||||||
1. [Read this first](https://github.com/morhetz/gruvbox/wiki/Terminal-specific)
|
|
||||||
2. Typeface from gallery is [Fantasque Sans Mono](https://github.com/belluzj/fantasque-sans)
|
|
||||||
3. Typeface from screenshots below is [Fira Mono](http://www.carrois.com/fira-4-1/)
|
|
||||||
|
|
||||||
Screenshots
|
|
||||||
-----------
|
|
||||||
|
|
||||||
Refer [Gallery][] for more syntax-specific screenshots.
|
|
||||||
|
|
||||||
[Gallery]: https://github.com/morhetz/gruvbox/wiki/Gallery
|
|
||||||
|
|
||||||
### Dark mode
|
|
||||||
|
|
||||||
![Screenshot Dark](http://i.imgur.com/GkIl8Fn.png)
|
|
||||||
|
|
||||||
### Light mode
|
|
||||||
|
|
||||||
![Screenshot Light](http://i.imgur.com/X75niEa.png)
|
|
||||||
|
|
||||||
### Airline theme
|
|
||||||
|
|
||||||
![Screenshot Airline](http://i.imgur.com/wRQceUR.png)
|
|
||||||
|
|
||||||
Palette
|
|
||||||
-------
|
|
||||||
|
|
||||||
### Dark mode
|
|
||||||
|
|
||||||
![Palette Dark](http://i.imgur.com/wa666xg.png)
|
|
||||||
|
|
||||||
### Light mode
|
|
||||||
|
|
||||||
![Palette Light](http://i.imgur.com/49qKyYW.png)
|
|
||||||
|
|
||||||
Contrast options
|
|
||||||
----------------
|
|
||||||
|
|
||||||
Refer [wiki section][] for contrast configuration and other options.
|
|
||||||
|
|
||||||
[wiki section]: https://github.com/morhetz/gruvbox/wiki/Configuration#ggruvbox_contrast_dark
|
|
||||||
|
|
||||||
![Contrast Options](http://i.imgur.com/5MSbe6T.png)
|
|
||||||
|
|
||||||
Documentation
|
|
||||||
-------------
|
|
||||||
|
|
||||||
Please check [wiki][] for installation details, terminal-specific setup, troubleshooting, configuration options and others.
|
|
||||||
|
|
||||||
[wiki]: https://github.com/morhetz/gruvbox/wiki
|
|
||||||
|
|
||||||
Features
|
|
||||||
--------
|
|
||||||
|
|
||||||
* Lots of style-customization options (contrast, color invertion, italics usage etc.)
|
|
||||||
* Extended filetype highlighting: Html, Xml, Vim, Clojure, C, Python, JavaScript, TypeScript, PureScript, CoffeeScript, Ruby, Objective-C, Go, Lua, MoonScript, Java, Markdown, Haskell, Elixir
|
|
||||||
* Supported plugins: [EasyMotion][], [vim-sneak][], [Indent Guides][], [indentLine][], [Rainbow Parentheses][], [Airline][], [Lightline][], [GitGutter][], [Signify][], [ShowMarks][], [Signature][], [Syntastic][], [Ale][], [CtrlP][], [Startify][], [NERDTree][], [Dirvish][]
|
|
||||||
|
|
||||||
[EasyMotion]: https://github.com/Lokaltog/vim-easymotion
|
|
||||||
[vim-sneak]: https://github.com/justinmk/vim-sneak
|
|
||||||
[Indent Guides]: https://github.com/nathanaelkane/vim-indent-guides
|
|
||||||
[indentLine]: https://github.com/Yggdroot/indentLine
|
|
||||||
[Rainbow Parentheses]: https://github.com/kien/rainbow_parentheses.vim
|
|
||||||
[Airline]: https://github.com/bling/vim-airline
|
|
||||||
[Lightline]: https://github.com/itchyny/lightline.vim
|
|
||||||
[GitGutter]: https://github.com/airblade/vim-gitgutter
|
|
||||||
[Signify]: https://github.com/mhinz/vim-signify
|
|
||||||
[ShowMarks]: http://www.vim.org/scripts/script.php?script_id=152
|
|
||||||
[Signature]: https://github.com/kshenoy/vim-signature
|
|
||||||
[Syntastic]: https://github.com/scrooloose/syntastic
|
|
||||||
[Ale]: https://github.com/w0rp/ale
|
|
||||||
[CtrlP]: https://github.com/kien/ctrlp.vim
|
|
||||||
[Startify]: https://github.com/mhinz/vim-startify
|
|
||||||
[NERDTree]: https://github.com/scrooloose/nerdtree
|
|
||||||
[Dirvish]: https://github.com/justinmk/vim-dirvish
|
|
||||||
|
|
||||||
Contributions
|
|
||||||
-------------
|
|
||||||
|
|
||||||
See [gruvbox-contrib][] repo for contributions, ports and extras.
|
|
||||||
|
|
||||||
[gruvbox-contrib]: https://github.com/morhetz/gruvbox-contrib
|
|
||||||
|
|
||||||
ToDo
|
|
||||||
----
|
|
||||||
|
|
||||||
* Filetype syntax highlighting (R, TeX, Swift, Erlang)
|
|
||||||
* Plugin support (Tagbar, VimPlug)
|
|
||||||
|
|
||||||
Self-Promotion
|
|
||||||
--------------
|
|
||||||
|
|
||||||
If you like gruvbox follow the repository on
|
|
||||||
[GitHub](https://github.com/morhetz/gruvbox) and vote for it on
|
|
||||||
[vim.org](http://www.vim.org/scripts/script.php?script_id=4349).
|
|
||||||
|
|
||||||
License
|
|
||||||
-------
|
|
||||||
[MIT/X11][]
|
|
||||||
|
|
||||||
[MIT/X11]: https://en.wikipedia.org/wiki/MIT_License
|
|
|
@ -1,79 +0,0 @@
|
||||||
" -----------------------------------------------------------------------------
|
|
||||||
" File: gruvbox.vim
|
|
||||||
" Description: Retro groove color scheme for Airline
|
|
||||||
" Author: morhetz <morhetz@gmail.com>
|
|
||||||
" Source: https://github.com/morhetz/gruvbox
|
|
||||||
" Last Modified: 12 Aug 2017
|
|
||||||
" -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
let g:airline#themes#gruvbox#palette = {}
|
|
||||||
|
|
||||||
function! airline#themes#gruvbox#refresh()
|
|
||||||
|
|
||||||
let M0 = airline#themes#get_highlight('Identifier')
|
|
||||||
let accents_group = airline#themes#get_highlight('Special')
|
|
||||||
let modified_group = [M0[0], '', M0[2], '', '']
|
|
||||||
let warning_group = airline#themes#get_highlight2(['Normal', 'bg'], ['Question', 'fg'])
|
|
||||||
let error_group = airline#themes#get_highlight2(['Normal', 'bg'], ['WarningMsg', 'fg'])
|
|
||||||
|
|
||||||
let s:N1 = airline#themes#get_highlight2(['Normal', 'bg'], ['StatusLineNC', 'bg'])
|
|
||||||
let s:N2 = airline#themes#get_highlight2(['StatusLineNC', 'bg'], ['Pmenu', 'bg'])
|
|
||||||
let s:N3 = airline#themes#get_highlight2(['StatusLineNC', 'bg'], ['CursorLine', 'bg'])
|
|
||||||
let g:airline#themes#gruvbox#palette.normal = airline#themes#generate_color_map(s:N1, s:N2, s:N3)
|
|
||||||
let g:airline#themes#gruvbox#palette.normal_modified = { 'airline_c': modified_group }
|
|
||||||
let g:airline#themes#gruvbox#palette.normal.airline_warning = warning_group
|
|
||||||
let g:airline#themes#gruvbox#palette.normal_modified.airline_warning = warning_group
|
|
||||||
let g:airline#themes#gruvbox#palette.normal.airline_error = error_group
|
|
||||||
let g:airline#themes#gruvbox#palette.normal_modified.airline_error = error_group
|
|
||||||
|
|
||||||
let s:I1 = airline#themes#get_highlight2(['Normal', 'bg'], ['Identifier', 'fg'])
|
|
||||||
let s:I2 = s:N2
|
|
||||||
let s:I3 = airline#themes#get_highlight2(['Normal', 'fg'], ['Pmenu', 'bg'])
|
|
||||||
let g:airline#themes#gruvbox#palette.insert = airline#themes#generate_color_map(s:I1, s:I2, s:I3)
|
|
||||||
let g:airline#themes#gruvbox#palette.insert_modified = g:airline#themes#gruvbox#palette.normal_modified
|
|
||||||
let g:airline#themes#gruvbox#palette.insert.airline_warning = g:airline#themes#gruvbox#palette.normal.airline_warning
|
|
||||||
let g:airline#themes#gruvbox#palette.insert_modified.airline_warning = g:airline#themes#gruvbox#palette.normal_modified.airline_warning
|
|
||||||
let g:airline#themes#gruvbox#palette.insert.airline_error = g:airline#themes#gruvbox#palette.normal.airline_error
|
|
||||||
let g:airline#themes#gruvbox#palette.insert_modified.airline_error = g:airline#themes#gruvbox#palette.normal_modified.airline_error
|
|
||||||
|
|
||||||
let s:R1 = airline#themes#get_highlight2(['Normal', 'bg'], ['Structure', 'fg'])
|
|
||||||
let s:R2 = s:I2
|
|
||||||
let s:R3 = s:I3
|
|
||||||
let g:airline#themes#gruvbox#palette.replace = airline#themes#generate_color_map(s:R1, s:R2, s:R3)
|
|
||||||
let g:airline#themes#gruvbox#palette.replace_modified = g:airline#themes#gruvbox#palette.normal_modified
|
|
||||||
let g:airline#themes#gruvbox#palette.replace.airline_warning = g:airline#themes#gruvbox#palette.normal.airline_warning
|
|
||||||
let g:airline#themes#gruvbox#palette.replace_modified.airline_warning = g:airline#themes#gruvbox#palette.normal_modified.airline_warning
|
|
||||||
let g:airline#themes#gruvbox#palette.replace.airline_error = g:airline#themes#gruvbox#palette.normal.airline_error
|
|
||||||
let g:airline#themes#gruvbox#palette.replace_modified.airline_error = g:airline#themes#gruvbox#palette.normal_modified.airline_error
|
|
||||||
|
|
||||||
let s:V1 = airline#themes#get_highlight2(['Normal', 'bg'], ['Question', 'fg'])
|
|
||||||
let s:V2 = s:N2
|
|
||||||
let s:V3 = airline#themes#get_highlight2(['Normal', 'bg'], ['TabLine', 'fg'])
|
|
||||||
let g:airline#themes#gruvbox#palette.visual = airline#themes#generate_color_map(s:V1, s:V2, s:V3)
|
|
||||||
let g:airline#themes#gruvbox#palette.visual_modified = { 'airline_c': [ s:V3[0], '', s:V3[2], '', '' ] }
|
|
||||||
let g:airline#themes#gruvbox#palette.visual.airline_warning = g:airline#themes#gruvbox#palette.normal.airline_warning
|
|
||||||
let g:airline#themes#gruvbox#palette.visual_modified.airline_warning = g:airline#themes#gruvbox#palette.normal_modified.airline_warning
|
|
||||||
let g:airline#themes#gruvbox#palette.visual.airline_error = g:airline#themes#gruvbox#palette.normal.airline_error
|
|
||||||
let g:airline#themes#gruvbox#palette.visual_modified.airline_error = g:airline#themes#gruvbox#palette.normal_modified.airline_error
|
|
||||||
|
|
||||||
let s:IA = airline#themes#get_highlight2(['TabLine', 'fg'], ['CursorLine', 'bg'])
|
|
||||||
let g:airline#themes#gruvbox#palette.inactive = airline#themes#generate_color_map(s:IA, s:IA, s:IA)
|
|
||||||
let g:airline#themes#gruvbox#palette.inactive_modified = { 'airline_c': modified_group }
|
|
||||||
|
|
||||||
let g:airline#themes#gruvbox#palette.accents = { 'red': accents_group }
|
|
||||||
|
|
||||||
let s:TF = airline#themes#get_highlight2(['Normal', 'bg'], ['Normal', 'bg'])
|
|
||||||
let g:airline#themes#gruvbox#palette.tabline = {
|
|
||||||
\ 'airline_tab': s:N2,
|
|
||||||
\ 'airline_tabsel': s:N1,
|
|
||||||
\ 'airline_tabtype': s:V1,
|
|
||||||
\ 'airline_tabfill': s:TF,
|
|
||||||
\ 'airline_tabhid': s:IA,
|
|
||||||
\ 'airline_tabmod': s:I1
|
|
||||||
\ }
|
|
||||||
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
call airline#themes#gruvbox#refresh()
|
|
||||||
|
|
||||||
" vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker:
|
|
|
@ -1,41 +0,0 @@
|
||||||
" -----------------------------------------------------------------------------
|
|
||||||
" File: gruvbox.vim
|
|
||||||
" Description: Retro groove color scheme for Vim
|
|
||||||
" Author: morhetz <morhetz@gmail.com>
|
|
||||||
" Source: https://github.com/morhetz/gruvbox
|
|
||||||
" Last Modified: 09 Apr 2014
|
|
||||||
" -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
function! gruvbox#invert_signs_toggle()
|
|
||||||
if g:gruvbox_invert_signs == 0
|
|
||||||
let g:gruvbox_invert_signs=1
|
|
||||||
else
|
|
||||||
let g:gruvbox_invert_signs=0
|
|
||||||
endif
|
|
||||||
|
|
||||||
colorscheme gruvbox
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" Search Highlighting {{{
|
|
||||||
|
|
||||||
function! gruvbox#hls_show()
|
|
||||||
set hlsearch
|
|
||||||
call GruvboxHlsShowCursor()
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! gruvbox#hls_hide()
|
|
||||||
set nohlsearch
|
|
||||||
call GruvboxHlsHideCursor()
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
function! gruvbox#hls_toggle()
|
|
||||||
if &hlsearch
|
|
||||||
call gruvbox#hls_hide()
|
|
||||||
else
|
|
||||||
call gruvbox#hls_show()
|
|
||||||
endif
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
" }}}
|
|
||||||
|
|
||||||
" vim: set sw=2 ts=2 sts=2 et tw=80 ft=vim fdm=marker:
|
|
|
@ -1,57 +0,0 @@
|
||||||
" -----------------------------------------------------------------------------
|
|
||||||
" File: gruvbox.vim
|
|
||||||
" Description: Gruvbox colorscheme for Lightline (itchyny/lightline.vim)
|
|
||||||
" Author: gmoe <me@griffinmoe.com>
|
|
||||||
" Source: https://github.com/morhetz/gruvbox
|
|
||||||
" Last Modified: 20 Sep 2017
|
|
||||||
" -----------------------------------------------------------------------------
|
|
||||||
|
|
||||||
function! s:getGruvColor(group)
|
|
||||||
let guiColor = synIDattr(hlID(a:group), "fg", "gui")
|
|
||||||
let termColor = synIDattr(hlID(a:group), "fg", "cterm")
|
|
||||||
return [ guiColor, termColor ]
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
if exists('g:lightline')
|
|
||||||
|
|
||||||
let s:bg0 = s:getGruvColor('GruvboxBg0')
|
|
||||||
let s:bg1 = s:getGruvColor('GruvboxBg1')
|
|
||||||
let s:bg2 = s:getGruvColor('GruvboxBg2')
|
|
||||||
let s:bg4 = s:getGruvColor('GruvboxBg4')
|
|
||||||
let s:fg1 = s:getGruvColor('GruvboxFg1')
|
|
||||||
let s:fg4 = s:getGruvColor('GruvboxFg4')
|
|
||||||
|
|
||||||
let s:yellow = s:getGruvColor('GruvboxYellow')
|
|
||||||
let s:blue = s:getGruvColor('GruvboxBlue')
|
|
||||||
let s:aqua = s:getGruvColor('GruvboxAqua')
|
|
||||||
let s:orange = s:getGruvColor('GruvboxOrange')
|
|
||||||
let s:green = s:getGruvColor('GruvboxGreen')
|
|
||||||
|
|
||||||
let s:p = {'normal':{}, 'inactive':{}, 'insert':{}, 'replace':{}, 'visual':{}, 'tabline':{}, 'terminal':{}}
|
|
||||||
let s:p.normal.left = [ [ s:bg0, s:fg4, 'bold' ], [ s:fg4, s:bg2 ] ]
|
|
||||||
let s:p.normal.right = [ [ s:bg0, s:fg4 ], [ s:fg4, s:bg2 ] ]
|
|
||||||
let s:p.normal.middle = [ [ s:fg4, s:bg1 ] ]
|
|
||||||
let s:p.inactive.right = [ [ s:bg4, s:bg1 ], [ s:bg4, s:bg1 ] ]
|
|
||||||
let s:p.inactive.left = [ [ s:bg4, s:bg1 ], [ s:bg4, s:bg1 ] ]
|
|
||||||
let s:p.inactive.middle = [ [ s:bg4, s:bg1 ] ]
|
|
||||||
let s:p.insert.left = [ [ s:bg0, s:blue, 'bold' ], [ s:fg1, s:bg2 ] ]
|
|
||||||
let s:p.insert.right = [ [ s:bg0, s:blue ], [ s:fg1, s:bg2 ] ]
|
|
||||||
let s:p.insert.middle = [ [ s:fg4, s:bg2 ] ]
|
|
||||||
let s:p.terminal.left = [ [ s:bg0, s:green, 'bold' ], [ s:fg1, s:bg2 ] ]
|
|
||||||
let s:p.terminal.right = [ [ s:bg0, s:green ], [ s:fg1, s:bg2 ] ]
|
|
||||||
let s:p.terminal.middle = [ [ s:fg4, s:bg2 ] ]
|
|
||||||
let s:p.replace.left = [ [ s:bg0, s:aqua, 'bold' ], [ s:fg1, s:bg2 ] ]
|
|
||||||
let s:p.replace.right = [ [ s:bg0, s:aqua ], [ s:fg1, s:bg2 ] ]
|
|
||||||
let s:p.replace.middle = [ [ s:fg4, s:bg2 ] ]
|
|
||||||
let s:p.visual.left = [ [ s:bg0, s:orange, 'bold' ], [ s:bg0, s:bg4 ] ]
|
|
||||||
let s:p.visual.right = [ [ s:bg0, s:orange ], [ s:bg0, s:bg4 ] ]
|
|
||||||
let s:p.visual.middle = [ [ s:fg4, s:bg1 ] ]
|
|
||||||
let s:p.tabline.left = [ [ s:fg4, s:bg2 ] ]
|
|
||||||
let s:p.tabline.tabsel = [ [ s:bg0, s:fg4 ] ]
|
|
||||||
let s:p.tabline.middle = [ [ s:bg0, s:bg0 ] ]
|
|
||||||
let s:p.tabline.right = [ [ s:bg0, s:orange ] ]
|
|
||||||
let s:p.normal.error = [ [ s:bg0, s:orange ] ]
|
|
||||||
let s:p.normal.warning = [ [ s:bg2, s:yellow ] ]
|
|
||||||
|
|
||||||
let g:lightline#colorscheme#gruvbox#palette = lightline#colorscheme#flatten(s:p)
|
|
||||||
endif
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,118 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "${TERM%%-*}" = "screen" ]; then
|
|
||||||
if [ -n "$TMUX" ]; then
|
|
||||||
printf "\033Ptmux;\033\033]4;236;rgb:32/30/2f\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;234;rgb:1d/20/21\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;235;rgb:28/28/28\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;237;rgb:3c/38/36\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;239;rgb:50/49/45\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;241;rgb:66/5c/54\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;243;rgb:7c/6f/64\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;244;rgb:92/83/74\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;245;rgb:92/83/74\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;228;rgb:f2/e5/bc\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;230;rgb:f9/f5/d7\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;229;rgb:fb/f1/c7\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;223;rgb:eb/db/b2\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;250;rgb:d5/c4/a1\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;248;rgb:bd/ae/93\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;246;rgb:a8/99/84\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;167;rgb:fb/49/34\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;142;rgb:b8/bb/26\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;214;rgb:fa/bd/2f\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;109;rgb:83/a5/98\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;175;rgb:d3/86/9b\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;108;rgb:8e/c0/7c\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;208;rgb:fe/80/19\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;88;rgb:9d/00/06\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;100;rgb:79/74/0e\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;136;rgb:b5/76/14\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;24;rgb:07/66/78\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;96;rgb:8f/3f/71\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;66;rgb:42/7b/58\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;130;rgb:af/3a/03\007\033\\"
|
|
||||||
else
|
|
||||||
printf "\033P\033]4;236;rgb:32/30/2f\007\033\\"
|
|
||||||
printf "\033P\033]4;234;rgb:1d/20/21\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;235;rgb:28/28/28\007\033\\"
|
|
||||||
printf "\033P\033]4;237;rgb:3c/38/36\007\033\\"
|
|
||||||
printf "\033P\033]4;239;rgb:50/49/45\007\033\\"
|
|
||||||
printf "\033P\033]4;241;rgb:66/5c/54\007\033\\"
|
|
||||||
printf "\033P\033]4;243;rgb:7c/6f/64\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;244;rgb:92/83/74\007\033\\"
|
|
||||||
printf "\033P\033]4;245;rgb:92/83/74\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;228;rgb:f2/e5/bc\007\033\\"
|
|
||||||
printf "\033P\033]4;230;rgb:f9/f5/d7\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;229;rgb:fb/f1/c7\007\033\\"
|
|
||||||
printf "\033P\033]4;223;rgb:eb/db/b2\007\033\\"
|
|
||||||
printf "\033P\033]4;250;rgb:d5/c4/a1\007\033\\"
|
|
||||||
printf "\033P\033]4;248;rgb:bd/ae/93\007\033\\"
|
|
||||||
printf "\033P\033]4;246;rgb:a8/99/84\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;167;rgb:fb/49/34\007\033\\"
|
|
||||||
printf "\033P\033]4;142;rgb:b8/bb/26\007\033\\"
|
|
||||||
printf "\033P\033]4;214;rgb:fa/bd/2f\007\033\\"
|
|
||||||
printf "\033P\033]4;109;rgb:83/a5/98\007\033\\"
|
|
||||||
printf "\033P\033]4;175;rgb:d3/86/9b\007\033\\"
|
|
||||||
printf "\033P\033]4;108;rgb:8e/c0/7c\007\033\\"
|
|
||||||
printf "\033P\033]4;208;rgb:fe/80/19\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;88;rgb:9d/00/06\007\033\\"
|
|
||||||
printf "\033P\033]4;100;rgb:79/74/0e\007\033\\"
|
|
||||||
printf "\033P\033]4;136;rgb:b5/76/14\007\033\\"
|
|
||||||
printf "\033P\033]4;24;rgb:07/66/78\007\033\\"
|
|
||||||
printf "\033P\033]4;96;rgb:8f/3f/71\007\033\\"
|
|
||||||
printf "\033P\033]4;66;rgb:42/7b/58\007\033\\"
|
|
||||||
printf "\033P\033]4;130;rgb:af/3a/03\007\033\\"
|
|
||||||
fi
|
|
||||||
|
|
||||||
elif [ "$TERM" != "linux" ] && [ "$TERM" != "vt100" ] && [ "$TERM" != "vt220" ]; then
|
|
||||||
|
|
||||||
printf "\033]4;236;rgb:32/30/2f\033\\"
|
|
||||||
printf "\033]4;234;rgb:1d/20/21\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;235;rgb:28/28/28\033\\"
|
|
||||||
printf "\033]4;237;rgb:3c/38/36\033\\"
|
|
||||||
printf "\033]4;239;rgb:50/49/45\033\\"
|
|
||||||
printf "\033]4;241;rgb:66/5c/54\033\\"
|
|
||||||
printf "\033]4;243;rgb:7c/6f/64\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;244;rgb:92/83/74\033\\"
|
|
||||||
printf "\033]4;245;rgb:92/83/74\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;228;rgb:f2/e5/bc\033\\"
|
|
||||||
printf "\033]4;230;rgb:f9/f5/d7\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;229;rgb:fb/f1/c7\033\\"
|
|
||||||
printf "\033]4;223;rgb:eb/db/b2\033\\"
|
|
||||||
printf "\033]4;250;rgb:d5/c4/a1\033\\"
|
|
||||||
printf "\033]4;248;rgb:bd/ae/93\033\\"
|
|
||||||
printf "\033]4;246;rgb:a8/99/84\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;167;rgb:fb/49/34\033\\"
|
|
||||||
printf "\033]4;142;rgb:b8/bb/26\033\\"
|
|
||||||
printf "\033]4;214;rgb:fa/bd/2f\033\\"
|
|
||||||
printf "\033]4;109;rgb:83/a5/98\033\\"
|
|
||||||
printf "\033]4;175;rgb:d3/86/9b\033\\"
|
|
||||||
printf "\033]4;108;rgb:8e/c0/7c\033\\"
|
|
||||||
printf "\033]4;208;rgb:fe/80/19\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;88;rgb:9d/00/06\033\\"
|
|
||||||
printf "\033]4;100;rgb:79/74/0e\033\\"
|
|
||||||
printf "\033]4;136;rgb:b5/76/14\033\\"
|
|
||||||
printf "\033]4;24;rgb:07/66/78\033\\"
|
|
||||||
printf "\033]4;96;rgb:8f/3f/71\033\\"
|
|
||||||
printf "\033]4;66;rgb:42/7b/58\033\\"
|
|
||||||
printf "\033]4;130;rgb:af/3a/03\033\\"
|
|
||||||
fi
|
|
|
@ -1,116 +0,0 @@
|
||||||
#!/bin/sh
|
|
||||||
|
|
||||||
if [ "${TERM%%-*}" = "screen" ]; then
|
|
||||||
if [ -n "$TMUX" ]; then
|
|
||||||
printf "\033Ptmux;\033\033]4;236;rgb:26/24/23\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;234;rgb:16/18/19\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;235;rgb:1e/1e/1e\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;237;rgb:2e/2a/29\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;239;rgb:3f/39/35\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;241;rgb:53/4a/42\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;243;rgb:68/5c/51\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;244;rgb:7f/70/61\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;245;rgb:7f/70/61\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;228;rgb:ef/df/ae\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;230;rgb:f8/f4/cd\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;229;rgb:fa/ee/bb\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;223;rgb:e6/d4/a3\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;250;rgb:cb/b8/90\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;248;rgb:af/9f/81\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;246;rgb:97/87/71\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;167;rgb:f7/30/28\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;142;rgb:aa/b0/1e\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;214;rgb:f7/b1/25\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;109;rgb:71/95/86\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;175;rgb:c7/70/89\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;108;rgb:7d/b6/69\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;208;rgb:fb/6a/16\007\033\\"
|
|
||||||
|
|
||||||
printf "\033Ptmux;\033\033]4;88;rgb:89/00/09\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;100;rgb:66/62/0d\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;136;rgb:a5/63/11\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;24;rgb:0e/53/65\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;96;rgb:7b/2b/5e\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;66;rgb:35/6a/46\007\033\\"
|
|
||||||
printf "\033Ptmux;\033\033]4;130;rgb:9d/28/07\007\033\\"
|
|
||||||
else
|
|
||||||
printf "\033P\033]4;236;rgb:26/24/23\007\033\\"
|
|
||||||
printf "\033P\033]4;234;rgb:16/18/19\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;235;rgb:1e/1e/1e\007\033\\"
|
|
||||||
printf "\033P\033]4;237;rgb:2e/2a/29\007\033\\"
|
|
||||||
printf "\033P\033]4;239;rgb:3f/39/35\007\033\\"
|
|
||||||
printf "\033P\033]4;241;rgb:53/4a/42\007\033\\"
|
|
||||||
printf "\033P\033]4;243;rgb:68/5c/51\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;244;rgb:7f/70/61\007\033\\"
|
|
||||||
printf "\033P\033]4;245;rgb:7f/70/61\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;228;rgb:ef/df/ae\007\033\\"
|
|
||||||
printf "\033P\033]4;230;rgb:f8/f4/cd\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;229;rgb:fa/ee/bb\007\033\\"
|
|
||||||
printf "\033P\033]4;223;rgb:e6/d4/a3\007\033\\"
|
|
||||||
printf "\033P\033]4;250;rgb:cb/b8/90\007\033\\"
|
|
||||||
printf "\033P\033]4;248;rgb:af/9f/81\007\033\\"
|
|
||||||
printf "\033P\033]4;246;rgb:97/87/71\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;167;rgb:f7/30/28\007\033\\"
|
|
||||||
printf "\033P\033]4;142;rgb:aa/b0/1e\007\033\\"
|
|
||||||
printf "\033P\033]4;214;rgb:f7/b1/25\007\033\\"
|
|
||||||
printf "\033P\033]4;109;rgb:71/95/86\007\033\\"
|
|
||||||
printf "\033P\033]4;175;rgb:c7/70/89\007\033\\"
|
|
||||||
printf "\033P\033]4;108;rgb:7d/b6/69\007\033\\"
|
|
||||||
printf "\033P\033]4;208;rgb:fb/6a/16\007\033\\"
|
|
||||||
|
|
||||||
printf "\033P\033]4;88;rgb:89/00/09\007\033\\"
|
|
||||||
printf "\033P\033]4;100;rgb:66/62/0d\007\033\\"
|
|
||||||
printf "\033P\033]4;136;rgb:a5/63/11\007\033\\"
|
|
||||||
printf "\033P\033]4;24;rgb:0e/53/65\007\033\\"
|
|
||||||
printf "\033P\033]4;96;rgb:7b/2b/5e\007\033\\"
|
|
||||||
printf "\033P\033]4;66;rgb:35/6a/46\007\033\\"
|
|
||||||
printf "\033P\033]4;130;rgb:9d/28/07\007\033\\"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
printf "\033]4;236;rgb:26/24/23\033\\"
|
|
||||||
printf "\033]4;234;rgb:16/18/19\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;235;rgb:1e/1e/1e\033\\"
|
|
||||||
printf "\033]4;237;rgb:2e/2a/29\033\\"
|
|
||||||
printf "\033]4;239;rgb:3f/39/35\033\\"
|
|
||||||
printf "\033]4;241;rgb:53/4a/42\033\\"
|
|
||||||
printf "\033]4;243;rgb:68/5c/51\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;244;rgb:7f/70/61\033\\"
|
|
||||||
printf "\033]4;245;rgb:7f/70/61\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;228;rgb:ef/df/ae\033\\"
|
|
||||||
printf "\033]4;230;rgb:f8/f4/cd\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;229;rgb:fa/ee/bb\033\\"
|
|
||||||
printf "\033]4;223;rgb:e6/d4/a3\033\\"
|
|
||||||
printf "\033]4;250;rgb:cb/b8/90\033\\"
|
|
||||||
printf "\033]4;248;rgb:af/9f/81\033\\"
|
|
||||||
printf "\033]4;246;rgb:97/87/71\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;167;rgb:f7/30/28\033\\"
|
|
||||||
printf "\033]4;142;rgb:aa/b0/1e\033\\"
|
|
||||||
printf "\033]4;214;rgb:f7/b1/25\033\\"
|
|
||||||
printf "\033]4;109;rgb:71/95/86\033\\"
|
|
||||||
printf "\033]4;175;rgb:c7/70/89\033\\"
|
|
||||||
printf "\033]4;108;rgb:7d/b6/69\033\\"
|
|
||||||
printf "\033]4;208;rgb:fb/6a/16\033\\"
|
|
||||||
|
|
||||||
printf "\033]4;88;rgb:89/00/09\033\\"
|
|
||||||
printf "\033]4;100;rgb:66/62/0d\033\\"
|
|
||||||
printf "\033]4;136;rgb:a5/63/11\033\\"
|
|
||||||
printf "\033]4;24;rgb:0e/53/65\033\\"
|
|
||||||
printf "\033]4;96;rgb:7b/2b/5e\033\\"
|
|
||||||
printf "\033]4;66;rgb:35/6a/46\033\\"
|
|
||||||
printf "\033]4;130;rgb:9d/28/07\033\\"
|
|
||||||
fi
|
|
|
@ -1,32 +0,0 @@
|
||||||
{
|
|
||||||
"name": "gruvbox",
|
|
||||||
"version": "3.0.1-rc.0",
|
|
||||||
"repository": "git@github.com:morhetz/gruvbox.git",
|
|
||||||
"author": "Pavel Pertsev <morhetz@gmail.com>",
|
|
||||||
"license": "MIT",
|
|
||||||
"scripts": {
|
|
||||||
"commitmsg": "validate-commit-msg",
|
|
||||||
"cz": "git-cz",
|
|
||||||
"postcheckout": "track-changed checkout",
|
|
||||||
"postmerge": "track-changed merge",
|
|
||||||
"postrewrite": "track-changed rewrite"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"@bruitt/commit": "^1.0.0",
|
|
||||||
"babel-runtime": "^6.26.0",
|
|
||||||
"husky": "^0.13.1",
|
|
||||||
"standard-version": "^4.3.0",
|
|
||||||
"track-changed": "^1.0.2"
|
|
||||||
},
|
|
||||||
"config": {
|
|
||||||
"commitizen": {
|
|
||||||
"path": "./node_modules/cz-conventional-changelog"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"track-changed": {
|
|
||||||
"yarn.lock": "yarn"
|
|
||||||
},
|
|
||||||
"vim": {
|
|
||||||
"opt": true
|
|
||||||
}
|
|
||||||
}
|
|
File diff suppressed because it is too large
Load diff
20
pack/acp/start/papercolor-theme/.gitignore
vendored
Normal file
20
pack/acp/start/papercolor-theme/.gitignore
vendored
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
#################################################################
|
||||||
|
# Global/Vim.gitignore
|
||||||
|
#################################################################
|
||||||
|
# Swap
|
||||||
|
[._]*.s[a-v][a-z]
|
||||||
|
[._]*.sw[a-p]
|
||||||
|
[._]s[a-rt-v][a-z]
|
||||||
|
[._]ss[a-gi-z]
|
||||||
|
[._]sw[a-p]
|
||||||
|
|
||||||
|
# Session
|
||||||
|
Session.vim
|
||||||
|
|
||||||
|
# Temporary
|
||||||
|
.netrwhist
|
||||||
|
*~
|
||||||
|
# Auto-generated tag files
|
||||||
|
tags
|
||||||
|
# Persistent undo
|
||||||
|
[._]*.un~
|
10
pack/acp/start/papercolor-theme/.travis.yml
Normal file
10
pack/acp/start/papercolor-theme/.travis.yml
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
sudo: required
|
||||||
|
|
||||||
|
language: sh
|
||||||
|
|
||||||
|
services:
|
||||||
|
- docker
|
||||||
|
|
||||||
|
script:
|
||||||
|
- docker build -t test test/
|
||||||
|
- docker run --rm -it -v $(pwd):/mnt test colors/PaperColor.vim
|
158
pack/acp/start/papercolor-theme/DESIGN.md
Normal file
158
pack/acp/start/papercolor-theme/DESIGN.md
Normal file
|
@ -0,0 +1,158 @@
|
||||||
|
Design Guideline
|
||||||
|
================
|
||||||
|
|
||||||
|
This note explains how to override theme colors and create your own theme on top of PaperColor as well as the full list of color names and the format of color values.
|
||||||
|
|
||||||
|
1. Customize current theme colors
|
||||||
|
2. Create your own theme
|
||||||
|
3. Color Format
|
||||||
|
4. Color Names
|
||||||
|
|
||||||
|
# Customize Current Theme Colors
|
||||||
|
|
||||||
|
You can override any color of the theme of interest. This example is for `default` theme (original PaperColor Theme), but you can specify any other theme that is registered.
|
||||||
|
|
||||||
|
The overriding setting is placed in `override` key of `g:PaperColor_Theme_Options` variable that you set in `.vimrc` like this.
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'theme': {
|
||||||
|
\ 'default.dark': {
|
||||||
|
\ 'override' : {
|
||||||
|
\ 'color00' : ['#080808', '232'],
|
||||||
|
\ 'linenumber_bg' : ['#080808', '232']
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
In this case, `default` is color theme name, and `dark` is the specific variant that we want to override some colors. The other is `light`, and you can set the same way.
|
||||||
|
|
||||||
|
All colors can be overridden within `override` key. See Color Names section for all available options.
|
||||||
|
|
||||||
|
# Create your own theme
|
||||||
|
|
||||||
|
You can create your own theme on top of PaperColor. Your custom theme is simply responsible for color palette specification, similar to how the default theme specifies the colors. Think of this like a plugin for PaperColor framework. You can distribute your theme as a plugin that depends on PaperColor, and users need to install both. Your theme benefits from all development in PaperColor that occurs independently.
|
||||||
|
|
||||||
|
Example: https://github.com/NLKNguyen/papercolor-blue
|
||||||
|
|
||||||
|
Disclaimer: This feature is very new and important, and I expect many revisions to get it right, so keep in mind of incompatible changes in future.
|
||||||
|
|
||||||
|
TODO: more instruction
|
||||||
|
|
||||||
|
|
||||||
|
# Color Format
|
||||||
|
|
||||||
|
|
||||||
|
The format of color value is `[GUI-Color, 256-Color]` where each item is a quoted string.
|
||||||
|
|
||||||
|
* `GUI-Color` is used for Vim variants that can display GUI Color such as MacVim, GVim, or NeoVim. The value format is Red-Green-Blue in hexadecimal, i.e. `'#RRGGBB'`
|
||||||
|
* `256-Color` is used for terminal Vim. The value format is from `'00'` to `'255'` in base 10 number system.
|
||||||
|
|
||||||
|
You only have to provide one of them; for example, `['#080808', '']` or `['', '232']`, and the theme will automatically convert as needed.
|
||||||
|
|
||||||
|
256-color can be converted exactly to their GUI color representation. The reverse is not necessary true. 256-color can only represent a very small subset of GUI-color, so for the GUI color outside 256-color range, the converter can only approximate the nearest 256-color of the GUI-color.
|
||||||
|
|
||||||
|
This is a [256-color table](http://www.calmar.ws/vim/256-xterm-24bit-rgb-color-chart.html) and their corresponding GUI-color.
|
||||||
|
|
||||||
|
|
||||||
|
# Color Names
|
||||||
|
|
||||||
|
## Standard
|
||||||
|
|
||||||
|
16 standard colors are the required for all themes. These are also the falling-back colors for all extended colors if not provided.
|
||||||
|
|
||||||
|
name | note
|
||||||
|
--------|-----------
|
||||||
|
color00 | background (main)
|
||||||
|
color01 | *negative* (should be red)
|
||||||
|
color02 | *positive* (should be green)
|
||||||
|
color03 | string
|
||||||
|
color04 | *neutral* (2nd background)
|
||||||
|
color05 | comment
|
||||||
|
color06 | typically storage class keywords
|
||||||
|
color07 | foreground (normal text)
|
||||||
|
color08 | 3rd background
|
||||||
|
color09 | typically import/try-catch keywords
|
||||||
|
color10 | typically type and more emphasized keywords
|
||||||
|
color11 | typically if/conditional/loop keywords
|
||||||
|
color12 | accent (rarely used)
|
||||||
|
color13 | typically number
|
||||||
|
color14 | typically the rest of keywords
|
||||||
|
color15 | highlight
|
||||||
|
|
||||||
|
## Extended Colors
|
||||||
|
|
||||||
|
All of these are optional but better be utilized for theme richness.
|
||||||
|
|
||||||
|
name | note
|
||||||
|
-------- | -----------
|
||||||
|
color16 | certain keywords where otherwise just color14
|
||||||
|
color17 | typically boolean and label/tag
|
||||||
|
cursor_fg |
|
||||||
|
cursor_bg |
|
||||||
|
cursorline |
|
||||||
|
cursorcolumn |
|
||||||
|
cursorlinenr_fg |
|
||||||
|
cursorlinenr_bg |
|
||||||
|
popupmenu_fg |
|
||||||
|
popupmenu_bg |
|
||||||
|
search_fg |
|
||||||
|
search_bg |
|
||||||
|
linenumber_fg |
|
||||||
|
linenumber_bg |
|
||||||
|
vertsplit_fg |
|
||||||
|
vertsplit_bg |
|
||||||
|
statusline_active_fg |
|
||||||
|
statusline_active_bg |
|
||||||
|
statusline_inactive_fg |
|
||||||
|
statusline_inactive_bg |
|
||||||
|
todo_fg |
|
||||||
|
todo_bg |
|
||||||
|
error_fg |
|
||||||
|
error_bg |
|
||||||
|
matchparen_bg |
|
||||||
|
matchparen_fg |
|
||||||
|
visual_fg |
|
||||||
|
visual_bg |
|
||||||
|
folded_fg |
|
||||||
|
folded_bg |
|
||||||
|
wildmenu_fg |
|
||||||
|
wildmenu_bg |
|
||||||
|
spellbad |
|
||||||
|
spellcap |
|
||||||
|
spellrare |
|
||||||
|
spelllocal |
|
||||||
|
diffadd_fg |
|
||||||
|
diffadd_bg |
|
||||||
|
diffdelete_fg |
|
||||||
|
diffdelete_bg |
|
||||||
|
difftext_fg |
|
||||||
|
difftext_bg |
|
||||||
|
diffchange_fg |
|
||||||
|
diffchange_bg |
|
||||||
|
|
||||||
|
For tabline plugin
|
||||||
|
|
||||||
|
name | note
|
||||||
|
-------- | -----------
|
||||||
|
tabline_bg |
|
||||||
|
tabline_active_fg |
|
||||||
|
tabline_active_bg |
|
||||||
|
tabline_inactive_fg |
|
||||||
|
tabline_inactive_bg |
|
||||||
|
|
||||||
|
For vim-buftabline plugin
|
||||||
|
|
||||||
|
name | note
|
||||||
|
-------- | -----------
|
||||||
|
buftabline_bg |
|
||||||
|
buftabline_current_fg |
|
||||||
|
buftabline_current_bg |
|
||||||
|
buftabline_active_fg |
|
||||||
|
buftabline_active_bg |
|
||||||
|
buftabline_inactive_fg |
|
||||||
|
buftabline_inactive_bg |
|
||||||
|
|
22
pack/acp/start/papercolor-theme/LICENSE
Normal file
22
pack/acp/start/papercolor-theme/LICENSE
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
The MIT License (MIT)
|
||||||
|
|
||||||
|
Copyright (c) 2015-2017 Nikyle Nguyen
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, 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 PARTICULAR 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 CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
|
|
275
pack/acp/start/papercolor-theme/README.md
Normal file
275
pack/acp/start/papercolor-theme/README.md
Normal file
|
@ -0,0 +1,275 @@
|
||||||
|
PaperColor Theme
|
||||||
|
===================
|
||||||
|
[![license](https://img.shields.io/github/license/NLKNguyen/papercolor-theme.svg?maxAge=2592000)](https://github.com/NLKNguyen/papercolor-theme/blob/master/LICENSE) [![](https://img.shields.io/github/issues-raw/NLKNguyen/papercolor-theme.svg?maxAge=2592000)](https://github.com/NLKNguyen/papercolor-theme/issues) [![](https://img.shields.io/github/issues-closed-raw/NLKNguyen/papercolor-theme.svg?maxAge=2592000)](https://github.com/NLKNguyen/papercolor-theme/issues) [![GitHub release](https://img.shields.io/github/release/NLKNguyen/papercolor-theme.svg)](https://github.com/NLKNguyen/papercolor-theme/releases) [![Travis CI Build Status](https://travis-ci.org/NLKNguyen/papercolor-theme.svg?branch=master)](https://travis-ci.org/NLKNguyen/papercolor-theme)
|
||||||
|
|
||||||
|
|
||||||
|
Light & Dark color schemes for terminal and graphic **Vim** awesome editor
|
||||||
|
|
||||||
|
Inspired by Google's Material Design
|
||||||
|
|
||||||
|
Improve code readability; great for presentation
|
||||||
|
|
||||||
|
## Inclusive support
|
||||||
|
|
||||||
|
### Color Ranges
|
||||||
|
|
||||||
|
Support True color / **GUI-color** and identical **256-color** that the design is based on.
|
||||||
|
|
||||||
|
Also gracefully support down to **16-color** terminal, which will use terminal native colors. You need to change the terminal colors to PaperColor palette.
|
||||||
|
|
||||||
|
In 8-color and 4-color, it might lack the necessary variation of colors to express PaperColor, but seriously let me know if you still use these kinds of terminals.
|
||||||
|
|
||||||
|
|
||||||
|
### Languages and Plugins
|
||||||
|
|
||||||
|
Currently designed for these languages:
|
||||||
|
- Haskell, Erlang, Elixir, Clojure, Elm, Purescript, F#
|
||||||
|
- C, C++, Golang, Rust, Java, JavaScript, Python, Ruby, Pascal, PHP, Perl, LUA
|
||||||
|
- DTrace, SystemTap, SQL/MySQL, Octave/MATLAB, R, Lex/Flex & Yacc/Bison, ASN.1, Assembly (MIPS, GAS, NASM), Bash/Shell script, Sed, Awk, Vim script, Powershell script
|
||||||
|
- Dockerfile, Makefile, CMake, NGINX, Cucumber, YAML, JSON, HTML, XML, Markdown, reStructuredText, PlantUML, Dosini, Mail, Git commit message
|
||||||
|
- Ada, COBOL, Fortran, ALGOL, *(what's your other favorite dinosaur?)*
|
||||||
|
|
||||||
|
Other file types can still display well as long as your Vim is set up to recognize the language syntax even though that may not be the optimal experience. So, if the language you are working on isn't listed here, feel free to make a design request.
|
||||||
|
|
||||||
|
Plugin support: vimdiff, netrw, [NERDTree](https://github.com/scrooloose/nerdtree), [tagbar](https://github.com/majutsushi/tagbar), [tabline](https://github.com/mkitt/tabline.vim), [vim-airline](https://github.com/bling/vim-airline), [vim-indent-guides](https://github.com/nathanaelkane/vim-indent-guides), [vim-startify](https://github.com/mhinz/vim-startify), [Agit](https://github.com/cohama/agit.vim)
|
||||||
|
|
||||||
|
(see below for syntax-highlighting plugins target)
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
Place 'PaperColor.vim' file into 'colors' folder within your Vim directory, e.g. `~/.vim/colors/`
|
||||||
|
|
||||||
|
Or simply use a plugin manager like [Vundle](https://github.com/gmarik/Vundle.vim) (recommended for easy `:PluginUpdate`):
|
||||||
|
|
||||||
|
Plugin 'NLKNguyen/papercolor-theme'
|
||||||
|
|
||||||
|
Then, put this in your `~/.vimrc`
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
set t_Co=256 " This is may or may not needed.
|
||||||
|
|
||||||
|
set background=light
|
||||||
|
colorscheme PaperColor
|
||||||
|
```
|
||||||
|
|
||||||
|
Or using the dark version:
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
set background=dark
|
||||||
|
colorscheme PaperColor
|
||||||
|
```
|
||||||
|
|
||||||
|
To switch to dark or light variant during session: `:set background=dark` or `:set background=light`
|
||||||
|
|
||||||
|
To quickly toggle between them, use [vim-unimpaired](https://github.com/tpope/vim-unimpaired)'s keymap `cob`
|
||||||
|
|
||||||
|
*Optional*: turn on line numbers and status bar
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
set number
|
||||||
|
set laststatus=2
|
||||||
|
```
|
||||||
|
|
||||||
|
## User-config Options
|
||||||
|
|
||||||
|
This theme currently provides theme options and language-specific options. All config options can be stored in global variable `g:PaperColor_Theme_Options` which can be set in your `.vimrc`
|
||||||
|
|
||||||
|
|
||||||
|
**Note**:
|
||||||
|
+ This `g:PaperColor_Theme_Options` variable must be placed anywhere **before** `color PaperColor` command.
|
||||||
|
+ if the same option is provided in both a theme and a theme's variant, the value in the theme's variant options will take precedence.
|
||||||
|
|
||||||
|
### Theme Options
|
||||||
|
|
||||||
|
Within section `theme`, options for each theme can be specified under the theme name. The original PaperColor theme is `default`. For example:
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'theme': {
|
||||||
|
\ 'default': {
|
||||||
|
\ 'transparent_background': 1
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
```
|
||||||
|
|
||||||
|
Or if you want to specify options only for a variant (dark or light) of a theme, you can specify using this pattern `[theme name].light` or `[theme name].dark`. For example:
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'theme': {
|
||||||
|
\ 'default.dark': {
|
||||||
|
\ 'transparent_background': 1
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
```
|
||||||
|
|
||||||
|
**Color overriding**
|
||||||
|
|
||||||
|
|
||||||
|
You can override any color of the theme of interest. This example is for `default` theme (original PaperColor Theme), but you can specify any other theme that is registered.
|
||||||
|
|
||||||
|
The overriding setting is placed in `override` key of `g:PaperColor_Theme_Options` variable that you set in `.vimrc` like this.
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'theme': {
|
||||||
|
\ 'default.dark': {
|
||||||
|
\ 'override' : {
|
||||||
|
\ 'color00' : ['#080808', '232'],
|
||||||
|
\ 'linenumber_bg' : ['#080808', '232']
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
See [DESIGN.md](https://github.com/NLKNguyen/papercolor-theme/blob/master/DESIGN.md) for more details and full list of color names.
|
||||||
|
|
||||||
|
|
||||||
|
#### Currently available theme options
|
||||||
|
|
||||||
|
option | value | default
|
||||||
|
------ | ------ | -------
|
||||||
|
`transparent_background` | 1: use terminal background | 0: use theme background
|
||||||
|
`allow_bold` | 1: use bold for certain text, 0: not at all | decided by the theme
|
||||||
|
`allow_italic` | 1: use italics for certain text, 0: not at all | decided by the theme
|
||||||
|
`override` | dictionary of color key-value |
|
||||||
|
|
||||||
|
|
||||||
|
### Language-specific options
|
||||||
|
|
||||||
|
In general, for each language, built-in functions and constants are not highlighted.
|
||||||
|
This is intentional; the vim syntax file often lags behind actual language development.
|
||||||
|
To override the default behavior, optionally place a language section in `g:PaperColor_Theme_Options`.
|
||||||
|
An example configuration is available below
|
||||||
|
|
||||||
|
|
||||||
|
```VimL
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'language': {
|
||||||
|
\ 'python': {
|
||||||
|
\ 'highlight_builtins' : 1
|
||||||
|
\ },
|
||||||
|
\ 'cpp': {
|
||||||
|
\ 'highlight_standard_library': 1
|
||||||
|
\ },
|
||||||
|
\ 'c': {
|
||||||
|
\ 'highlight_builtins' : 1
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Currently available language options
|
||||||
|
|
||||||
|
language | option | value | default
|
||||||
|
------ | ------ | ------ | ------
|
||||||
|
`c` | `highlight_builtins` | 1: enable | 0: disable
|
||||||
|
`cpp` | `highlight_standard_library` | 1: enable | 0: disable
|
||||||
|
`python` | `highlight_builtins` | 1: enable | 0: disable
|
||||||
|
|
||||||
|
|
||||||
|
## Syntax Highlighting Plugins Target
|
||||||
|
There are syntax highlighting enhancement plugins that improve upon Vim built-in syntax highlighting, and each can have many different implementations. This is the list of plugins that this color scheme targets.
|
||||||
|
|
||||||
|
* C: [c-syntax.vim](https://github.com/NLKNguyen/c-syntax.vim)
|
||||||
|
* JavaScript: [vim-javascript](https://github.com/pangloss/vim-javascript)
|
||||||
|
* Jsx: [vim-jsx-pretty](https://github.com/MaxMEllon/vim-jsx-pretty)
|
||||||
|
* JSON: [vim-json](https://github.com/elzr/vim-json)
|
||||||
|
* Go: [vim-go](https://github.com/fatih/vim-go)
|
||||||
|
* DTrace: [dtrace-syntax-file](https://github.com/vim-scripts/dtrace-syntax-file)
|
||||||
|
* SystemTap: [vim-systemtap](https://github.com/nickhutchinson/vim-systemtap)
|
||||||
|
* Haskell: [haskell-vim](https://github.com/raichoo/haskell-vim)
|
||||||
|
* PlantUML: [plantuml-syntax](https://github.com/aklt/plantuml-syntax)
|
||||||
|
* Markdown: [vim-markdown](https://github.com/plasticboy/vim-markdown)
|
||||||
|
* Assembly MIPS: [mips](https://github.com/vim-scripts/mips.vim)
|
||||||
|
* Assembly GAS: [vim-gas](https://github.com/Shirk/vim-gas)
|
||||||
|
* Octave/MATLAB: [vim-octave](https://github.com/jvirtanen/vim-octave)
|
||||||
|
* Python: [python-syntax](https://github.com/hdima/python-syntax/)
|
||||||
|
* Dockerfile: [dockerfile.vim](https://github.com/docker/docker/tree/master/contrib/syntax/vim)
|
||||||
|
* NGINX: [nginx-vim-syntax](https://github.com/evanmiller/nginx-vim-syntax)
|
||||||
|
* Elixir: [vim-elixir](https://github.com/elixir-lang/vim-elixir)
|
||||||
|
* Elm: [elm-vim](https://github.com/ElmCast/elm-vim)
|
||||||
|
* Purescript: [purescript-vim](https://github.com/purescript-contrib/purescript-vim)
|
||||||
|
* F#: [vim-fsharp](https://github.com/fsharp/vim-fsharp)
|
||||||
|
* PowerShell: [vim-ps1](https://github.com/PProvost/vim-ps1)
|
||||||
|
* CMake: [vim-cmake-syntax](https://github.com/pboettch/vim-cmake-syntax)
|
||||||
|
* ALGOL: [vim-algol68](https://github.com/sterpe/vim-algol68)
|
||||||
|
|
||||||
|
## Screenshots
|
||||||
|
|
||||||
|
**Default Light**
|
||||||
|
|
||||||
|
![Sample Ruby code](https://nlknguyen.files.wordpress.com/2015/05/ruby1.png)
|
||||||
|
|
||||||
|
![Sample DTrace code](https://nlknguyen.files.wordpress.com/2015/05/dtrace1.png)
|
||||||
|
|
||||||
|
![Sample MySQL code](https://nlknguyen.files.wordpress.com/2015/05/mysql.png)
|
||||||
|
|
||||||
|
![Sample Assembly code](https://nlknguyen.files.wordpress.com/2015/05/asm.png)
|
||||||
|
|
||||||
|
![Sample Vimdiff w/ git tool](https://cloud.githubusercontent.com/assets/4667129/24315492/9410c372-10a4-11e7-84c7-8846984bdca0.png)
|
||||||
|
|
||||||
|
**Default Dark**
|
||||||
|
|
||||||
|
![Sample Ruby code](https://nlknguyen.files.wordpress.com/2015/05/ruby-dark.png)
|
||||||
|
|
||||||
|
![Sample Go code](https://nlknguyen.files.wordpress.com/2015/05/go-dark.png)
|
||||||
|
|
||||||
|
![Sample JavaScript code](https://nlknguyen.files.wordpress.com/2015/05/javascript-dark2.png)
|
||||||
|
|
||||||
|
![Sample C code](https://nlknguyen.files.wordpress.com/2015/05/c-dark-split.png)
|
||||||
|
|
||||||
|
![Sample Vimdiff w/ git tool](https://cloud.githubusercontent.com/assets/4667129/24315493/94122816-10a4-11e7-8d3f-f5d92a064a14.png)
|
||||||
|
|
||||||
|
|
||||||
|
**Have screenshots to contribute?** Use [this thread](https://github.com/NLKNguyen/papercolor-theme/issues/90) to upload images and get direct links.
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
![Vim-airline support](https://nlknguyen.files.wordpress.com/2015/05/gifrecord_2015-05-31_010251.gif)
|
||||||
|
|
||||||
|
To set [vim-airline](https://github.com/bling/vim-airline) theme:
|
||||||
|
|
||||||
|
let g:airline_theme='papercolor'
|
||||||
|
|
||||||
|
To set [lightline](https://github.com/itchyny/lightline.vim) theme:
|
||||||
|
|
||||||
|
let g:lightline = { 'colorscheme': 'PaperColor' }
|
||||||
|
|
||||||
|
For more sceenshots, story behind the project, and other users' designs inspired by Paper Color, go to [this blog post](http://nlknguyen.com/2015/05/21/vim-paper-color-theme/)
|
||||||
|
|
||||||
|
Suggestions/Wishes/Questions/Comments are welcome via [Github issues](https://github.com/NLKNguyen/papercolor-theme/issues) or via the blog above.
|
||||||
|
|
||||||
|
# Related Projects Based On PaperColor
|
||||||
|
[Material iTerm](https://github.com/stoeffel/material-iterm) theme by Christoph Hermann
|
||||||
|
|
||||||
|
[Material Terminator](https://github.com/marhs/material-terminator) (terminal emulator) theme by Marco Herrero
|
||||||
|
|
||||||
|
[Terminal Theme](https://www.reddit.com/r/vim/comments/36xzbs/vim_paper_color_theme_inspired_by_googles/crqbfpa) by Fixles
|
||||||
|
|
||||||
|
[PaperColor Light for iTerm2](https://github.com/aseom/dotfiles/blob/master/osx/iterm2/papercolor-light.itermcolors) by ASeom Han
|
||||||
|
|
||||||
|
[PaperColor for Terminal.app](https://github.com/tomotargz/papercolor-terminal-app) by tomotargz
|
||||||
|
|
||||||
|
[PaperColor Light for konsole](https://raw.githubusercontent.com/z2oh/dotfiles/82bf6835948674f0ed1f98a14b82975ff2dd8f3e/konsole/paperrlight.colorscheme) by [z2oh](https://github.com/z2oh)
|
||||||
|
|
||||||
|
[PaperColor Theme for Vis Editor](https://github.com/jceb/dotfiles/blob/master/config/vis/lexers/themes/papercolor.lua) by Jan Christoph Ebersbach
|
||||||
|
|
||||||
|
[Airline PaperColor Theme for Emacs Powerline](https://github.com/AnthonyDiGirolamo/airline-themes) by Anthony DiGirolamo
|
||||||
|
|
||||||
|
[Airline PaperColor Theme for Vim Lightline](https://github.com/itchyny/lightline.vim)
|
||||||
|
|
||||||
|
[Ninrod's `vim + tmux + zsh` dotfiles](https://github.com/ninrod/dotfiles.git) by [Filipe Silva](https://github.com/ninrod)
|
||||||
|
|
||||||
|
[PaperColor for Vscode](https://github.com/Rozbo/papercolor-vscode) by [rozbo](https://github.com/rozbo)
|
||||||
|
|
||||||
|
[PaperColor theme for Hyper](https://github.com/rafaelrinaldi/hyper-papercolor) by [Rafael Rinaldi](https://github.com/rafaelrinaldi)
|
||||||
|
|
||||||
|
[PaperColor Theme for kitty](https://github.com/craffate/papercolor-kitty) by [Cyril Raffatelli](https://github.com/craffate)
|
||||||
|
|
||||||
|
[PaperColor Light theme for cmus](https://github.com/eremit/papercolor-light-cmus) by [eremit](https://github.com/eremit)
|
||||||
|
|
||||||
|
Feel free to add related projects here!
|
18
pack/acp/start/papercolor-theme/ROADMAP.md
Normal file
18
pack/acp/start/papercolor-theme/ROADMAP.md
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
# 1.0 Release Candidate
|
||||||
|
For more than 1 year and a half, PaperColor has been improved a lot, but there is no release tag. The reason is because there has always been small incremental changes and supports for more languages and plugins. Now it's time for something different. Version 1.0 is going to be the biggest improvement of PaperColor to add support for low-quality terminals and to enable alternative color palettes on top of PaperColor's rich support for many file types and plugins.
|
||||||
|
|
||||||
|
[Join the discussion](https://github.com/NLKNguyen/papercolor-theme/issues/71)
|
||||||
|
|
||||||
|
Task List:
|
||||||
|
- [x] Support 16-color terminal (e.g. Windows Command Prompt). Currently, PaperColor requires 256-color.
|
||||||
|
- [x] Provide terminal themes for PaperColor Light & Dark, target firstly Windows Command Prompt and Mac Terminal. The other repo https://github.com/NLKNguyen/papercolor-16 will be dedicated for terminal themes.
|
||||||
|
- [ ] Provide terminal theme design guideline so that others can port to different terminals AND make alternative color palettes for PaperColor. ~~For now, this is the only reference http://codepen.io/NLKNguyen/full/NrRpej/~~
|
||||||
|
- [ ] Enable alternative color palettes for PaperColor in True-color / 256-color.
|
||||||
|
|
||||||
|
|
||||||
|
Related issues (motivations):
|
||||||
|
* https://github.com/NLKNguyen/papercolor-theme/issues/64
|
||||||
|
* https://github.com/NLKNguyen/papercolor-theme/issues/65
|
||||||
|
* https://github.com/NLKNguyen/papercolor-theme/pull/68
|
||||||
|
* https://github.com/NLKNguyen/papercolor-theme/issues/69
|
||||||
|
* https://github.com/NLKNguyen/papercolor-theme/issues/70
|
2238
pack/acp/start/papercolor-theme/colors/PaperColor.vim
Executable file
2238
pack/acp/start/papercolor-theme/colors/PaperColor.vim
Executable file
File diff suppressed because it is too large
Load diff
228
pack/acp/start/papercolor-theme/doc/PaperColor.txt
Normal file
228
pack/acp/start/papercolor-theme/doc/PaperColor.txt
Normal file
|
@ -0,0 +1,228 @@
|
||||||
|
*PaperColor.txt* An elegant, flexible, and beautiful Vim colorscheme.
|
||||||
|
|
||||||
|
Author: Nikyle Nguyen
|
||||||
|
|
||||||
|
Table of Contents *PaperColor-Theme*
|
||||||
|
|
||||||
|
1. Introduction .......................... |PaperColor-Theme-intro|
|
||||||
|
2. Setup ................................. |PaperColor-Theme-setup|
|
||||||
|
3. Configuration ......................... |PaperColor-Theme-configuration|
|
||||||
|
4. Credits ............................... |PaperColor-Theme-credits|
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
1. INTRODUCTION *PaperColor-Theme-intro*
|
||||||
|
|
||||||
|
The |PaperColor-Theme| plugin provides an elegant, flexible, and beautiful Vim
|
||||||
|
colorscheme. It provides the following distinguishing features:
|
||||||
|
|
||||||
|
1. Comprehensive programming language and plugin support
|
||||||
|
2. Light AND Dark theme
|
||||||
|
3. Flexible color ranges
|
||||||
|
4. Complete configurability
|
||||||
|
5. Performance
|
||||||
|
|
||||||
|
Comprehensive language and plugin support~
|
||||||
|
|
||||||
|
PaperColor is designed to support any language with Vim syntax definitions.
|
||||||
|
At the time of writing, these languages include:
|
||||||
|
|
||||||
|
ALGOL, ASN.1, Ada, Assembly (MIPS, GAS, NASM), Awk, Bash/Shell script, C++, C,
|
||||||
|
CMake, COBOL, Clojure, Cucumber, DTrace, Dockerfile, Dosini, Elixir, Elm,
|
||||||
|
Erlang, F#, Fortran, Git commit message, Golang, HTML, Haskell, JSON, Java,
|
||||||
|
JavaScript, Jsx, LUA, Lex/Flex & Yacc/Bison, Mail, Makefile, Markdown, NGINX,
|
||||||
|
Octave/MATLAB, PHP, Pascal, Perl, PlantUML, Powershell script, Purescript,
|
||||||
|
Python, R, Ruby, Rust, SQL/MySQL, Sed, SystemTap, Vim script, XML, YAML,
|
||||||
|
reStructuredText, (insert another dinosaur...), (insert another egg...)
|
||||||
|
|
||||||
|
As most active Vim users have discovered, the best language syntax support
|
||||||
|
comes from community-driven plugins. Please refer to the PaperColor Git
|
||||||
|
repository's README for references to syntax plugins that are directly
|
||||||
|
supported by PaperColor.
|
||||||
|
|
||||||
|
Light AND dark theme~
|
||||||
|
|
||||||
|
Some colorschemes are light, some are dark. PaperColor is both.
|
||||||
|
|
||||||
|
Flexible color ranges~
|
||||||
|
|
||||||
|
A given terminals or GUI programs may support a different number of colors.
|
||||||
|
PaperColor aims to support most, if not all, of these options. PaperColor
|
||||||
|
currently supports True color / GUI-color, and identical 256-color that the
|
||||||
|
design is based on. It also gracefully supports everything down to a 16-color
|
||||||
|
terminal, which uses terminal native colors (think the Linux tty).
|
||||||
|
|
||||||
|
Note that in 8-color and 4-color, PaperColor may lack the necessary variation
|
||||||
|
of colors to function properly.
|
||||||
|
|
||||||
|
Complete configurability~
|
||||||
|
|
||||||
|
If you don't like our choices, you are free to change them with flexible
|
||||||
|
configuration options explained in |PaperColor-Theme-configuration|.
|
||||||
|
|
||||||
|
Performance~
|
||||||
|
|
||||||
|
Performance is important. This plugin does a lot, but optimizations have been
|
||||||
|
prioritized where possible to prevent it from slowing you down.
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
2. Setup *PaperColor-Theme-setup*
|
||||||
|
|
||||||
|
Assuming you've already installed this plugin, to get it to work properly,
|
||||||
|
you'll need to configure your Vim syntax. To start, you should tell PaperColor
|
||||||
|
what your terminal supports.
|
||||||
|
|
||||||
|
If your terminal only supports 16 colors: >
|
||||||
|
|
||||||
|
set t_Co=16
|
||||||
|
|
||||||
|
If your terminal supports up to 256 colors: >
|
||||||
|
|
||||||
|
set t_Co=256
|
||||||
|
|
||||||
|
If your terminal supports True Color: >
|
||||||
|
|
||||||
|
set termguicolors
|
||||||
|
|
||||||
|
If you'd like to use the "dark" version of PaperColor: >
|
||||||
|
|
||||||
|
set background=dark
|
||||||
|
|
||||||
|
If you'd like to use the "light" version of PaperColor: >
|
||||||
|
|
||||||
|
set background=light
|
||||||
|
|
||||||
|
Finally, after you've selected your appropriate configuration options above: >
|
||||||
|
|
||||||
|
colorscheme PaperColor
|
||||||
|
|
||||||
|
Here is a full example with a dark background and True Color support: >
|
||||||
|
|
||||||
|
set termguicolors
|
||||||
|
set background=dark
|
||||||
|
colorscheme PaperColor
|
||||||
|
|
||||||
|
When PaperColor is enabled, to switch to dark or light variant during an
|
||||||
|
editing session: >
|
||||||
|
|
||||||
|
:set background=dark OR :set background=light
|
||||||
|
|
||||||
|
Some plugins have PaperColor support.
|
||||||
|
|
||||||
|
To set vim-airline theme: >
|
||||||
|
|
||||||
|
let g:airline_theme='papercolor'
|
||||||
|
|
||||||
|
To set lightline theme: >
|
||||||
|
|
||||||
|
let g:lightline = { 'colorscheme': 'PaperColor' }
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
3. CONFIGURATION *PaperColor-Theme-configuration*
|
||||||
|
|
||||||
|
This theme currently provides theme options and language-specific options. All
|
||||||
|
config options can be stored in global variable g:PaperColor_Theme_Options
|
||||||
|
which can be set in your .vimrc.
|
||||||
|
|
||||||
|
g:PaperColor_Theme_Options must be placed before "colorscheme PaperColor" in
|
||||||
|
your vimrc.
|
||||||
|
|
||||||
|
If the same option is provided in both a theme and a theme's variant, the
|
||||||
|
value in the theme's variant options will take precedence.
|
||||||
|
|
||||||
|
*g:PaperColor_Theme_Options*
|
||||||
|
g:PaperColor_Theme_Options~
|
||||||
|
|
||||||
|
Type: Dictionary[String, Dictionary]
|
||||||
|
Default: {}
|
||||||
|
|
||||||
|
*Theme options*
|
||||||
|
|
||||||
|
Within section theme, options for each theme can be specified under the theme
|
||||||
|
name. The original PaperColor theme is default. For example: >
|
||||||
|
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'theme': {
|
||||||
|
\ 'default': {
|
||||||
|
\ 'transparent_background': 1
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
|
||||||
|
Or if you want to specify options only for a variant (dark or light) of a
|
||||||
|
theme, you can specify using this pattern [theme name].light or [theme
|
||||||
|
name].dark. For example: >
|
||||||
|
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'theme': {
|
||||||
|
\ 'default.dark': {
|
||||||
|
\ 'override' : {
|
||||||
|
\ 'color00' : ['#080808', '232'],
|
||||||
|
\ 'linenumber_bg' : ['#080808', '232']
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
|
||||||
|
Accepted values~
|
||||||
|
|
||||||
|
transparent_background >
|
||||||
|
|
||||||
|
values -- 1: use terminal background, 0: use theme background
|
||||||
|
default -- 0
|
||||||
|
|
||||||
|
allow_bold >
|
||||||
|
|
||||||
|
values -- 1: use bold for certain text, 0: not at all
|
||||||
|
default -- decided by the theme
|
||||||
|
|
||||||
|
allow_italic >
|
||||||
|
|
||||||
|
values -- 1: use italics for certain text, 0: not at all
|
||||||
|
default -- decided by the theme
|
||||||
|
|
||||||
|
override >
|
||||||
|
|
||||||
|
values -- dictionary of color key-value
|
||||||
|
default -- {}
|
||||||
|
|
||||||
|
*Language-specific options*
|
||||||
|
|
||||||
|
In general, for each language, built-in functions and constants are not
|
||||||
|
highlighted. This is intentional; the vim syntax file often lags behind actual
|
||||||
|
language development. To override the default behavior, optionally place a
|
||||||
|
language section in g:PaperColor_Theme_Options. An example configuration is
|
||||||
|
available below: >
|
||||||
|
|
||||||
|
let g:PaperColor_Theme_Options = {
|
||||||
|
\ 'language': {
|
||||||
|
\ 'python': {
|
||||||
|
\ 'highlight_builtins' : 1
|
||||||
|
\ },
|
||||||
|
\ 'cpp': {
|
||||||
|
\ 'highlight_standard_library': 1
|
||||||
|
\ },
|
||||||
|
\ 'c': {
|
||||||
|
\ 'highlight_builtins' : 1
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
\ }
|
||||||
|
|
||||||
|
Accepted values~
|
||||||
|
|
||||||
|
language option values default
|
||||||
|
c highlight_builtins 1: enable, 0: disable 0
|
||||||
|
cpp highlight_standard_library 1: enable, 0: disable 0
|
||||||
|
python highlight_builtins 1: enable, 0: disable 0
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
4. CREDITS *PaperColor-Theme-credits*
|
||||||
|
|
||||||
|
Special thanks to Samuel Roeca for writing this documentation.
|
||||||
|
|
||||||
|
Development for PaperColor-Theme takes place at
|
||||||
|
https://github.com/NLKNguyen/papercolor-theme. Please refer to that
|
||||||
|
repository's README for the latest news, projects, and features. If you have a
|
||||||
|
plugin, language, or other feature that you would like implemented, please
|
||||||
|
submit a pull request or raise an issue.
|
||||||
|
|
||||||
|
vim:tw=78:ts=8:ft=help:norl:
|
19
pack/acp/start/papercolor-theme/test/Dockerfile
Normal file
19
pack/acp/start/papercolor-theme/test/Dockerfile
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
FROM nlknguyen/alpine-shellcheck
|
||||||
|
|
||||||
|
MAINTAINER Nikyle Nguyen <NLKNguyen@MSN.com>
|
||||||
|
|
||||||
|
RUN apk add --no-cache vim
|
||||||
|
|
||||||
|
RUN mkdir -p /opt/
|
||||||
|
|
||||||
|
COPY test.sh /opt/
|
||||||
|
|
||||||
|
# Check test script
|
||||||
|
RUN shellcheck /opt/test.sh
|
||||||
|
|
||||||
|
RUN chmod +x /opt/test.sh
|
||||||
|
|
||||||
|
# Start working at the mounted directory
|
||||||
|
WORKDIR /mnt
|
||||||
|
|
||||||
|
ENTRYPOINT ["/opt/test.sh"]
|
59
pack/acp/start/papercolor-theme/test/test.sh
Normal file
59
pack/acp/start/papercolor-theme/test/test.sh
Normal file
|
@ -0,0 +1,59 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
framework_file=$1
|
||||||
|
|
||||||
|
# cat ${framework_file}
|
||||||
|
|
||||||
|
# Custom temporary runtime path for vim
|
||||||
|
custom_rtp=$(mktemp -d)
|
||||||
|
|
||||||
|
# Add color scheme to runtime part
|
||||||
|
mkdir -p "${custom_rtp}/colors"
|
||||||
|
cp "${framework_file}" "${custom_rtp}/colors"
|
||||||
|
|
||||||
|
# Minimum vimrc file
|
||||||
|
cat > "${custom_rtp}/.vimrc" <<- EOF
|
||||||
|
|
||||||
|
set rtp+=${custom_rtp}
|
||||||
|
syntax on
|
||||||
|
color PaperColor
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# Go to temporary directory
|
||||||
|
cd "$(mktemp -d)" || exit 1
|
||||||
|
|
||||||
|
###############################
|
||||||
|
printf "Check startup status... "
|
||||||
|
echo | vim -Nu "$custom_rtp/.vimrc" +qa 1>/dev/null 2>err.txt
|
||||||
|
if grep -q Error err.txt
|
||||||
|
then
|
||||||
|
echo "$framework_file caused starup error"
|
||||||
|
sed 's/^.*Error/Error/' err.txt
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
rm err.txt
|
||||||
|
echo "ok"
|
||||||
|
|
||||||
|
###############################
|
||||||
|
# TODO: later after rearchitect test mechanism
|
||||||
|
# printf "Run unit test... "
|
||||||
|
# vim -Nu "${custom_rtp}/.vimrc" -c 'call g:PaperColor_Test()' +qa 1>log.txt 2>err.txt
|
||||||
|
# if grep -q Error log.txt
|
||||||
|
# then
|
||||||
|
# echo "error"
|
||||||
|
# sed 's/^.*Error/Error/' log.txt
|
||||||
|
# exit 1
|
||||||
|
# fi
|
||||||
|
|
||||||
|
# if grep -q "FAILED" log.txt
|
||||||
|
# then
|
||||||
|
# echo "$framework_file failed unit test"
|
||||||
|
# exit 1
|
||||||
|
# fi
|
||||||
|
# rm log.txt
|
||||||
|
|
||||||
|
# echo "ok"
|
||||||
|
|
||||||
|
exit 0
|
3
vimrc
3
vimrc
|
@ -84,7 +84,6 @@ if has("eval")
|
||||||
" Protect commands that are only available when +eval is enabled.
|
" Protect commands that are only available when +eval is enabled.
|
||||||
" Technically only "if 1" would be required, as "has()" is provided
|
" Technically only "if 1" would be required, as "has()" is provided
|
||||||
" by +eval, but this is clearer.
|
" by +eval, but this is clearer.
|
||||||
colorscheme gruvbox
|
|
||||||
command Q q
|
command Q q
|
||||||
command W w
|
command W w
|
||||||
command WQ wq
|
command WQ wq
|
||||||
|
@ -108,6 +107,7 @@ if has("eval")
|
||||||
else
|
else
|
||||||
set t_Co=16
|
set t_Co=16
|
||||||
endif
|
endif
|
||||||
|
colorscheme PaperColor
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" ======================================================================
|
" ======================================================================
|
||||||
|
@ -137,6 +137,7 @@ if has("gui_running")
|
||||||
set guifont=Source_Code_Pro:h9:cANSI:qDRAFT,
|
set guifont=Source_Code_Pro:h9:cANSI:qDRAFT,
|
||||||
\Consolas:h10:cANSI
|
\Consolas:h10:cANSI
|
||||||
endif
|
endif
|
||||||
|
set background=light
|
||||||
set columns=88
|
set columns=88
|
||||||
set guioptions+=cm
|
set guioptions+=cm
|
||||||
set guioptions-=T
|
set guioptions-=T
|
||||||
|
|
Loading…
Reference in a new issue