eeeeeeeeeeeeeeuh

This commit is contained in:
2019-04-19 00:19:06 +02:00
parent f9040101a2
commit d7fb378664
30 changed files with 4578 additions and 16 deletions

0
.fishrc Normal file
View File

5
.vim/.netrwhist Normal file
View File

@@ -0,0 +1,5 @@
let g:netrw_dirhistmax =10
let g:netrw_dirhist_cnt =3
let g:netrw_dirhist_1='/home/beppe/Downloads/EFI'
let g:netrw_dirhist_2='/usr/local/bin'
let g:netrw_dirhist_3='/home/beppe/.backup'

264
.vim/autoload/pathogen.vim Normal file
View File

@@ -0,0 +1,264 @@
" pathogen.vim - path option manipulation
" Maintainer: Tim Pope <http://tpo.pe/>
" Version: 2.4
" Install in ~/.vim/autoload (or ~\vimfiles\autoload).
"
" For management of individually installed plugins in ~/.vim/bundle (or
" ~\vimfiles\bundle), adding `execute pathogen#infect()` to the top of your
" .vimrc is the only other setup necessary.
"
" The API is documented inline below.
if exists("g:loaded_pathogen") || &cp
finish
endif
let g:loaded_pathogen = 1
" Point of entry for basic default usage. Give a relative path to invoke
" pathogen#interpose() or an absolute path to invoke pathogen#surround().
" Curly braces are expanded with pathogen#expand(): "bundle/{}" finds all
" subdirectories inside "bundle" inside all directories in the runtime path.
" If no arguments are given, defaults "bundle/{}", and also "pack/{}/start/{}"
" on versions of Vim without native package support.
function! pathogen#infect(...) abort
if a:0
let paths = filter(reverse(copy(a:000)), 'type(v:val) == type("")')
else
let paths = ['bundle/{}', 'pack/{}/start/{}']
endif
if has('packages')
call filter(paths, 'v:val !~# "^pack/[^/]*/start/[^/]*$"')
endif
let static = '^\%([$~\\/]\|\w:[\\/]\)[^{}*]*$'
for path in filter(copy(paths), 'v:val =~# static')
call pathogen#surround(path)
endfor
for path in filter(copy(paths), 'v:val !~# static')
if path =~# '^\%([$~\\/]\|\w:[\\/]\)'
call pathogen#surround(path)
else
call pathogen#interpose(path)
endif
endfor
call pathogen#cycle_filetype()
if pathogen#is_disabled($MYVIMRC)
return 'finish'
endif
return ''
endfunction
" Split a path into a list.
function! pathogen#split(path) abort
if type(a:path) == type([]) | return a:path | endif
if empty(a:path) | return [] | endif
let split = split(a:path,'\\\@<!\%(\\\\\)*\zs,')
return map(split,'substitute(v:val,''\\\([\\,]\)'',''\1'',"g")')
endfunction
" Convert a list to a path.
function! pathogen#join(...) abort
if type(a:1) == type(1) && a:1
let i = 1
let space = ' '
else
let i = 0
let space = ''
endif
let path = ""
while i < a:0
if type(a:000[i]) == type([])
let list = a:000[i]
let j = 0
while j < len(list)
let escaped = substitute(list[j],'[,'.space.']\|\\[\,'.space.']\@=','\\&','g')
let path .= ',' . escaped
let j += 1
endwhile
else
let path .= "," . a:000[i]
endif
let i += 1
endwhile
return substitute(path,'^,','','')
endfunction
" Convert a list to a path with escaped spaces for 'path', 'tag', etc.
function! pathogen#legacyjoin(...) abort
return call('pathogen#join',[1] + a:000)
endfunction
" Turn filetype detection off and back on again if it was already enabled.
function! pathogen#cycle_filetype() abort
if exists('g:did_load_filetypes')
filetype off
filetype on
endif
endfunction
" Check if a bundle is disabled. A bundle is considered disabled if its
" basename or full name is included in the list g:pathogen_blacklist or the
" comma delimited environment variable $VIMBLACKLIST.
function! pathogen#is_disabled(path) abort
if a:path =~# '\~$'
return 1
endif
let sep = pathogen#slash()
let blacklist = get(g:, 'pathogen_blacklist', get(g:, 'pathogen_disabled', [])) + pathogen#split($VIMBLACKLIST)
if !empty(blacklist)
call map(blacklist, 'substitute(v:val, "[\\/]$", "", "")')
endif
return index(blacklist, fnamemodify(a:path, ':t')) != -1 || index(blacklist, a:path) != -1
endfunction
" Prepend the given directory to the runtime path and append its corresponding
" after directory. Curly braces are expanded with pathogen#expand().
function! pathogen#surround(path) abort
let sep = pathogen#slash()
let rtp = pathogen#split(&rtp)
let path = fnamemodify(a:path, ':s?[\\/]\=$??')
let before = filter(pathogen#expand(path), '!pathogen#is_disabled(v:val)')
let after = filter(reverse(pathogen#expand(path, sep.'after')), '!pathogen#is_disabled(v:val[0:-7])')
call filter(rtp, 'index(before + after, v:val) == -1')
let &rtp = pathogen#join(before, rtp, after)
return &rtp
endfunction
" For each directory in the runtime path, add a second entry with the given
" argument appended. Curly braces are expanded with pathogen#expand().
function! pathogen#interpose(name) abort
let sep = pathogen#slash()
let name = a:name
if has_key(s:done_bundles, name)
return ""
endif
let s:done_bundles[name] = 1
let list = []
for dir in pathogen#split(&rtp)
if dir =~# '\<after$'
let list += reverse(filter(pathogen#expand(dir[0:-6].name, sep.'after'), '!pathogen#is_disabled(v:val[0:-7])')) + [dir]
else
let list += [dir] + filter(pathogen#expand(dir.sep.name), '!pathogen#is_disabled(v:val)')
endif
endfor
let &rtp = pathogen#join(pathogen#uniq(list))
return 1
endfunction
let s:done_bundles = {}
" Invoke :helptags on all non-$VIM doc directories in runtimepath.
function! pathogen#helptags() abort
let sep = pathogen#slash()
for glob in pathogen#split(&rtp)
for dir in map(split(glob(glob), "\n"), 'v:val.sep."/doc/".sep')
if (dir)[0 : strlen($VIMRUNTIME)] !=# $VIMRUNTIME.sep && filewritable(dir) == 2 && !empty(split(glob(dir.'*.txt'))) && (!filereadable(dir.'tags') || filewritable(dir.'tags'))
silent! execute 'helptags' pathogen#fnameescape(dir)
endif
endfor
endfor
endfunction
command! -bar Helptags :call pathogen#helptags()
" Execute the given command. This is basically a backdoor for --remote-expr.
function! pathogen#execute(...) abort
for command in a:000
execute command
endfor
return ''
endfunction
" Section: Unofficial
function! pathogen#is_absolute(path) abort
return a:path =~# (has('win32') ? '^\%([\\/]\|\w:\)[\\/]\|^[~$]' : '^[/~$]')
endfunction
" Given a string, returns all possible permutations of comma delimited braced
" alternatives of that string. pathogen#expand('/{a,b}/{c,d}') yields
" ['/a/c', '/a/d', '/b/c', '/b/d']. Empty braces are treated as a wildcard
" and globbed. Actual globs are preserved.
function! pathogen#expand(pattern, ...) abort
let after = a:0 ? a:1 : ''
let pattern = substitute(a:pattern, '^[~$][^\/]*', '\=expand(submatch(0))', '')
if pattern =~# '{[^{}]\+}'
let [pre, pat, post] = split(substitute(pattern, '\(.\{-\}\){\([^{}]\+\)}\(.*\)', "\\1\001\\2\001\\3", ''), "\001", 1)
let found = map(split(pat, ',', 1), 'pre.v:val.post')
let results = []
for pattern in found
call extend(results, pathogen#expand(pattern))
endfor
elseif pattern =~# '{}'
let pat = matchstr(pattern, '^.*{}[^*]*\%($\|[\\/]\)')
let post = pattern[strlen(pat) : -1]
let results = map(split(glob(substitute(pat, '{}', '*', 'g')), "\n"), 'v:val.post')
else
let results = [pattern]
endif
let vf = pathogen#slash() . 'vimfiles'
call map(results, 'v:val =~# "\\*" ? v:val.after : isdirectory(v:val.vf.after) ? v:val.vf.after : isdirectory(v:val.after) ? v:val.after : ""')
return filter(results, '!empty(v:val)')
endfunction
" \ on Windows unless shellslash is set, / everywhere else.
function! pathogen#slash() abort
return !exists("+shellslash") || &shellslash ? '/' : '\'
endfunction
function! pathogen#separator() abort
return pathogen#slash()
endfunction
" Convenience wrapper around glob() which returns a list.
function! pathogen#glob(pattern) abort
let files = split(glob(a:pattern),"\n")
return map(files,'substitute(v:val,"[".pathogen#slash()."/]$","","")')
endfunction
" Like pathogen#glob(), only limit the results to directories.
function! pathogen#glob_directories(pattern) abort
return filter(pathogen#glob(a:pattern),'isdirectory(v:val)')
endfunction
" Remove duplicates from a list.
function! pathogen#uniq(list) abort
let i = 0
let seen = {}
while i < len(a:list)
if (a:list[i] ==# '' && exists('empty')) || has_key(seen,a:list[i])
call remove(a:list,i)
elseif a:list[i] ==# ''
let i += 1
let empty = 1
else
let seen[a:list[i]] = 1
let i += 1
endif
endwhile
return a:list
endfunction
" Backport of fnameescape().
function! pathogen#fnameescape(string) abort
if exists('*fnameescape')
return fnameescape(a:string)
elseif a:string ==# '-'
return '\-'
else
return substitute(escape(a:string," \t\n*?[{`$\\%#'\"|!<"),'^[+>]','\\&','')
endif
endfunction
" Like findfile(), but hardcoded to use the runtimepath.
function! pathogen#runtime_findfile(file,count) abort
let rtp = pathogen#join(1,pathogen#split(&rtp))
let file = findfile(a:file,rtp,a:count)
if file ==# ''
return ''
else
return fnamemodify(file,':p')
endif
endfunction
" vim:set et sw=2 foldmethod=expr foldexpr=getline(v\:lnum)=~'^\"\ Section\:'?'>1'\:getline(v\:lnum)=~#'^fu'?'a1'\:getline(v\:lnum)=~#'^endf'?'s1'\:'=':

Submodule .vim/bundle/Vundle.vim added at 9a38216a1c

Submodule .vim/bundle/YouCompleteMe added at 80246aa9a2

1
.vim/bundle/ctrlp.vim Submodule

Submodule .vim/bundle/ctrlp.vim added at e953ee7a80

Submodule .vim/bundle/indentpython.vim added at 6aaddfde21

1
.vim/bundle/syntastic Submodule

Submodule .vim/bundle/syntastic added at 0d25f4fb42

Submodule .vim/bundle/vim-coloresque added at 0c21b14699

Submodule .vim/bundle/vim-gitgutter added at 5c636b128e

1
.vim/bundle/vim-go Submodule

Submodule .vim/bundle/vim-go added at 30cdcf3c1e

670
.vim/colors/badwolf.vim Normal file
View File

@@ -0,0 +1,670 @@
" _ _ _ __
" | |__ __ _ __| | __ _____ | |/ _|
" | '_ \ / _` |/ _` | \ \ /\ / / _ \| | |_
" | |_) | (_| | (_| | \ V V / (_) | | _|
" |_.__/ \__,_|\__,_| \_/\_/ \___/|_|_|
"
" I am the Bad Wolf. I create myself.
" I take the words. I scatter them in time and space.
" A message to lead myself here.
"
" A Vim colorscheme pieced together by Steve Losh.
" Available at http://stevelosh.com/projects/badwolf/
"
" Why? {{{
"
" After using Molokai for quite a long time, I started longing for
" a replacement.
"
" I love Molokai's high contrast and gooey, saturated tones, but it can be
" a little inconsistent at times.
"
" Also it's winter here in Rochester, so I wanted a color scheme that's a bit
" warmer. A little less blue and a bit more red.
"
" And so Bad Wolf was born. I'm no designer, but designers have been scattering
" beautiful colors through time and space long before I came along. I took
" advantage of that and reused some of my favorites to lead me to this scheme.
"
" }}}
" Supporting code -------------------------------------------------------------
" Preamble {{{
if !has("gui_running") && &t_Co != 88 && &t_Co != 256
finish
endif
set background=dark
if exists("syntax_on")
syntax reset
endif
let g:colors_name = "badwolf"
if !exists("g:badwolf_html_link_underline") " {{{
let g:badwolf_html_link_underline = 1
endif " }}}
if !exists("g:badwolf_css_props_highlight") " {{{
let g:badwolf_css_props_highlight = 0
endif " }}}
" }}}
" Palette {{{
let s:bwc = {}
" The most basic of all our colors is a slightly tweaked version of the Molokai
" Normal text.
let s:bwc.plain = ['f8f6f2', 15]
" Pure and simple.
let s:bwc.snow = ['ffffff', 15]
let s:bwc.coal = ['000000', 16]
" All of the Gravel colors are based on a brown from Clouds Midnight.
let s:bwc.brightgravel = ['d9cec3', 252]
let s:bwc.lightgravel = ['998f84', 245]
let s:bwc.gravel = ['857f78', 243]
let s:bwc.mediumgravel = ['666462', 241]
let s:bwc.deepgravel = ['45413b', 238]
let s:bwc.deepergravel = ['35322d', 236]
let s:bwc.darkgravel = ['242321', 235]
let s:bwc.blackgravel = ['1c1b1a', 233]
let s:bwc.blackestgravel = ['141413', 232]
" A color sampled from a highlight in a photo of a glass of Dale's Pale Ale on
" my desk.
let s:bwc.dalespale = ['fade3e', 221]
" A beautiful tan from Tomorrow Night.
let s:bwc.dirtyblonde = ['f4cf86', 222]
" Delicious, chewy red from Made of Code for the poppiest highlights.
let s:bwc.taffy = ['ff2c4b', 196]
" Another chewy accent, but use sparingly!
let s:bwc.saltwatertaffy = ['8cffba', 121]
" The star of the show comes straight from Made of Code.
"
" You should almost never use this. It should be used for things that denote
" 'where the user is', which basically consists of:
"
" * The cursor
" * A REPL prompt
let s:bwc.tardis = ['0a9dff', 39]
" This one's from Mustang, not Florida!
let s:bwc.orange = ['ffa724', 214]
" A limier green from Getafe.
let s:bwc.lime = ['aeee00', 154]
" Rose's dress in The Idiot's Lantern.
let s:bwc.dress = ['ff9eb8', 211]
" Another play on the brown from Clouds Midnight. I love that color.
let s:bwc.toffee = ['b88853', 137]
" Also based on that Clouds Midnight brown.
let s:bwc.coffee = ['c7915b', 173]
let s:bwc.darkroast = ['88633f', 95]
" }}}
" Highlighting Function {{{
function! s:HL(group, fg, ...)
" Arguments: group, guifg, guibg, gui, guisp
let histring = 'hi ' . a:group . ' '
if strlen(a:fg)
if a:fg == 'fg'
let histring .= 'guifg=fg ctermfg=fg '
else
let c = get(s:bwc, a:fg)
let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' '
endif
endif
if a:0 >= 1 && strlen(a:1)
if a:1 == 'bg'
let histring .= 'guibg=bg ctermbg=bg '
else
let c = get(s:bwc, a:1)
let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' '
endif
endif
if a:0 >= 2 && strlen(a:2)
let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' '
endif
if a:0 >= 3 && strlen(a:3)
let c = get(s:bwc, a:3)
let histring .= 'guisp=#' . c[0] . ' '
endif
" echom histring
execute histring
endfunction
" }}}
" Configuration Options {{{
if exists('g:badwolf_darkgutter') && g:badwolf_darkgutter
let s:gutter = 'blackestgravel'
else
let s:gutter = 'blackgravel'
endif
if exists('g:badwolf_tabline')
if g:badwolf_tabline == 0
let s:tabline = 'blackestgravel'
elseif g:badwolf_tabline == 1
let s:tabline = 'blackgravel'
elseif g:badwolf_tabline == 2
let s:tabline = 'darkgravel'
elseif g:badwolf_tabline == 3
let s:tabline = 'deepgravel'
else
let s:tabline = 'blackestgravel'
endif
else
let s:tabline = 'blackgravel'
endif
" }}}
" Actual colorscheme ----------------------------------------------------------
" Vanilla Vim {{{
" General/UI {{{
call s:HL('Normal', 'plain', 'blackgravel')
call s:HL('Folded', 'mediumgravel', 'bg', 'none')
call s:HL('VertSplit', 'lightgravel', 'bg', 'none')
call s:HL('CursorLine', '', 'darkgravel', 'none')
call s:HL('CursorColumn', '', 'darkgravel')
call s:HL('ColorColumn', '', 'darkgravel')
call s:HL('TabLine', 'plain', s:tabline, 'none')
call s:HL('TabLineFill', 'plain', s:tabline, 'none')
call s:HL('TabLineSel', 'coal', 'tardis', 'none')
call s:HL('MatchParen', 'dalespale', 'darkgravel', 'bold')
call s:HL('NonText', 'deepgravel', 'bg')
call s:HL('SpecialKey', 'deepgravel', 'bg')
call s:HL('Visual', '', 'deepgravel')
call s:HL('VisualNOS', '', 'deepgravel')
call s:HL('Search', 'coal', 'dalespale', 'bold')
call s:HL('IncSearch', 'coal', 'tardis', 'bold')
call s:HL('Underlined', 'fg', '', 'underline')
call s:HL('StatusLine', 'coal', 'tardis', 'bold')
call s:HL('StatusLineNC', 'snow', 'deepgravel', 'bold')
call s:HL('Directory', 'dirtyblonde', '', 'bold')
call s:HL('Title', 'lime')
call s:HL('ErrorMsg', 'taffy', 'bg', 'bold')
call s:HL('MoreMsg', 'dalespale', '', 'bold')
call s:HL('ModeMsg', 'dirtyblonde', '', 'bold')
call s:HL('Question', 'dirtyblonde', '', 'bold')
call s:HL('WarningMsg', 'dress', '', 'bold')
" This is a ctags tag, not an HTML one. 'Something you can use c-] on'.
call s:HL('Tag', '', '', 'bold')
" hi IndentGuides guibg=#373737
" hi WildMenu guifg=#66D9EF guibg=#000000
" }}}
" Gutter {{{
call s:HL('LineNr', 'mediumgravel', s:gutter)
call s:HL('SignColumn', '', s:gutter)
call s:HL('FoldColumn', 'mediumgravel', s:gutter)
" }}}
" Cursor {{{
call s:HL('Cursor', 'coal', 'tardis', 'bold')
call s:HL('vCursor', 'coal', 'tardis', 'bold')
call s:HL('iCursor', 'coal', 'tardis', 'none')
" }}}
" Syntax highlighting {{{
" Start with a simple base.
call s:HL('Special', 'plain')
" Comments are slightly brighter than folds, to make 'headers' easier to see.
call s:HL('Comment', 'gravel')
call s:HL('Todo', 'snow', 'bg', 'bold')
call s:HL('SpecialComment', 'snow', 'bg', 'bold')
" Strings are a nice, pale straw color. Nothing too fancy.
call s:HL('String', 'dirtyblonde')
" Control flow stuff is taffy.
call s:HL('Statement', 'taffy', '', 'bold')
call s:HL('Keyword', 'taffy', '', 'bold')
call s:HL('Conditional', 'taffy', '', 'bold')
call s:HL('Operator', 'taffy', '', 'none')
call s:HL('Label', 'taffy', '', 'none')
call s:HL('Repeat', 'taffy', '', 'none')
" Functions and variable declarations are orange, because plain looks weird.
call s:HL('Identifier', 'orange', '', 'none')
call s:HL('Function', 'orange', '', 'none')
" Preprocessor stuff is lime, to make it pop.
"
" This includes imports in any given language, because they should usually be
" grouped together at the beginning of a file. If they're in the middle of some
" other code they should stand out, because something tricky is
" probably going on.
call s:HL('PreProc', 'lime', '', 'none')
call s:HL('Macro', 'lime', '', 'none')
call s:HL('Define', 'lime', '', 'none')
call s:HL('PreCondit', 'lime', '', 'bold')
" Constants of all kinds are colored together.
" I'm not really happy with the color yet...
call s:HL('Constant', 'toffee', '', 'bold')
call s:HL('Character', 'toffee', '', 'bold')
call s:HL('Boolean', 'toffee', '', 'bold')
call s:HL('Number', 'toffee', '', 'bold')
call s:HL('Float', 'toffee', '', 'bold')
" Not sure what 'special character in a constant' means, but let's make it pop.
call s:HL('SpecialChar', 'dress', '', 'bold')
call s:HL('Type', 'dress', '', 'none')
call s:HL('StorageClass', 'taffy', '', 'none')
call s:HL('Structure', 'taffy', '', 'none')
call s:HL('Typedef', 'taffy', '', 'bold')
" Make try/catch blocks stand out.
call s:HL('Exception', 'lime', '', 'bold')
" Misc
call s:HL('Error', 'snow', 'taffy', 'bold')
call s:HL('Debug', 'snow', '', 'bold')
call s:HL('Ignore', 'gravel', '', '')
" }}}
" Completion Menu {{{
call s:HL('Pmenu', 'plain', 'deepergravel')
call s:HL('PmenuSel', 'coal', 'tardis', 'bold')
call s:HL('PmenuSbar', '', 'deepergravel')
call s:HL('PmenuThumb', 'brightgravel')
" }}}
" Diffs {{{
call s:HL('DiffDelete', 'coal', 'coal')
call s:HL('DiffAdd', '', 'deepergravel')
call s:HL('DiffChange', '', 'darkgravel')
call s:HL('DiffText', 'snow', 'deepergravel', 'bold')
" }}}
" Spelling {{{
if has("spell")
call s:HL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale')
call s:HL('SpellBad', '', 'bg', 'undercurl', 'dalespale')
call s:HL('SpellLocal', '', '', 'undercurl', 'dalespale')
call s:HL('SpellRare', '', '', 'undercurl', 'dalespale')
endif
" }}}
" }}}
" Plugins {{{
" CtrlP {{{
" the message when no match is found
call s:HL('CtrlPNoEntries', 'snow', 'taffy', 'bold')
" the matched pattern
call s:HL('CtrlPMatch', 'orange', 'bg', 'none')
" the line prefix '>' in the match window
call s:HL('CtrlPLinePre', 'deepgravel', 'bg', 'none')
" the prompts base
call s:HL('CtrlPPrtBase', 'deepgravel', 'bg', 'none')
" the prompts text
call s:HL('CtrlPPrtText', 'plain', 'bg', 'none')
" the prompts cursor when moving over the text
call s:HL('CtrlPPrtCursor', 'coal', 'tardis', 'bold')
" 'prt' or 'win', also for 'regex'
call s:HL('CtrlPMode1', 'coal', 'tardis', 'bold')
" 'file' or 'path', also for the local working dir
call s:HL('CtrlPMode2', 'coal', 'tardis', 'bold')
" the scanning status
call s:HL('CtrlPStats', 'coal', 'tardis', 'bold')
" TODO: CtrlP extensions.
" CtrlPTabExtra : the part of each line thats not matched against (Comment)
" CtrlPqfLineCol : the line and column numbers in quickfix mode (|s:HL-Search|)
" CtrlPUndoT : the elapsed time in undo mode (|s:HL-Directory|)
" CtrlPUndoBr : the square brackets [] in undo mode (Comment)
" CtrlPUndoNr : the undo number inside [] in undo mode (String)
" }}}
" EasyMotion {{{
call s:HL('EasyMotionTarget', 'tardis', 'bg', 'bold')
call s:HL('EasyMotionShade', 'deepgravel', 'bg')
" }}}
" Interesting Words {{{
" These are only used if you're me or have copied the <leader>hNUM mappings
" from my Vimrc.
call s:HL('InterestingWord1', 'coal', 'orange')
call s:HL('InterestingWord2', 'coal', 'lime')
call s:HL('InterestingWord3', 'coal', 'saltwatertaffy')
call s:HL('InterestingWord4', 'coal', 'toffee')
call s:HL('InterestingWord5', 'coal', 'dress')
call s:HL('InterestingWord6', 'coal', 'taffy')
" }}}
" Makegreen {{{
" hi GreenBar term=reverse ctermfg=white ctermbg=green guifg=coal guibg=#9edf1c
" hi RedBar term=reverse ctermfg=white ctermbg=red guifg=white guibg=#C50048
" }}}
" Rainbow Parentheses {{{
call s:HL('level16c', 'mediumgravel', '', 'bold')
call s:HL('level15c', 'dalespale', '', '')
call s:HL('level14c', 'dress', '', '')
call s:HL('level13c', 'orange', '', '')
call s:HL('level12c', 'tardis', '', '')
call s:HL('level11c', 'lime', '', '')
call s:HL('level10c', 'toffee', '', '')
call s:HL('level9c', 'saltwatertaffy', '', '')
call s:HL('level8c', 'coffee', '', '')
call s:HL('level7c', 'dalespale', '', '')
call s:HL('level6c', 'dress', '', '')
call s:HL('level5c', 'orange', '', '')
call s:HL('level4c', 'tardis', '', '')
call s:HL('level3c', 'lime', '', '')
call s:HL('level2c', 'toffee', '', '')
call s:HL('level1c', 'saltwatertaffy', '', '')
" }}}
" ShowMarks {{{
call s:HL('ShowMarksHLl', 'tardis', 'blackgravel')
call s:HL('ShowMarksHLu', 'tardis', 'blackgravel')
call s:HL('ShowMarksHLo', 'tardis', 'blackgravel')
call s:HL('ShowMarksHLm', 'tardis', 'blackgravel')
" }}}
" }}}
" Filetype-specific {{{
" Clojure {{{
call s:HL('clojureSpecial', 'taffy', '', '')
call s:HL('clojureDefn', 'taffy', '', '')
call s:HL('clojureDefMacro', 'taffy', '', '')
call s:HL('clojureDefine', 'taffy', '', '')
call s:HL('clojureMacro', 'taffy', '', '')
call s:HL('clojureCond', 'taffy', '', '')
call s:HL('clojureKeyword', 'orange', '', 'none')
call s:HL('clojureFunc', 'dress', '', 'none')
call s:HL('clojureRepeat', 'dress', '', 'none')
call s:HL('clojureParen0', 'lightgravel', '', 'none')
call s:HL('clojureAnonArg', 'snow', '', 'bold')
" }}}
" Common Lisp {{{
call s:HL('lispFunc', 'lime', '', 'none')
call s:HL('lispVar', 'orange', '', 'bold')
call s:HL('lispEscapeSpecial', 'orange', '', 'none')
" }}}
" CSS {{{
if g:badwolf_css_props_highlight
call s:HL('cssColorProp', 'taffy', '', 'none')
call s:HL('cssBoxProp', 'taffy', '', 'none')
call s:HL('cssTextProp', 'taffy', '', 'none')
call s:HL('cssRenderProp', 'taffy', '', 'none')
call s:HL('cssGeneratedContentProp', 'taffy', '', 'none')
else
call s:HL('cssColorProp', 'fg', '', 'none')
call s:HL('cssBoxProp', 'fg', '', 'none')
call s:HL('cssTextProp', 'fg', '', 'none')
call s:HL('cssRenderProp', 'fg', '', 'none')
call s:HL('cssGeneratedContentProp', 'fg', '', 'none')
end
call s:HL('cssValueLength', 'toffee', '', 'bold')
call s:HL('cssColor', 'toffee', '', 'bold')
call s:HL('cssBraces', 'lightgravel', '', 'none')
call s:HL('cssIdentifier', 'orange', '', 'bold')
call s:HL('cssClassName', 'orange', '', 'none')
" }}}
" Diff {{{
call s:HL('gitDiff', 'lightgravel', '',)
call s:HL('diffRemoved', 'dress', '',)
call s:HL('diffAdded', 'lime', '',)
call s:HL('diffFile', 'coal', 'taffy', 'bold')
call s:HL('diffNewFile', 'coal', 'taffy', 'bold')
call s:HL('diffLine', 'coal', 'orange', 'bold')
call s:HL('diffSubname', 'orange', '', 'none')
" }}}
" Django Templates {{{
call s:HL('djangoArgument', 'dirtyblonde', '',)
call s:HL('djangoTagBlock', 'orange', '')
call s:HL('djangoVarBlock', 'orange', '')
" hi djangoStatement guifg=#ff3853 gui=bold
" hi djangoVarBlock guifg=#f4cf86
" }}}
" HTML {{{
" Punctuation
call s:HL('htmlTag', 'darkroast', 'bg', 'none')
call s:HL('htmlEndTag', 'darkroast', 'bg', 'none')
" Tag names
call s:HL('htmlTagName', 'coffee', '', 'bold')
call s:HL('htmlSpecialTagName', 'coffee', '', 'bold')
call s:HL('htmlSpecialChar', 'lime', '', 'none')
" Attributes
call s:HL('htmlArg', 'coffee', '', 'none')
" Stuff inside an <a> tag
if g:badwolf_html_link_underline
call s:HL('htmlLink', 'lightgravel', '', 'underline')
else
call s:HL('htmlLink', 'lightgravel', '', 'none')
endif
" }}}
" Java {{{
call s:HL('javaClassDecl', 'taffy', '', 'bold')
call s:HL('javaScopeDecl', 'taffy', '', 'bold')
call s:HL('javaCommentTitle', 'gravel', '')
call s:HL('javaDocTags', 'snow', '', 'none')
call s:HL('javaDocParam', 'dalespale', '', '')
" }}}
" LaTeX {{{
call s:HL('texStatement', 'tardis', '', 'none')
call s:HL('texMathZoneX', 'orange', '', 'none')
call s:HL('texMathZoneA', 'orange', '', 'none')
call s:HL('texMathZoneB', 'orange', '', 'none')
call s:HL('texMathZoneC', 'orange', '', 'none')
call s:HL('texMathZoneD', 'orange', '', 'none')
call s:HL('texMathZoneE', 'orange', '', 'none')
call s:HL('texMathZoneV', 'orange', '', 'none')
call s:HL('texMathZoneX', 'orange', '', 'none')
call s:HL('texMath', 'orange', '', 'none')
call s:HL('texMathMatcher', 'orange', '', 'none')
call s:HL('texRefLabel', 'dirtyblonde', '', 'none')
call s:HL('texRefZone', 'lime', '', 'none')
call s:HL('texComment', 'darkroast', '', 'none')
call s:HL('texDelimiter', 'orange', '', 'none')
call s:HL('texZone', 'brightgravel', '', 'none')
augroup badwolf_tex
au!
au BufRead,BufNewFile *.tex syn region texMathZoneV start="\\(" end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup
au BufRead,BufNewFile *.tex syn region texMathZoneX start="\$" skip="\\\\\|\\\$" end="\$\|%stopzone\>" keepend contains=@texMathZoneGroup
augroup END
" }}}
" LessCSS {{{
call s:HL('lessVariable', 'lime', '', 'none')
" }}}
" Lispyscript {{{
call s:HL('lispyscriptDefMacro', 'lime', '', '')
call s:HL('lispyscriptRepeat', 'dress', '', 'none')
" }}}
" REPLs {{{
" This isn't a specific plugin, but just useful highlight classes for anything
" that might want to use them.
call s:HL('replPrompt', 'tardis', '', 'bold')
" }}}
" Mail {{{
call s:HL('mailSubject', 'orange', '', 'bold')
call s:HL('mailHeader', 'lightgravel', '', '')
call s:HL('mailHeaderKey', 'lightgravel', '', '')
call s:HL('mailHeaderEmail', 'snow', '', '')
call s:HL('mailURL', 'toffee', '', 'underline')
call s:HL('mailSignature', 'gravel', '', 'none')
call s:HL('mailQuoted1', 'gravel', '', 'none')
call s:HL('mailQuoted2', 'dress', '', 'none')
call s:HL('mailQuoted3', 'dirtyblonde', '', 'none')
call s:HL('mailQuoted4', 'orange', '', 'none')
call s:HL('mailQuoted5', 'lime', '', 'none')
" }}}
" Markdown {{{
call s:HL('markdownHeadingRule', 'lightgravel', '', 'bold')
call s:HL('markdownHeadingDelimiter', 'lightgravel', '', 'bold')
call s:HL('markdownOrderedListMarker', 'lightgravel', '', 'bold')
call s:HL('markdownListMarker', 'lightgravel', '', 'bold')
call s:HL('markdownItalic', 'snow', '', 'bold')
call s:HL('markdownBold', 'snow', '', 'bold')
call s:HL('markdownH1', 'orange', '', 'bold')
call s:HL('markdownH2', 'lime', '', 'bold')
call s:HL('markdownH3', 'lime', '', 'none')
call s:HL('markdownH4', 'lime', '', 'none')
call s:HL('markdownH5', 'lime', '', 'none')
call s:HL('markdownH6', 'lime', '', 'none')
call s:HL('markdownLinkText', 'toffee', '', 'underline')
call s:HL('markdownIdDeclaration', 'toffee')
call s:HL('markdownAutomaticLink', 'toffee', '', 'bold')
call s:HL('markdownUrl', 'toffee', '', 'bold')
call s:HL('markdownUrldelimiter', 'lightgravel', '', 'bold')
call s:HL('markdownLinkDelimiter', 'lightgravel', '', 'bold')
call s:HL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold')
call s:HL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold')
call s:HL('markdownCode', 'dirtyblonde', '', 'none')
call s:HL('markdownCodeBlock', 'dirtyblonde', '', 'none')
" }}}
" MySQL {{{
call s:HL('mysqlSpecial', 'dress', '', 'bold')
" }}}
" Python {{{
hi def link pythonOperator Operator
call s:HL('pythonBuiltin', 'dress')
call s:HL('pythonBuiltinObj', 'dress')
call s:HL('pythonBuiltinFunc', 'dress')
call s:HL('pythonEscape', 'dress')
call s:HL('pythonException', 'lime', '', 'bold')
call s:HL('pythonExceptions', 'lime', '', 'none')
call s:HL('pythonPrecondit', 'lime', '', 'none')
call s:HL('pythonDecorator', 'taffy', '', 'none')
call s:HL('pythonRun', 'gravel', '', 'bold')
call s:HL('pythonCoding', 'gravel', '', 'bold')
" }}}
" SLIMV {{{
" Rainbow parentheses
call s:HL('hlLevel0', 'gravel')
call s:HL('hlLevel1', 'orange')
call s:HL('hlLevel2', 'saltwatertaffy')
call s:HL('hlLevel3', 'dress')
call s:HL('hlLevel4', 'coffee')
call s:HL('hlLevel5', 'dirtyblonde')
call s:HL('hlLevel6', 'orange')
call s:HL('hlLevel7', 'saltwatertaffy')
call s:HL('hlLevel8', 'dress')
call s:HL('hlLevel9', 'coffee')
" }}}
" Vim {{{
call s:HL('VimCommentTitle', 'lightgravel', '', 'bold')
call s:HL('VimMapMod', 'dress', '', 'none')
call s:HL('VimMapModKey', 'dress', '', 'none')
call s:HL('VimNotation', 'dress', '', 'none')
call s:HL('VimBracket', 'dress', '', 'none')
" }}}
" }}}

523
.vim/colors/goodwolf.vim Normal file
View File

@@ -0,0 +1,523 @@
" _ _ __
" | | | |/ _|
" __ _ ___ ___ __| | __ _____ | | |_
" / _` |/ _ \ / _ \ / _` | \ \ /\ / / _ \| | _|
" | (_| | (_) | (_) | (_| | \ V V / (_) | | |
" \__, |\___/ \___/ \__,_| \_/\_/ \___/|_|_|
" __/ |
" |___/
"
" :syntax less
"
" A Vim colorscheme pieced together by Steve Losh.
" Available at http://stevelosh.com/projects/badwolf/
"
" Supporting code -------------------------------------------------------------
" Preamble {{{
if !has("gui_running") && &t_Co != 88 && &t_Co != 256
finish
endif
set background=dark
if exists("syntax_on")
syntax reset
endif
let g:colors_name = "goodwolf"
if !exists("g:badwolf_html_link_underline") " {{{
let g:badwolf_html_link_underline = 1
endif " }}}
" }}}
" Palette {{{
let s:bwc = {}
" The most basic of all our colors is a slightly tweaked version of the Molokai
" Normal text.
let s:bwc.plain = ['f8f6f2', 15]
" Pure and simple.
let s:bwc.snow = ['ffffff', 15]
let s:bwc.coal = ['000000', 16]
" All of the Gravel colors are based on a brown from Clouds Midnight.
let s:bwc.brightgravel = ['d9cec3', 252]
let s:bwc.lightgravel = ['998f84', 245]
let s:bwc.gravel = ['857f78', 243]
let s:bwc.mediumgravel = ['666462', 241]
let s:bwc.deepgravel = ['45413b', 238]
let s:bwc.deepergravel = ['35322d', 236]
let s:bwc.darkgravel = ['242321', 235]
let s:bwc.blackgravel = ['1c1b1a', 233]
let s:bwc.blackestgravel = ['141413', 232]
" A color sampled from a highlight in a photo of a glass of Dale's Pale Ale on
" my desk.
let s:bwc.dalespale = ['fade3e', 221]
" A beautiful tan from Tomorrow Night.
let s:bwc.dirtyblonde = ['f4cf86', 222]
" Delicious, chewy red from Made of Code for the poppiest highlights.
let s:bwc.taffy = ['ff2c4b', 196]
" Another chewy accent, but use sparingly!
let s:bwc.saltwatertaffy = ['8cffba', 121]
" The star of the show comes straight from Made of Code.
"
" You should almost never use this. It should be used for things that denote
" 'where the user is', which basically consists of:
"
" * The cursor
" * A REPL prompt
let s:bwc.tardis = ['0a9dff', 39]
" This one's from Mustang, not Florida!
let s:bwc.orange = ['ffa724', 214]
" A limier green from Getafe.
let s:bwc.lime = ['aeee00', 154]
" Rose's dress in The Idiot's Lantern.
let s:bwc.dress = ['ff9eb8', 211]
" Another play on the brown from Clouds Midnight. I love that color.
let s:bwc.toffee = ['b88853', 137]
" Also based on that Clouds Midnight brown.
let s:bwc.coffee = ['c7915b', 173]
let s:bwc.darkroast = ['88633f', 95]
" }}}
" Highlighting Function {{{
function! GoodWolfHL(group, fg, ...)
" Arguments: group, guifg, guibg, gui, guisp
let histring = 'hi ' . a:group . ' '
if strlen(a:fg)
if a:fg == 'fg'
let histring .= 'guifg=fg ctermfg=fg '
else
let c = get(s:bwc, a:fg)
let histring .= 'guifg=#' . c[0] . ' ctermfg=' . c[1] . ' '
endif
endif
if a:0 >= 1 && strlen(a:1)
if a:1 == 'bg'
let histring .= 'guibg=bg ctermbg=bg '
else
let c = get(s:bwc, a:1)
let histring .= 'guibg=#' . c[0] . ' ctermbg=' . c[1] . ' '
endif
endif
if a:0 >= 2 && strlen(a:2)
let histring .= 'gui=' . a:2 . ' cterm=' . a:2 . ' '
endif
if a:0 >= 3 && strlen(a:3)
let c = get(s:bwc, a:3)
let histring .= 'guisp=#' . c[0] . ' '
endif
execute histring
endfunction
" }}}
" Configuration Options {{{
if exists('g:badwolf_darkgutter') && g:badwolf_darkgutter
let s:gutter = 'blackestgravel'
else
let s:gutter = 'blackgravel'
endif
if exists('g:badwolf_tabline')
if g:badwolf_tabline == 0
let s:tabline = 'blackestgravel'
elseif g:badwolf_tabline == 1
let s:tabline = 'blackgravel'
elseif g:badwolf_tabline == 2
let s:tabline = 'darkgravel'
elseif g:badwolf_tabline == 3
let s:tabline = 'deepgravel'
else
let s:tabline = 'blackestgravel'
endif
else
let s:tabline = 'blackgravel'
endif
" }}}
" Actual colorscheme ----------------------------------------------------------
" Vanilla Vim {{{
" General/UI {{{
" call GoodWolfHL('Normal', 'plain', 'blackgravel')
call GoodWolfHL('Normal', 'plain', 'blackestgravel')
call GoodWolfHL('Folded', 'mediumgravel', 'bg', 'none')
call GoodWolfHL('VertSplit', 'lightgravel', 'bg', 'none')
call GoodWolfHL('CursorLine', '', 'darkgravel', 'none')
call GoodWolfHL('CursorColumn', '', 'darkgravel')
call GoodWolfHL('ColorColumn', '', 'darkgravel')
call GoodWolfHL('TabLine', 'plain', s:tabline, 'none')
call GoodWolfHL('TabLineFill', 'plain', s:tabline, 'none')
call GoodWolfHL('TabLineSel', 'coal', 'tardis', 'none')
call GoodWolfHL('MatchParen', 'dalespale', 'darkgravel', 'bold')
call GoodWolfHL('NonText', 'deepgravel', 'bg')
call GoodWolfHL('SpecialKey', 'deepgravel', 'bg')
call GoodWolfHL('Visual', '', 'deepgravel')
call GoodWolfHL('VisualNOS', '', 'deepgravel')
call GoodWolfHL('Search', 'coal', 'dalespale', 'bold')
call GoodWolfHL('IncSearch', 'coal', 'tardis', 'bold')
call GoodWolfHL('Underlined', 'fg', '', 'underline')
call GoodWolfHL('StatusLine', 'coal', 'tardis', 'bold')
call GoodWolfHL('StatusLineNC', 'snow', 'deepgravel', 'none')
call GoodWolfHL('Directory', 'dirtyblonde', '', 'bold')
call GoodWolfHL('Title', 'lime')
call GoodWolfHL('ErrorMsg', 'taffy', 'bg', 'bold')
call GoodWolfHL('MoreMsg', 'dalespale', '', 'bold')
call GoodWolfHL('ModeMsg', 'dirtyblonde', '', 'bold')
call GoodWolfHL('Question', 'dirtyblonde', '', 'bold')
call GoodWolfHL('WarningMsg', 'dress', '', 'bold')
" This is a ctags tag, not an HTML one. 'Something you can use c-] on'.
call GoodWolfHL('Tag', '', '', 'bold')
" }}}
" Gutter {{{
call GoodWolfHL('LineNr', 'mediumgravel', s:gutter)
call GoodWolfHL('SignColumn', '', s:gutter)
call GoodWolfHL('FoldColumn', 'mediumgravel', s:gutter)
" }}}
" Cursor {{{
call GoodWolfHL('Cursor', 'coal', 'tardis', 'bold')
call GoodWolfHL('vCursor', 'coal', 'tardis', 'bold')
call GoodWolfHL('iCursor', 'coal', 'tardis', 'none')
" }}}
" Syntax highlighting {{{
" Start with a simple base.
call GoodWolfHL('Special', 'plain')
" Comments are slightly brighter than folds, to make 'headers' easier to see.
call GoodWolfHL('Comment', 'gravel', 'bg', 'none')
call GoodWolfHL('Todo', 'snow', 'bg', 'bold')
call GoodWolfHL('SpecialComment', 'snow', 'bg', 'bold')
" Strings are highlighted separately.
call GoodWolfHL('String', 'lightgravel', '', 'bold')
" Turn off everything else
call GoodWolfHL('Statement', 'plain', '', 'none')
call GoodWolfHL('Keyword', 'plain', '', 'none')
call GoodWolfHL('Conditional', 'plain', '', 'none')
call GoodWolfHL('Operator', 'plain', '', 'none')
call GoodWolfHL('Label', 'plain', '', 'none')
call GoodWolfHL('Repeat', 'plain', '', 'none')
call GoodWolfHL('Identifier', 'plain', '', 'none')
call GoodWolfHL('Function', 'plain', '', 'none')
call GoodWolfHL('PreProc', 'plain', '', 'none')
call GoodWolfHL('Macro', 'plain', '', 'none')
call GoodWolfHL('Define', 'plain', '', 'none')
call GoodWolfHL('PreCondit', 'plain', '', 'none')
call GoodWolfHL('Constant', 'plain', '', 'none')
call GoodWolfHL('Character', 'plain', '', 'none')
call GoodWolfHL('Boolean', 'plain', '', 'none')
call GoodWolfHL('Number', 'plain', '', 'none')
call GoodWolfHL('Float', 'plain', '', 'none')
call GoodWolfHL('Type', 'plain', '', 'none')
call GoodWolfHL('StorageClass', 'plain', '', 'none')
call GoodWolfHL('Structure', 'plain', '', 'none')
call GoodWolfHL('Typedef', 'plain', '', 'none')
call GoodWolfHL('Exception', 'plain', '', 'none')
" Not sure what 'special character in a constant' means, but let's make it pop.
call GoodWolfHL('SpecialChar', 'plain', '', 'bold')
" Misc
call GoodWolfHL('Error', 'snow', 'taffy', 'bold')
call GoodWolfHL('Debug', 'snow', '', 'bold')
call GoodWolfHL('Ignore', 'gravel', '', '')
" }}}
" Completion Menu {{{
call GoodWolfHL('Pmenu', 'plain', 'deepergravel')
call GoodWolfHL('PmenuSel', 'coal', 'tardis', 'bold')
call GoodWolfHL('PmenuSbar', '', 'deepergravel')
call GoodWolfHL('PmenuThumb', 'brightgravel')
" }}}
" Diffs {{{
call GoodWolfHL('DiffDelete', 'coal', 'coal')
call GoodWolfHL('DiffAdd', '', 'deepergravel')
call GoodWolfHL('DiffChange', '', 'darkgravel')
call GoodWolfHL('DiffText', 'snow', 'deepergravel', 'bold')
" }}}
" Spelling {{{
if has("spell")
call GoodWolfHL('SpellCap', 'dalespale', 'bg', 'undercurl,bold', 'dalespale')
call GoodWolfHL('SpellBad', '', 'bg', 'undercurl', 'dalespale')
call GoodWolfHL('SpellLocal', '', '', 'undercurl', 'dalespale')
call GoodWolfHL('SpellRare', '', '', 'undercurl', 'dalespale')
endif
" }}}
" Status Line Utils {{{
call GoodWolfHL('GWStatusLineMode', 'coal', 'lime')
call GoodWolfHL('GWStatusLineModeX', 'lime', 'deepergravel')
" }}}
" }}}
" Plugins {{{
" Clam {{{
" hg status
call GoodWolfHL('clamHgStatusAdded', 'lime', '', 'none')
call GoodWolfHL('clamHgStatusModified', 'saltwatertaffy', '', 'none')
call GoodWolfHL('clamHgStatusRemoved', 'toffee', '', 'none')
call GoodWolfHL('clamHgStatusUnknown', 'taffy', '', 'bold')
" }}}
" CtrlP {{{
" the message when no match is found
call GoodWolfHL('CtrlPNoEntries', 'snow', 'taffy', 'bold')
" the matched pattern
call GoodWolfHL('CtrlPMatch', 'dress', 'bg', 'bold')
" the line prefix '>' in the match window
call GoodWolfHL('CtrlPLinePre', 'deepgravel', 'bg', 'none')
" the prompts base
call GoodWolfHL('CtrlPPrtBase', 'deepgravel', 'bg', 'none')
" the prompts text
call GoodWolfHL('CtrlPPrtText', 'plain', 'bg', 'none')
" the prompts cursor when moving over the text
call GoodWolfHL('CtrlPPrtCursor', 'coal', 'tardis', 'bold')
" 'prt' or 'win', also for 'regex'
call GoodWolfHL('CtrlPMode1', 'coal', 'tardis', 'bold')
" 'file' or 'path', also for the local working dir
call GoodWolfHL('CtrlPMode2', 'coal', 'tardis', 'bold')
" the scanning status
call GoodWolfHL('CtrlPStats', 'coal', 'tardis', 'bold')
" }}}
" Interesting Words {{{
" These are only used if you're me or have copied the <leader>hNUM mappings
" from my Vimrc.
call GoodWolfHL('InterestingWord1', 'coal', 'orange')
call GoodWolfHL('InterestingWord2', 'coal', 'lime')
call GoodWolfHL('InterestingWord3', 'coal', 'saltwatertaffy')
call GoodWolfHL('InterestingWord4', 'coal', 'toffee')
call GoodWolfHL('InterestingWord5', 'coal', 'dress')
call GoodWolfHL('InterestingWord6', 'coal', 'taffy')
" }}}
" Rainbow Parentheses {{{
call GoodWolfHL('level1c', 'mediumgravel', '', 'bold')
" }}}
" }}}
" Filetype-specific {{{
" Clojure {{{
call GoodWolfHL('clojureParen0', 'lightgravel', '', 'none')
call GoodWolfHL('clojureAnonArg', 'snow', '', 'bold')
" }}}
" CSS {{{
call GoodWolfHL('cssBraces', 'lightgravel', '', 'none')
" }}}
" Diff {{{
call GoodWolfHL('gitDiff', 'lightgravel', '',)
call GoodWolfHL('diffRemoved', 'dress', '',)
call GoodWolfHL('diffAdded', 'lime', '',)
call GoodWolfHL('diffFile', 'coal', 'toffee', 'bold')
call GoodWolfHL('diffNewFile', 'coal', 'toffee', 'bold')
call GoodWolfHL('diffLine', 'coal', 'orange', 'bold')
call GoodWolfHL('diffSubname', 'orange', '', 'none')
" }}}
" HTML {{{
" Punctuation
call GoodWolfHL('htmlTag', 'darkroast', 'bg', 'none')
call GoodWolfHL('htmlEndTag', 'darkroast', 'bg', 'none')
" Tag names
call GoodWolfHL('htmlTagName', 'coffee', '', 'bold')
call GoodWolfHL('htmlSpecialTagName', 'coffee', '', 'bold')
call GoodWolfHL('htmlSpecialChar', 'lime', '', 'none')
" Attributes
call GoodWolfHL('htmlArg', 'coffee', '', 'none')
" Stuff inside an <a> tag
if g:badwolf_html_link_underline
call GoodWolfHL('htmlLink', 'lightgravel', '', 'underline')
else
call GoodWolfHL('htmlLink', 'lightgravel', '', 'none')
endif
" }}}
" Java {{{
call GoodWolfHL('javaCommentTitle', 'gravel', '')
call GoodWolfHL('javaDocTags', 'snow', '', 'none')
call GoodWolfHL('javaDocParam', 'plain', '', '')
" }}}
" LaTeX {{{
call GoodWolfHL('texStatement', 'dress', '', 'none')
call GoodWolfHL('texDocType', 'dress', '', 'none')
call GoodWolfHL('texSection', 'dress', '', 'none')
call GoodWolfHL('texBeginEnd', 'dress', '', 'none')
call GoodWolfHL('texMathZoneX', 'orange', '', 'none')
call GoodWolfHL('texMathZoneA', 'orange', '', 'none')
call GoodWolfHL('texMathZoneB', 'orange', '', 'none')
call GoodWolfHL('texMathZoneC', 'orange', '', 'none')
call GoodWolfHL('texMathZoneD', 'orange', '', 'none')
call GoodWolfHL('texMathZoneE', 'orange', '', 'none')
call GoodWolfHL('texMathZoneV', 'orange', '', 'none')
call GoodWolfHL('texMathZoneX', 'orange', '', 'none')
call GoodWolfHL('texMath', 'orange', '', 'none')
call GoodWolfHL('texMathMatcher', 'orange', '', 'none')
call GoodWolfHL('texRefLabel', 'dirtyblonde', '', 'none')
call GoodWolfHL('texRefZone', 'lime', '', 'none')
call GoodWolfHL('texDelimiter', 'orange', '', 'none')
call GoodWolfHL('texZone', 'brightgravel', '', 'none')
augroup badwolf_tex
au!
au BufRead,BufNewFile *.tex syn region texMathZoneV start="\\(" end="\\)\|%stopzone\>" keepend contains=@texMathZoneGroup
au BufRead,BufNewFile *.tex syn region texMathZoneX start="\$" skip="\\\\\|\\\$" end="\$\|%stopzone\>" keepend contains=@texMathZoneGroup
augroup END
" }}}
" REPLs {{{
" This isn't a specific plugin, but just useful highlight classes for anything
" that might want to use them.
call GoodWolfHL('replPrompt', 'tardis', '', 'bold')
" }}}
" Mail {{{
call GoodWolfHL('mailSubject', 'orange', '', 'bold')
call GoodWolfHL('mailHeader', 'lightgravel', '', '')
call GoodWolfHL('mailHeaderKey', 'lightgravel', '', '')
call GoodWolfHL('mailHeaderEmail', 'snow', '', '')
call GoodWolfHL('mailURL', 'toffee', '', 'underline')
call GoodWolfHL('mailSignature', 'gravel', '', 'none')
call GoodWolfHL('mailQuoted1', 'gravel', '', 'none')
call GoodWolfHL('mailQuoted2', 'dress', '', 'none')
call GoodWolfHL('mailQuoted3', 'dirtyblonde', '', 'none')
call GoodWolfHL('mailQuoted4', 'orange', '', 'none')
call GoodWolfHL('mailQuoted5', 'lime', '', 'none')
" }}}
" Markdown {{{
call GoodWolfHL('markdownHeadingRule', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownHeadingDelimiter', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownOrderedListMarker', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownListMarker', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownItalic', 'snow', '', 'bold')
call GoodWolfHL('markdownBold', 'snow', '', 'bold')
call GoodWolfHL('markdownH1', 'orange', '', 'bold')
call GoodWolfHL('markdownH2', 'lime', '', 'bold')
call GoodWolfHL('markdownH3', 'lime', '', 'none')
call GoodWolfHL('markdownH4', 'lime', '', 'none')
call GoodWolfHL('markdownH5', 'lime', '', 'none')
call GoodWolfHL('markdownH6', 'lime', '', 'none')
call GoodWolfHL('markdownLinkText', 'toffee', '', 'underline')
call GoodWolfHL('markdownIdDeclaration', 'toffee')
call GoodWolfHL('markdownAutomaticLink', 'toffee', '', 'bold')
call GoodWolfHL('markdownUrl', 'toffee', '', 'bold')
call GoodWolfHL('markdownUrldelimiter', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownLinkDelimiter', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownLinkTextDelimiter', 'lightgravel', '', 'bold')
call GoodWolfHL('markdownCodeDelimiter', 'dirtyblonde', '', 'bold')
call GoodWolfHL('markdownCode', 'dirtyblonde', '', 'none')
call GoodWolfHL('markdownCodeBlock', 'dirtyblonde', '', 'none')
" }}}
" Python {{{
hi def link pythonOperator Operator
call GoodWolfHL('pythonBuiltin', 'plain')
call GoodWolfHL('pythonBuiltinObj', 'plain')
call GoodWolfHL('pythonBuiltinFunc', 'plain')
call GoodWolfHL('pythonEscape', 'plain')
call GoodWolfHL('pythonException', 'plain', '', 'none')
call GoodWolfHL('pythonExceptions', 'plain', '', 'none')
call GoodWolfHL('pythonPrecondit', 'plain', '', 'none')
call GoodWolfHL('pythonDecorator', 'plain', '', 'none')
call GoodWolfHL('pythonRun', 'plain', '', 'none')
call GoodWolfHL('pythonCoding', 'plain', '', 'bold')
" }}}
" Vim {{{
call GoodWolfHL('helpHyperTextJump', 'dress', '', 'none')
" }}}
" }}}

538
.vim/colors/ps_color.vim Normal file
View File

@@ -0,0 +1,538 @@
" Vim colour file --- PSC
" Maintainer: Pan, Shi Zhu <Go to the following URL for my email>
" URL: http://vim.sourceforge.net/scripts/script.php?script_id=760
" Last Change: 23 Oct 2006
" Version: 3.00
"
" Please prepend [VIM] in the title when writing e-mail to me, or it will
" be automatically treated as spam and removed.
"
" See the help document for all details, the help document will be
" installed after the script has been sourced once, do not open the
" script when you source it for the first time.
"
" Initializations: {{{1
"
" without user_commands, all these are not possible
if !has("user_commands")
finish
end
" Init the option to the default value if not defined by user.
function! s:init_option(var, value)
if !exists("g:psc_".a:var)
execute "let s:".a:var." = ".a:value
else
let s:{a:var} = g:psc_{a:var}
endif
endfunction
command! -nargs=+ InitOpt call s:init_option(<f-args>)
" give highlight setting to multiple highlight groups, maximum 20
function! s:multi_hi(setting, ...)
let l:idx = a:0
while l:idx > 0
let l:hlgroup = a:{l:idx}
execute "highlight ".l:hlgroup." ".a:setting
let l:idx = l:idx - 1
endwhile
endfunction
command! -nargs=+ MultiHi call s:multi_hi(<f-args>)
InitOpt style 'cool'
InitOpt cterm_transparent 0
InitOpt inversed_todo 0
InitOpt use_default_for_cterm 0
InitOpt statement_different_from_type 0
if !has("gui_running")
call s:init_option("cterm_style", "'".s:style."'")
if s:use_default_for_cterm==1 | let s:cterm_style = 'default'
elseif s:use_default_for_cterm==2 | let s:cterm_style = 'defdark'
endif
endif
InitOpt other_style 0
" WJMc had changed a version of this, however, it will messed up some features
" when the psc_style being other values than 'warm' and 'cool'. The psc_style
" is designed to accept any colorscheme name, such as 'desert'. The following
" code follows the basic principle of WJMc's code.
if &background=='light'
if has("gui_running")
if s:style=='warm' || s:style=='default'
" nothing to do
elseif s:style=='cool'
let s:style = 'warm'
elseif s:style=='defdark'
let s:style = 'default'
else
let s:other_style = 1
endif
else
if s:cterm_style=='cool' || s:cterm_style=='defdark' || s:cterm_style=='warm'
let s:cterm_style='default'
elseif s:cterm_style=='default'
" nothing to do
else
let s:other_style = 1
endif
endif
elseif &background=='dark'
if s:style=='warm'
let s:style = 'cool'
elseif s:style=='default'
let s:style = 'defdark'
elseif s:style=='cool' || s:style=='defdark'
" nothing to do
else
let s:other_style = 1
endif
let s:cterm_style = s:style
else
echo "unrecognized background=" &background ", ps_color halt.\n"
finish
endif
" This should be after the style mangling
if s:style == 'warm'
InitOpt fontface 'mixed'
else
InitOpt fontface 'plain'
endif
" === Traditional Color Scheme script starts here. ===
highlight clear
if exists("syntax_on")
syntax reset
endif
let s:color_name = expand("<sfile>:t:r")
if s:other_style==0
let g:colors_name = s:color_name
" Go from console version to gui, the color scheme should be sourced again
execute "autocmd TermChanged * if g:colors_name == '".s:color_name."' | "
\."colo ".s:color_name." | endif"
else
execute "runtime colors/".s:style.".vim"
endif
" Command to go different schemes easier.
" This is a multi-purpose command, might be a poor design.
" WJMc had a change for this, but the 'reloaded' style and other colorscheme
" cannot be launched that way.
execute "command! -nargs=1 Colo if '".s:color_name."'!=\"<args>\" |".
\'let g:psc_style = "<args>"| endif |'.
\'if g:psc_style=="warm" | set background=light | endif |'.
\'if g:psc_style=="cool" | set background=dark | endif |'.
\'colo '.s:color_name
" Give control to 'reloaded' scheme if possible
if s:style == 'reloaded'
finish
endif
" }}}1
" Relevant Help:
" :h highlight-groups
" :h psc-cterm-color-table
" :ru syntax/hitest.vim
"
" Hard coded Colors Comment:
" #aabbcc = Red aa, Green bb, Blue cc
" we must use hard-coded colours to get more 'tender' colours
"
" GUI:
"
" I don't want to abuse folding, but here folding is used to avoid confusion.
if s:style=='warm'
" Warm style for gui here {{{2
" LIGHT COLOR DEFINE START
highlight Normal guifg=#000000 guibg=#e0e0e0
highlight Search guifg=NONE guibg=#f8f8f8
highlight Visual guifg=NONE guibg=#a6caf0
highlight Cursor guifg=#f0f0f0 guibg=#008000
" The idea of CursorIM is pretty good, however, the feature is still buggy
" in the current version (Vim 7.0).
" The following line will be kept commented until the bug fixed.
"
" highlight CursorIM guifg=#f0f0f0 guibg=#800080
highlight Special guifg=#907000 guibg=NONE
highlight Comment guifg=#606000 guibg=NONE
highlight Number guifg=#907000 guibg=NONE
highlight Constant guifg=#007068 guibg=NONE
highlight StatusLine guifg=fg guibg=#a6caf0
highlight LineNr guifg=#686868 guibg=NONE
highlight Question guifg=fg guibg=#d0d090
highlight PreProc guifg=#009030 guibg=NONE
if s:statement_different_from_type==1
highlight Statement guifg=#4020a0 guibg=NONE
else
highlight Statement guifg=#2060a8 guibg=NONE
endif
highlight Type guifg=#0850a0 guibg=NONE
if s:inversed_todo==1
highlight Todo guifg=#e0e090 guibg=#000080
else
highlight Todo guifg=#800000 guibg=#e0e090
endif
" NOTE THIS IS IN THE WARM SECTION
highlight Error guifg=#c03000 guibg=NONE
highlight Identifier guifg=#a030a0 guibg=NONE
highlight ModeMsg guifg=fg guibg=#b0b0e0
highlight VisualNOS guifg=fg guibg=#b0b0e0
highlight SpecialKey guifg=#1050a0 guibg=NONE
highlight NonText guifg=#002090 guibg=#d0d0d0
highlight Directory guifg=#a030a0 guibg=NONE
highlight ErrorMsg guifg=fg guibg=#f0b090
highlight MoreMsg guifg=#489000 guibg=NONE
highlight Title guifg=#a030a0 guibg=NONE
highlight WarningMsg guifg=#b02000 guibg=NONE
highlight WildMenu guifg=fg guibg=#d0d090
highlight Folded guifg=NONE guibg=#b0e0b0
highlight FoldColumn guifg=fg guibg=#90e090
highlight DiffAdd guifg=NONE guibg=#b0b0e0
highlight DiffChange guifg=NONE guibg=#e0b0e0
highlight DiffDelete guifg=#002090 guibg=#d0d0d0
highlight DiffText guifg=NONE guibg=#c0e080
highlight SignColumn guifg=fg guibg=#90e090
highlight IncSearch guifg=#f0f0f0 guibg=#806060
highlight StatusLineNC guifg=fg guibg=#c0c0c0
highlight VertSplit guifg=fg guibg=#c0c0c0
highlight Underlined guifg=#6a5acd guibg=NONE gui=underline
highlight Ignore guifg=bg guibg=NONE
" NOTE THIS IS IN THE WARM SECTION
if v:version >= 700
if has('spell')
highlight SpellBad guifg=NONE guibg=NONE guisp=#c03000
highlight SpellCap guifg=NONE guibg=NONE guisp=#2060a8
highlight SpellRare guifg=NONE guibg=NONE guisp=#a030a0
highlight SpellLocal guifg=NONE guibg=NONE guisp=#007068
endif
highlight Pmenu guifg=fg guibg=#e0b0e0
highlight PmenuSel guifg=#f0f0f0 guibg=#806060
highlight PmenuSbar guifg=fg guibg=#c0c0c0
highlight PmenuThumb guifg=fg guibg=#c0e080
highlight TabLine guifg=fg guibg=#c0c0c0 gui=underline
highlight TabLineFill guifg=fg guibg=#c0c0c0 gui=underline
highlight TabLineSel guifg=fg guibg=NONE
highlight CursorColumn guifg=NONE guibg=#f0b090
highlight CursorLine guifg=NONE guibg=NONE gui=underline
highlight MatchParen guifg=NONE guibg=#c0e080
endif
" LIGHT COLOR DEFINE END
" }}}2
elseif s:style=='cool'
" Cool style for gui here {{{2
" DARK COLOR DEFINE START
highlight Normal guifg=#d0d0d0 guibg=#202020
highlight Comment guifg=#d0d090 guibg=NONE
highlight Constant guifg=#80c0e0 guibg=NONE
highlight Number guifg=#e0c060 guibg=NONE
highlight Identifier guifg=#f0c0f0 guibg=NONE
if s:statement_different_from_type==1
highlight Statement guifg=#98a8f0 guibg=NONE
else
highlight Statement guifg=#c0d8f8 guibg=NONE
endif
highlight PreProc guifg=#60f080 guibg=NONE
highlight Type guifg=#b0d0f0 guibg=NONE
highlight Special guifg=#e0c060 guibg=NONE
highlight Error guifg=#f08060 guibg=NONE
if s:inversed_todo==1
highlight Todo guifg=#d0d090 guibg=#000080
else
highlight Todo guifg=#800000 guibg=#d0d090
endif
highlight Search guifg=NONE guibg=#800000
highlight Visual guifg=#000000 guibg=#a6caf0
highlight Cursor guifg=#000000 guibg=#00f000
" NOTE THIS IS IN THE COOL SECTION
" highlight CursorIM guifg=#000000 guibg=#f000f0
highlight StatusLine guifg=#000000 guibg=#a6caf0
highlight LineNr guifg=#b0b0b0 guibg=NONE
highlight Question guifg=#000000 guibg=#d0d090
highlight ModeMsg guifg=fg guibg=#000080
highlight VisualNOS guifg=fg guibg=#000080
highlight SpecialKey guifg=#b0d0f0 guibg=NONE
highlight NonText guifg=#6080f0 guibg=#101010
highlight Directory guifg=#80c0e0 guibg=NONE
highlight ErrorMsg guifg=#d0d090 guibg=#800000
highlight MoreMsg guifg=#c0e080 guibg=NONE
highlight Title guifg=#f0c0f0 guibg=NONE
highlight WarningMsg guifg=#f08060 guibg=NONE
highlight WildMenu guifg=#000000 guibg=#d0d090
highlight Folded guifg=NONE guibg=#004000
highlight FoldColumn guifg=#e0e0e0 guibg=#008000
highlight DiffAdd guifg=NONE guibg=#000080
highlight DiffChange guifg=NONE guibg=#800080
highlight DiffDelete guifg=#6080f0 guibg=#202020
highlight DiffText guifg=#000000 guibg=#c0e080
highlight SignColumn guifg=#e0e0e0 guibg=#008000
highlight IncSearch guifg=#000000 guibg=#d0d0d0
highlight StatusLineNC guifg=#000000 guibg=#c0c0c0
highlight VertSplit guifg=#000000 guibg=#c0c0c0
highlight Underlined guifg=#80a0ff guibg=NONE gui=underline
highlight Ignore guifg=#000000 guibg=NONE
" NOTE THIS IS IN THE COOL SECTION
if v:version >= 700
if has('spell')
highlight SpellBad guifg=NONE guibg=NONE guisp=#f08060
highlight SpellCap guifg=NONE guibg=NONE guisp=#6080f0
highlight SpellRare guifg=NONE guibg=NONE guisp=#f0c0f0
highlight SpellLocal guifg=NONE guibg=NONE guisp=#c0d8f8
endif
highlight Pmenu guifg=fg guibg=#800080
highlight PmenuSel guifg=#000000 guibg=#d0d0d0
highlight PmenuSbar guifg=fg guibg=#000080
highlight PmenuThumb guifg=fg guibg=#008000
highlight TabLine guifg=fg guibg=#008000 gui=underline
highlight TabLineFill guifg=fg guibg=#008000 gui=underline
highlight TabLineSel guifg=fg guibg=NONE
highlight CursorColumn guifg=NONE guibg=#800000
highlight CursorLine guifg=NONE guibg=NONE gui=underline
highlight MatchParen guifg=NONE guibg=#800080
endif
" DARK COLOR DEFINE END
" }}}2
elseif s:style=='defdark'
highlight Normal guifg=#f0f0f0 guibg=#000000
endif
" Take NT gui for example, If you want to use a console font such as
" Lucida_Console with font size larger than 14, the font looks already thick,
" and the bold font for that will be too thick, you may not want it be bold.
" The following code does this.
"
" All of the bold font may be disabled, since continuously switching between
" bold and plain font hurts consistency and will inevitably fatigue your eye!
" Maximum 20 parameters for vim script function
"
MultiHi gui=NONE ModeMsg Search Cursor Special Comment Constant Number LineNr Question PreProc Statement Type Todo Error Identifier Normal
MultiHi gui=NONE VisualNOS SpecialKey NonText Directory ErrorMsg MoreMsg Title WarningMsg WildMenu Folded FoldColumn DiffAdd DiffChange DiffDelete DiffText SignColumn
" Vim 7 added stuffs
if v:version >= 700
MultiHi gui=NONE Ignore PmenuSel PmenuSel PmenuSbar PmenuThumb TabLine TabLineFill TabLineSel
" the gui=undercurl guisp could only support in Vim 7
if has('spell')
MultiHi gui=undercurl SpellBad SpellCap SpellRare SpellLocal
endif
if s:style=="cool" || s:style=="warm"
MultiHi gui=underline TabLine TabLineFill Underlined CursorLine
else
MultiHi gui=underline TabLine Underlined
endif
endif
" For reversed stuffs
MultiHi gui=NONE IncSearch StatusLine StatusLineNC VertSplit Visual
if s:style=="cool" || s:style=="warm"
if s:fontface=="mixed"
MultiHi gui=bold IncSearch StatusLine StatusLineNC VertSplit Visual
endif
else
if s:fontface=="mixed"
hi StatusLine gui=bold,reverse
else
hi StatusLine gui=reverse
endif
MultiHi gui=reverse IncSearch StatusLineNC VertSplit Visual
endif
" Enable the bold style
if s:fontface=="mixed"
MultiHi gui=bold Question DiffText Statement Type MoreMsg ModeMsg NonText Title VisualNOS DiffDelete TabLineSel
endif
" Color Term:
" It's not quite possible to support 'cool' and 'warm' simultaneously, since
" we cannot expect a terminal to have more than 16 color names.
"
" I assume Vim will never go to cterm mode when has("gui_running") returns 1,
" Please enlighten me if I am wrong.
"
if !has('gui_running')
" cterm settings {{{1
if s:cterm_style=='cool'
if s:cterm_transparent
highlight Normal ctermfg=LightGrey ctermbg=NONE
highlight Special ctermfg=Yellow ctermbg=NONE
highlight Comment ctermfg=DarkYellow ctermbg=NONE
highlight Constant ctermfg=Blue ctermbg=NONE
highlight Number ctermfg=Yellow ctermbg=NONE
highlight LineNr ctermfg=DarkGrey ctermbg=NONE
highlight PreProc ctermfg=Green ctermbg=NONE
highlight Statement ctermfg=Cyan ctermbg=NONE
highlight Type ctermfg=Cyan ctermbg=NONE
highlight Error ctermfg=Red ctermbg=NONE
highlight Identifier ctermfg=Magenta ctermbg=NONE
highlight SpecialKey ctermfg=Cyan ctermbg=NONE
highlight NonText ctermfg=Blue ctermbg=NONE
highlight Directory ctermfg=Blue ctermbg=NONE
highlight MoreMsg ctermfg=Green ctermbg=NONE
highlight Title ctermfg=Magenta ctermbg=NONE
highlight WarningMsg ctermfg=Red ctermbg=NONE
highlight DiffDelete ctermfg=Blue ctermbg=NONE
else
highlight Normal ctermfg=LightGrey ctermbg=Black
highlight Special ctermfg=Yellow ctermbg=bg
highlight Comment ctermfg=DarkYellow ctermbg=bg
highlight Constant ctermfg=Blue ctermbg=bg
highlight Number ctermfg=Yellow ctermbg=bg
highlight LineNr ctermfg=DarkGrey ctermbg=bg
highlight PreProc ctermfg=Green ctermbg=bg
highlight Statement ctermfg=Cyan ctermbg=bg
highlight Type ctermfg=Cyan ctermbg=bg
highlight Error ctermfg=Red ctermbg=bg
highlight Identifier ctermfg=Magenta ctermbg=bg
highlight SpecialKey ctermfg=Cyan ctermbg=bg
highlight NonText ctermfg=Blue ctermbg=bg
highlight Directory ctermfg=Blue ctermbg=bg
highlight MoreMsg ctermfg=Green ctermbg=bg
highlight Title ctermfg=Magenta ctermbg=bg
highlight WarningMsg ctermfg=Red ctermbg=bg
highlight DiffDelete ctermfg=Blue ctermbg=bg
endif
highlight Search ctermfg=NONE ctermbg=DarkRed
highlight Visual ctermfg=Black ctermbg=DarkCyan
highlight Cursor ctermfg=Black ctermbg=Green
highlight StatusLine ctermfg=Black ctermbg=DarkCyan
highlight Question ctermfg=Black ctermbg=DarkYellow
if s:inversed_todo==0
highlight Todo ctermfg=DarkRed ctermbg=DarkYellow
else
highlight Todo ctermfg=DarkYellow ctermbg=DarkBlue
endif
highlight Folded ctermfg=White ctermbg=DarkGreen
highlight ModeMsg ctermfg=Grey ctermbg=DarkBlue
highlight VisualNOS ctermfg=Grey ctermbg=DarkBlue
highlight ErrorMsg ctermfg=DarkYellow ctermbg=DarkRed
highlight WildMenu ctermfg=Black ctermbg=DarkYellow
highlight FoldColumn ctermfg=White ctermbg=DarkGreen
highlight SignColumn ctermfg=White ctermbg=DarkGreen
highlight DiffText ctermfg=Black ctermbg=DarkYellow
if v:version >= 700
if has('spell')
highlight SpellBad ctermfg=NONE ctermbg=DarkRed
highlight SpellCap ctermfg=NONE ctermbg=DarkBlue
highlight SpellRare ctermfg=NONE ctermbg=DarkMagenta
highlight SpellLocal ctermfg=NONE ctermbg=DarkGreen
endif
highlight Pmenu ctermfg=fg ctermbg=DarkMagenta
highlight PmenuSel ctermfg=Black ctermbg=fg
highlight PmenuSbar ctermfg=fg ctermbg=DarkBlue
highlight PmenuThumb ctermfg=fg ctermbg=DarkGreen
highlight TabLine ctermfg=fg ctermbg=DarkGreen cterm=underline
highlight TabLineFill ctermfg=fg ctermbg=DarkGreen cterm=underline
highlight CursorColumn ctermfg=NONE ctermbg=DarkRed
if s:cterm_transparent
highlight TabLineSel ctermfg=fg ctermbg=NONE
highlight CursorLine ctermfg=NONE ctermbg=NONE cterm=underline
else
highlight TabLineSel ctermfg=fg ctermbg=bg
highlight CursorLine ctermfg=NONE ctermbg=bg cterm=underline
endif
highlight MatchParen ctermfg=NONE ctermbg=DarkMagenta
endif
if &t_Co==8
" 8 colour terminal support, this assumes 16 colour is available through
" setting the 'bold' attribute, will get bright foreground colour.
" However, the bright background color is not available for 8-color terms.
"
" You can manually set t_Co=16 in your .vimrc to see if your terminal
" supports 16 colours,
MultiHi cterm=none DiffText Visual Cursor Comment Todo StatusLine Question DiffChange ModeMsg VisualNOS ErrorMsg WildMenu DiffAdd Folded DiffDelete Normal PmenuThumb
MultiHi cterm=bold Search Special Constant Number LineNr PreProc Statement Type Error Identifier SpecialKey NonText MoreMsg Title WarningMsg FoldColumn SignColumn Directory DiffDelete
else
" Background > 7 is only available with 16 or more colors
" Only use the s:fontface option when there is 16-colour(or more)
" terminal support
MultiHi cterm=none WarningMsg Search Visual Cursor Special Comment Constant Number LineNr PreProc Todo Error Identifier Folded SpecialKey Directory ErrorMsg Normal PmenuThumb
MultiHi cterm=none WildMenu FoldColumn SignColumn DiffAdd DiffChange Question StatusLine DiffText
MultiHi cterm=reverse IncSearch StatusLineNC VertSplit
" Well, well, bold font with color 0-7 is not possible.
" So, the Question, StatusLine, DiffText cannot act as expected.
call s:multi_hi("cterm=".((s:fontface=="plain") ? "none" : "bold"), "Statement", "Type", "MoreMsg", "ModeMsg", "NonText", "Title", "VisualNOS", "DiffDelete", "TabLineSel")
endif
elseif s:cterm_style=='defdark'
highlight Normal ctermfg=LightGrey ctermbg=NONE
endif
" }}}1
endif
" Term:
" For console with only 4 colours (term, not cterm), we'll use the default.
" ...
" The default colorscheme is good enough for terms with no more than 4 colours
"
" Links:
"
if (s:style=='cool') || (s:style == 'warm')
" COLOR LINKS DEFINE START
highlight link String Constant
" Character must be different from strings because in many languages
" (especially C, C++) a 'char' variable is scalar while 'string' is pointer,
" mistaken a 'char' for a 'string' will cause disaster!
highlight link Character Number
highlight link SpecialChar LineNr
highlight link Tag Identifier
" The following are not standard hi links,
" these are used by DrChip
highlight link Warning MoreMsg
highlight link Notice Constant
" these are used by Calendar
highlight link CalToday PreProc
" these are used by TagList
highlight link MyTagListTagName IncSearch
highlight link MyTagListTagScope Constant
" COLOR LINKS DEFINE END
endif
" Clean:
" these clean stuffs are proved to have problem, so I removed them.
delcommand InitOpt
delcommand MultiHi
" delfunction init_option
" delfunction multi_hi
" vim:et:nosta:sw=2:ts=8:
" vim600:fdm=marker:fdl=1:

1117
.vim/colors/solarized.vim Normal file

File diff suppressed because it is too large Load Diff

657
.vim/doc/ps_color.txt Normal file
View File

@@ -0,0 +1,657 @@
*ps_color.txt* PSC For Vim version 7.0 Last change: 23 Oct 2006
PERSONAL COLOUR SWITCHER *ps_colour* *pscolor*
Author: Pan, Shi Zhu. <see vim online for my e-mail>
==============================================================================
CONTENTS *psc* *psc-contents*
1. Contents.....................|psc-contents|
2. PSC Overview.................|psc-overview|
3. PSC Installation.............|psc-usage|
4. PSC Options..................|psc-options|
5. PSC under colour term .......|psc-cterm|
6. PSC FAQ and Tips ............|psc-faq|
7. PSC Release notes............|psc-release-notes|
8. PSC Todo List................|psc-todo|
For release notes, please see the header of ps_color.vim
==============================================================================
PSC FEATURES OVERVIEW *psc-features* *psc-overview*
Features ~
. PSC is firstly a color scheme which have both dark and light
background styles.
. It can have the same appearance in [cterm] as in [gui].
. It is designed with gentle color to minimize fatigue of eye.
. It also works with other color schemes.
. Default foreground and background can easily be changed, it is more
configurable than most other color schemes
. Works with the optional tool reloaded.vim, can change the whole
color scheme in Hue,Saturation,Luminance color space.
Design Concern ~
At the first glance this colour scheme may look pretty 'dull', don't be
afraid, this is quite normal. Bear in mind that a text editor is not
a photo album, if a text editor looks exciting you may not be able to
stare at it for a long time.
Predefined Vim Syntax highlighting can be too colourful or contrasted so
that many programmers prefer to switch off the syntax highlighting at
work. That is not a good idea because you will lost the advantages of
syntax high-lighting. It is often the case that we have to work for
300+ minutes, then I decide to do-it-myself.
Many user-defined color schemes in vim.sf.net tend to achieve low
contrast by having a strong color-cast, i.e., looks blueish or
yellowish or reddish. This does look comfortable at first, however,
any type of color-cast will cause the eyes less sensitive for
particular color after a long-time work session, and that's no good to
health.
Efforts had been made to ensure no color-cast for this scheme, all
elementary colours like RGB and CYMK are evenly used. Like TeX,
'consistency' is the principle this color scheme based on. Default
values which hurt consistency are amended according to the vim script
syntax/hitest.vim
There are 3 parameters to describe a color: Hue, Saturation and
Brightness. In this color scheme, the saturation is low and the
brightness are designed to be very close to each other in order not to
fatigue our eyes after a whole day's programming work.
Portability ~
Different monitor settings led to different look. In this color
scheme, it is assumed that the monitor adjust at 6500k color
temperature with a good gamma curve. If you have a 9300k monitor or
if the gamma curve is not optimal, the appearance may be less
comfortable, use adobe gamma loader or similar tools to adjust
your monitor if your monitor do not have the option to change color
temperature and/or gamma curve.
Needless to say, VI is an editor originally designed to do edit tasks
in a text terminal, and VIM is an improved version of VI. Its a shame
that a color scheme cannot have a satisfactory appearance in cterm.
The cterm compatibility should be considered high priority when
designing ViM color scheme.
I had made much attempt to make support for 8-color terminals,
however, 8 colours is not enough to represent a color scheme. Finally
I end up making the cterm support for 16-color terminal. Have to say
sorry if the color scheme sucks in your 8-color terminal, I had tried
my best. More details about cterm please see |psc-cterm|.
*psc-about-background*
About the Background ~
We have talked about off-white backgrounds, any background which is
not black, grey or white should be changed constantly in order not to
make the eyes less sensitive to particular color. i.e., you can use
blue background on Monday, red background on Tuesday, green background
on Wednesday, but if you use blue background everyday, that's no good
to your health.
Now we talk about the brightness of the background. Why dark
background is preferred over others? There are many reasons, such as,
the monitor emits lower radiation for black background. You may have
lots of similar reasons...
But I'll talk about something you may not know:
>
It is easier to distinguish foreground colours on a dark background
than on a light background.
At the same time, it is easier to distinguish background colours on
a light background than on a dark background.
We will mainly change foreground colours for syntax highlighting.
<
Hence, we can reduce the contrast and saturation of the color in
a dark-background scheme, while retain the readability. Schemes with
white background usually comes with higher contrast and saturation.
This is probably the most important reason that the color scheme is
designed to be dark-background instead of light one.
Now we came to know, that change the foreground color is enough to
emphasis text in a dark background, while for a white background, we
need to change the font shape (bold or italic, etc.), or change the
background color to effectively emphasis the text. This is probably
the reason Vim default scheme has bold properties for highlighting
groups, because the default scheme is a light background one.
No one knows what color scheme is best for you, except yourself. Try!
==============================================================================
PSC INSTALLATION *psc-usage*
Step 1, Enable the color scheme ~
To use PSC is simple, just put ps_color.vim into your
[runtimepath]/colors and append the line >
colorscheme ps_color
<
to your |.vimrc|. The [runtimepath] can be any directory listed in
|vimfiles|, normally your $HOME/.vim in Unix or $HOME/vimfiles in
Windows.
Step 2, Install the help document ~
The help document will be automatically installed when the colorscheme
be sourced the first time. If it is not, type :colo ps_color now.
After successfully installed the help document, you can use >
:help psc-options
<
to go to the following section.
==============================================================================
PSC OPTIONS *psc-options*
You can let these options in your ~/.vimrc, most options works for
both GUI and cterm, only some of them do not work for both.
Options set using the 'let' command must present [BEFORE] the color
scheme been sourced.
*psc_style*
Style ~
>
let psc_style='cool'
let psc_style='warm'
let psc_style='default'
let psc_style='defdark'
<
This selects between styles of colors,
The 'cool' is the default, dark background.
The 'warm' is the alternative, light background scheme.
See |psc-about-background| for more knowledge about the background,
and the differences of two style.
The 'default' and 'defdark' refers to Vim system default color scheme.
Which are provided only for reference.
Let psc_style to any string other than the above 4 will switch to the
specified color scheme. For example, let psc_style='desert' and then
activate the ps_color, the color scheme will be chosen according to
desert.vim color scheme.
*psc_cterm_style*
Color Term Style ~
>
let psc_cterm_style='cool'
<
This is exactly the same to psc_style, except that it only affects the
console version of vim in a color terminal, the 'warm' is not
available for cterm.
By default, it will be set to the same value as 'psc_style'. You can
change it if you want different style in cterm from gui.
*psc_cterm_transparent*
Color Term Transparent ~
>
let psc_cterm_transparent=1
<
If this is set, cterm will use the transparent background.
i.e. the background will be the same as your terminal.
When background=dark, you should have a dark background for your
terminal, otherwise will result in poor readability.
If this is reset (the default), cterm will use the Black background
anyway.
*psc_fontface*
Font face ~
>
let psc_fontface='plain'
let psc_fontface='mixed'
<
The Vim default behavior is the 'mixed', however, the mixed font style
in a dark colorscheme is not optimal. This color uses 'plain' for
'cool' style, i.e. No texts are bold font. For 'warm', the default
is still 'mixed', If you want the mixed style in which the highlighted
statements are bold font, choose this. If you want all texts be
bold, choose 'plain' and specify a bold guifont or terminal font.
In GUI, this option also works for other color schemes. You can
disable the bold font and use your favorite color scheme. See
|psc-faq-ffothers| for detail.
*psc_inversed_todo*
Inversed Todo ~
>
let psc_inversed_todo=1
<
When set to 1, the TODO group will be dark background with light font,
Otherwise, the TODO group have light background with dark foreground.
Default is 0.
*psc_use_default_for_cterm*
Use default for cterm (obsoleted)~
This option is Obsoleted, retained only for backward compatibility,
see |psc_cterm_style| for alternative.
*psc_statement_different_from_type*
Statement different from type ~
>
let psc_statement_different_from_type=1
<
The Statement-group and Type-group are easy to distinguish, different
color for them are not necessary, I use similar color for S-group
& T-group in order not to make the screen too 'colorful', also this
saves a color name for cterm. But if you do want the Statement & Type
to be different color, try 'let statement_different_from_type=1' in
your .vimrc file, which is available only for GUI. Since the color
names in cterm is limited to 16 we cannot have too many different
colors in cterm.
Default is 0, i.e. they have very similar color.
*psc-change-background*
Changing the Background color ~
You may prefer a black background over the dark one, and it is
possible to customize it, this may make life more interesting. To do
this is quite straight forward for GUI, just define the Normal
highlight in your .gvimrc, [AFTER] the color scheme has been sourced.
For example:
>
highlight Normal guibg=#000000
<
The #103040 will give a taste similar to oceandeep, #152535 for
hhazure, #303030 for desert, #404040 for zenburn... Replace #103040
with any color you like. You can do the same to guifg foreground if
you are careful enough, remember this is only possible for GUI.
You can do this to the NonText group also, for example.
>
highlight NonText guibg=#202020
<
will give you a taste similar to most color schemes on vim.sf.net, in
which the NonText has a different background than Normal text.
However, this is only useful in GUI, in cterm, there are only
8 background colors, so it is wise not to have a different color.
If you want more variations, please try the optional utility
reloaded.vim, this optional utility provides an amazing level of
customization.
Quick switching between warm and cold styles ~
Here is an example to define hot key of different style switching,
note that I had only given this example without actually define it.
You can choose to define it in .vimrc or anyway you prefer.
>
nnoremap <Leader>pc :let psc_style='cool'<CR>:colo ps_color<CR>
nnoremap <Leader>pw :let psc_style='warm'<CR>:colo ps_color<CR>
<
Alternatively, you can use the capitalized :Colo command, like
:Colo cool or :Colo warm
==============================================================================
PSC WITH CTERM *psc-cterm*
Colour Term ~
The cterm color is designed mainly in these terminals:
>
1. Cygwin bash shell in NT command prompt box
2. XTERM and RXVT
3. Other color terminals which have at least 16 colors
<
*psc-cterm-nt*
In Windows NT Prompt console you can change the exact value of each
color, so you can have the same color with your GUI version of Vim,
for 'cool' color style you just change the color according to the
|psc-cterm-color-table|, for how to redefine the color of Windows NT
prompt console please see Windows Help.
NT Cygwin bash shell console supports 16 foreground colors by add bold
attribute to 8 color, the cterm=bold specifies which should be bright
color, so totally the 16 color foreground is available, but color
name DarkXXX and LightXXX are the same.
The pre-configured Cygwin.lnk is available for download on my web page
for Vim, but the site seems down, and the my site would not be on
recently, you may need to change colors in the Properties menu...
Cygwin is highly recommended for Vim user if you are using Windows NT
based systems (e.g. NT 4.0, Win2k, WinXP, Win2003, etc). But Cygwin is
not that versatile under Windows 95/98/ME. I'm not sure whether this
works for DOS DJGPP or Windows 95 console version of Vim because
I don't have the system, in case you encountered problem please
contact me, if you like.
*psc-cterm-xterm*
XTERM is a much more feature-rich terminal than Windows Console so the
support is much better. Normally, add the following recommend line
into your .Xdefaults and you can achieve the same color as in GUI
version, currently only works for XTERM and RXVT.
However, most modern GUI terminal emulators do not read .Xdefaults
at all, in that case you will have to set the color manually according
to |psc-cterm-color-table|.
In case your term supports .Xdefaults, Add the following in it:
>
XTerm*color0: #000000
XTerm*color1: #800000
XTerm*color2: #008000
XTerm*color3: #d0d090
XTerm*color4: #000080
XTerm*color5: #800080
XTerm*color6: #a6caf0
XTerm*color7: #d0d0d0
XTerm*color8: #b0b0b0
XTerm*color9: #f08060
XTerm*color10: #60f080
XTerm*color11: #e0c060
XTerm*color12: #80c0e0
XTerm*color13: #f0c0f0
XTerm*color14: #c0d8f8
XTerm*color15: #e0e0e0
XTerm*cursorColor: #00f000
! The following are recommended but optional
XTerm*reverseVideo: False
XTerm*background: #202020
XTerm*foreground: #d0d0d0
XTerm*boldMode: False
<
There is an assumption that your RXVT or XTERM supports 16 colors,
most RXVTs and XTERMs support this, if yours do not, get a source of
RXVT and recompile it.
Sometimes the color mode are not recognized well, or you do not want
bright foreground be bold. If this is the case, add the following in
your .vimrc (before the color scheme been sourced)
>
if &term=='xterm' " Change 'xterm' to your term name if necessary
set t_Co=16
endif
<
If the t_Co=16 have problem, set t_Co=8 and :colo ps_color again.
and vice versa.
My rxvt works well with t_Co=16: >
Rxvt v2.7.10 - released: 26 MARCH 2003
Options:
XPM,transparent,utmp,menubar,frills,linespace,multichar_languages,
scrollbars=rxvt+NeXT+xterm,.Xdefaults
< But I've know that my rxvt v2.6.4 in another machine has problem with
t_Co=16, if that is the case, set t_Co=8 instead.
*psc-cterm-others*
For other terminals, you can manually set the color according to the
following table
Hints for Manually set the color (for 'cool' style only):
*psc-cterm-color-table*
Color name Hex value Decimal value (r,g,b)~
0 Black = #000000 0,0,0
4 DarkBlue = #000080 0,0,128
2 DarkGreen = #008000 0,128,0
6 DarkCyan = #a6caf0 166,202,240
1 DarkRed = #800000 128,0,0
5 DarkMagenta = #800080 128,0,128
3 DarkYellow = #d0d090 208,208,144
7 Grey = #d0d0d0 208,208,208
8 DarkGrey = #b0b0b0 176,176,176
12 Blue = #80c0e0 128,192,224
10 Green = #60f080 96,240,128
14 Cyan = #c0d8f8 192,216,248
9 Red = #f08060 240,128,96
13 LMag. = #f0c0f0 240,192,240
11 Yellow = #e0c060 224,192,96
15 White = #e0e0e0 224,224,224
*psc-cterm-incompatible*
If your color terminal does only have 8 colors and cannot achieve 16
colors with cterm=bold, you may want to switch to other color schemes
to gain more readability. Anyway, you can specify in your .vimrc to
use different color scheme under different consoles and GUI.
For example:
>
let psc_cterm_style = 'foobarcolor'
let psc_style = 'cool'
colo ps_color
<
The 'foobarcolor' means the color scheme you want to choose, such as
'desert', I recommend to try vim default schemes 'default' and
'defdark' before experience others.
==============================================================================
PSC FAQ AND TIPS *psc-faq* *psc-tips*
>
Q: What is meant by `PS' ?
<
A: PS means: PostScript, PhotoShop, PerSonal, ..., or anything you can
imagine and anything you want it do be.
>
Q: How to obtain the same appreance as gui in color term?
<
A: This need some work around, see |psc-cterm| for details.
Generally speaking, you should ensure your color term has support
for 16 foreground colors, and each color is customizable.
*psc-faq-ffothers* >
Q: How to use psc_fontface with other colorschemes?
<
A: Make sure you had sourced :colo ps_color in your .vimrc, then you
can use the Capitalized :Colo instead of :colo
e.g. you want to use 'murphy', just type :Colo murphy after you
sourced the ps_color, the 'defdark', 'cool', 'warm' can also be
used here.
>
Q: I updated from v2.0 to v2.3 or above, why the cterm color scheme
for Comment is different?
<
A: The color map of DarkYellow and Yellow have been exchanged,
You need to reconfigure your terminal to meet the change,
see |psc-cterm-color-table| for guide, or if you are using xterm
compatible terminal, just update the .XDefaults according to
|psc-cterm-xterm|.
>
Q: What do you mean by 'Vanilla Windows'?
<
A: People often argue that Windows is not a REAL operating system.
Well, I agree this, but only for vanilla windows. i.e. with no
plug-ins installed. Vanilla windows is a very limited platform,
since it is not POSIX compliant.
There are currently many working around to make Windows POSIX
Compliant, do you still mind which OS to use when it is POSIX
Compliant? I don't. If you installed Cygwin kernel in your
NT-based Windows, the Windows will be more or less POSIX compliant
and you can use it in the same way as you use any Unix, BSD,
Solaris, Linux, XWindow, etc... What is more, Cygwin is not the
only kernel which makes Windows POSIX Compliant, make a google
search and you will find many alternatives.
>
Q: How to change the Normal background color? Why don't you use
different background for NonText group?
<
A: This is for compatibility, since we have to use only 8 colors as
background in a color terminal. For GUI you can change this, see
|psc-change-background| for details.
>
Q: I updated from 2.81- to 2.82+, why the default background changed?
<
A: This is for Bram's guideline, that dark schemes with black
background has too much contrast.
However, you can change it back. See |psc-change-background| for
details.
>
Q: Something changed/doesn't work on 3.00...
<
A: See 3.00 Release note.
==============================================================================
PSC RELEASE NOTES *psc-release-notes*
3.00 Release Note: ~
GUI: now we accept the &background instead of the "warm" and "cool"
style value. So the "warm" and "cool" for psc_style are silently
ignored, all users must set the 'background' option manually before
:colo ps_color.
Since this is an incompatible change, I bump the version to 3.00
CTERM: if psc_style set to 'warm', the v2.90 before will set the style
to 'cool', the 3.00 will set the style to 'default' since the
background change are eliminated in 3.00. So basically, if you had the
background=light in your color terminal, :color ps_color will have
little effect.
Since the background setting can be wrong in cterm, the transparent
background are not the default. We added |psc_cterm_background| option
to change the bahavior.
Checked spell with spelllang=en, changes in typos for document.
2.95 Release Note: ~
GUI: Make many foregrounds and backgrounds transparent, in most cases you
will not notice any difference. But you may feel better in some rare
case.
CTERM: if your terminal has a transparent background, then we can have
the transparent background in vim. Note that the terminal color scheme
has to be dark-background for maximum portability. If you have
a light-background terminal emulator and want to use ps_color color
scheme, please keep v2.90, or change your terminal background color to
a dark one.
2.90 Release Note: ~
Upon the release of Vim 7, many new highlight groups have been added.
A style has been tuned a little to increase contrast.
2.83 Release Note: ~
This is an identical version, but my e-mail address changed.
2.82 Release Note: ~
Fixed bug with the reversed group for the Vim default, or other
schemes.
Fixed bug with the Diff mode fg mistaken as fg.
Shrink the script a lot to improve load performance, moved the release
notes into document.
Change the default gui background color to #202020 (Dark Grey)
2.81 Release Note: ~
Provided a separate utility reloaded.vim to fine tune the GUI color
scheme based on Hue, Saturation and Brightness(Luminance).
Added some groups to meet the need of reloaded.vim, no essential
change.
2.8 Release Note: ~
Bugfix : when psc_style=='mixed', the visual got reversed wrong.
'mixed' is now the default for 'warm' style.
changed the function name to lower case.
removed pre-2.0 compatibility, (the non-psc version of s-d-f-t).
Added variable psc_cterm_style, see |psc_cterm_style|
Added group Underline
Tuned the function call.
2.7 Release Note: ~
Now it is possible to change the Background,
see :h psc-change-background for details.
Linked the Tag group to Identifier.
NonText as Notice is not good for 'warm', changed to Constant.
Added links for the most popular plug-ins: taglist, calendar
Tuned the 'Statement' color when different from Type (gui only).
Re-adjusted cterm scheme according to syntax/hitest.vim
The 'defdark' style for cterm is not functioning, fixed.
Many 'cosmetic' changes, makes no difference for functionality.
Use of DrChip's help extractor to auto-install help document.
Added command define, :Colo
2.6 Release Note: ~
As stated in the v2.3, the only 'todo' thing seems to be the 'warm'
style, now in this version I had been working on it.
There also are some minor fixes for the document, to be more friendly
for new readers.
The 'StatusLine' of 'cold' style is modified by mistake in the v2.3,
this time the bug is fixed.
The 'Directory' in GUI 'cold' style is different from 'cterm' one,
now fixed.
2.3 Release Note: ~
This is an incompatible update, main changes are in 'cterm'.
A new group 'SignColumn' had been added, new links added for engspchk
v52, hundreds of typos fixed in the document, thanks to the engspchk.
The support for 8-color cterm is slightly better now, but the mappings
of the DarkYellow and Yellow are exchanged, you need to update the
.Xdefaults or your terminal configuration before apply this update if
you are using v2.0. Guide for redefinition the color value is
available in the document, make sure you had updated the ps_color.txt,
then see |psc-cterm-color-table|
2.0 Release Note: ~
There have been great enhancement since this version, so I'd choose to
bump the version number to 2. This version comes with Vim online help,
if you had installed ps_color.txt, you can see for details in
|pscolor|
n/a Release: ~
Initial upload, can be called as v1.8
==============================================================================
PSC TODO LIST *psc-todo*
. Fix the remain bugs.
. Follow the new Vim versions for new added highlighting group
. This cannot work in Vim Small and Tiny mode, and will never work!
==============================================================================
vim:tw=78:ts=8:noet:ft=help:fo+=t:norl:noet:

29
.vim/doc/tags Normal file
View File

@@ -0,0 +1,29 @@
ps_color.txt ps_color.txt /*ps_color.txt*
ps_colour ps_color.txt /*ps_colour*
psc ps_color.txt /*psc*
psc-about-background ps_color.txt /*psc-about-background*
psc-change-background ps_color.txt /*psc-change-background*
psc-contents ps_color.txt /*psc-contents*
psc-cterm ps_color.txt /*psc-cterm*
psc-cterm-color-table ps_color.txt /*psc-cterm-color-table*
psc-cterm-incompatible ps_color.txt /*psc-cterm-incompatible*
psc-cterm-nt ps_color.txt /*psc-cterm-nt*
psc-cterm-others ps_color.txt /*psc-cterm-others*
psc-cterm-xterm ps_color.txt /*psc-cterm-xterm*
psc-faq ps_color.txt /*psc-faq*
psc-faq-ffothers ps_color.txt /*psc-faq-ffothers*
psc-features ps_color.txt /*psc-features*
psc-options ps_color.txt /*psc-options*
psc-overview ps_color.txt /*psc-overview*
psc-release-notes ps_color.txt /*psc-release-notes*
psc-tips ps_color.txt /*psc-tips*
psc-todo ps_color.txt /*psc-todo*
psc-usage ps_color.txt /*psc-usage*
psc_cterm_style ps_color.txt /*psc_cterm_style*
psc_cterm_transparent ps_color.txt /*psc_cterm_transparent*
psc_fontface ps_color.txt /*psc_fontface*
psc_inversed_todo ps_color.txt /*psc_inversed_todo*
psc_statement_different_from_type ps_color.txt /*psc_statement_different_from_type*
psc_style ps_color.txt /*psc_style*
psc_use_default_for_cterm ps_color.txt /*psc_use_default_for_cterm*
pscolor ps_color.txt /*pscolor*

98
.vimrc Normal file
View File

@@ -0,0 +1,98 @@
set encoding=utf-8
set nocompatible
execute pathogen#infect()
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
" Plugin 'tmhedberg/SimplylFold'
Plugin 'vim-scripts/indentpython.vim'
Bundle 'Valloric/YouCompleteMe'
Plugin 'ctrlpvim/ctrlp.vim'
Bundle 'https://github.com/gorodinskiy/vim-coloresque.git'
Plugin 'airblade/vim-gitgutter'
Plugin 'fatih/vim-go'
call vundle#end()
syntax on
colorscheme solarized
set tabstop=4
set softtabstop=4
set expandtab
set number
set showcmd
set cursorline
"filetype indent on
set wildmenu
set lazyredraw
set showmatch
set incsearch
set hlsearch
" this makes the search highlight dissapear if you type space or maybe ,space
nnoremap <leader><space> :nohlsearch<CR>
set foldenable
set foldlevelstart=10
set foldnestmax=10
" space toggles folds
nnoremap <space> za
"makes it so up and down go up and down even on wrapped lines
nnoremap j gj
nnoremap k gk
" B moves to start of line E is end of line
nnoremap B ^
nnoremap E $
" some ctrlp stuff i want to try out
"let g:ctrlp_match_window = 'bottom,order:ttb'
"let g:ctrlp_switch_buffer = 0
"let g:ctrlp_working_path_mode = 0
"let g:ctrlp_user_command = 'ag %s -l --nocolor --hidden -g ""'
"
"let g:powerline_pycmd = "py3"
"set statusline+=%#warningmsg#
"set statusline+=%{SyntasticStatusLineFlag()}
"set statusline+=%*
"
"let g:syntastic_always_populate_loc_list = 1
"let g:syntastic_auto_loc_list = 1
"let g:syntastic_check_on_open = 1
"let g:syntastic_check_on_wq = 0
"#function! s:SwitchPSCStyle()
"# if exists('g:psc_style')
"# if g:psc_style == 'cool'
"# let g:psc_style = 'warm'
"# elseif g:psc_style == 'warm'
"# let g:psc_style = 'cool'
"# endif
"# else
"# let g:psc_style = 'warm'
"# endif
"# colorscheme ps_color
"#endfunction
"#map <silent> <F6> :call <SID>SwitchPSCStyle()<CR>

View File

@@ -1,3 +1,3 @@
function l
lsd
lsd $argv
end

View File

@@ -1,7 +1,3 @@
function la --description 'list all files'
if count $argv > /dev/null
lsd -a $argv
else
lsd -a
end
lsd -a $argv
end

View File

@@ -1,7 +1,3 @@
function lla --description 'like la but with a list view'
if count $argv > /dev/null
lsd -la $argv
else
lsd -la
end
lsd -la $argv
end

View File

@@ -1,7 +1,3 @@
function lt --description 'list all tree view'
if count $argv > /dev/null
lsd -a --tree $argv
else
lsd -a --tree
end
lsd -a --tree $argv
end

23
init.sh
View File

@@ -40,5 +40,28 @@ fi
ln -s ./.fishrc ~/.fishrc
if [ -d ~/.config/omf ]; then
mv ./.config/omf ~/.config/omfBACKUP
fi
ln -s ./omf ~/.config/omf
if [ -d ~/.config/polybar ]; then
mv ./.config/polybar ~/.config/polybarBACKUP
fi
ln -s ./polybar ~/.config/polybar
if [ -d ~/.config/ranger ]; then
mv ./.config/ranger ~/.config/rangerBACKUP
fi
ln -s ./ranger ~/.config/ranger
if [ -d ~/.config/rofi ]; then
mv ./.config/rofi ~/.config/rofiBACKUP
fi
ln -s ./rofi ~/.config/rofi

16
omf/bundle Normal file
View File

@@ -0,0 +1,16 @@
package sublime
theme agnoster
theme aight
theme ays
theme batman
theme bira
theme bobthefish
theme default
theme emoji-powerline
theme idan
theme jacaetevha
theme johanson
theme ocean
theme sushi
theme toaster
theme zish

1
omf/channel Normal file
View File

@@ -0,0 +1 @@
stable

1
omf/theme Normal file
View File

@@ -0,0 +1 @@
jacaetevha

399
polybar/config Normal file
View File

@@ -0,0 +1,399 @@
[colors]
;background = ${xrdb:color0:#222}
background = #222
background-alt = #444
;foreground = ${xrdb:color7:#222}
foreground = #dfdfdf
foreground-alt = #555
primary = #ffb52a
secondary = #e60053
alert = #bd2c40
[bar/statusbar]
#monitor = ${env:MONITOR:DVI-I-1}
#monitor = ${env:MONITOR:}
width = 100%
height = 27
offset-x = 0%
offset-y = 0%
radius = 0.0
fixed-center = true
bottom = true
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 0
line-color = #f00
border-size = 0
border-color = #00000000
padding-left = 0
padding-right = 0
module-margin-left = 1
module-margin-right = 1
font-0 = Roboto Mono:pixelsize=9;1
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
font-2 = FontAwesome:pixelsize=11;1
modules-left = date time temperature xbacklight volume battery
modules-center = xwindow
modules-right = i3
tray-position = right
tray-padding = 6
tray-background = #000000
;tray-transparent = true
;wm-restack = bspwm
;wm-restack = i3
;override-redirect = true
;scroll-up = bspwm-desknext
;scroll-down = bspwm-deskprev
;scroll-up = i3wm-wsnext
;scroll-down = i3wm-wsprev
[module/xwindow]
type = internal/xwindow
label = [ %title:0:30:...% ]
label-foreground = #f48aa3
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 =
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}
format-prefix-underline = ${colors.secondary}
label-layout = %layout%
label-layout-underline = ${colors.secondary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary}
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}
[module/bspwm]
type = internal/bspwm
label-focused = %index%
label-focused-background = ${colors.background-alt}
label-focused-underline = #fab1c3
;label-focused-underline= ${colors.primary}
label-focused-padding = 2
label-occupied = %index%
label-occupied-padding = 2
label-urgent = %index%!
label-urgent-background = ${colors.alert}
label-urgent-padding = 2
label-empty = %index%
label-empty-foreground = ${colors.foreground-alt}
label-empty-padding = 2
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
ws-icon-0 = 1;
ws-icon-1 = 2;
ws-icon-2 = 3;
ws-icon-3 = 4;
ws-icon-4 = 5;V
ws-icon-5 = 6;VI
ws-icon-6 = 7;
ws-icon-7 = 8;
ws-icon-8 = 9;
ws-icon-9 = 10;
ws-icon-default = 
;wrapping-scroll = false
; Only show workspaces on the same output as the bar
;pin-workspaces = true
label-mode-padding = 0
label-mode-foreground = #000
label-mode-background = ${colors.primary}
; focused = Active workspace on focused monitor
;label-focused = %index%
label-focused = %icon%
label-focused-background = ${module/bspwm.label-focused-background}
label-focused-underline = ${module/bspwm.label-focused-underline}
label-focused-padding = ${module/bspwm.label-focused-padding}
; unfocused = Inactive workspace on any monitor
label-unfocused = %icon%
label-unfocused-padding = ${module/bspwm.label-occupied-padding}
; visible = Active workspace on unfocused monitor
label-visible = %icon%
label-visible-background = ${self.label-focused-background}
label-visible-underline = ${self.label-focused-underline}
label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set
label-urgent = %icon%
label-urgent-background = ${module/bspwm.label-urgent-background}
label-urgent-padding = ${module/bspwm.label-urgent-padding}
[module/mpd]
type = internal/mpd
;format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next>
format-online = -- [ <label-song> ] --
host = 127.0.0.1
port = 6600
interval = 2
icon-prev = 
icon-stop = 
icon-play = 
icon-pause = 
icon-next = 
label-song-maxlen = 50
label-song-ellipsis = true
label-foreground = #f48aa3
[module/xbacklight]
type = internal/xbacklight
format = <label> <bar>
label = BL:%percentage%
bar-width = 5
bar-indicator = |
bar-indicator-foreground = #ff
bar-indicator-font = 2
bar-fill = ─
bar-fill-font = 2
bar-fill-foreground = #9f78e1
bar-empty = ─
bar-empty-font = 2
bar-empty-foreground = ${colors.foreground-alt}
[module/backlight-acpi]
inherit = module/xbacklight
type = internal/backlight
card = intel_backlight
[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}
format-underline = #f90000
label = %percentage:2%%
[module/memory]
type = internal/memory
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}
format-underline = #4bffdc
label = %percentage_used%%
[module/wlan]
type = internal/network
interface = wlp3s0
interval = 5.0
format-connected = <ramp-signal> <label-connected>
format-connected-underline = #9f78e1
label-connected = %essid%
format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}
ramp-signal-0 = 
ramp-signal-1 = 
ramp-signal-2 = 
ramp-signal-3 = 
ramp-signal-4 = 
ramp-signal-foreground = ${colors.foreground-alt}
[module/eth]
type = internal/network
interface = enp4s0f1
interval = 3.0
format-connected-underline = #55aa55
format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.foreground-alt}
label-connected = %local_ip%
format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt}
[module/date]
type = internal/date
interval = 5
date = "%B-%d-%Y"
;date = "%d-%m-%y"
;date-alt = " %Y-%m-%d"
format-prefix = "  "
format-prefix-foreground = ${colors.foreground}
format-underline = #1c8baf
label = %date%
[module/time]
type = internal/date
interval = 5
time = "%I:%M(%p)"
format-prefix = " "
format-prefix-foreground = ${colors.foreground}
format-underline = #ffffff
label = %time%
[module/volume]
type = internal/volume
;format-volume = <label-volume> <bar-volume>
format-volume = <label-volume>
label-volume = " %percentage%%"
label-volume-foreground = ${root.foreground}
format-muted-prefix =
format-muted-foreground = ${colors.foreground-alt}
label-muted = muted
bar-volume-width = 5
bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false
bar-volume-indicator = |
bar-volume-indicator-font = 2
bar-volume-fill = ─
bar-volume-fill-font = 2
bar-volume-empty = ─
bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt}
[module/battery]
type = internal/battery
battery = BAT1
adapter = ACAD
full-at = 98
format-charging = <animation-charging> <label-charging>
format-charging-underline = ${colors.background}
format-discharging = <ramp-capacity> <label-discharging>
format-discharging-underline = ${colors.background}
format-full-prefix = " "
format-full-prefix-foreground = ${colors.foreground}
format-full-underline = ${colors.background}
ramp-capacity-0 = ""
ramp-capacity-1 = ""
ramp-capacity-2 = ""
ramp-capacity-foreground = ${colors.foreground}
animation-charging-0 = ""
animation-charging-1 = ""
animation-charging-2 = ""
animation-charging-foreground = ${colors.foreground}
animation-charging-framerate = 750
[module/temperature]
type = internal/temperature
thermal-zone = 0
warn-temperature = 60
format = <label>
format-underline = #ffb52a
format-warn = <label-warn>
format-warn-underline = #fc4141
label = " %temperature%"
label-warn = " %temperature%"
label-warn-foreground = ${colors.secondary}
ramp-0 = 
ramp-1 = 
ramp-2 = 
ramp-foreground = ${colors.foreground-alt}
[module/powermenu]
type = custom/menu
expand-right = false
format-spacing = 1
label-open = POWER
label-open-foreground = ${colors.secondary}
label-close = Back
label-close-foreground = ${colors.secondary}
label-separator = |
label-separator-foreground = ${colors.foreground-alt}
menu-0-0 = reboot
menu-0-0-exec = menu-open-1
menu-0-1 = power off
menu-0-1-exec = menu-open-2
menu-1-0 = cancel
menu-1-0-exec = menu-open-0
menu-1-1 = reboot
menu-1-1-exec = sudo reboot
menu-2-0 = power off
menu-2-0-exec = sudo poweroff
menu-2-1 = cancel
menu-2-1-exec = menu-open-0
[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
[global/wm]
margin-top = 0
margin-bottom = 0
; vim:ft=dosini

3
ranger/rc.conf Normal file
View File

@@ -0,0 +1,3 @@
set preview_images true
set preview_images_method w3m

221
ranger/scope.sh Executable file
View File

@@ -0,0 +1,221 @@
#!/usr/bin/env bash
set -o noclobber -o noglob -o nounset -o pipefail
IFS=$'\n'
# If the option `use_preview_script` is set to `true`,
# then this script will be called and its output will be displayed in ranger.
# ANSI color codes are supported.
# STDIN is disabled, so interactive scripts won't work properly
# This script is considered a configuration file and must be updated manually.
# It will be left untouched if you upgrade ranger.
# Meanings of exit codes:
# code | meaning | action of ranger
# -----+------------+-------------------------------------------
# 0 | success | Display stdout as preview
# 1 | no preview | Display no preview at all
# 2 | plain text | Display the plain content of the file
# 3 | fix width | Don't reload when width changes
# 4 | fix height | Don't reload when height changes
# 5 | fix both | Don't ever reload
# 6 | image | Display the image `$IMAGE_CACHE_PATH` points to as an image preview
# 7 | image | Display the file directly as an image
# Script arguments
FILE_PATH="${1}" # Full path of the highlighted file
PV_WIDTH="${2}" # Width of the preview pane (number of fitting characters)
PV_HEIGHT="${3}" # Height of the preview pane (number of fitting characters)
IMAGE_CACHE_PATH="${4}" # Full path that should be used to cache image preview
PV_IMAGE_ENABLED="${5}" # 'True' if image previews are enabled, 'False' otherwise.
FILE_EXTENSION="${FILE_PATH##*.}"
FILE_EXTENSION_LOWER=$(echo ${FILE_EXTENSION} | tr '[:upper:]' '[:lower:]')
# Settings
HIGHLIGHT_SIZE_MAX=262143 # 256KiB
HIGHLIGHT_TABWIDTH=8
HIGHLIGHT_STYLE='pablo'
PYGMENTIZE_STYLE='autumn'
handle_extension() {
case "${FILE_EXTENSION_LOWER}" in
# Archive
a|ace|alz|arc|arj|bz|bz2|cab|cpio|deb|gz|jar|lha|lz|lzh|lzma|lzo|\
rpm|rz|t7z|tar|tbz|tbz2|tgz|tlz|txz|tZ|tzo|war|xpi|xz|Z|zip)
atool --list -- "${FILE_PATH}" && exit 5
bsdtar --list --file "${FILE_PATH}" && exit 5
exit 1;;
rar)
# Avoid password prompt by providing empty password
unrar lt -p- -- "${FILE_PATH}" && exit 5
exit 1;;
7z)
# Avoid password prompt by providing empty password
7z l -p -- "${FILE_PATH}" && exit 5
exit 1;;
# PDF
pdf)
# Preview as text conversion
pdftotext -l 10 -nopgbrk -q -- "${FILE_PATH}" - | fmt -w ${PV_WIDTH} && exit 5
mutool draw -F txt -i -- "${FILE_PATH}" 1-10 | fmt -w ${PV_WIDTH} && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
# BitTorrent
torrent)
transmission-show -- "${FILE_PATH}" && exit 5
exit 1;;
# OpenDocument
odt|ods|odp|sxw)
# Preview as text conversion
odt2txt "${FILE_PATH}" && exit 5
exit 1;;
# Markdown Files
markdown|md)
ansimd "${FILE_PATH}" && exit 5;
exit 2;;
# HTML
htm|html|xhtml)
# Preview as text conversion
w3m -dump "${FILE_PATH}" && exit 5
lynx -dump -- "${FILE_PATH}" && exit 5
elinks -dump "${FILE_PATH}" && exit 5
;; # Continue with next handler on failure
# Markdown files
esac
}
handle_image() {
local mimetype="${1}"
case "${mimetype}" in
# SVG
# image/svg+xml)
# convert "${FILE_PATH}" "${IMAGE_CACHE_PATH}" && exit 6
# exit 1;;
# Image
image/*)
local orientation
orientation="$( identify -format '%[EXIF:Orientation]\n' -- "${FILE_PATH}" )"
# If orientation data is present and the image actually
# needs rotating ("1" means no rotation)...
if [[ -n "$orientation" && "$orientation" != 1 ]]; then
# ...auto-rotate the image according to the EXIF data.
convert -- "${FILE_PATH}" -auto-orient "${IMAGE_CACHE_PATH}" && exit 6
fi
# `w3mimgdisplay` will be called for all images (unless overriden as above),
# but might fail for unsupported types.
exit 7;;
# Video
# video/*)
# # Thumbnail
# ffmpegthumbnailer -i "${FILE_PATH}" -o "${IMAGE_CACHE_PATH}" -s 0 && exit 6
# exit 1;;
# PDF
# application/pdf)
# pdftoppm -f 1 -l 1 \
# -scale-to-x 1920 \
# -scale-to-y -1 \
# -singlefile \
# -jpeg -tiffcompression jpeg \
# -- "${FILE_PATH}" "${IMAGE_CACHE_PATH%.*}" \
# && exit 6 || exit 1;;
# Preview archives using the first image inside.
# (Very useful for comic book collections for example.)
# application/zip|application/x-rar|application/x-7z-compressed|\
# application/x-xz|application/x-bzip2|application/x-gzip|application/x-tar)
# local fn=""; local fe=""
# local zip=""; local rar=""; local tar=""; local bsd=""
# case "${mimetype}" in
# application/zip) zip=1 ;;
# application/x-rar) rar=1 ;;
# application/x-7z-compressed) ;;
# *) tar=1 ;;
# esac
# { [ "$tar" ] && fn=$(tar --list --file "${FILE_PATH}"); } || \
# { fn=$(bsdtar --list --file "${FILE_PATH}") && bsd=1 && tar=""; } || \
# { [ "$rar" ] && fn=$(unrar lb -p- -- "${FILE_PATH}"); } || \
# { [ "$zip" ] && fn=$(zipinfo -1 -- "${FILE_PATH}"); } || return
#
# fn=$(echo "$fn" | python -c "import sys; import mimetypes as m; \
# [ print(l, end='') for l in sys.stdin if \
# (m.guess_type(l[:-1])[0] or '').startswith('image/') ]" |\
# sort -V | head -n 1)
# [ "$fn" = "" ] && return
# [ "$bsd" ] && fn=$(printf '%b' "$fn")
#
# [ "$tar" ] && tar --extract --to-stdout \
# --file "${FILE_PATH}" -- "$fn" > "${IMAGE_CACHE_PATH}" && exit 6
# fe=$(echo -n "$fn" | sed 's/[][*?\]/\\\0/g')
# [ "$bsd" ] && bsdtar --extract --to-stdout \
# --file "${FILE_PATH}" -- "$fe" > "${IMAGE_CACHE_PATH}" && exit 6
# [ "$bsd" ] || [ "$tar" ] && rm -- "${IMAGE_CACHE_PATH}"
# [ "$rar" ] && unrar p -p- -inul -- "${FILE_PATH}" "$fn" > \
# "${IMAGE_CACHE_PATH}" && exit 6
# [ "$zip" ] && unzip -pP "" -- "${FILE_PATH}" "$fe" > \
# "${IMAGE_CACHE_PATH}" && exit 6
# [ "$rar" ] || [ "$zip" ] && rm -- "${IMAGE_CACHE_PATH}"
# ;;
esac
}
handle_mime() {
local mimetype="${1}"
case "${mimetype}" in
# Text
text/* | */xml)
# Syntax highlight
if [[ "$( stat --printf='%s' -- "${FILE_PATH}" )" -gt "${HIGHLIGHT_SIZE_MAX}" ]]; then
exit 2
fi
if [[ "$( tput colors )" -ge 256 ]]; then
local pygmentize_format='terminal256'
local highlight_format='xterm256'
else
local pygmentize_format='terminal'
local highlight_format='ansi'
fi
highlight --replace-tabs="${HIGHLIGHT_TABWIDTH}" --out-format="${highlight_format}" \
--style="${HIGHLIGHT_STYLE}" --force -- "${FILE_PATH}" && exit 5
# pygmentize -f "${pygmentize_format}" -O "style=${PYGMENTIZE_STYLE}" -- "${FILE_PATH}" && exit 5
exit 2;;
# Image
image/*)
# Preview as text conversion
# img2txt --gamma=0.6 --width="${PV_WIDTH}" -- "${FILE_PATH}" && exit 4
exiftool "${FILE_PATH}" && exit 5
exit 1;;
# Video and audio
video/* | audio/*)
mediainfo "${FILE_PATH}" && exit 5
exiftool "${FILE_PATH}" && exit 5
exit 1;;
esac
}
handle_fallback() {
echo '----- File Type Classification -----' && file --dereference --brief -- "${FILE_PATH}" && exit 5
exit 1
}
MIMETYPE="$( file --dereference --brief --mime-type -- "${FILE_PATH}" )"
if [[ "${PV_IMAGE_ENABLED}" == 'True' ]]; then
handle_image "${MIMETYPE}"
fi
handle_extension
handle_mime "${MIMETYPE}"
handle_fallback
exit 1

1
rofi/config Normal file
View File

@@ -0,0 +1 @@
rofi.theme: /usr/share/rofi/themes/Paper.rasi