From 33473558441c9e9f1f8481eefacab59b5832afd3 Mon Sep 17 00:00:00 2001 From: Simon Ruderich Date: Sun, 12 Aug 2012 20:19:23 +0200 Subject: [PATCH] vim/colors/simon.vim: Add support for GVim. --- vim/colors/simon.vim | 104 ++++++++++++++++++++++--------------------- vimrc | 2 +- 2 files changed, 54 insertions(+), 52 deletions(-) diff --git a/vim/colors/simon.vim b/vim/colors/simon.vim index 29b95a1..4f4955f 100644 --- a/vim/colors/simon.vim +++ b/vim/colors/simon.vim @@ -1,9 +1,10 @@ " Vim color scheme. " " Designed for dark and partially transparent terminals with 256 colors. It -" doesn't work (yet) with GVim. +" works with GVim - however by default GVim doesn't support transparent +" backgrounds, thus black is used as background color. " -" Tested with xterm and (u)rxvt (both with -256color). +" Tested with xterm and (u)rxvt (both with -256color) and GVim. " " Not all available highlight groups are used at the moment. " @@ -30,8 +31,8 @@ " along with this file. If not, see . -" This color scheme only works with 256 colors. -if &t_Co != 256 +" This color scheme only works with 256 colors and in GVim. +if &t_Co != 256 && !has('gui_running') echoerr 'Colorscheme "simon" needs 256 colors. Aborting.' finish endif @@ -48,112 +49,113 @@ let g:colors_name = 'simon' " GENERAL HIGHLIGHT SETTINGS " Normal text (very light gray on default terminal background). ctermbg=NONE -" necessary for transparency. -highlight Normal ctermfg=252 ctermbg=NONE +" necessary for transparency. GVim doesn't support a transparent background, +" thus use black. +highlight Normal ctermfg=252 ctermbg=NONE guifg=#d0d0d0 guibg=#000000 " Comments (violet on default). -highlight Comment ctermfg=135 +highlight Comment ctermfg=135 guifg=#af5fff " Constants (light dark red on default). -highlight Constant ctermfg=160 +highlight Constant ctermfg=160 guifg=#d70000 " Strings, e.g. ".." (dark orange on default). - highlight String ctermfg=208 + highlight String ctermfg=208 guifg=#ff8700 " Characters, e.g. '.' in C (lighter dark orange on default). - highlight Character ctermfg=215 + highlight Character ctermfg=215 guifg=#ffaf5f " Numbers (light magenta on default). - highlight Number ctermfg=207 - highlight Float ctermfg=207 + highlight Number ctermfg=207 guifg=#ff5fff + highlight Float ctermfg=207 guifg=#ff5fff " Identifier (cyan on default). cterm=NONE to prevent bold. -highlight Identifier ctermfg=51 cterm=NONE +highlight Identifier ctermfg=51 cterm=NONE guifg=#00ffff gui=NONE " Function names, often used for predefined functions (cyan on default). - highlight Function ctermfg=51 cterm=NONE + highlight Function ctermfg=51 cterm=NONE guifg=#00ffff gui=NONE " Statements, e.g. return, continue, etc. (yellow on default). -highlight Statement ctermfg=227 cterm=bold +highlight Statement ctermfg=227 cterm=bold guifg=#ffff5f gui=bold " Preprocessor commands, e.g. #include in cpp (light blue on default). -highlight PreProc ctermfg=63 cterm=bold +highlight PreProc ctermfg=63 cterm=bold guifg=#5f5fff gui=bold " Types of variables, e.g. int, long, etc. (light green on default). -highlight Type ctermfg=83 cterm=bold +highlight Type ctermfg=83 cterm=bold guifg=#5fff5f gui=bold " static, volatile, etc. (lighter green on default). - highlight StorageClass ctermfg=120 cterm=bold + highlight StorageClass ctermfg=120 cterm=bold guifg=#87ff87 gui=bold " Special characters (red on default). -highlight Special ctermfg=160 +highlight Special ctermfg=160 guifg=#d70000 " Special characters in a string, e.g. '\n' (red on default). - highlight SpecialChar ctermfg=160 + highlight SpecialChar ctermfg=160 guifg=#d70000 " Delimiter characters, e.g. braces around function arguments in some " languages (dark red on default). - highlight Delimiter ctermfg=52 + highlight Delimiter ctermfg=52 guifg=#5f0000 " Special items inside a comment (light violent on darker violet). - highlight SpecialComment ctermfg=135 ctermbg=93 + highlight SpecialComment ctermfg=135 ctermbg=93 guifg=#af5fff guibg=#8700ff " (Syntax) Errors (white on red). -highlight Error ctermfg=231 ctermbg=196 +highlight Error ctermfg=231 ctermbg=196 guifg=#ffffff guibg=#ff0000 " Todo items and other important stuff (e.g. TODO, XXX, etc.) (black on " yellow). -highlight Todo ctermfg=16 ctermbg=226 +highlight Todo ctermfg=16 ctermbg=226 guifg=#000000 guibg=#ffff00 " Additional highlights used by the "GUI", not directly by syntax " highlighting. " Columns set with 'colorcolumn' (default on bright violet). -highlight ColorColumn ctermbg=57 +highlight ColorColumn ctermbg=57 guibg=#5f00ff " Cursor color (black on light yellow). -highlight Cursor ctermfg=16 ctermbg=227 +highlight Cursor ctermfg=16 ctermbg=227 guifg=#000000 guibg=#ffff5f " Cursor color when IME or XIM is on, :h CursorIM (not used, keep in sync with " Cursor). -highlight CursorIM ctermfg=16 ctermbg=227 +highlight CursorIM ctermfg=16 ctermbg=227 guifg=#000000 guibg=#ffff5f " Current cursor column/line (current color on light gray). cterm=NONE to " prevent underlining. -highlight CursorColumn ctermbg=241 cterm=NONE -highlight CursorLine ctermbg=241 cterm=NONE +highlight CursorColumn ctermbg=241 cterm=NONE guibg=#626262 gui=NONE +highlight CursorLine ctermbg=241 cterm=NONE guibg=#626262 gui=NONE " Directories in file listings (blue on default). -highlight Directory ctermfg=27 cterm=bold +highlight Directory ctermfg=27 cterm=bold guifg=#005fff gui=bold " Error messages (white on red). -highlight ErrorMsg ctermfg=231 ctermbg=196 +highlight ErrorMsg ctermfg=231 ctermbg=196 guifg=#ffffff guibg=#ff0000 " Fold column, left of number column (lighter yellow on default), ctermbg=NONE " necessary for transparency. -highlight FoldColumn ctermfg=228 ctermbg=NONE +highlight FoldColumn ctermfg=228 ctermbg=NONE guifg=#ffff87 guibg=NONE " Current search match during incremental search (black on orange). -highlight IncSearch ctermfg=16 ctermbg=214 +highlight IncSearch ctermfg=16 ctermbg=214 guifg=#000000 guibg=#ffaf00 " Line number in line number column (light yellow on default). -highlight LineNr ctermfg=227 +highlight LineNr ctermfg=227 guifg=#ffff5f " Matching brace/bracket when the cursor is currently on the other one " (default on light green). -highlight MatchParen ctermbg=40 +highlight MatchParen ctermbg=40 guibg=#00d700 " 'showmode' message, e.g. "-- INSERT --" (light gray on default). -highlight ModeMsg ctermfg=247 +highlight ModeMsg ctermfg=247 guifg=#9e9e9e " More prompt (:h more-prompt) (light green on default). -highlight MoreMsg ctermfg=119 +highlight MoreMsg ctermfg=119 guifg=#87ff5f " Characters which do not really exist in the text (:h NonText) (gray-like " blue on default). -highlight NonText ctermfg=105 +highlight NonText ctermfg=105 guifg=#8787ff " Last search pattern for 'hlsearch' (keep in sync with IncSearch). -highlight Search ctermfg=16 ctermbg=214 +highlight Search ctermfg=16 ctermbg=214 guifg=#000000 guibg=#ffaf00 " Special characters, e.g. tabs, control characters (e.g. ^K), etc. (light " blue on default). -highlight SpecialKey ctermfg=69 +highlight SpecialKey ctermfg=69 guifg=#5f87ff " Spelling mistake (default on light violet). -highlight SpellBad ctermbg=127 +highlight SpellBad ctermbg=127 guibg=#af00af " Wrong capitalization (default on light blue). -highlight SpellCap ctermbg=27 +highlight SpellCap ctermbg=27 guibg=#005fff " Status line of the currently active window (bold and reverse). -highlight StatusLine cterm=reverse,bold +highlight StatusLine cterm=reverse,bold gui=reverse,bold " Status line of inactive windows (reverse). -highlight StatusLineNC cterm=reverse +highlight StatusLineNC cterm=reverse gui=reverse " Titles in output from :set all, :autocmd, etc. (light blue on default). Also " used by AsciiDoc. -highlight Title ctermfg=63 cterm=bold +highlight Title ctermfg=63 cterm=bold guifg=#5f5fff gui=bold " Vertical split column (black on default), black to try to hide it " (ctermfg=NONE doesn't work), cterm=NONE is necessary to remove reverse. Also " see my vimrc for a way to hide it completely (the column is still there, but " empty). -highlight VertSplit ctermfg=16 cterm=NONE +highlight VertSplit ctermfg=16 cterm=NONE guifg=#000000 gui=NONE " Current visual selection (default on light gray). -highlight Visual ctermbg=246 +highlight Visual ctermbg=246 guibg=#949494 " Warning messages (white on orange). -highlight WarningMsg ctermfg=231 ctermbg=166 +highlight WarningMsg ctermfg=231 ctermbg=166 guifg=#ffffff guibg=#d75f00 " Cursor color when language mappings are used, :h lCursor (not used, keep in " sync with Cursor). -highlight lCursor ctermfg=16 ctermbg=227 +highlight lCursor ctermfg=16 ctermbg=227 guifg=#000000 guibg=#ffff5f " GENERAL ADDITIONS @@ -162,7 +164,7 @@ highlight lCursor ctermfg=16 ctermbg=227 " comparison with SpecialKey (darker gray on default). " " Needs matchadd('specialKeyTab', '\t') in vimrc. -highlight specialKeyTab ctermfg=239 +highlight specialKeyTab ctermfg=239 guifg=#4e4e4e " Statement control keywords (e.g. continue, break, return, goto, etc.), extra " syntax item to make them extra visible (keep in sync with Statement, except @@ -177,4 +179,4 @@ highlight specialKeyTab ctermfg=239 " Or for Perl: " " highlight link perlStatementControl statementControl -highlight statementControl ctermfg=227 cterm=bold,underline +highlight statementControl ctermfg=227 cterm=bold,underline guifg=#ffff5f gui=bold,underline diff --git a/vimrc b/vimrc index 7df6365..60a1b13 100644 --- a/vimrc +++ b/vimrc @@ -197,7 +197,7 @@ set hidden set background=dark " Use my color scheme if 256 colors are available. -if &t_Co == 256 +if &t_Co == 256 || has('gui_running') colorscheme simon endif -- 2.45.2