├── colors ├── grim.vim ├── default-light.vim └── dim.vim └── README.md /colors/grim.vim: -------------------------------------------------------------------------------- 1 | exec "source " . expand(':p:h') . "/dim.vim" 2 | 3 | let colors_name = "grim" 4 | 5 | if &background == "light" 6 | highlight Constant ctermfg=8 7 | highlight Identifier ctermfg=0 8 | highlight PreProc ctermfg=0 cterm=bold 9 | highlight Special ctermfg=0 10 | highlight Statement ctermfg=0 cterm=bold 11 | highlight Title ctermfg=0 cterm=bold 12 | highlight Type ctermfg=0 13 | highlight Underlined cterm=underline ctermfg=0 14 | else 15 | highlight Constant ctermfg=7 16 | highlight Identifier ctermfg=15 17 | highlight PreProc ctermfg=15 cterm=bold 18 | highlight Special ctermfg=15 19 | highlight Statement ctermfg=15 cterm=bold 20 | highlight Title ctermfg=15 cterm=bold 21 | highlight Type ctermfg=15 22 | highlight Underlined cterm=underline ctermfg=15 23 | end 24 | -------------------------------------------------------------------------------- /colors/default-light.vim: -------------------------------------------------------------------------------- 1 | highlight SpecialKey ctermfg=4 2 | highlight TermCursor cterm=reverse 3 | highlight NonText ctermfg=12 4 | highlight Directory ctermfg=4 5 | highlight ErrorMsg ctermfg=15 ctermbg=1 6 | highlight IncSearch cterm=reverse 7 | highlight MoreMsg ctermfg=2 8 | highlight ModeMsg cterm=bold 9 | highlight Question ctermfg=2 10 | highlight Title ctermfg=5 11 | highlight WarningMsg ctermfg=1 12 | highlight WildMenu ctermfg=0 ctermbg=11 13 | highlight Conceal ctermfg=7 ctermbg=7 14 | highlight SpellBad ctermbg=9 15 | highlight SpellRare ctermbg=13 16 | highlight SpellLocal ctermbg=14 17 | highlight PmenuSbar ctermbg=8 18 | highlight PmenuThumb ctermbg=0 19 | highlight TabLine cterm=underline ctermfg=0 ctermbg=7 20 | highlight TabLineSel cterm=bold 21 | highlight TabLineFill cterm=reverse 22 | highlight CursorColumn ctermbg=7 23 | highlight CursorLine cterm=underline 24 | highlight MatchParen ctermbg=14 25 | highlight Constant ctermfg=1 26 | highlight Special ctermfg=5 27 | highlight Identifier cterm=NONE ctermfg=6 28 | highlight Statement ctermfg=3 29 | highlight PreProc ctermfg=5 30 | highlight Type ctermfg=2 31 | highlight Underlined cterm=underline ctermfg=5 32 | highlight Ignore ctermfg=15 33 | highlight Error ctermfg=15 ctermbg=9 34 | highlight Todo ctermfg=0 ctermbg=11 35 | -------------------------------------------------------------------------------- /colors/dim.vim: -------------------------------------------------------------------------------- 1 | highlight clear 2 | 3 | if exists("syntax_on") 4 | syntax reset 5 | endif 6 | 7 | set notermguicolors 8 | 9 | exec "source " . expand(':p:h') . "/default-light.vim" 10 | 11 | let colors_name = "dim" 12 | 13 | " In diffs, added lines are green, changed lines are yellow, deleted lines are 14 | " red, and changed text (within a changed line) is bright yellow and bold. 15 | highlight DiffAdd ctermfg=0 ctermbg=2 16 | highlight DiffChange ctermfg=0 ctermbg=3 17 | highlight DiffDelete ctermfg=0 ctermbg=1 18 | highlight DiffText ctermfg=0 ctermbg=11 cterm=bold 19 | 20 | " Invert selected lines in visual mode 21 | highlight Visual ctermfg=NONE ctermbg=NONE cterm=inverse 22 | 23 | " Highlight search matches in black, with a yellow background 24 | highlight Search ctermfg=0 ctermbg=11 25 | 26 | " Dim line numbers, comments, color columns, the status line, splits and sign 27 | " columns. 28 | if &background == "light" 29 | highlight LineNr ctermfg=7 30 | highlight CursorLineNr ctermfg=8 31 | highlight Comment ctermfg=7 32 | highlight ColorColumn ctermfg=8 ctermbg=7 33 | highlight Folded ctermfg=8 ctermbg=7 34 | highlight FoldColumn ctermfg=8 ctermbg=7 35 | highlight Pmenu ctermfg=0 ctermbg=7 36 | highlight PmenuSel ctermfg=7 ctermbg=0 37 | highlight SpellCap ctermfg=8 ctermbg=7 38 | highlight StatusLine ctermfg=0 ctermbg=7 cterm=bold 39 | highlight StatusLineNC ctermfg=8 ctermbg=7 cterm=NONE 40 | highlight VertSplit ctermfg=8 ctermbg=7 cterm=NONE 41 | highlight SignColumn ctermbg=7 42 | highlight TabLineFill ctermfg=7 43 | highlight TabLine ctermfg=8 ctermbg=7 44 | else 45 | highlight LineNr ctermfg=8 46 | highlight CursorLineNr ctermfg=7 47 | highlight Comment ctermfg=8 48 | highlight ColorColumn ctermfg=7 ctermbg=8 49 | highlight Folded ctermfg=7 ctermbg=8 50 | highlight FoldColumn ctermfg=7 ctermbg=8 51 | highlight Pmenu ctermfg=15 ctermbg=8 52 | highlight PmenuSel ctermfg=8 ctermbg=15 53 | highlight SpellCap ctermfg=7 ctermbg=8 54 | highlight StatusLine ctermfg=15 ctermbg=8 cterm=bold 55 | highlight StatusLineNC ctermfg=7 ctermbg=8 cterm=NONE 56 | highlight VertSplit ctermfg=7 ctermbg=8 cterm=NONE 57 | highlight SignColumn ctermbg=8 58 | highlight TabLineFill ctermfg=8 59 | highlight TabLine ctermfg=7 ctermbg=8 60 | endif 61 | 62 | highlight link DimFzfFg Normal 63 | highlight link DimFzfBg Normal 64 | highlight link DimFzfFgPlus PmenuSel 65 | highlight link DimFzfBgPlus PmenuSel 66 | highlight link DimFzfInfo Comment 67 | 68 | highlight DimFzfHl ctermfg=2 69 | highlight DimFzfPrompt ctermfg=12 70 | highlight DimFzfPointer ctermfg=1 71 | highlight DimFzfMarker ctermfg=9 72 | 73 | let g:fzf_colors = { 'fg': ['fg', 'DimFzfFg'], 74 | \ 'bg': ['bg', 'DimFzfBg'], 75 | \ 'hl': ['fg', 'DimFzfHl'], 76 | \ 'fg+': ['fg', 'DimFzfFgPlus'], 77 | \ 'bg+': ['bg', 'DimFzfbgPlus'], 78 | \ 'hl+': ['fg', 'DimFzfHl'], 79 | \ 'info': ['fg', 'DimFzfInfo'], 80 | \ 'prompt': ['fg', 'DimFzfPrompt'], 81 | \ 'pointer': ['fg', 'DimFzfPointer'], 82 | \ 'marker': ['fg', 'DimFzfMarker']} 83 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Dim 2 | 3 | **Dim** (/dɪm/; a contraction of **Default IMproved**) is a clone of Vim’s default colorscheme, with some improvements: 4 | 5 | * It only uses [ANSI colors], so you can assign colors in your terminal emulator yourself 6 | * Syntax highlighting is consistent on light and dark backgrounds 7 | 8 | Dim comes with Grim: a monochrome version that limits syntax coloring to grayscales. 9 | 10 | [ANSI colors]: https://en.wikipedia.org/wiki/ANSI_escape_code#Colors 11 | 12 | ## Installation 13 | 14 | git clone --branch 1.x git@github.com:jeffkreeftmeijer/vim-dim.git ~/.vim/pack/plugins/start/vim-dim 15 | 16 | After installing, set your `:colorscheme` to `dim` or `grim`. 17 | 18 | " ~/.vimrc 19 | colorscheme dim 20 | 21 | ### Pessimistic versioning branches 22 | 23 | Dim adheres to [semantic versioning](https://semver.org/spec/v2.0.0.html), 24 | meaning it'll try to keep backwards compatibility in minor and patch releases. 25 | In short: 26 | 27 | - A breaking change will bump the _major_ version number (1.0.0 -> 2.0.0) 28 | - An added feature will bump the _minor_ version number (1.0.0 -> 1.1.0) 29 | - A bug fix will bump the _patch_ version number (1.0.0 -> 1.0.1) 30 | 31 | Since Vim's plugin manager doesn't allow specifying version ranges, Dim 32 | provides "pessimistic versioning branches" itself to allow users to lock to a 33 | specific version range: 34 | 35 | - The branch named `1.x` is updated for every released version in the 1.x range 36 | (`~> 1.0` or `>= 1.0.0 and < 2.0.0`) 37 | - The branch named `1.1` is updated for every released version in the 1.1.x 38 | range (`~> 1.1.0` or `>= 1.1.0 and < 1.2.0`) 39 | 40 | To install the latest version in the 1.x range, clone Dim's `1.x` branch: 41 | 42 | git clone --branch 1.x git@github.com:jeffkreeftmeijer/vim-dim.git ~/.vim/pack/plugins/start/vim-dim 43 | 44 | When updating through `git pull` later, Dim will be updated to any new version, 45 | but not to 2.x. 46 | 47 | ## Comparison 48 | 49 | | | `colorscheme default` | `colorscheme dim` | 50 | |---------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------|-------------------------------------------------------| 51 | | [wwdc16.terminal] | ![wwdc16 dark with Vim's default color scheme]![wwdc16 light with Vim's default color scheme] | ![wwdc16 dark with Dim]![wwdc16 light with Dim] | 52 | | [appsignal.terminal] | ![appsignal dark with Vim's default color scheme]![appsignal light with Vim's default color scheme]| ![appsignal dark with Dim]![appsignal light with Dim] | 53 | | Dimmed comments, line numbers, folds, color columns and completion menus. | ![Comments and line numbers in Vim's default color scheme] | ![Comments and line numbers in the Dim color scheme] | 54 | | Inverted selections | ![Selections in Vim's default color scheme] | ![Selections in the Dim color scheme] | 55 | | Clear diff coloring | ![Diff coloring in Vim's default color scheme] | ![Diff coloring in the Dim color scheme] | 56 | 57 | [wwdc16.terminal]: https://github.com/jeffkreeftmeijer/wwdc16.terminal 58 | [wwdc16 dark with Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/wwdc16-dark-default.png 59 | [wwdc16 dark with Dim]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/wwdc16-dark-default2.png 60 | [wwdc16 light with Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/wwdc16-light-default.png 61 | [wwdc16 light with Dim]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/wwdc16-light-default2.png 62 | 63 | [appsignal.terminal]: https://github.com/jeffkreeftmeijer/appsignal.terminal 64 | [appsignal dark with Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/appsignal-dark-default.png 65 | [appsignal dark with Dim]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/appsignal-dark-default2.png 66 | [appsignal light with Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/appsignal-light-default.png 67 | [appsignal light with Dim]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/appsignal-light-default2.png 68 | 69 | [Comments and line numbers in Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/numbers-default.png 70 | [Comments and line numbers in the Dim color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/numbers-default2.png 71 | [Diff coloring in Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/diff-default.png 72 | [Diff coloring in the Dim color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/diff-default2.png 73 | [Selections in Vim's default color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/selection-default.png 74 | [Selections in the Dim color scheme]: https://gist.githubusercontent.com/jeffkreeftmeijer/0cf01dadd59096853708cd8033b3469c/raw/selection-default2.png 75 | --------------------------------------------------------------------------------