From 2276b4e2c1628b2f4236d8447d610f9f071208c6 Mon Sep 17 00:00:00 2001 From: Cody Hiar Date: Mon, 28 May 2018 16:04:49 -0600 Subject: Spring Cleaning --- Makefile | 2 +- README.md | 2 +- autoload/plug.vim | 198 ++++++-- backups/.gitignore | 2 + colors/distinguished.vim | 181 ------- colors/solarized.vim | 1117 ------------------------------------------ colors/zenburn.vim | 560 --------------------- install-bundles.sh | 6 - install-plugins.sh | 6 + swap/.gitignore | 2 + vim-files/backups/.gitignore | 2 - vim-files/swaps/.gitignore | 2 - vimrc | 156 ++++-- 13 files changed, 275 insertions(+), 1961 deletions(-) create mode 100644 backups/.gitignore delete mode 100644 colors/distinguished.vim delete mode 100644 colors/solarized.vim delete mode 100644 colors/zenburn.vim delete mode 100755 install-bundles.sh create mode 100755 install-plugins.sh create mode 100644 swap/.gitignore delete mode 100644 vim-files/backups/.gitignore delete mode 100644 vim-files/swaps/.gitignore diff --git a/Makefile b/Makefile index 0b228ea..8bac6e7 100644 --- a/Makefile +++ b/Makefile @@ -6,4 +6,4 @@ install: ## Install the symlink vim +PlugInstall +qa uninstall: ## Remove the sumlink - [[ -L ~/.muttrc ]] && rm ~/.vimrc + [[ -L ~/.vimrc ]] && rm ~/.vimrc diff --git a/README.md b/README.md index 4ebb7d2..517df4f 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Setup Now that I use Neovim exclusively, this has become my vim repo that I call when I want to install vim on a remote machine. ``` -git clone https://github.com/thornycrackers/.vim.git; ln -s .vim/vimrc .vimrc; vim +PlugInstall +qa +git clone https://github.com/thornycrackers/.vim.git && cd .vim && make install ``` diff --git a/autoload/plug.vim b/autoload/plug.vim index 7945e8d..9dd02c0 100644 --- a/autoload/plug.vim +++ b/autoload/plug.vim @@ -18,7 +18,7 @@ " " Any valid git URL is allowed " Plug 'https://github.com/junegunn/vim-github-dashboard.git' " -" " Group dependencies, vim-snippets depends on ultisnips +" " Multiple Plug commands can be written in a single line using | separators " Plug 'SirVer/ultisnips' | Plug 'honza/vim-snippets' " " " On-demand loading @@ -40,7 +40,7 @@ " " Unmanaged plugin (manually installed and updated) " Plug '~/my-prototype-plugin' " -" " Add plugins to &runtimepath +" " Initialize plugin system " call plug#end() " " Then reload .vimrc and :PlugInstall to install plugins. @@ -61,7 +61,7 @@ " More information: https://github.com/junegunn/vim-plug " " -" Copyright (c) 2016 Junegunn Choi +" Copyright (c) 2017 Junegunn Choi " " MIT License " @@ -97,7 +97,7 @@ let s:plug_tab = get(s:, 'plug_tab', -1) let s:plug_buf = get(s:, 'plug_buf', -1) let s:mac_gui = has('gui_macvim') && has('gui_running') let s:is_win = has('win32') || has('win64') -let s:nvim = has('nvim') && exists('*jobwait') && !s:is_win +let s:nvim = has('nvim-0.2') || (has('nvim') && exists('*jobwait') && !s:is_win) let s:vim8 = has('patch-8.0.0039') && exists('*job_start') let s:me = resolve(expand(':p')) let s:base_spec = { 'branch': 'master', 'frozen': 0 } @@ -121,6 +121,9 @@ function! plug#begin(...) else return s:err('Unable to determine plug home. Try calling plug#begin() with a path argument.') endif + if fnamemodify(home, ':t') ==# 'plugin' && fnamemodify(home, ':h') ==# s:first_rtp + return s:err('Invalid plug home. '.home.' is a standard Vim runtime path and is not allowed.') + endif let g:plug_home = home let g:plugs = {} @@ -225,6 +228,7 @@ function! plug#end() endif call add(s:triggers[name].map, cmd) elseif cmd =~# '^[A-Z]' + let cmd = substitute(cmd, '!*$', '', '') if exists(':'.cmd) != 2 call s:assoc(lod.cmd, cmd, name) endif @@ -251,7 +255,7 @@ function! plug#end() for [cmd, names] in items(lod.cmd) execute printf( - \ 'command! -nargs=* -range -bang %s call s:lod_cmd(%s, "", , , , %s)', + \ 'command! -nargs=* -range -bang -complete=file %s call s:lod_cmd(%s, "", , , , %s)', \ cmd, string(cmd), string(names)) endfor @@ -425,7 +429,10 @@ function! s:dobufread(names) let path = s:rtp(g:plugs[name]).'/**' for dir in ['ftdetect', 'ftplugin'] if len(finddir(dir, path)) - return s:doautocmd('BufRead') + if exists('#BufRead') + doautocmd BufRead + endif + return endif endfor endfor @@ -438,16 +445,21 @@ function! plug#load(...) if !exists('g:plugs') return s:err('plug#begin was not called') endif - let unknowns = filter(copy(a:000), '!has_key(g:plugs, v:val)') + let names = a:0 == 1 && type(a:1) == s:TYPE.list ? a:1 : a:000 + let unknowns = filter(copy(names), '!has_key(g:plugs, v:val)') if !empty(unknowns) let s = len(unknowns) > 1 ? 's' : '' return s:err(printf('Unknown plugin%s: %s', s, join(unknowns, ', '))) end - for name in a:000 - call s:lod([name], ['ftdetect', 'after/ftdetect', 'plugin', 'after/plugin']) - endfor - call s:dobufread(a:000) - return 1 + let unloaded = filter(copy(names), '!get(s:loaded, v:val, 0)') + if !empty(unloaded) + for name in unloaded + call s:lod([name], ['ftdetect', 'after/ftdetect', 'plugin', 'after/plugin']) + endfor + call s:dobufread(unloaded) + return 1 + end + return 0 endfunction function! s:remove_triggers(name) @@ -571,7 +583,7 @@ function! s:infer_properties(name, repo) let uri = repo else if repo !~ '/' - let repo = 'vim-scripts/'. repo + throw printf('Invalid argument: %s (implicit `vim-scripts'' expansion is deprecated)', repo) endif let fmt = get(g:, 'plug_url_format', 'https://git::@github.com/%s.git') let uri = printf(fmt, repo) @@ -593,7 +605,7 @@ function! plug#helptags() return s:err('plug#begin was not called') endif for spec in values(g:plugs) - let docd = join([spec.dir, 'doc'], '/') + let docd = join([s:rtp(spec), 'doc'], '/') if isdirectory(docd) silent! execute 'helptags' s:esc(docd) endif @@ -617,10 +629,10 @@ function! s:syntax() syn match plugTag /(tag: [^)]\+)/ syn match plugInstall /\(^+ \)\@<=[^:]*/ syn match plugUpdate /\(^* \)\@<=[^:]*/ - syn match plugCommit /^ \X*[0-9a-f]\{7} .*/ contains=plugRelDate,plugEdge,plugTag + syn match plugCommit /^ \X*[0-9a-f]\{7,9} .*/ contains=plugRelDate,plugEdge,plugTag syn match plugEdge /^ \X\+$/ syn match plugEdge /^ \X*/ contained nextgroup=plugSha - syn match plugSha /[0-9a-f]\{7}/ contained + syn match plugSha /[0-9a-f]\{7,9}/ contained syn match plugRelDate /([^)]*)$/ contained syn match plugNotLoaded /(not loaded)$/ syn match plugError /^x.*/ @@ -750,7 +762,7 @@ function! s:prepare(...) for k in ['', 'L', 'o', 'X', 'd', 'dd'] execute 'silent! unmap ' k endfor - setlocal buftype=nofile bufhidden=wipe nobuflisted nolist noswapfile nowrap cursorline modifiable + setlocal buftype=nofile bufhidden=wipe nobuflisted nolist noswapfile nowrap cursorline modifiable nospell setf vim-plug if exists('g:syntax_on') call s:syntax() @@ -770,8 +782,10 @@ function! s:assign_name() endfunction function! s:chsh(swap) - let prev = [&shell, &shellredir] - if !s:is_win && a:swap + let prev = [&shell, &shellcmdflag, &shellredir] + if s:is_win + set shell=cmd.exe shellcmdflag=/c shellredir=>%s\ 2>&1 + elseif a:swap set shell=sh shellredir=>%s\ 2>&1 endif return prev @@ -779,15 +793,23 @@ endfunction function! s:bang(cmd, ...) try - let [sh, shrd] = s:chsh(a:0) + let [sh, shellcmdflag, shrd] = s:chsh(a:0) " FIXME: Escaping is incomplete. We could use shellescape with eval, " but it won't work on Windows. let cmd = a:0 ? s:with_cd(a:cmd, a:1) : a:cmd - let g:_plug_bang = '!'.escape(cmd, '#!%') + if s:is_win + let batchfile = tempname().'.bat' + call writefile(["@echo off\r", cmd . "\r"], batchfile) + let cmd = batchfile + endif + let g:_plug_bang = (s:is_win && has('gui_running') ? 'silent ' : '').'!'.escape(cmd, '#!%') execute "normal! :execute g:_plug_bang\\" finally unlet g:_plug_bang - let [&shell, &shellredir] = [sh, shrd] + let [&shell, &shellcmdflag, &shellredir] = [sh, shellcmdflag, shrd] + if s:is_win + call delete(batchfile) + endif endtry return v:shell_error ? 'Exit status: ' . v:shell_error : '' endfunction @@ -816,6 +838,10 @@ function! s:do(pull, force, todo) let type = type(spec.do) if type == s:TYPE.string if spec.do[0] == ':' + if !get(s:loaded, name, 0) + let s:loaded[name] = 1 + call s:reorg_rtp() + endif call s:load_plugin(spec) try execute spec.do[1:] @@ -860,7 +886,7 @@ function! s:checkout(spec) let output = s:system('git rev-parse HEAD', a:spec.dir) if !v:shell_error && !s:hash_match(sha, s:lines(output)[0]) let output = s:system( - \ 'git fetch --depth 999999 && git checkout '.s:esc(sha), a:spec.dir) + \ 'git fetch --depth 999999 && git checkout '.s:esc(sha).' --', a:spec.dir) endif return output endfunction @@ -882,7 +908,7 @@ function! s:finish(pull) call add(msgs, "Press 'R' to retry.") endif if a:pull && len(s:update.new) < len(filter(getline(5, '$'), - \ "v:val =~ '^- ' && stridx(v:val, 'Already up-to-date') < 0")) + \ "v:val =~ '^- ' && v:val !~# 'Already up.to.date'")) call add(msgs, "Press 'D' to see the updated changes.") endif echo join(msgs, ' ') @@ -918,7 +944,8 @@ function! s:check_ruby() endfunction function! s:update_impl(pull, force, args) abort - let args = copy(a:args) + let sync = index(a:args, '--sync') >= 0 || has('vim_starting') + let args = filter(copy(a:args), 'v:val != "--sync"') let threads = (len(args) > 0 && args[-1] =~ '^[1-9][0-9]*$') ? \ remove(args, -1) : get(g:, 'plug_threads', 16) @@ -954,7 +981,7 @@ function! s:update_impl(pull, force, args) abort let use_job = s:nvim || s:vim8 let python = (has('python') || has('python3')) && !use_job - let ruby = has('ruby') && !use_job && (v:version >= 703 || v:version == 702 && has('patch374')) && !(s:is_win && has('gui_running')) && s:check_ruby() + let ruby = has('ruby') && !use_job && (v:version >= 703 || v:version == 702 && has('patch374')) && !(s:is_win && has('gui_running')) && threads > 1 && s:check_ruby() let s:update = { \ 'start': reltime(), @@ -977,6 +1004,10 @@ function! s:update_impl(pull, force, args) abort let s:clone_opt = get(g:, 'plug_shallow', 1) ? \ '--depth 1' . (s:git_version_requirement(1, 7, 10) ? ' --no-single-branch' : '') : '' + if has('win32unix') + let s:clone_opt .= ' -c core.eol=lf -c core.autocrlf=input' + endif + " Python version requirement (>= 2.7) if python && !has('python3') && !ruby && !use_job && s:update.threads > 1 redir => pyv @@ -1019,7 +1050,7 @@ function! s:update_impl(pull, force, args) abort endtry else call s:update_vim() - while use_job && has('vim_starting') + while use_job && sync sleep 100m if s:update.fin break @@ -1050,7 +1081,7 @@ function! s:update_finish() elseif has_key(spec, 'tag') let tag = spec.tag if tag =~ '\*' - let tags = s:lines(s:system('git tag --list '.string(tag).' --sort -version:refname 2>&1', spec.dir)) + let tags = s:lines(s:system('git tag --list '.s:shellesc(tag).' --sort -version:refname 2>&1', spec.dir)) if !v:shell_error && !empty(tags) let tag = tags[0] call s:log4(name, printf('Latest tag for %s -> %s', spec.tag, tag)) @@ -1058,11 +1089,11 @@ function! s:update_finish() endif endif call s:log4(name, 'Checking out '.tag) - let out = s:system('git checkout -q '.s:esc(tag).' 2>&1', spec.dir) + let out = s:system('git checkout -q '.s:esc(tag).' -- 2>&1', spec.dir) else let branch = s:esc(get(spec, 'branch', 'master')) call s:log4(name, 'Merging origin/'.branch) - let out = s:system('git checkout -q '.branch.' 2>&1' + let out = s:system('git checkout -q '.branch.' -- 2>&1' \. (has_key(s:update.new, name) ? '' : ('&& git merge --ff-only origin/'.branch.' 2>&1')), spec.dir) endif if !v:shell_error && filereadable(spec.dir.'/.gitmodules') && @@ -1152,7 +1183,7 @@ function! s:job_cb(fn, job, ch, data) call call(a:fn, [a:job, a:data]) endfunction -function! s:nvim_cb(job_id, data, event) abort +function! s:nvim_cb(job_id, data, event) dict abort return a:event == 'stdout' ? \ s:job_cb('s:job_out_cb', self, 0, join(a:data, "\n")) : \ s:job_cb('s:job_exit_cb', self, 0, a:data) @@ -1160,10 +1191,15 @@ endfunction function! s:spawn(name, cmd, opts) let job = { 'name': a:name, 'running': 1, 'error': 0, 'lines': [''], + \ 'batchfile': (s:is_win && (s:nvim || s:vim8)) ? tempname().'.bat' : '', \ 'new': get(a:opts, 'new', 0) } let s:jobs[a:name] = job - let argv = add(s:is_win ? ['cmd', '/c'] : ['sh', '-c'], - \ has_key(a:opts, 'dir') ? s:with_cd(a:cmd, a:opts.dir) : a:cmd) + let cmd = has_key(a:opts, 'dir') ? s:with_cd(a:cmd, a:opts.dir) : a:cmd + if !empty(job.batchfile) + call writefile(["@echo off\r", cmd . "\r"], job.batchfile) + let cmd = job.batchfile + endif + let argv = add(s:is_win ? ['cmd', '/c'] : ['sh', '-c'], cmd) if s:nvim call extend(job, { @@ -1180,7 +1216,7 @@ function! s:spawn(name, cmd, opts) \ 'Invalid arguments (or job table is full)'] endif elseif s:vim8 - let jid = job_start(argv, { + let jid = job_start(s:is_win ? join(argv, ' ') : argv, { \ 'out_cb': function('s:job_cb', ['s:job_out_cb', job]), \ 'exit_cb': function('s:job_cb', ['s:job_exit_cb', job]), \ 'out_mode': 'raw' @@ -1193,8 +1229,7 @@ function! s:spawn(name, cmd, opts) let job.lines = ['Failed to start job'] endif else - let params = has_key(a:opts, 'dir') ? [a:cmd, a:opts.dir] : [a:cmd] - let job.lines = s:lines(call('s:system', params)) + let job.lines = s:lines(call('s:system', [cmd])) let job.error = v:shell_error != 0 let job.running = 0 endif @@ -1214,6 +1249,9 @@ function! s:reap(name) call s:log(bullet, a:name, empty(result) ? 'OK' : result) call s:bar() + if has_key(job, 'batchfile') && !empty(job.batchfile) + call delete(job.batchfile) + endif call remove(s:jobs, a:name) endfunction @@ -1763,6 +1801,7 @@ function! s:update_ruby() tries = VIM::evaluate('get(g:, "plug_retries", 2)') + 1 nthr = VIM::evaluate('s:update.threads').to_i maxy = VIM::evaluate('winheight(".")').to_i + vim7 = VIM::evaluate('v:version').to_i <= 703 && RUBY_PLATFORM =~ /darwin/ cd = iswin ? 'cd /d' : 'cd' tot = VIM::evaluate('len(s:update.todo)') || 0 bar = '' @@ -1852,11 +1891,17 @@ function! s:update_ruby() main = Thread.current threads = [] watcher = Thread.new { - require 'io/console' # >= Ruby 1.9 - nil until IO.console.getch == 3.chr + if vim7 + while VIM::evaluate('getchar(1)') + sleep 0.1 + end + else + require 'io/console' # >= Ruby 1.9 + nil until IO.console.getch == 3.chr + end mtx.synchronize do running = false - threads.each { |t| t.raise Interrupt } + threads.each { |t| t.raise Interrupt } unless vim7 end threads.each { |t| t.join rescue nil } main.kill @@ -1924,8 +1969,19 @@ function! s:update_ruby() EOF endfunction +function! s:shellesc_cmd(arg) + let escaped = substitute(a:arg, '[&|<>()@^]', '^&', 'g') + let escaped = substitute(escaped, '%', '%%', 'g') + let escaped = substitute(escaped, '"', '\\^&', 'g') + let escaped = substitute(escaped, '\(\\\+\)\(\\^\)', '\1\1\2', 'g') + return '^"'.substitute(escaped, '\(\\\+\)$', '\1\1', '').'^"' +endfunction + function! s:shellesc(arg) - return '"'.escape(a:arg, '"').'"' + if &shell =~# 'cmd.exe$' + return s:shellesc_cmd(a:arg) + endif + return shellescape(a:arg) endfunction function! s:glob_dir(path) @@ -1963,11 +2019,19 @@ endfunction function! s:system(cmd, ...) try - let [sh, shrd] = s:chsh(1) + let [sh, shellcmdflag, shrd] = s:chsh(1) let cmd = a:0 > 0 ? s:with_cd(a:cmd, a:1) : a:cmd + if s:is_win + let batchfile = tempname().'.bat' + call writefile(["@echo off\r", cmd . "\r"], batchfile) + let cmd = batchfile + endif return system(s:is_win ? '('.cmd.')' : cmd) finally - let [&shell, &shellredir] = [sh, shrd] + let [&shell, &shellcmdflag, &shellredir] = [sh, shellcmdflag, shrd] + if s:is_win + call delete(batchfile) + endif endtry endfunction @@ -2002,7 +2066,7 @@ function! s:git_validate(spec, check_branch) " Check tag if has_key(a:spec, 'tag') let tag = s:system_chomp('git describe --exact-match --tags HEAD 2>&1', a:spec.dir) - if a:spec.tag !=# tag + if a:spec.tag !=# tag && a:spec.tag !~ '\*' let err = printf('Invalid tag: %s (expected: %s). Try PlugUpdate.', \ (empty(tag) ? 'N/A' : tag), a:spec.tag) endif @@ -2012,10 +2076,21 @@ function! s:git_validate(spec, check_branch) \ branch, a:spec.branch) endif if empty(err) - let commits = len(s:lines(s:system(printf('git rev-list origin/%s..HEAD', a:spec.branch), a:spec.dir))) - if !v:shell_error && commits - let err = join([printf('Diverged from origin/%s by %d commit(s).', a:spec.branch, commits), - \ 'Reinstall after PlugClean.'], "\n") + let [ahead, behind] = split(s:lastline(s:system(printf( + \ 'git rev-list --count --left-right HEAD...origin/%s', + \ a:spec.branch), a:spec.dir)), '\t') + if !v:shell_error && ahead + if behind + " Only mention PlugClean if diverged, otherwise it's likely to be + " pushable (and probably not that messed up). + let err = printf( + \ "Diverged from origin/%s (%d commit(s) ahead and %d commit(s) behind!\n" + \ .'Backup local changes and run PlugClean and PlugUpdate to reinstall it.', a:spec.branch, ahead, behind) + else + let err = printf("Ahead of origin/%s by %d commit(s).\n" + \ .'Cannot update until local changes are pushed.', + \ a:spec.branch, ahead) + endif endif endif endif @@ -2171,15 +2246,16 @@ function! s:status() let unloaded = 0 let [cnt, total] = [0, len(g:plugs)] for [name, spec] in items(g:plugs) + let is_dir = isdirectory(spec.dir) if has_key(spec, 'uri') - if isdirectory(spec.dir) + if is_dir let [err, _] = s:git_validate(spec, 1) let [valid, msg] = [empty(err), empty(err) ? 'OK' : err] else let [valid, msg] = [0, 'Not found. Try PlugInstall.'] endif else - if isdirectory(spec.dir) + if is_dir let [valid, msg] = [1, 'OK'] else let [valid, msg] = [0, 'Not found.'] @@ -2188,7 +2264,7 @@ function! s:status() let cnt += 1 let ecnt += !valid " `s:loaded` entry can be missing if PlugUpgraded - if valid && get(s:loaded, name, -1) == 0 + if is_dir && get(s:loaded, name, -1) == 0 let unloaded = 1 let msg .= ' (not loaded)' endif @@ -2258,7 +2334,7 @@ function! s:preview_commit() let b:plug_preview = !s:is_preview_window_open() endif - let sha = matchstr(getline('.'), '^ \X*\zs[0-9a-f]\{7}') + let sha = matchstr(getline('.'), '^ \X*\zs[0-9a-f]\{7,9}') if empty(sha) return endif @@ -2276,7 +2352,21 @@ function! s:preview_commit() wincmd P endif setlocal previewwindow filetype=git buftype=nofile nobuflisted modifiable - execute 'silent %!cd' s:shellesc(g:plugs[name].dir) '&& git show --no-color --pretty=medium' sha + try + let [sh, shellcmdflag, shrd] = s:chsh(1) + let cmd = 'cd '.s:shellesc(g:plugs[name].dir).' && git show --no-color --pretty=medium '.sha + if s:is_win + let batchfile = tempname().'.bat' + call writefile(["@echo off\r", cmd . "\r"], batchfile) + let cmd = batchfile + endif + execute 'silent %!' cmd + finally + let [&shell, &shellcmdflag, &shellredir] = [sh, shellcmdflag, shrd] + if s:is_win + call delete(batchfile) + endif + endtry setlocal nomodifiable nnoremap q :q wincmd p @@ -2317,7 +2407,7 @@ function! s:diff() call s:append_ul(2, origin ? 'Pending updates:' : 'Last update:') for [k, v] in plugs let range = origin ? '..origin/'.v.branch : 'HEAD@{1}..' - let diff = s:system_chomp('git log --graph --color=never --pretty=format:"%x01%h%x01%d%x01%s%x01%cr" '.s:shellesc(range), v.dir) + let diff = s:system_chomp('git log --graph --color=never '.join(map(['--pretty=format:%x01%h%x01%d%x01%s%x01%cr', range], 's:shellesc(v:val)')), v.dir) if !empty(diff) let ref = has_key(v, 'tag') ? (' (tag: '.v.tag.')') : has_key(v, 'commit') ? (' '.v.commit) : '' call append(5, extend(['', '- '.k.':'.ref], map(s:lines(diff), 's:format_git_log(v:val)'))) @@ -2358,7 +2448,7 @@ function! s:revert() return endif - call s:system('git reset --hard HEAD@{1} && git checkout '.s:esc(g:plugs[name].branch), g:plugs[name].dir) + call s:system('git reset --hard HEAD@{1} && git checkout '.s:esc(g:plugs[name].branch).' --', g:plugs[name].dir) setlocal modifiable normal! "_dap setlocal nomodifiable diff --git a/backups/.gitignore b/backups/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/backups/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/colors/distinguished.vim b/colors/distinguished.vim deleted file mode 100644 index db3af12..0000000 --- a/colors/distinguished.vim +++ /dev/null @@ -1,181 +0,0 @@ -" Author: Kim Silkebækken -" Source repository: https://github.com/Lokaltog/vim-distinguished - -" Initialization {{{ - set background=dark - - hi clear - if exists('syntax_on') - syntax reset - endif - - let g:colors_name = 'distinguished' - - if ! has('gui_running') - if &t_Co != 256 - echoe 'The ' . g:colors_name . ' color scheme requires gvim or a 256-color terminal' - - finish - endif - endif -" }}} -" Color dictionary parser {{{ - function! s:ColorDictParser(color_dict) - for [group, group_colors] in items(a:color_dict) - exec 'hi ' . group - \ . ' ctermfg=' . (group_colors[0] == '' ? 'NONE' : group_colors[0]) - \ . ' ctermbg=' . (group_colors[1] == '' ? 'NONE' : group_colors[1]) - \ . ' cterm=' . (group_colors[2] == '' ? 'NONE' : group_colors[2]) - \ - \ . ' guifg=' . (group_colors[3] == '' ? 'NONE' : '#' . group_colors[3]) - \ . ' guibg=' . (group_colors[4] == '' ? 'NONE' : '#' . group_colors[4]) - \ . ' gui=' . (group_colors[5] == '' ? 'NONE' : group_colors[5]) - endfor - endfunction -" }}} - -" | Highlight group | CTFG | CTBG | CTAttributes | || | GUIFG | GUIBG | GUIAttributes | -" |--------------------------------|-------|-------|-----------------| || |---------|----------|-----------------| -call s:ColorDictParser({ - \ 'Normal' : [ 231, 16, '', 'ffffff', '000000', ''] - \ , 'Visual' : [ 240, 253, '', '585858', 'dadada', ''] - \ - \ , 'Cursor' : [ '', '', '', 'ffffff', 'dd4010', ''] - \ , 'lCursor' : [ '', '', '', 'ffffff', '89b6e2', ''] - \ - \ , 'CursorLine' : [ '', 236, '', '', '3a3a3a', ''] - \ , 'CursorLineNr' : [ 231, 240, '', 'ffffff', '585858', ''] - \ , 'CursorColumn' : [ 231, 237, '', 'ffffff', '3a3a3a', ''] - \ - \ , 'Folded' : [ 249, 234, '', 'b2b2b2', '1c1c1c', ''] - \ , 'FoldColumn' : [ 243, 234, '', '767676', '1c1c1c', ''] - \ , 'SignColumn' : [ 231, 233, 'bold', 'ffffff', '121212', 'bold'] - \ , 'ColorColumn' : [ '', 233, '', '', '262626', ''] - \ - \ , 'StatusLine' : [ 231, 236, 'bold', 'ffffff', '303030', 'bold'] - \ , 'StatusLineNC' : [ 244, 232, '', '808080', '080808', ''] - \ - \ , 'LineNr' : [ 243, 235, '', '767676', '262626', ''] - \ , 'VertSplit' : [ 240, '', '', '585858', '1c1c1c', ''] - \ - \ , 'WildMenu' : [ 234, 231, '', '1c1c1c', 'ffffff', ''] - \ , 'Directory' : [ 143, '', 'bold', 'afaf5f', '', 'bold'] - \ , 'Underlined' : [ 130, '', '', 'af5f00', '', ''] - \ - \ , 'Question' : [ 74, '', 'bold', '5fafd7', '', 'bold'] - \ , 'MoreMsg' : [ 214, '', 'bold', 'ffaf00', '', 'bold'] - \ , 'WarningMsg' : [ 202, '', 'bold', 'ff5f00', '', 'bold'] - \ , 'ErrorMsg' : [ 196, '', 'bold', 'ff0000', '', 'bold'] - \ - \ , 'Comment' : [ 243, 233, '', '767676', '121212', ''] - \ , 'vimCommentTitleLeader' : [ 250, 233, '', 'bcbcbc', '121212', ''] - \ , 'vimCommentTitle' : [ 250, 233, '', 'bcbcbc', '121212', ''] - \ , 'vimCommentString' : [ 245, 233, '', '8a8a8a', '121212', ''] - \ - \ , 'TabLine' : [ 231, 238, '', 'ffffff', '444444', ''] - \ , 'TabLineSel' : [ 255, '', 'bold', 'eeeeee', '', 'bold'] - \ , 'TabLineFill' : [ 240, 238, '', '585858', '444444', ''] - \ , 'TabLineNumber' : [ 160, 238, 'bold', 'd70000', '444444', 'bold'] - \ , 'TabLineClose' : [ 245, 238, 'bold', '8a8a8a', '444444', 'bold'] - \ - \ , 'SpellCap' : [ 231, 31, 'bold', 'ffffff', '0087af', 'bold'] - \ - \ , 'SpecialKey' : [ 239, '', '', '4e4e4e', '', ''] - \ , 'NonText' : [ 88, '', '', '870000', '', ''] - \ , 'MatchParen' : [ 231, 25, 'bold', 'ffffff', '005faf', 'bold'] - \ - \ , 'Constant' : [ 137, '', 'bold', 'af875f', '', 'bold'] - \ , 'Special' : [ 150, '', '', 'afd787', '', ''] - \ , 'Identifier' : [ 66, '', 'bold', '5f8787', '', 'bold'] - \ , 'Statement' : [ 186, '', 'bold', 'd7d787', '', 'bold'] - \ , 'PreProc' : [ 247, '', '', '9e9e9e', '', ''] - \ , 'Type' : [ 67, '', 'bold', '5f87af', '', 'bold'] - \ , 'String' : [ 143, '', '', 'afaf5f', '', ''] - \ , 'Number' : [ 173, '', '', 'd7875f', '', ''] - \ , 'Define' : [ 173, '', '', 'd7875f', '', ''] - \ , 'Error' : [ 208, 124, '', 'ff8700', 'af0000', ''] - \ , 'Function' : [ 179, '', '', 'd7af5f', '', ''] - \ , 'Include' : [ 173, '', '', 'd7875f', '', ''] - \ , 'PreCondit' : [ 173, '', '', 'd7875f', '', ''] - \ , 'Keyword' : [ 173, '', '', 'd7875f', '', ''] - \ , 'Search' : [ 231, 131, '', '000000', 'ffff5f', 'underline,bold'] - \ , 'Title' : [ 231, '', '', 'ffffff', '', ''] - \ , 'Delimiter' : [ 246, '', '', '949494', '', ''] - \ , 'StorageClass' : [ 187, '', '', 'd7d7af', '', ''] - \ , 'Operator' : [ 180, '', '', 'd7af87', '', ''] - \ - \ , 'TODO' : [ 228, 94, 'bold', 'ffff87', '875f00', 'bold'] - \ - \ , 'SyntasticWarning' : [ 220, 94, '', 'ffff87', '875f00', 'bold'] - \ , 'SyntasticError' : [ 202, 52, '', 'ffff87', '875f00', 'bold'] - \ - \ , 'Pmenu' : [ 248, 240, '', 'a8a8a8', '585858', ''] - \ , 'PmenuSel' : [ 253, 245, '', 'dadada', '8a8a8a', ''] - \ , 'PmenuSbar' : [ 253, 248, '', 'dadada', 'a8a8a8', ''] - \ - \ , 'phpEOL' : [ 245, '', '', 'dadada', '', ''] - \ , 'phpStringDelim' : [ 94, '', '', '875f00', '', ''] - \ , 'phpDelimiter' : [ 160, '', '', 'd70000', '', ''] - \ , 'phpFunctions' : [ 221, '', 'bold', 'ffd75f', '', 'bold'] - \ , 'phpBoolean' : [ 172, '', 'bold', 'd78700', '', 'bold'] - \ , 'phpOperator' : [ 215, '', '', 'ffaf5f', '', ''] - \ , 'phpMemberSelector' : [ 138, '', 'bold', 'af8787', '', 'bold'] - \ , 'phpParent' : [ 227, '', '', 'ffff5f', '', ''] - \ - \ , 'PHPClassTag' : [ 253, '', '', 'dadada', '', ''] - \ , 'PHPInterfaceTag' : [ 253, '', '', 'dadada', '', ''] - \ , 'PHPFunctionTag' : [ 222, '', 'bold', 'ffd787', '', 'bold'] - \ - \ , 'pythonDocString' : [ 240, 233, '', '585858', '121212', ''] - \ , 'pythonDocStringTitle' : [ 245, 233, '', 'dadada', '121212', ''] - \ , 'pythonRun' : [ 65, '', '', '5f875f', '', ''] - \ , 'pythonBuiltinObj' : [ 67, '', 'bold', '5f87af', '', 'bold'] - \ , 'pythonSelf' : [ 250, '', 'bold', 'bcbcbc', '', 'bold'] - \ , 'pythonFunction' : [ 179, '', 'bold', 'd7af5f', '', 'bold'] - \ , 'pythonClass' : [ 221, '', 'bold', 'ffd75f', '', 'bold'] - \ , 'pythonExClass' : [ 130, '', '', 'af5f00', '', ''] - \ , 'pythonException' : [ 130, '', 'bold', 'af5f00', '', 'bold'] - \ , 'pythonOperator' : [ 186, '', '', 'd7d787', '', ''] - \ , 'pythonPreCondit' : [ 152, '', 'bold', 'afd7d7', '', 'bold'] - \ , 'pythonDottedName' : [ 166, '', '', 'd75f00', '', ''] - \ , 'pythonDecorator' : [ 124, '', 'bold', 'af0000', '', 'bold'] - \ - \ , 'PythonInterfaceTag' : [ 109, '', '', '87afaf', '', ''] - \ , 'PythonClassTag' : [ 221, '', '', 'ffd75f', '', ''] - \ , 'PythonFunctionTag' : [ 109, '', '', '87afaf', '', ''] - \ , 'PythonVariableTag' : [ 253, '', '', 'dadada', '', ''] - \ , 'PythonMemberTag' : [ 145, '', '', 'afafaf', '', ''] - \ - \ , 'CTagsImport' : [ 109, '', '', '87afaf', '', ''] - \ , 'CTagsClass' : [ 221, '', '', 'ffd75f', '', ''] - \ , 'CTagsFunction' : [ 109, '', '', '87afaf', '', ''] - \ , 'CTagsGlobalVariable' : [ 253, '', '', 'dadada', '', ''] - \ , 'CTagsMember' : [ 145, '', '', 'afafaf', '', ''] - \ - \ , 'xmlTag' : [ 149, '', 'bold', 'afd75f', '', 'bold'] - \ , 'xmlTagName' : [ 250, '', '', 'bcbcbc', '', ''] - \ , 'xmlEndTag' : [ 209, '', 'bold', 'ff875f', '', 'bold'] - \ - \ , 'cssImportant' : [ 166, '', 'bold', 'd75f00', '', 'bold'] - \ - \ , 'DiffAdd' : [ 112, 22, '', '87d700', '005f00', ''] - \ , 'DiffChange' : [ 220, 94, '', 'ffd700', '875f00', ''] - \ , 'DiffDelete' : [ 160, '', '', 'd70000', '', ''] - \ , 'DiffText' : [ 220, 94, 'reverse,bold', 'ffd700', '875f00', 'reverse,bold'] - \ - \ , 'diffLine' : [ 68, '', 'bold', '5f87d7', '', 'bold'] - \ , 'diffFile' : [ 242, '', '', '6c6c6c', '', ''] - \ , 'diffNewFile' : [ 242, '', '', '6c6c6c', '', ''] -\ }) - -hi link htmlTag xmlTag -hi link htmlTagName xmlTagName -hi link htmlEndTag xmlEndTag - -hi link phpCommentTitle vimCommentTitle -hi link phpDocTags vimCommentString -hi link phpDocParam vimCommentTitle - -hi link diffAdded DiffAdd -hi link diffChanged DiffChange -hi link diffRemoved DiffDelete diff --git a/colors/solarized.vim b/colors/solarized.vim deleted file mode 100644 index ad16beb..0000000 --- a/colors/solarized.vim +++ /dev/null @@ -1,1117 +0,0 @@ -" Name: Solarized vim colorscheme -" Author: Ethan Schoonover -" URL: http://ethanschoonover.com/solarized -" (see this url for latest release & screenshots) -" License: OSI approved MIT license (see end of this file) -" Created: In the middle of the night -" Modified: 2011 May 05 -" -" Usage "{{{ -" -" --------------------------------------------------------------------- -" ABOUT: -" --------------------------------------------------------------------- -" Solarized is a carefully designed selective contrast colorscheme with dual -" light and dark modes that runs in both GUI, 256 and 16 color modes. -" -" See the homepage above for screenshots and details. -" -" --------------------------------------------------------------------- -" OPTIONS: -" --------------------------------------------------------------------- -" See the "solarized.txt" help file included with this colorscheme (in the -" "doc" subdirectory) for information on options, usage, the Toggle Background -" function and more. If you have already installed Solarized, this is available -" from the Solarized menu and command line as ":help solarized" -" -" --------------------------------------------------------------------- -" INSTALLATION: -" --------------------------------------------------------------------- -" Two options for installation: manual or pathogen -" -" MANUAL INSTALLATION OPTION: -" --------------------------------------------------------------------- -" -" 1. Download the solarized distribution (available on the homepage above) -" and unarchive the file. -" 2. Move `solarized.vim` to your `.vim/colors` directory. -" 3. Move each of the files in each subdirectories to the corresponding .vim -" subdirectory (e.g. autoload/togglebg.vim goes into your .vim/autoload -" directory as .vim/autoload/togglebg.vim). -" -" RECOMMENDED PATHOGEN INSTALLATION OPTION: -" --------------------------------------------------------------------- -" -" 1. Download and install Tim Pope's Pathogen from: -" https://github.com/tpope/vim-pathogen -" -" 2. Next, move or clone the `vim-colors-solarized` directory so that it is -" a subdirectory of the `.vim/bundle` directory. -" -" a. **clone with git:** -" -" $ cd ~/.vim/bundle -" $ git clone git://github.com/altercation/vim-colors-solarized.git -" -" b. **or move manually into the pathogen bundle directory:** -" In the parent directory of vim-colors-solarized: -" -" $ mv vim-colors-solarized ~/.vim/bundle/ -" -" MODIFY VIMRC: -" -" After either Option 1 or Option 2 above, put the following two lines in your -" .vimrc: -" -" syntax enable -" set background=dark -" colorscheme solarized -" -" or, for the light background mode of Solarized: -" -" syntax enable -" set background=light -" colorscheme solarized -" -" I like to have a different background in GUI and terminal modes, so I can use -" the following if-then. However, I find vim's background autodetection to be -" pretty good and, at least with MacVim, I can leave this background value -" assignment out entirely and get the same results. -" -" if has('gui_running') -" set background=light -" else -" set background=dark -" endif -" -" See the Solarized homepage at http://ethanschoonover.com/solarized for -" screenshots which will help you select either the light or dark background. -" -" --------------------------------------------------------------------- -" COLOR VALUES -" --------------------------------------------------------------------- -" Download palettes and files from: http://ethanschoonover.com/solarized -" -" L\*a\*b values are canonical (White D65, Reference D50), other values are -" matched in sRGB space. -" -" SOLARIZED HEX 16/8 TERMCOL XTERM/HEX L*A*B sRGB HSB -" --------- ------- ---- ------- ----------- ---------- ----------- ----------- -" base03 #002b36 8/4 brblack 234 #1c1c1c 15 -12 -12 0 43 54 193 100 21 -" base02 #073642 0/4 black 235 #262626 20 -12 -12 7 54 66 192 90 26 -" base01 #586e75 10/7 brgreen 240 #4e4e4e 45 -07 -07 88 110 117 194 25 46 -" base00 #657b83 11/7 bryellow 241 #585858 50 -07 -07 101 123 131 195 23 51 -" base0 #839496 12/6 brblue 244 #808080 60 -06 -03 131 148 150 186 13 59 -" base1 #93a1a1 14/4 brcyan 245 #8a8a8a 65 -05 -02 147 161 161 180 9 63 -" base2 #eee8d5 7/7 white 254 #d7d7af 92 -00 10 238 232 213 44 11 93 -" base3 #fdf6e3 15/7 brwhite 230 #ffffd7 97 00 10 253 246 227 44 10 99 -" yellow #b58900 3/3 yellow 136 #af8700 60 10 65 181 137 0 45 100 71 -" orange #cb4b16 9/3 brred 166 #d75f00 50 50 55 203 75 22 18 89 80 -" red #dc322f 1/1 red 160 #d70000 50 65 45 220 50 47 1 79 86 -" magenta #d33682 5/5 magenta 125 #af005f 50 65 -05 211 54 130 331 74 83 -" violet #6c71c4 13/5 brmagenta 61 #5f5faf 50 15 -45 108 113 196 237 45 77 -" blue #268bd2 4/4 blue 33 #0087ff 55 -10 -45 38 139 210 205 82 82 -" cyan #2aa198 6/6 cyan 37 #00afaf 60 -35 -05 42 161 152 175 74 63 -" green #859900 2/2 green 64 #5f8700 60 -20 65 133 153 0 68 100 60 -" -" --------------------------------------------------------------------- -" COLORSCHEME HACKING -" --------------------------------------------------------------------- -" -" Useful commands for testing colorschemes: -" :source $VIMRUNTIME/syntax/hitest.vim -" :help highlight-groups -" :help cterm-colors -" :help group-name -" -" Useful links for developing colorschemes: -" http://www.vim.org/scripts/script.php?script_id=2937 -" http://vimcasts.org/episodes/creating-colorschemes-for-vim/ -" http://www.frexx.de/xterm-256-notes/" -" -" }}} -" Environment Specific Overrides "{{{ -" Allow or disallow certain features based on current terminal emulator or -" environment. - -" Terminals that support italics -let s:terms_italic=[ - \"rxvt", - \"gnome-terminal" - \] -" For reference only, terminals are known to be incomptible. -" Terminals that are in neither list need to be tested. -let s:terms_noitalic=[ - \"iTerm.app", - \"Apple_Terminal" - \] -if has("gui_running") - let s:terminal_italic=1 " TODO: could refactor to not require this at all -else - let s:terminal_italic=0 " terminals will be guilty until proven compatible - for term in s:terms_italic - if $TERM_PROGRAM =~ term - let s:terminal_italic=1 - endif - endfor -endif - -" }}} -" Default option values"{{{ -" --------------------------------------------------------------------- -" s:options_list is used to autogenerate a list of all non-default options -" using "call SolarizedOptions()" or with the "Generate .vimrc commands" -" Solarized menu option. See the "Menus" section below for the function itself. -let s:options_list=[ - \'" this block of commands has been autogenerated by solarized.vim and', - \'" includes the current, non-default Solarized option values.', - \'" To use, place these commands in your .vimrc file (replacing any', - \'" existing colorscheme commands). See also ":help solarized"', - \'', - \'" ------------------------------------------------------------------', - \'" Solarized Colorscheme Config', - \'" ------------------------------------------------------------------', - \] -let s:colorscheme_list=[ - \'syntax enable', - \'set background='.&background, - \'colorscheme solarized', - \] -let s:defaults_list=[ - \'" ------------------------------------------------------------------', - \'', - \'" The following items are available options, but do not need to be', - \'" included in your .vimrc as they are currently set to their defaults.', - \'' - \] -let s:lazycat_list=[ - \'" lazy method of appending this onto your .vimrc ":w! >> ~/.vimrc"', - \'" ------------------------------------------------------------------', - \] - -function! s:SetOption(name,default) - if type(a:default) == type(0) - let l:wrap='' - let l:ewrap='' - else - let l:wrap='"' - let l:ewrap='\"' - endif - if !exists("g:solarized_".a:name) || g:solarized_{a:name}==a:default - exe 'let g:solarized_'.a:name.'='.l:wrap.a:default.l:wrap.'"' - exe 'call add(s:defaults_list, "\" let g:solarized_'.a:name.'='.l:ewrap.g:solarized_{a:name}.l:ewrap.'")' - else - exe 'call add(s:options_list, "let g:solarized_'.a:name.'='.l:ewrap.g:solarized_{a:name}.l:ewrap.' \"default value is '.a:default.'")' - endif -endfunction - -if ($TERM_PROGRAM ==? "apple_terminal" && &t_Co < 256) - let s:solarized_termtrans_default = 1 -else - let s:solarized_termtrans_default = 0 -endif -call s:SetOption("termtrans",s:solarized_termtrans_default) -call s:SetOption("degrade",0) -call s:SetOption("bold",1) -call s:SetOption("underline",1) -call s:SetOption("italic",1) " note that we need to override this later if the terminal doesn't support -call s:SetOption("termcolors",16) -call s:SetOption("contrast","normal") -call s:SetOption("visibility","normal") -call s:SetOption("diffmode","normal") -call s:SetOption("hitrail",0) -call s:SetOption("menu",1) - -"}}} -" Colorscheme initialization "{{{ -" --------------------------------------------------------------------- -hi clear -if exists("syntax_on") - syntax reset -endif -let colors_name = "solarized" - -"}}} -" GUI & CSApprox hexadecimal palettes"{{{ -" --------------------------------------------------------------------- -" -" Set both gui and terminal color values in separate conditional statements -" Due to possibility that CSApprox is running (though I suppose we could just -" leave the hex values out entirely in that case and include only cterm colors) -" We also check to see if user has set solarized (force use of the -" neutral gray monotone palette component) -if (has("gui_running") && g:solarized_degrade == 0) - let s:vmode = "gui" - let s:base03 = "#002b36" - let s:base02 = "#073642" - let s:base01 = "#586e75" - let s:base00 = "#657b83" - let s:base0 = "#839496" - let s:base1 = "#93a1a1" - let s:base2 = "#eee8d5" - let s:base3 = "#fdf6e3" - let s:yellow = "#b58900" - let s:orange = "#cb4b16" - let s:red = "#dc322f" - let s:magenta = "#d33682" - let s:violet = "#6c71c4" - let s:blue = "#268bd2" - let s:cyan = "#2aa198" - "let s:green = "#859900" "original - let s:green = "#719e07" "experimental -elseif (has("gui_running") && g:solarized_degrade == 1) - " These colors are identical to the 256 color mode. They may be viewed - " while in gui mode via "let g:solarized_degrade=1", though this is not - " recommened and is for testing only. - let s:vmode = "gui" - let s:base03 = "#1c1c1c" - let s:base02 = "#262626" - let s:base01 = "#4e4e4e" - let s:base00 = "#585858" - let s:base0 = "#808080" - let s:base1 = "#8a8a8a" - let s:base2 = "#d7d7af" - let s:base3 = "#ffffd7" - let s:yellow = "#af8700" - let s:orange = "#d75f00" - let s:red = "#af0000" - let s:magenta = "#af005f" - let s:violet = "#5f5faf" - let s:blue = "#0087ff" - let s:cyan = "#00afaf" - let s:green = "#5f8700" -elseif g:solarized_termcolors != 256 && &t_Co >= 16 - let s:vmode = "cterm" - let s:base03 = "8" - let s:base02 = "0" - let s:base01 = "10" - let s:base00 = "11" - let s:base0 = "12" - let s:base1 = "14" - let s:base2 = "7" - let s:base3 = "15" - let s:yellow = "3" - let s:orange = "9" - let s:red = "1" - let s:magenta = "5" - let s:violet = "13" - let s:blue = "4" - let s:cyan = "6" - let s:green = "2" -elseif g:solarized_termcolors == 256 - let s:vmode = "cterm" - let s:base03 = "234" - let s:base02 = "235" - let s:base01 = "239" - let s:base00 = "240" - let s:base0 = "244" - let s:base1 = "245" - let s:base2 = "187" - let s:base3 = "230" - let s:yellow = "136" - let s:orange = "166" - let s:red = "124" - let s:magenta = "125" - let s:violet = "61" - let s:blue = "33" - let s:cyan = "37" - let s:green = "64" -else - let s:vmode = "cterm" - let s:bright = "* term=bold cterm=bold" -" let s:base03 = "0".s:bright -" let s:base02 = "0" -" let s:base01 = "2".s:bright -" let s:base00 = "3".s:bright -" let s:base0 = "4".s:bright -" let s:base1 = "6".s:bright -" let s:base2 = "7" -" let s:base3 = "7".s:bright -" let s:yellow = "3" -" let s:orange = "1".s:bright -" let s:red = "1" -" let s:magenta = "5" -" let s:violet = "5".s:bright -" let s:blue = "4" -" let s:cyan = "6" -" let s:green = "2" - let s:base03 = "DarkGray" " 0* - let s:base02 = "Black" " 0 - let s:base01 = "LightGreen" " 2* - let s:base00 = "LightYellow" " 3* - let s:base0 = "LightBlue" " 4* - let s:base1 = "LightCyan" " 6* - let s:base2 = "LightGray" " 7 - let s:base3 = "White" " 7* - let s:yellow = "DarkYellow" " 3 - let s:orange = "LightRed" " 1* - let s:red = "DarkRed" " 1 - let s:magenta = "DarkMagenta" " 5 - let s:violet = "LightMagenta" " 5* - let s:blue = "DarkBlue" " 4 - let s:cyan = "DarkCyan" " 6 - let s:green = "DarkGreen" " 2 - -endif -"}}} -" Formatting options and null values for passthrough effect "{{{ -" --------------------------------------------------------------------- - let s:none = "NONE" - let s:none = "NONE" - let s:t_none = "NONE" - let s:n = "NONE" - let s:c = ",undercurl" - let s:r = ",reverse" - let s:s = ",standout" - let s:ou = "" - let s:ob = "" -"}}} -" Background value based on termtrans setting "{{{ -" --------------------------------------------------------------------- -if (has("gui_running") || g:solarized_termtrans == 0) - let s:back = s:base03 -else - let s:back = "NONE" -endif -"}}} -" Alternate light scheme "{{{ -" --------------------------------------------------------------------- -if &background == "light" - let s:temp03 = s:base03 - let s:temp02 = s:base02 - let s:temp01 = s:base01 - let s:temp00 = s:base00 - let s:base03 = s:base3 - let s:base02 = s:base2 - let s:base01 = s:base1 - let s:base00 = s:base0 - let s:base0 = s:temp00 - let s:base1 = s:temp01 - let s:base2 = s:temp02 - let s:base3 = s:temp03 - if (s:back != "NONE") - let s:back = s:base03 - endif -endif -"}}} -" Optional contrast schemes "{{{ -" --------------------------------------------------------------------- -if g:solarized_contrast == "high" - let s:base01 = s:base00 - let s:base00 = s:base0 - let s:base0 = s:base1 - let s:base1 = s:base2 - let s:base2 = s:base3 - let s:back = s:back -endif -if g:solarized_contrast == "low" - let s:back = s:base02 - let s:ou = ",underline" -endif -"}}} -" Overrides dependent on user specified values and environment "{{{ -" --------------------------------------------------------------------- -if (g:solarized_bold == 0 || &t_Co == 8 ) - let s:b = "" - let s:bb = ",bold" -else - let s:b = ",bold" - let s:bb = "" -endif - -if g:solarized_underline == 0 - let s:u = "" -else - let s:u = ",underline" -endif - -if g:solarized_italic == 0 || s:terminal_italic == 0 - let s:i = "" -else - let s:i = ",italic" -endif -"}}} -" Highlighting primitives"{{{ -" --------------------------------------------------------------------- - -exe "let s:bg_none = ' ".s:vmode."bg=".s:none ."'" -exe "let s:bg_back = ' ".s:vmode."bg=".s:back ."'" -exe "let s:bg_base03 = ' ".s:vmode."bg=".s:base03 ."'" -exe "let s:bg_base02 = ' ".s:vmode."bg=".s:base02 ."'" -exe "let s:bg_base01 = ' ".s:vmode."bg=".s:base01 ."'" -exe "let s:bg_base00 = ' ".s:vmode."bg=".s:base00 ."'" -exe "let s:bg_base0 = ' ".s:vmode."bg=".s:base0 ."'" -exe "let s:bg_base1 = ' ".s:vmode."bg=".s:base1 ."'" -exe "let s:bg_base2 = ' ".s:vmode."bg=".s:base2 ."'" -exe "let s:bg_base3 = ' ".s:vmode."bg=".s:base3 ."'" -exe "let s:bg_green = ' ".s:vmode."bg=".s:green ."'" -exe "let s:bg_yellow = ' ".s:vmode."bg=".s:yellow ."'" -exe "let s:bg_orange = ' ".s:vmode."bg=".s:orange ."'" -exe "let s:bg_red = ' ".s:vmode."bg=".s:red ."'" -exe "let s:bg_magenta = ' ".s:vmode."bg=".s:magenta."'" -exe "let s:bg_violet = ' ".s:vmode."bg=".s:violet ."'" -exe "let s:bg_blue = ' ".s:vmode."bg=".s:blue ."'" -exe "let s:bg_cyan = ' ".s:vmode."bg=".s:cyan ."'" - -exe "let s:fg_none = ' ".s:vmode."fg=".s:none ."'" -exe "let s:fg_back = ' ".s:vmode."fg=".s:back ."'" -exe "let s:fg_base03 = ' ".s:vmode."fg=".s:base03 ."'" -exe "let s:fg_base02 = ' ".s:vmode."fg=".s:base02 ."'" -exe "let s:fg_base01 = ' ".s:vmode."fg=".s:base01 ."'" -exe "let s:fg_base00 = ' ".s:vmode."fg=".s:base00 ."'" -exe "let s:fg_base0 = ' ".s:vmode."fg=".s:base0 ."'" -exe "let s:fg_base1 = ' ".s:vmode."fg=".s:base1 ."'" -exe "let s:fg_base2 = ' ".s:vmode."fg=".s:base2 ."'" -exe "let s:fg_base3 = ' ".s:vmode."fg=".s:base3 ."'" -exe "let s:fg_green = ' ".s:vmode."fg=".s:green ."'" -exe "let s:fg_yellow = ' ".s:vmode."fg=".s:yellow ."'" -exe "let s:fg_orange = ' ".s:vmode."fg=".s:orange ."'" -exe "let s:fg_red = ' ".s:vmode."fg=".s:red ."'" -exe "let s:fg_magenta = ' ".s:vmode."fg=".s:magenta."'" -exe "let s:fg_violet = ' ".s:vmode."fg=".s:violet ."'" -exe "let s:fg_blue = ' ".s:vmode."fg=".s:blue ."'" -exe "let s:fg_cyan = ' ".s:vmode."fg=".s:cyan ."'" - -exe "let s:fmt_none = ' ".s:vmode."=NONE". " term=NONE". "'" -exe "let s:fmt_bold = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b."'" -exe "let s:fmt_bldi = ' ".s:vmode."=NONE".s:b. " term=NONE".s:b."'" -exe "let s:fmt_undr = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u."'" -exe "let s:fmt_undb = ' ".s:vmode."=NONE".s:u.s:b. " term=NONE".s:u.s:b."'" -exe "let s:fmt_undi = ' ".s:vmode."=NONE".s:u. " term=NONE".s:u."'" -exe "let s:fmt_uopt = ' ".s:vmode."=NONE".s:ou. " term=NONE".s:ou."'" -exe "let s:fmt_curl = ' ".s:vmode."=NONE".s:c. " term=NONE".s:c."'" -exe "let s:fmt_ital = ' ".s:vmode."=NONE".s:i. " term=NONE".s:i."'" -exe "let s:fmt_stnd = ' ".s:vmode."=NONE".s:s. " term=NONE".s:s."'" -exe "let s:fmt_revr = ' ".s:vmode."=NONE".s:r. " term=NONE".s:r."'" -exe "let s:fmt_revb = ' ".s:vmode."=NONE".s:r.s:b. " term=NONE".s:r.s:b."'" -" revbb (reverse bold for bright colors) is only set to actual bold in low -" color terminals (t_co=8, such as OS X Terminal.app) and should only be used -" with colors 8-15. -exe "let s:fmt_revbb = ' ".s:vmode."=NONE".s:r.s:bb. " term=NONE".s:r.s:bb."'" -exe "let s:fmt_revbbu = ' ".s:vmode."=NONE".s:r.s:bb.s:u." term=NONE".s:r.s:bb.s:u."'" - -if has("gui_running") - exe "let s:sp_none = ' guisp=".s:none ."'" - exe "let s:sp_back = ' guisp=".s:back ."'" - exe "let s:sp_base03 = ' guisp=".s:base03 ."'" - exe "let s:sp_base02 = ' guisp=".s:base02 ."'" - exe "let s:sp_base01 = ' guisp=".s:base01 ."'" - exe "let s:sp_base00 = ' guisp=".s:base00 ."'" - exe "let s:sp_base0 = ' guisp=".s:base0 ."'" - exe "let s:sp_base1 = ' guisp=".s:base1 ."'" - exe "let s:sp_base2 = ' guisp=".s:base2 ."'" - exe "let s:sp_base3 = ' guisp=".s:base3 ."'" - exe "let s:sp_green = ' guisp=".s:green ."'" - exe "let s:sp_yellow = ' guisp=".s:yellow ."'" - exe "let s:sp_orange = ' guisp=".s:orange ."'" - exe "let s:sp_red = ' guisp=".s:red ."'" - exe "let s:sp_magenta = ' guisp=".s:magenta."'" - exe "let s:sp_violet = ' guisp=".s:violet ."'" - exe "let s:sp_blue = ' guisp=".s:blue ."'" - exe "let s:sp_cyan = ' guisp=".s:cyan ."'" -else - let s:sp_none = "" - let s:sp_back = "" - let s:sp_base03 = "" - let s:sp_base02 = "" - let s:sp_base01 = "" - let s:sp_base00 = "" - let s:sp_base0 = "" - let s:sp_base1 = "" - let s:sp_base2 = "" - let s:sp_base3 = "" - let s:sp_green = "" - let s:sp_yellow = "" - let s:sp_orange = "" - let s:sp_red = "" - let s:sp_magenta = "" - let s:sp_violet = "" - let s:sp_blue = "" - let s:sp_cyan = "" -endif - -"}}} -" Basic highlighting"{{{ -" --------------------------------------------------------------------- -" note that link syntax to avoid duplicate configuration doesn't work with the -" exe compiled formats - -exe "hi! Normal" .s:fmt_none .s:fg_base0 .s:bg_back - -exe "hi! Comment" .s:fmt_ital .s:fg_base01 .s:bg_none -" *Comment any comment - -exe "hi! Constant" .s:fmt_none .s:fg_cyan .s:bg_none -" *Constant any constant -" String a string constant: "this is a string" -" Character a character constant: 'c', '\n' -" Number a number constant: 234, 0xff -" Boolean a boolean constant: TRUE, false -" Float a floating point constant: 2.3e10 - -exe "hi! Identifier" .s:fmt_none .s:fg_blue .s:bg_none -" *Identifier any variable name -" Function function name (also: methods for classes) -" -exe "hi! Statement" .s:fmt_none .s:fg_green .s:bg_none -" *Statement any statement -" Conditional if, then, else, endif, switch, etc. -" Repeat for, do, while, etc. -" Label case, default, etc. -" Operator "sizeof", "+", "*", etc. -" Keyword any other keyword -" Exception try, catch, throw - -exe "hi! PreProc" .s:fmt_none .s:fg_orange .s:bg_none -" *PreProc generic Preprocessor -" Include preprocessor #include -" Define preprocessor #define -" Macro same as Define -" PreCondit preprocessor #if, #else, #endif, etc. - -exe "hi! Type" .s:fmt_none .s:fg_yellow .s:bg_none -" *Type int, long, char, etc. -" StorageClass static, register, volatile, etc. -" Structure struct, union, enum, etc. -" Typedef A typedef - -exe "hi! Special" .s:fmt_none .s:fg_red .s:bg_none -" *Special any special symbol -" SpecialChar special character in a constant -" Tag you can use CTRL-] on this -" Delimiter character that needs attention -" SpecialComment special things inside a comment -" Debug debugging statements - -exe "hi! Underlined" .s:fmt_none .s:fg_violet .s:bg_none -" *Underlined text that stands out, HTML links - -exe "hi! Ignore" .s:fmt_none .s:fg_none .s:bg_none -" *Ignore left blank, hidden |hl-Ignore| - -exe "hi! Error" .s:fmt_bold .s:fg_red .s:bg_none -" *Error any erroneous construct - -exe "hi! Todo" .s:fmt_bold .s:fg_magenta.s:bg_none -" *Todo anything that needs extra attention; mostly the -" keywords TODO FIXME and XXX -" -"}}} -" Extended highlighting "{{{ -" --------------------------------------------------------------------- -if (g:solarized_visibility=="high") - exe "hi! SpecialKey" .s:fmt_revr .s:fg_red .s:bg_none - exe "hi! NonText" .s:fmt_bold .s:fg_red .s:bg_none -elseif (g:solarized_visibility=="low") - exe "hi! SpecialKey" .s:fmt_bold .s:fg_base02 .s:bg_none - exe "hi! NonText" .s:fmt_bold .s:fg_base02 .s:bg_none -else - exe "hi! SpecialKey" .s:fmt_bold .s:fg_base00 .s:bg_base02 - exe "hi! NonText" .s:fmt_bold .s:fg_base00 .s:bg_none -endif -exe "hi! StatusLine" .s:fmt_none .s:fg_base1 .s:bg_base02 .s:fmt_revbb -exe "hi! StatusLineNC" .s:fmt_none .s:fg_base00 .s:bg_base02 .s:fmt_revbb -exe "hi! Visual" .s:fmt_none .s:fg_base01 .s:bg_base03 .s:fmt_revbb -exe "hi! Directory" .s:fmt_none .s:fg_blue .s:bg_none -exe "hi! ErrorMsg" .s:fmt_revr .s:fg_red .s:bg_none -exe "hi! IncSearch" .s:fmt_stnd .s:fg_orange .s:bg_none -exe "hi! Search" .s:fmt_revr .s:fg_base2 .s:bg_red -exe "hi! MoreMsg" .s:fmt_none .s:fg_blue .s:bg_none -exe "hi! ModeMsg" .s:fmt_none .s:fg_blue .s:bg_none -exe "hi! LineNr" .s:fmt_none .s:fg_base01 .s:bg_base02 -exe "hi! Question" .s:fmt_bold .s:fg_cyan .s:bg_none -if ( has("gui_running") || &t_Co > 8 ) - exe "hi! VertSplit" .s:fmt_none .s:fg_base00 .s:bg_base00 -else - exe "hi! VertSplit" .s:fmt_revbb .s:fg_base00 .s:bg_base02 -endif -exe "hi! Title" .s:fmt_bold .s:fg_orange .s:bg_none -exe "hi! VisualNOS" .s:fmt_stnd .s:fg_none .s:bg_base02 .s:fmt_revbb -exe "hi! WarningMsg" .s:fmt_bold .s:fg_red .s:bg_none -exe "hi! WildMenu" .s:fmt_none .s:fg_base2 .s:bg_base02 .s:fmt_revbb -exe "hi! Folded" .s:fmt_undb .s:fg_base0 .s:bg_base02 .s:sp_base03 -exe "hi! FoldColumn" .s:fmt_none .s:fg_base0 .s:bg_base02 -if (g:solarized_diffmode=="high") -exe "hi! DiffAdd" .s:fmt_revr .s:fg_green .s:bg_none -exe "hi! DiffChange" .s:fmt_revr .s:fg_yellow .s:bg_none -exe "hi! DiffDelete" .s:fmt_revr .s:fg_red .s:bg_none -exe "hi! DiffText" .s:fmt_revr .s:fg_blue .s:bg_none -elseif (g:solarized_diffmode=="low") -exe "hi! DiffAdd" .s:fmt_undr .s:fg_green .s:bg_none .s:sp_green -exe "hi! DiffChange" .s:fmt_undr .s:fg_yellow .s:bg_none .s:sp_yellow -exe "hi! DiffDelete" .s:fmt_bold .s:fg_red .s:bg_none -exe "hi! DiffText" .s:fmt_undr .s:fg_blue .s:bg_none .s:sp_blue -else " normal - if has("gui_running") -exe "hi! DiffAdd" .s:fmt_bold .s:fg_green .s:bg_base02 .s:sp_green -exe "hi! DiffChange" .s:fmt_bold .s:fg_yellow .s:bg_base02 .s:sp_yellow -exe "hi! DiffDelete" .s:fmt_bold .s:fg_red .s:bg_base02 -exe "hi! DiffText" .s:fmt_bold .s:fg_blue .s:bg_base02 .s:sp_blue - else -exe "hi! DiffAdd" .s:fmt_none .s:fg_green .s:bg_base02 .s:sp_green -exe "hi! DiffChange" .s:fmt_none .s:fg_yellow .s:bg_base02 .s:sp_yellow -exe "hi! DiffDelete" .s:fmt_none .s:fg_red .s:bg_base02 -exe "hi! DiffText" .s:fmt_none .s:fg_blue .s:bg_base02 .s:sp_blue - endif -endif -exe "hi! SignColumn" .s:fmt_none .s:fg_base0 -exe "hi! Conceal" .s:fmt_none .s:fg_blue .s:bg_none -exe "hi! SpellBad" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_red -exe "hi! SpellCap" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_violet -exe "hi! SpellRare" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_cyan -exe "hi! SpellLocal" .s:fmt_curl .s:fg_none .s:bg_none .s:sp_yellow -exe "hi! Pmenu" .s:fmt_none .s:fg_base0 .s:bg_base02 .s:fmt_revbb -exe "hi! PmenuSel" .s:fmt_none .s:fg_base01 .s:bg_base2 .s:fmt_revbb -exe "hi! PmenuSbar" .s:fmt_none .s:fg_base2 .s:bg_base0 .s:fmt_revbb -exe "hi! PmenuThumb" .s:fmt_none .s:fg_base0 .s:bg_base03 .s:fmt_revbb -exe "hi! TabLine" .s:fmt_undr .s:fg_base0 .s:bg_base02 .s:sp_base0 -exe "hi! TabLineFill" .s:fmt_undr .s:fg_base0 .s:bg_base02 .s:sp_base0 -exe "hi! TabLineSel" .s:fmt_undr .s:fg_base01 .s:bg_base2 .s:sp_base0 .s:fmt_revbbu -exe "hi! CursorColumn" .s:fmt_none .s:fg_none .s:bg_base02 -exe "hi! CursorLine" .s:fmt_uopt .s:fg_none .s:bg_base02 .s:sp_base1 -exe "hi! ColorColumn" .s:fmt_none .s:fg_none .s:bg_base02 -exe "hi! Cursor" .s:fmt_none .s:fg_base03 .s:bg_base0 -hi! link lCursor Cursor -exe "hi! MatchParen" .s:fmt_bold .s:fg_red .s:bg_base01 - -"}}} -" vim syntax highlighting "{{{ -" --------------------------------------------------------------------- -"exe "hi! vimLineComment" . s:fg_base01 .s:bg_none .s:fmt_ital -"hi! link vimComment Comment -"hi! link vimLineComment Comment -hi! link vimVar Identifier -hi! link vimFunc Function -hi! link vimUserFunc Function -hi! link helpSpecial Special -hi! link vimSet Normal -hi! link vimSetEqual Normal -exe "hi! vimCommentString" .s:fmt_none .s:fg_violet .s:bg_none -exe "hi! vimCommand" .s:fmt_none .s:fg_yellow .s:bg_none -exe "hi! vimCmdSep" .s:fmt_bold .s:fg_blue .s:bg_none -exe "hi! helpExample" .s:fmt_none .s:fg_base1 .s:bg_none -exe "hi! helpOption" .s:fmt_none .s:fg_cyan .s:bg_none -exe "hi! helpNote" .s:fmt_none .s:fg_magenta.s:bg_none -exe "hi! helpVim" .s:fmt_none .s:fg_magenta.s:bg_none -exe "hi! helpHyperTextJump" .s:fmt_undr .s:fg_blue .s:bg_none -exe "hi! helpHyperTextEntry".s:fmt_none .s:fg_green .s:bg_none -exe "hi! vimIsCommand" .s:fmt_none .s:fg_base00 .s:bg_none -exe "hi! vimSynMtchOpt" .s:fmt_none .s:fg_yellow .s:bg_none -exe "hi! vimSynType" .s:fmt_none .s:fg_cyan .s:bg_none -exe "hi! vimHiLink" .s:fmt_none .s:fg_blue .s:bg_none -exe "hi! vimHiGroup" .s:fmt_none .s:fg_blue .s:bg_none -exe "hi! vimGroup" .s:fmt_undb .s:fg_blue .s:bg_none -"}}} -" diff highlighting "{{{ -" --------------------------------------------------------------------- -hi! link diffAdded Statement -hi! link diffLine Identifier -"}}} -" git & gitcommit highlighting "{{{ -"git -"exe "hi! gitDateHeader" -"exe "hi! gitIdentityHeader" -"exe "hi! gitIdentityKeyword" -"exe "hi! gitNotesHeader" -"exe "hi! gitReflogHeader" -"exe "hi! gitKeyword" -"exe "hi! gitIdentity" -"exe "hi! gitEmailDelimiter" -"exe "hi! gitEmail" -"exe "hi! gitDate" -"exe "hi! gitMode" -"exe "hi! gitHashAbbrev" -"exe "hi! gitHash" -"exe "hi! gitReflogMiddle" -"exe "hi! gitReference" -"exe "hi! gitStage" -"exe "hi! gitType" -"exe "hi! gitDiffAdded" -"exe "hi! gitDiffRemoved" -"gitcommit -"exe "hi! gitcommitSummary" -exe "hi! gitcommitComment" .s:fmt_ital .s:fg_base01 .s:bg_none -hi! link gitcommitUntracked gitcommitComment -hi! link gitcommitDiscarded gitcommitComment -hi! link gitcommitSelected gitcommitComment -exe "hi! gitcommitUnmerged" .s:fmt_bold .s:fg_green .s:bg_none -exe "hi! gitcommitOnBranch" .s:fmt_bold .s:fg_base01 .s:bg_none -exe "hi! gitcommitBranch" .s:fmt_bold .s:fg_magenta .s:bg_none -hi! link gitcommitNoBranch gitcommitBranch -exe "hi! gitcommitDiscardedType".s:fmt_none .s:fg_red .s:bg_none -exe "hi! gitcommitSelectedType" .s:fmt_none .s:fg_green .s:bg_none -"exe "hi! gitcommitUnmergedType" -"exe "hi! gitcommitType" -"exe "hi! gitcommitNoChanges" -"exe "hi! gitcommitHeader" -exe "hi! gitcommitHeader" .s:fmt_none .s:fg_base01 .s:bg_none -exe "hi! gitcommitUntrackedFile".s:fmt_bold .s:fg_cyan .s:bg_none -exe "hi! gitcommitDiscardedFile".s:fmt_bold .s:fg_red .s:bg_none -exe "hi! gitcommitSelectedFile" .s:fmt_bold .s:fg_green .s:bg_none -exe "hi! gitcommitUnmergedFile" .s:fmt_bold .s:fg_yellow .s:bg_none -exe "hi! gitcommitFile" .s:fmt_bold .s:fg_base0 .s:bg_none -hi! link gitcommitDiscardedArrow gitcommitDiscardedFile -hi! link gitcommitSelectedArrow gitcommitSelectedFile -hi! link gitcommitUnmergedArrow gitcommitUnmergedFile -"exe "hi! gitcommitArrow" -"exe "hi! gitcommitOverflow" -"exe "hi! gitcommitBlank" -" }}} -" html highlighting "{{{ -" --------------------------------------------------------------------- -exe "hi! htmlTag" .s:fmt_none .s:fg_base01 .s:bg_none -exe "hi! htmlEndTag" .s:fmt_none .s:fg_base01 .s:bg_none -exe "hi! htmlTagN" .s:fmt_bold .s:fg_base1 .s:bg_none -exe "hi! htmlTagName" .s:fmt_bold .s:fg_blue .s:bg_none -exe "hi! htmlSpecialTagName".s:fmt_ital .s:fg_blue .s:bg_none -exe "hi! htmlArg" .s:fmt_none .s:fg_base00 .s:bg_none -exe "hi! javaScript" .s:fmt_none .s:fg_yellow .s:bg_none -"}}} -" perl highlighting "{{{ -" --------------------------------------------------------------------- -exe "hi! perlHereDoc" . s:fg_base1 .s:bg_back .s:fmt_none -exe "hi! perlVarPlain" . s:fg_yellow .s:bg_back .s:fmt_none -exe "hi! perlStatementFileDesc". s:fg_cyan.s:bg_back.s:fmt_none - -"}}} -" tex highlighting "{{{ -" --------------------------------------------------------------------- -exe "hi! texStatement" . s:fg_cyan .s:bg_back .s:fmt_none -exe "hi! texMathZoneX" . s:fg_yellow .s:bg_back .s:fmt_none -exe "hi! texMathMatcher" . s:fg_yellow .s:bg_back .s:fmt_none -exe "hi! texMathMatcher" . s:fg_yellow .s:bg_back .s:fmt_none -exe "hi! texRefLabel" . s:fg_yellow .s:bg_back .s:fmt_none -"}}} -" ruby highlighting "{{{ -" --------------------------------------------------------------------- -exe "hi! rubyDefine" . s:fg_base1 .s:bg_back .s:fmt_bold -"rubyInclude -"rubySharpBang -"rubyAccess -"rubyPredefinedVariable -"rubyBoolean -"rubyClassVariable -"rubyBeginEnd -"rubyRepeatModifier -"hi! link rubyArrayDelimiter Special " [ , , ] -"rubyCurlyBlock { , , } - -"hi! link rubyClass Keyword -"hi! link rubyModule Keyword -"hi! link rubyKeyword Keyword -"hi! link rubyOperator Operator -"hi! link rubyIdentifier Identifier -"hi! link rubyInstanceVariable Identifier -"hi! link rubyGlobalVariable Identifier -"hi! link rubyClassVariable Identifier -"hi! link rubyConstant Type -"}}} -" haskell syntax highlighting"{{{ -" --------------------------------------------------------------------- -" For use with syntax/haskell.vim : Haskell Syntax File -" http://www.vim.org/scripts/script.php?script_id=3034 -" See also Steffen Siering's github repository: -" http://github.com/urso/dotrc/blob/master/vim/syntax/haskell.vim -" --------------------------------------------------------------------- -" -" Treat True and False specially, see the plugin referenced above -let hs_highlight_boolean=1 -" highlight delims, see the plugin referenced above -let hs_highlight_delimiters=1 - -exe "hi! cPreCondit". s:fg_orange.s:bg_none .s:fmt_none - -exe "hi! VarId" . s:fg_blue .s:bg_none .s:fmt_none -exe "hi! ConId" . s:fg_yellow .s:bg_none .s:fmt_none -exe "hi! hsImport" . s:fg_magenta.s:bg_none .s:fmt_none -exe "hi! hsString" . s:fg_base00 .s:bg_none .s:fmt_none - -exe "hi! hsStructure" . s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! hs_hlFunctionName" . s:fg_blue .s:bg_none -exe "hi! hsStatement" . s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! hsImportLabel" . s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! hs_OpFunctionName" . s:fg_yellow .s:bg_none .s:fmt_none -exe "hi! hs_DeclareFunction" . s:fg_orange .s:bg_none .s:fmt_none -exe "hi! hsVarSym" . s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! hsType" . s:fg_yellow .s:bg_none .s:fmt_none -exe "hi! hsTypedef" . s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! hsModuleName" . s:fg_green .s:bg_none .s:fmt_undr -exe "hi! hsModuleStartLabel" . s:fg_magenta.s:bg_none .s:fmt_none -hi! link hsImportParams Delimiter -hi! link hsDelimTypeExport Delimiter -hi! link hsModuleStartLabel hsStructure -hi! link hsModuleWhereLabel hsModuleStartLabel - -" following is for the haskell-conceal plugin -" the first two items don't have an impact, but better safe -exe "hi! hsNiceOperator" . s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! hsniceoperator" . s:fg_cyan .s:bg_none .s:fmt_none - -"}}} -" pandoc markdown syntax highlighting "{{{ -" --------------------------------------------------------------------- - -"PandocHiLink pandocNormalBlock -exe "hi! pandocTitleBlock" .s:fg_blue .s:bg_none .s:fmt_none -exe "hi! pandocTitleBlockTitle" .s:fg_blue .s:bg_none .s:fmt_bold -exe "hi! pandocTitleComment" .s:fg_blue .s:bg_none .s:fmt_bold -exe "hi! pandocComment" .s:fg_base01 .s:bg_none .s:fmt_ital -exe "hi! pandocVerbatimBlock" .s:fg_yellow .s:bg_none .s:fmt_none -hi! link pandocVerbatimBlockDeep pandocVerbatimBlock -hi! link pandocCodeBlock pandocVerbatimBlock -hi! link pandocCodeBlockDelim pandocVerbatimBlock -exe "hi! pandocBlockQuote" .s:fg_blue .s:bg_none .s:fmt_none -exe "hi! pandocBlockQuoteLeader1" .s:fg_blue .s:bg_none .s:fmt_none -exe "hi! pandocBlockQuoteLeader2" .s:fg_cyan .s:bg_none .s:fmt_none -exe "hi! pandocBlockQuoteLeader3" .s:fg_yellow .s:bg_none .s:fmt_none -exe "hi! pandocBlockQuoteLeader4" .s:fg_red .s:bg_none .s:fmt_none -exe "hi! pandocBlockQuoteLeader5" .s:fg_base0 .s:bg_none .s:fmt_none -exe "hi! pandocBlockQuoteLeader6" .s:fg_base01 .s:bg_none .s:fmt_none -exe "hi! pandocListMarker" .s:fg_magenta.s:bg_none .s:fmt_none -exe "hi! pandocListReference" .s:fg_magenta.s:bg_none .s:fmt_undr - -" Definitions -" --------------------------------------------------------------------- -let s:fg_pdef = s:fg_violet -exe "hi! pandocDefinitionBlock" .s:fg_pdef .s:bg_none .s:fmt_none -exe "hi! pandocDefinitionTerm" .s:fg_pdef .s:bg_none .s:fmt_stnd -exe "hi! pandocDefinitionIndctr" .s:fg_pdef .s:bg_none .s:fmt_bold -exe "hi! pandocEmphasisDefinition" .s:fg_pdef .s:bg_none .s:fmt_ital -exe "hi! pandocEmphasisNestedDefinition" .s:fg_pdef .s:bg_none .s:fmt_bldi -exe "hi! pandocStrongEmphasisDefinition" .s:fg_pdef .s:bg_none .s:fmt_bold -exe "hi! pandocStrongEmphasisNestedDefinition" .s:fg_pdef.s:bg_none.s:fmt_bldi -exe "hi! pandocStrongEmphasisEmphasisDefinition" .s:fg_pdef.s:bg_none.s:fmt_bldi -exe "hi! pandocStrikeoutDefinition" .s:fg_pdef .s:bg_none .s:fmt_revr -exe "hi! pandocVerbatimInlineDefinition" .s:fg_pdef .s:bg_none .s:fmt_none -exe "hi! pandocSuperscriptDefinition" .s:fg_pdef .s:bg_none .s:fmt_none -exe "hi! pandocSubscriptDefinition" .s:fg_pdef .s:bg_none .s:fmt_none - -" Tables -" --------------------------------------------------------------------- -let s:fg_ptable = s:fg_blue -exe "hi! pandocTable" .s:fg_ptable.s:bg_none .s:fmt_none -exe "hi! pandocTableStructure" .s:fg_ptable.s:bg_none .s:fmt_none -hi! link pandocTableStructureTop pandocTableStructre -hi! link pandocTableStructureEnd pandocTableStructre -exe "hi! pandocTableZebraLight" .s:fg_ptable.s:bg_base03.s:fmt_none -exe "hi! pandocTableZebraDark" .s:fg_ptable.s:bg_base02.s:fmt_none -exe "hi! pandocEmphasisTable" .s:fg_ptable.s:bg_none .s:fmt_ital -exe "hi! pandocEmphasisNestedTable" .s:fg_ptable.s:bg_none .s:fmt_bldi -exe "hi! pandocStrongEmphasisTable" .s:fg_ptable.s:bg_none .s:fmt_bold -exe "hi! pandocStrongEmphasisNestedTable" .s:fg_ptable.s:bg_none .s:fmt_bldi -exe "hi! pandocStrongEmphasisEmphasisTable" .s:fg_ptable.s:bg_none .s:fmt_bldi -exe "hi! pandocStrikeoutTable" .s:fg_ptable.s:bg_none .s:fmt_revr -exe "hi! pandocVerbatimInlineTable" .s:fg_ptable.s:bg_none .s:fmt_none -exe "hi! pandocSuperscriptTable" .s:fg_ptable.s:bg_none .s:fmt_none -exe "hi! pandocSubscriptTable" .s:fg_ptable.s:bg_none .s:fmt_none - -" Headings -" --------------------------------------------------------------------- -let s:fg_phead = s:fg_orange -exe "hi! pandocHeading" .s:fg_phead .s:bg_none.s:fmt_bold -exe "hi! pandocHeadingMarker" .s:fg_yellow.s:bg_none.s:fmt_bold -exe "hi! pandocEmphasisHeading" .s:fg_phead .s:bg_none.s:fmt_bldi -exe "hi! pandocEmphasisNestedHeading" .s:fg_phead .s:bg_none.s:fmt_bldi -exe "hi! pandocStrongEmphasisHeading" .s:fg_phead .s:bg_none.s:fmt_bold -exe "hi! pandocStrongEmphasisNestedHeading" .s:fg_phead .s:bg_none.s:fmt_bldi -exe "hi! pandocStrongEmphasisEmphasisHeading".s:fg_phead .s:bg_none.s:fmt_bldi -exe "hi! pandocStrikeoutHeading" .s:fg_phead .s:bg_none.s:fmt_revr -exe "hi! pandocVerbatimInlineHeading" .s:fg_phead .s:bg_none.s:fmt_bold -exe "hi! pandocSuperscriptHeading" .s:fg_phead .s:bg_none.s:fmt_bold -exe "hi! pandocSubscriptHeading" .s:fg_phead .s:bg_none.s:fmt_bold - -" Links -" --------------------------------------------------------------------- -exe "hi! pandocLinkDelim" .s:fg_base01 .s:bg_none .s:fmt_none -exe "hi! pandocLinkLabel" .s:fg_blue .s:bg_none .s:fmt_undr -exe "hi! pandocLinkText" .s:fg_blue .s:bg_none .s:fmt_undb -exe "hi! pandocLinkURL" .s:fg_base00 .s:bg_none .s:fmt_undr -exe "hi! pandocLinkTitle" .s:fg_base00 .s:bg_none .s:fmt_undi -exe "hi! pandocLinkTitleDelim" .s:fg_base01 .s:bg_none .s:fmt_undi .s:sp_base00 -exe "hi! pandocLinkDefinition" .s:fg_cyan .s:bg_none .s:fmt_undr .s:sp_base00 -exe "hi! pandocLinkDefinitionID" .s:fg_blue .s:bg_none .s:fmt_bold -exe "hi! pandocImageCaption" .s:fg_violet .s:bg_none .s:fmt_undb -exe "hi! pandocFootnoteLink" .s:fg_green .s:bg_none .s:fmt_undr -exe "hi! pandocFootnoteDefLink" .s:fg_green .s:bg_none .s:fmt_bold -exe "hi! pandocFootnoteInline" .s:fg_green .s:bg_none .s:fmt_undb -exe "hi! pandocFootnote" .s:fg_green .s:bg_none .s:fmt_none -exe "hi! pandocCitationDelim" .s:fg_magenta.s:bg_none .s:fmt_none -exe "hi! pandocCitation" .s:fg_magenta.s:bg_none .s:fmt_none -exe "hi! pandocCitationID" .s:fg_magenta.s:bg_none .s:fmt_undr -exe "hi! pandocCitationRef" .s:fg_magenta.s:bg_none .s:fmt_none - -" Main Styles -" --------------------------------------------------------------------- -exe "hi! pandocStyleDelim" .s:fg_base01 .s:bg_none .s:fmt_none -exe "hi! pandocEmphasis" .s:fg_base0 .s:bg_none .s:fmt_ital -exe "hi! pandocEmphasisNested" .s:fg_base0 .s:bg_none .s:fmt_bldi -exe "hi! pandocStrongEmphasis" .s:fg_base0 .s:bg_none .s:fmt_bold -exe "hi! pandocStrongEmphasisNested" .s:fg_base0 .s:bg_none .s:fmt_bldi -exe "hi! pandocStrongEmphasisEmphasis" .s:fg_base0 .s:bg_none .s:fmt_bldi -exe "hi! pandocStrikeout" .s:fg_base01 .s:bg_none .s:fmt_revr -exe "hi! pandocVerbatimInline" .s:fg_yellow .s:bg_none .s:fmt_none -exe "hi! pandocSuperscript" .s:fg_violet .s:bg_none .s:fmt_none -exe "hi! pandocSubscript" .s:fg_violet .s:bg_none .s:fmt_none - -exe "hi! pandocRule" .s:fg_blue .s:bg_none .s:fmt_bold -exe "hi! pandocRuleLine" .s:fg_blue .s:bg_none .s:fmt_bold -exe "hi! pandocEscapePair" .s:fg_red .s:bg_none .s:fmt_bold -exe "hi! pandocCitationRef" .s:fg_magenta.s:bg_none .s:fmt_none -exe "hi! pandocNonBreakingSpace" . s:fg_red .s:bg_none .s:fmt_revr -hi! link pandocEscapedCharacter pandocEscapePair -hi! link pandocLineBreak pandocEscapePair - -" Embedded Code -" --------------------------------------------------------------------- -exe "hi! pandocMetadataDelim" .s:fg_base01 .s:bg_none .s:fmt_none -exe "hi! pandocMetadata" .s:fg_blue .s:bg_none .s:fmt_none -exe "hi! pandocMetadataKey" .s:fg_blue .s:bg_none .s:fmt_none -exe "hi! pandocMetadata" .s:fg_blue .s:bg_none .s:fmt_bold -hi! link pandocMetadataTitle pandocMetadata - -"}}} -" Utility autocommand "{{{ -" --------------------------------------------------------------------- -" In cases where Solarized is initialized inside a terminal vim session and -" then transferred to a gui session via the command `:gui`, the gui vim process -" does not re-read the colorscheme (or .vimrc for that matter) so any `has_gui` -" related code that sets gui specific values isn't executed. -" -" Currently, Solarized sets only the cterm or gui values for the colorscheme -" depending on gui or terminal mode. It's possible that, if the following -" autocommand method is deemed excessively poor form, that approach will be -" used again and the autocommand below will be dropped. -" -" However it seems relatively benign in this case to include the autocommand -" here. It fires only in cases where vim is transferring from terminal to gui -" mode (detected with the script scope s:vmode variable). It also allows for -" other potential terminal customizations that might make gui mode suboptimal. -" -autocmd GUIEnter * if (s:vmode != "gui") | exe "colorscheme " . g:colors_name | endif -"}}} -" Highlight Trailing Space {{{ -" Experimental: Different highlight when on cursorline -function! s:SolarizedHiTrail() - if g:solarized_hitrail==0 - hi! clear solarizedTrailingSpace - else - syn match solarizedTrailingSpace "\s*$" - exe "hi! solarizedTrailingSpace " .s:fmt_undr .s:fg_red .s:bg_none .s:sp_red - endif -endfunction -augroup SolarizedHiTrail - autocmd! - if g:solarized_hitrail==1 - autocmd! Syntax * call s:SolarizedHiTrail() - autocmd! ColorScheme * if g:colors_name == "solarized" | call s:SolarizedHiTrail() | else | augroup! s:SolarizedHiTrail | endif - endif -augroup END -" }}} -" Menus "{{{ -" --------------------------------------------------------------------- -" Turn off Solarized menu by including the following assignment in your .vimrc: -" -" let g:solarized_menu=0 - -function! s:SolarizedOptions() - new "new buffer - setf vim "vim filetype - let failed = append(0, s:defaults_list) - let failed = append(0, s:colorscheme_list) - let failed = append(0, s:options_list) - let failed = append(0, s:lazycat_list) - 0 "jump back to the top -endfunction -if !exists(":SolarizedOptions") - command SolarizedOptions :call s:SolarizedOptions() -endif - -function! SolarizedMenu() - if exists("g:loaded_solarized_menu") - try - silent! aunmenu Solarized - endtry - endif - let g:loaded_solarized_menu = 1 - - if g:colors_name == "solarized" && g:solarized_menu != 0 - - amenu &Solarized.&Contrast.&Low\ Contrast :let g:solarized_contrast="low" \| colorscheme solarized - amenu &Solarized.&Contrast.&Normal\ Contrast :let g:solarized_contrast="normal" \| colorscheme solarized - amenu &Solarized.&Contrast.&High\ Contrast :let g:solarized_contrast="high" \| colorscheme solarized - an &Solarized.&Contrast.-sep- - amenu &Solarized.&Contrast.&Help:\ Contrast :help 'solarized_contrast' - - amenu &Solarized.&Visibility.&Low\ Visibility :let g:solarized_visibility="low" \| colorscheme solarized - amenu &Solarized.&Visibility.&Normal\ Visibility :let g:solarized_visibility="normal" \| colorscheme solarized - amenu &Solarized.&Visibility.&High\ Visibility :let g:solarized_visibility="high" \| colorscheme solarized - an &Solarized.&Visibility.-sep- - amenu &Solarized.&Visibility.&Help:\ Visibility :help 'solarized_visibility' - - amenu &Solarized.&Background.&Toggle\ Background :ToggleBG - amenu &Solarized.&Background.&Dark\ Background :set background=dark \| colorscheme solarized - amenu &Solarized.&Background.&Light\ Background :set background=light \| colorscheme solarized - an &Solarized.&Background.-sep- - amenu &Solarized.&Background.&Help:\ ToggleBG :help togglebg - - if g:solarized_bold==0 | let l:boldswitch="On" | else | let l:boldswitch="Off" | endif - exe "amenu &Solarized.&Styling.&Turn\\ Bold\\ ".l:boldswitch." :let g:solarized_bold=(abs(g:solarized_bold-1)) \\| colorscheme solarized" - if g:solarized_italic==0 | let l:italicswitch="On" | else | let l:italicswitch="Off" | endif - exe "amenu &Solarized.&Styling.&Turn\\ Italic\\ ".l:italicswitch." :let g:solarized_italic=(abs(g:solarized_italic-1)) \\| colorscheme solarized" - if g:solarized_underline==0 | let l:underlineswitch="On" | else | let l:underlineswitch="Off" | endif - exe "amenu &Solarized.&Styling.&Turn\\ Underline\\ ".l:underlineswitch." :let g:solarized_underline=(abs(g:solarized_underline-1)) \\| colorscheme solarized" - - amenu &Solarized.&Diff\ Mode.&Low\ Diff\ Mode :let g:solarized_diffmode="low" \| colorscheme solarized - amenu &Solarized.&Diff\ Mode.&Normal\ Diff\ Mode :let g:solarized_diffmode="normal" \| colorscheme solarized - amenu &Solarized.&Diff\ Mode.&High\ Diff\ Mode :let g:solarized_diffmode="high" \| colorscheme solarized - - if g:solarized_hitrail==0 | let l:hitrailswitch="On" | else | let l:hitrailswitch="Off" | endif - exe "amenu &Solarized.&Experimental.&Turn\\ Highlight\\ Trailing\\ Spaces\\ ".l:hitrailswitch." :let g:solarized_hitrail=(abs(g:solarized_hitrail-1)) \\| colorscheme solarized" - an &Solarized.&Experimental.-sep- - amenu &Solarized.&Experimental.&Help:\ HiTrail :help 'solarized_hitrail' - - an &Solarized.-sep1- - - amenu &Solarized.&Autogenerate\ options :SolarizedOptions - - an &Solarized.-sep2- - - amenu &Solarized.&Help.&Solarized\ Help :help solarized - amenu &Solarized.&Help.&Toggle\ Background\ Help :help togglebg - amenu &Solarized.&Help.&Removing\ This\ Menu :help solarized-menu - - an 9999.77 &Help.&Solarized\ Colorscheme :help solarized - an 9999.78 &Help.&Toggle\ Background :help togglebg - an 9999.79 &Help.-sep3- - - endif -endfunction - -autocmd ColorScheme * if g:colors_name != "solarized" | silent! aunmenu Solarized | else | call SolarizedMenu() | endif - -"}}} -" License "{{{ -" --------------------------------------------------------------------- -" -" Copyright (c) 2011 Ethan Schoonover -" -" Permission is hereby granted, free of charge, to any person obtaining a copy -" of this software and associated documentation files (the "Software"), to deal -" in the Software without restriction, including without limitation the rights -" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -" copies of the Software, and to permit persons to whom the Software is -" furnished to do so, subject to the following conditions: -" -" The above copyright notice and this permission notice shall be included in -" all copies or substantial portions of the Software. -" -" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -" OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -" THE SOFTWARE. -" -" vim:foldmethod=marker:foldlevel=0 -"}}} diff --git a/colors/zenburn.vim b/colors/zenburn.vim deleted file mode 100644 index 923e2eb..0000000 --- a/colors/zenburn.vim +++ /dev/null @@ -1,560 +0,0 @@ -" Vim color file -" Maintainer: Jani Nurminen -" Last Change: $Id: zenburn.vim,v 2.21 2011/04/26 12:13:41 slinky Exp slinky $ -" URL: http://slinky.imukuppi.org/zenburnpage/ -" License: GNU GPL -" -" Nothing too fancy, just some alien fruit salad to keep you in the zone. -" This syntax file was designed to be used with dark environments and -" low light situations. Of course, if it works during a daybright office, go -" ahead :) -" -" Owes heavily to other Vim color files! With special mentions -" to "BlackDust", "Camo" and "Desert". -" -" To install, copy to ~/.vim/colors directory. -" -" Alternatively, you can use Vimball installation: -" vim zenburn.vba -" :so % -" :q -" -" For details, see :help vimball -" -" After installation, use it with :colorscheme zenburn. -" See also :help syntax -" -" Credits: -" - Jani Nurminen - original Zenburn, maintainer -" - Steve Hall & Cream posse - higher-contrast Visual selection -" - Kurt Maier - 256 color console coloring, low and high contrast toggle, -" bug fixing -" - Charlie - spotted too bright StatusLine in non-high contrast mode -" - Pablo Castellazzi - CursorLine fix for 256 color mode -" - Tim Smith - force dark background -" - John Gabriele - spotted bad Ignore-group handling -" - Zac Thompson - spotted invisible NonText in low contrast mode -" - Christophe-Marie Duquesne - suggested making a Vimball, -" suggested support for ctags_highlighting.vim -" - Andrew Wagner - noted the CursorColumn bug (guifg was unintentionally set), -" unify CursorColumn colour -" - Martin Langasek - clarify the license, whitespace fixes -" - Marcin Szamotulski - support autocomplete for Zenburn configuration -" parameters -" - Clayton Parker (claytron) - Convinced by Kurt Maier to use Zenburn. Point -" out issues with LineNr, fix directory styles, and their usage in MacVim. -" - PaweÅ‚ Piekarski - Spotted bad FoldColumn and TabLine. Made better -" FoldColumn colors, fixed TabLine colors. -" -" CONFIGURABLE PARAMETERS: -" -" You can use the default (don't set any parameters), or you can -" set some parameters to tweak the Zenburn colours. -" -" To use them, put them into your .vimrc file before loading the color scheme, -" example: -" let g:zenburn_high_Contrast=1 -" colors zenburn -" -" You can also do ":let g:zenburn" then hit Ctrl-d or Tab to scroll through the -" list of configurable parameters. -" -" * You can now set a darker background for bright environments. To activate, use: -" contrast Zenburn, use: -" -" let g:zenburn_high_Contrast = 1 -" -" * For example, Vim help files uses the Ignore-group for the pipes in tags -" like "|somelink.txt|". By default, the pipes are not visible, as they -" map to Ignore group. If you wish to enable coloring of the Ignore group, -" set the following parameter to 1. Warning, it might make some syntax files -" look strange. -" -" let g:zenburn_color_also_Ignore = 1 -" -" * To get more contrast to the Visual selection, use -" -" let g:zenburn_alternate_Visual = 1 -" -" Note: this is enabled only if the old-style Visual -" if used, see g:zenburn_old_Visual -" -" * To use alternate colouring for Error message, use -" -" let g:zenburn_alternate_Error = 1 -" -" * The new default for Include is a duller orange. To use the original -" colouring for Include, use -" -" let g:zenburn_alternate_Include = 1 -" -" * Work-around to a Vim bug, it seems to misinterpret ctermfg and 234 and 237 -" as light values, and sets background to light for some people. If you have -" this problem, use: -" -" let g:zenburn_force_dark_Background = 1 -" -" * By default the CursorColumn is of a lighter colour. I find it more readable -" that way, but some people may want to align it with the darker CursorLine -" color, for visual uniformity. To do so, use: -" -" let g:zenburn_unified_CursorColumn = 1 -" -" Note: you can ignore this unless you use -" ":set cursorline cursorcolumn", since otherwise the effect won't be -" seen. -" -" * New (dark) Visual coloring has been introduced. -" The dark Visual is more aligned with the rest of the colour scheme, -" especially if you use line numbers. If you wish to use the -" old Visual coloring, use -" -" let g:zenburn_old_Visual = 1 -" -" Default is to use the new Visual. -" -" * EXPERIMENTAL FEATURE: Zenburn will automatically detect if you -" have ctags_highlighting.vim (by Al Budden, -" http://www.vim.org/scripts/script.php?script_id=2646) enabled, and -" will set sensible highlight links. Nothing will happen if you do -" not have ctags_highlighting.vim. If you do not want this feature, you can -" override the check with: -" -" let g:zenburn_disable_ctags_highlighting_support = 1 -" -" NOTE: -" -" * To turn the parameter(s) back to defaults, use UNLET or set them to 0: -" -" unlet g:zenburn_alternate_Include -" or -" let g:zenburn_alternate_Include = 0 -" -" -" That's it, enjoy! -" -" TODO -" - Visual alternate color is broken? Try GVim >= 7.0.66 if you have trouble -" - IME colouring (CursorIM) - -" Set defaults, but keep any parameters already set by the user -if ! exists("g:zenburn_high_Contrast") - let g:zenburn_high_Contrast = 0 -endif - -if ! exists("g:zenburn_color_also_Ignore") - let g:zenburn_color_also_Ignore = 0 -endif - -if ! exists("g:zenburn_alternate_Error") - let g:zenburn_alternate_Error = 0 -endif - -if ! exists("g:zenburn_force_dark_Background") - let g:zenburn_force_dark_Background = 0 -endif - -if ! exists("g:zenburn_alternate_Visual") - let g:zenburn_alternate_Visual = 0 -endif - -if ! exists("g:zenburn_alternate_Include") - let g:zenburn_alternate_Include = 0 -endif - -if ! exists("g:zenburn_unified_CursorColumn") - let g:zenburn_unified_CursorColumn = 0 -endif - -if ! exists("g:zenburn_old_Visual") - let g:zenburn_old_Visual = 0 -endif - -if ! exists("g:zenburn_disable_ctags_highlighting_support") - " enabled by default - let g:zenburn_disable_ctags_highlighting_support = 0 -endif - -" ----------------------------------------------- - -set background=dark -hi clear -if exists("syntax_on") - syntax reset -endif -let g:colors_name="zenburn" - -" check for ctags-highlighting -if exists("g:loaded_ctags_highlighting") && g:loaded_ctags_highlighting && ! g:zenburn_disable_ctags_highlighting_support - " internal - let _zenburn_ctags = 1 -endif - -hi Boolean guifg=#dca3a3 -hi Character guifg=#dca3a3 gui=bold -hi Comment guifg=#7f9f7f gui=italic -hi Conditional guifg=#f0dfaf gui=bold -hi Constant guifg=#dca3a3 gui=bold -hi Cursor guifg=#000d18 guibg=#8faf9f gui=bold -hi Debug guifg=#bca3a3 gui=bold -hi Define guifg=#ffcfaf gui=bold -hi Delimiter guifg=#8f8f8f -hi DiffAdd guifg=#709080 guibg=#313c36 gui=bold -hi DiffChange guibg=#333333 -hi DiffDelete guifg=#333333 guibg=#464646 -hi DiffText guifg=#ecbcbc guibg=#41363c gui=bold -hi Directory guifg=#9fafaf gui=bold -hi ErrorMsg guifg=#80d4aa guibg=#2f2f2f gui=bold -hi Exception guifg=#c3bf9f gui=bold -hi Float guifg=#c0bed1 -hi FoldColumn guifg=#93b3a3 guibg=#3f4040 -hi Folded guifg=#93b3a3 guibg=#3f4040 -hi Function guifg=#efef8f -hi Identifier guifg=#efdcbc -hi IncSearch guibg=#f8f893 guifg=#385f38 -hi Keyword guifg=#f0dfaf gui=bold -hi Label guifg=#dfcfaf gui=underline -hi Macro guifg=#ffcfaf gui=bold -hi ModeMsg guifg=#ffcfaf gui=none -hi MoreMsg guifg=#ffffff gui=bold -hi Number guifg=#8cd0d3 -hi Operator guifg=#f0efd0 -hi PreCondit guifg=#dfaf8f gui=bold -hi PreProc guifg=#ffcfaf gui=bold -hi Question guifg=#ffffff gui=bold -hi Repeat guifg=#ffd7a7 gui=bold -hi Search guifg=#ffffe0 guibg=#284f28 -hi SpecialChar guifg=#dca3a3 gui=bold -hi SpecialComment guifg=#82a282 gui=bold -hi Special guifg=#cfbfaf -hi SpecialKey guifg=#9ece9e -hi Statement guifg=#e3ceab gui=none -hi StatusLine guifg=#313633 guibg=#ccdc90 -hi StatusLineNC guifg=#2e3330 guibg=#88b090 -hi StorageClass guifg=#c3bf9f gui=bold -hi String guifg=#cc9393 -hi Structure guifg=#efefaf gui=bold -hi Tag guifg=#e89393 gui=bold -hi Title guifg=#efefef gui=bold -hi Todo guifg=#dfdfdf guibg=bg gui=bold -hi Typedef guifg=#dfe4cf gui=bold -hi Type guifg=#dfdfbf gui=bold -hi Underlined guifg=#dcdccc gui=underline -hi VertSplit guifg=#2e3330 guibg=#688060 -hi VisualNOS guifg=#333333 guibg=#f18c96 gui=bold,underline -hi WarningMsg guifg=#ffffff guibg=#333333 gui=bold -hi WildMenu guibg=#2c302d guifg=#cbecd0 gui=underline - -hi SpellBad guisp=#bc6c4c guifg=#dc8c6c -hi SpellCap guisp=#6c6c9c guifg=#8c8cbc -hi SpellRare guisp=#bc6c9c guifg=#bc8cbc -hi SpellLocal guisp=#7cac7c guifg=#9ccc9c - -" Entering Kurt zone -if &t_Co > 255 - hi Boolean ctermfg=181 - hi Character ctermfg=181 cterm=bold - hi Comment ctermfg=108 - hi Conditional ctermfg=223 cterm=bold - hi Constant ctermfg=181 cterm=bold - hi Cursor ctermfg=233 ctermbg=109 cterm=bold - hi Debug ctermfg=181 cterm=bold - hi Define ctermfg=223 cterm=bold - hi Delimiter ctermfg=245 - hi DiffAdd ctermfg=66 ctermbg=237 cterm=bold - hi DiffChange ctermbg=236 - hi DiffDelete ctermfg=236 ctermbg=238 - hi DiffText ctermfg=217 ctermbg=237 cterm=bold - hi Directory ctermfg=109 cterm=bold - hi ErrorMsg ctermfg=115 ctermbg=236 cterm=bold - hi Exception ctermfg=249 cterm=bold - hi Float ctermfg=251 - hi Function ctermfg=228 - hi Identifier ctermfg=223 - hi IncSearch ctermbg=228 ctermfg=238 - hi Keyword ctermfg=223 cterm=bold - hi Label ctermfg=187 cterm=underline - hi LineNr ctermfg=248 ctermbg=233 - hi Macro ctermfg=223 cterm=bold - hi ModeMsg ctermfg=223 cterm=none - hi MoreMsg ctermfg=15 cterm=bold - hi Number ctermfg=116 - hi Operator ctermfg=230 - hi PreCondit ctermfg=180 cterm=bold - hi PreProc ctermfg=223 cterm=bold - hi Question ctermfg=15 cterm=bold - hi Repeat ctermfg=223 cterm=bold - hi Search ctermfg=230 ctermbg=236 - hi SpecialChar ctermfg=181 cterm=bold - hi SpecialComment ctermfg=108 cterm=bold - hi Special ctermfg=181 - hi SpecialKey ctermfg=151 - hi Statement ctermfg=187 ctermbg=234 cterm=none - hi StatusLine ctermfg=236 ctermbg=186 - hi StatusLineNC ctermfg=235 ctermbg=108 - hi StorageClass ctermfg=249 cterm=bold - hi String ctermfg=174 - hi Structure ctermfg=229 cterm=bold - hi Tag ctermfg=181 cterm=bold - hi Title ctermfg=7 ctermbg=234 cterm=bold - hi Todo ctermfg=108 ctermbg=234 cterm=bold - hi Typedef ctermfg=253 cterm=bold - hi Type ctermfg=187 cterm=bold - hi Underlined ctermfg=188 ctermbg=234 cterm=bold - hi VertSplit ctermfg=236 ctermbg=65 - hi VisualNOS ctermfg=236 ctermbg=210 cterm=bold - hi WarningMsg ctermfg=15 ctermbg=236 cterm=bold - hi WildMenu ctermbg=236 ctermfg=194 cterm=bold - - " spellchecking, always "bright" background - hi SpellLocal ctermfg=14 ctermbg=237 - hi SpellBad ctermfg=9 ctermbg=237 - hi SpellCap ctermfg=12 ctermbg=237 - hi SpellRare ctermfg=13 ctermbg=237 - - " pmenu - hi PMenu ctermfg=248 ctermbg=0 - hi PMenuSel ctermfg=223 ctermbg=235 - - if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast - hi Normal ctermfg=188 ctermbg=234 - hi NonText ctermfg=238 - - if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore - hi Ignore ctermfg=238 - endif - - " hc mode, darker CursorLine, default 236 - hi CursorLine ctermbg=233 cterm=none - - if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn - hi CursorColumn ctermbg=233 cterm=none - else - hi CursorColumn ctermbg=235 cterm=none - endif - else - hi Normal ctermfg=188 ctermbg=237 - hi Cursor ctermbg=109 - hi diffadd ctermbg=237 - hi diffdelete ctermbg=238 - hi difftext ctermbg=237 - hi errormsg ctermbg=237 - hi incsearch ctermbg=228 - hi linenr ctermbg=235 - hi search ctermbg=238 - hi statement ctermbg=237 - hi statusline ctermbg=144 - hi statuslinenc ctermbg=108 - hi title ctermbg=237 - hi todo ctermbg=237 - hi underlined ctermbg=237 - hi vertsplit ctermbg=65 - hi visualnos ctermbg=210 - hi warningmsg ctermbg=236 - hi wildmenu ctermbg=236 - hi NonText ctermfg=240 - - if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore - hi Ignore ctermfg=240 - endif - - " normal mode, lighter CursorLine - hi CursorLine ctermbg=238 cterm=none - - if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn - hi CursorColumn ctermbg=238 cterm=none - else - hi CursorColumn ctermbg=239 cterm=none - endif - endif - - if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error - " use more jumpy Error - hi Error ctermfg=210 ctermbg=52 gui=bold - else - " default is something more zenburn-compatible - hi Error ctermfg=228 ctermbg=95 gui=bold - endif -endif - -if exists("g:zenburn_force_dark_Background") && g:zenburn_force_dark_Background - " Force dark background, because of a bug in VIM: VIM sets background - " automatically during "hi Normal ctermfg=X"; it misinterprets the high - " value (234 or 237 above) as a light color, and wrongly sets background to - " light. See ":help highlight" for details. - set background=dark -endif - -if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast - " use new darker background - hi Normal guifg=#dcdccc guibg=#1f1f1f - hi CursorLine guibg=#121212 gui=bold - if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn - hi CursorColumn guibg=#121212 gui=bold - else - hi CursorColumn guibg=#2b2b2b - endif - hi Pmenu guibg=#242424 guifg=#ccccbc - hi PMenuSel guibg=#353a37 guifg=#ccdc90 gui=bold - hi PmenuSbar guibg=#2e3330 guifg=#000000 - hi PMenuThumb guibg=#a0afa0 guifg=#040404 - hi MatchParen guifg=#f0f0c0 guibg=#383838 gui=bold - hi SignColumn guifg=#9fafaf guibg=#181818 gui=bold - hi TabLineFill guifg=#cfcfaf guibg=#181818 gui=bold - hi TabLineSel guifg=#efefef guibg=#1c1c1b gui=bold - hi TabLine guifg=#b6bf98 guibg=#181818 gui=bold - hi NonText guifg=#404040 gui=bold - - hi LineNr guifg=#9fafaf guibg=#161616 -else - " Original, lighter background - hi Normal guifg=#dcdccc guibg=#3f3f3f - hi CursorLine guibg=#434443 - if exists("g:zenburn_unified_CursorColumn") && g:zenburn_unified_CursorColumn - hi CursorColumn guibg=#434343 - else - hi CursorColumn guibg=#4f4f4f - endif - hi Pmenu guibg=#2c2e2e guifg=#9f9f9f - hi PMenuSel guibg=#242424 guifg=#d0d0a0 gui=bold - hi PmenuSbar guibg=#2e3330 guifg=#000000 - hi PMenuThumb guibg=#a0afa0 guifg=#040404 - hi MatchParen guifg=#b2b2a0 guibg=#2e2e2e gui=bold - hi SignColumn guifg=#9fafaf guibg=#343434 gui=bold - hi TabLineFill guifg=#cfcfaf guibg=#353535 gui=bold - hi TabLineSel guifg=#efefef guibg=#3a3a39 gui=bold - hi TabLine guifg=#b6bf98 guibg=#353535 gui=bold - hi NonText guifg=#5b605e gui=bold - - hi LineNr guifg=#9fafaf guibg=#262626 -endif - -if exists("g:zenburn_old_Visual") && g:zenburn_old_Visual - if exists("g:zenburn_alternate_Visual") && g:zenburn_alternate_Visual - " Visual with more contrast, thanks to Steve Hall & Cream posse - " gui=none fixes weird highlight problem in at least GVim 7.0.66, thanks to Kurt Maier - hi Visual guifg=#000000 guibg=#71d3b4 gui=none - hi VisualNOS guifg=#000000 guibg=#71d3b4 gui=none - else - " use default visual - hi Visual guifg=#233323 guibg=#71d3b4 gui=none - hi VisualNOS guifg=#233323 guibg=#71d3b4 gui=none - endif -else - " new Visual style - if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast - " high contrast - "hi Visual guibg=#304a3d - "hi VisualNos guibg=#304a3d - "TODO no nice greenish in console, 65 is closest. use full black instead, - "although i like the green..! - hi Visual guibg=#0f0f0f - hi VisualNos guibg=#0f0f0f - if &t_Co > 255 - hi Visual ctermbg=0 - endif - else - " low contrast - hi Visual guibg=#2f2f2f - hi VisualNOS guibg=#2f2f2f - - if &t_Co > 255 - hi Visual ctermbg=235 - hi VisualNOS ctermbg=235 - endif - endif -endif - -if exists("g:zenburn_alternate_Error") && g:zenburn_alternate_Error - " use more jumpy Error - hi Error guifg=#e37170 guibg=#664040 gui=bold -else - " default is something more zenburn-compatible - hi Error guifg=#e37170 guibg=#3d3535 gui=none -endif - -if exists("g:zenburn_alternate_Include") && g:zenburn_alternate_Include - " original setting - hi Include guifg=#ffcfaf gui=bold -else - " new, less contrasted one - hi Include guifg=#dfaf8f gui=bold -endif - -if exists("g:zenburn_color_also_Ignore") && g:zenburn_color_also_Ignore - " color the Ignore groups - " note: if you get strange coloring for your files, turn this off (unlet) - hi Ignore guifg=#545a4f -endif - -" new tabline and fold column -if exists("g:zenburn_high_Contrast") && g:zenburn_high_Contrast - hi FoldColumn guibg=#161616 - hi Folded guibg=#161616 - hi TabLine guifg=#88b090 guibg=#313633 gui=none - hi TabLineSel guifg=#ccd990 guibg=#222222 - hi TabLineFill guifg=#88b090 guibg=#313633 gui=none - - hi SpecialKey guibg=#242424 - - if &t_Co > 255 - hi FoldColumn ctermbg=233 ctermfg=109 - hi Folded ctermbg=233 ctermfg=109 - hi TabLine ctermbg=236 ctermfg=108 cterm=none - hi TabLineSel ctermbg=235 ctermfg=186 cterm=bold - hi TabLineFill ctermbg=236 ctermfg=236 - endif -else - hi FoldColumn guibg=#333333 - hi Folded guibg=#333333 - hi TabLine guifg=#d0d0b8 guibg=#222222 gui=none - hi TabLineSel guifg=#f0f0b0 guibg=#333333 gui=bold - hi TabLineFill guifg=#dccdcc guibg=#101010 gui=none - - hi SpecialKey guibg=#444444 - - if &t_Co > 255 - hi FoldColumn ctermbg=236 ctermfg=109 - hi Folded ctermbg=236 ctermfg=109 - hi TabLine ctermbg=235 ctermfg=187 cterm=none - hi TabLineSel ctermbg=236 ctermfg=229 cterm=bold - hi TabLineFill ctermbg=233 ctermfg=233 - endif -endif - -" EXPERIMENTAL ctags_highlighting support -" link/set sensible defaults here; -" -" For now I mostly link to subset of Zenburn colors, the linkage is based -" on appearance, not semantics. In later versions I might define more new colours. -" -" HELP NEEDED to make this work properly. -if exists("_zenburn_ctags") && _zenburn_ctags - - " Highlighter seems to think a lot of things are global variables even - " though they're not. Example: python method-local variable is - " coloured as a global variable. They should not be global, since - " they're not visible outside the method. - " If this is some very bright colour group then things look bad. - hi link CTagsGlobalVariable Identifier - - hi CTagsClass guifg=#acd0b3 - if &t_Co > 255 - hi CTagsClass ctermfg=115 - endif - - hi link CTagsImport Statement - hi link CTagsMember Function - - hi link CTagsGlobalConstant Constant - - " These do not yet have support, I can't get them to appear - hi link EnumerationValue Float - hi link EnumerationName Identifier - hi link DefinedName WarningMsg - hi link LocalVariable WarningMsg - hi link Structure WarningMsg - hi link Union WarningMsg -endif - -" TODO check for more obscure syntax groups that they're ok diff --git a/install-bundles.sh b/install-bundles.sh deleted file mode 100755 index 4ed3d47..0000000 --- a/install-bundles.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -# This script is simply for automating the downloading of the vim plugins -echo "Installing Plugins" -vim -i NONE -c VundleInstall -c quitall > /dev/null 2>&1 -echo "Done Installling Plugins" diff --git a/install-plugins.sh b/install-plugins.sh new file mode 100755 index 0000000..4ed3d47 --- /dev/null +++ b/install-plugins.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +# This script is simply for automating the downloading of the vim plugins +echo "Installing Plugins" +vim -i NONE -c VundleInstall -c quitall > /dev/null 2>&1 +echo "Done Installling Plugins" diff --git a/swap/.gitignore b/swap/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/swap/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/vim-files/backups/.gitignore b/vim-files/backups/.gitignore deleted file mode 100644 index d6b7ef3..0000000 --- a/vim-files/backups/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore diff --git a/vim-files/swaps/.gitignore b/vim-files/swaps/.gitignore deleted file mode 100644 index d6b7ef3..0000000 --- a/vim-files/swaps/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -* -!.gitignore diff --git a/vimrc b/vimrc index 3d6146c..a41b562 100644 --- a/vimrc +++ b/vimrc @@ -1,45 +1,127 @@ -"----------------------------------------------------------------------------------------------------------------------- " Plugins -"---------------------------------------------------------------------------------------------------------------------- call plug#begin('~/.vim/plugged') - -" Extending vim functionality -Plug 'mileszs/ack.vim' " Use ack to grep project directory -Plug 'scrooloose/syntastic' " Syntax checking -Plug 'terryma/vim-multiple-cursors' " Multipe cursors, like the sublime feature -Plug 'godlygeek/tabular' " Lines up code -Plug 'jamessan/vim-gnupg' " Loads encrypted files by asking for password -Plug 'gcmt/taboo.vim' " Rename Tabs -Plug 'mattn/emmet-vim' " HTML expansion plugin, very useful -Plug 'bkad/CamelCaseMotion' " Camel Case based motions -Plug 'tmhedberg/SimpylFold' " Folding for python +Plug 'w0rp/ale' " Async linting Plug 'tpope/vim-commentary' " Better commenting commands Plug 'tpope/vim-fugitive' " Git integration with vim Plug 'tpope/vim-surround' " Helps with surrounding text -Plug 'tmhedberg/matchit' " Match tags in html -Plug 'rbgrouleff/bclose.vim' " ranger.vim dep -Plug 'francoiscabrol/ranger.vim' " ranger intergration -Plug 'junegunn/fzf.vim' " fzf integration - -" Syntax highlighting / Themes Plug 'morhetz/gruvbox' " Pretty colorscheme -Plug 'nathanaelkane/vim-indent-guides' " Creates indent lines, makes code a bit easier to read -Plug 'plasticboy/vim-markdown' -Plug 'ledger/vim-ledger' -Plug 'stephpy/vim-yaml' -Plug 'mitsuhiko/vim-python-combined' -Plug 'elzr/vim-json' -Plug 'digitaltoad/vim-pug' -Plug 'elixir-lang/vim-elixir' -Plug 'othree/yajs.vim' " Javascript syntax -Plug 'gavocanov/vim-js-indent' -Plug 'mitsuhiko/vim-jinja' -Plug 'chr4/nginx.vim' -Plug 'reedes/vim-pencil' -Plug 'junegunn/goyo.vim' - -" My custom options -Plug 'thornycrackers/vim-options' - +Plug 'Valloric/YouCompleteMe' " Autocomplete +Plug 'ledger/vim-ledger' " Ledger plugin +Plug 'python-mode/python-mode' " Python awesomeness in vim call plug#end() + +" General Settings +set nocompatible " Disable vi-compatible +set wildmenu " Enable autocomple menu +set incsearch " Show search results as typing string +set hlsearch " Highlight matches to previos search string +set expandtab " In Insert mode: Use the appropriate number of spaces to insert . +set tabstop=4 "Number of spaces that a counts for +set shiftwidth=0 " Make shiftwidth value the same as tabstop +set relativenumber " Use relative numbers in the side bar +set nowrap " Turn off text wrapping long lines +set history=1000 " Set number of ':' commands +set wildmode=list:full " wildmenu show list complete to first result +set splitright " New windows split to the right of current one +set splitbelow " New windows split below the current one +set completeopt-=preview " Hide the preview/scratch window + +" Custom status line +set statusline= +set statusline+=%1*\ %02c\ " Color +set statusline+=%2*\ » " RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK +set statusline+=%3*\ %<%F\ " File+path +set statusline+=%2*\« " LEFT-POINTING DOUBLE ANGLE QUOTATION MARK +set statusline+=%2*\ %=\ %l/%L\ (%02p%%)\ " Rownumber/total (%) + +" Set spacing of filetypes +autocmd FileType sh,python setlocal tabstop=4 +autocmd FileType make setlocal tabstop=4 noexpandtab +autocmd FileType ledger setlocal tabstop=2 +autocmd FileType vim setlocal tabstop=2 + +" Setup colorscheme +syntax enable +colorscheme gruvbox " Set the colorscheme +set background=dark " Use dark colorscheme + +" Set vimdiff colors, make it easier to read +highlight DiffAdd cterm=BOLD ctermfg=NONE ctermbg=22 +highlight DiffDelete cterm=BOLD ctermfg=NONE ctermbg=52 +highlight DiffChange cterm=BOLD ctermfg=NONE ctermbg=23 +highlight DiffText cterm=BOLD ctermfg=NONE ctermbg=23 + +" Highlight lines at 80 mark +highlight ColorColumn ctermbg=cyan +au BufNewFile,BufRead * call matchadd('ColorColumn', '\%81v', 100) + +" Highlight lines at 120 mark +au BufNewFile,BufRead * call matchadd('Error', '\%121v', 100) + +" My Shorcuts +let mapleader="\" +" type jj to get out of insert mode +inoremap jj +" Ctags for python project +command! MakeTagsPython !ctags --languages=python --python-kinds=-i -R . +" Command for figuring out highlight group +map hi :echo "hi<" . synIDattr(synID(line("."),col("."),1),"name") . '> trans<' . synIDattr(synID(line("."),col("."),0),"name") . "> lo<" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"name") . ">" . " FG:" . synIDattr(synIDtrans(synID(line("."),col("."),1)),"fg#") +" Turn off syntax highlighting +nnoremap :noh +" New tab +nnoremap t :tabnew +" Visually select pasted text +nnoremap gp `[v`] +" Vimdiff commands +nnoremap du :diffupdate +nnoremap dd :diffget +nnoremap df :diffput +nnoremap _ [c +nnoremap = ]c +" Visually select line without ending +nnoremap v ^v$h +" Some very useful shortcuts for editing Ledger entries +" Copy the last entry +nnoremap ll G{jV}y}p10l +" Copy the current entry to the bottom, copy date from last entry +nnoremap lb {jV}yGp10l{{jvEy}jvEpl +" Copy the current entry to the next position +nnoremap ln {jV}y}p10l +" Jump down from line to replace dollar ammount +nnoremap ld j^f$lC +" After searching pull entry to current position +nnoremap ly vapyp{{jvEy}jvEpl +" Accept current autocomplete suggestion +inoremap pumvisible() ? "\" : "\" + + +"----------------------------------------------------------------------------------------------------------------------- +" Ale +"----------------------------------------------------------------------------------------------------------------------- +let g:ale_lint_on_enter = 0 +let g:ale_sign_column_always = 1 +let g:ale_lint_on_text_changed = 'never' +let g:ale_python_mypy_options='--ignore-missing-imports' +let g:ale_history_enabled = 0 +highlight clear ALEErrorSign +highlight clear ALEWarningSign +" Change gutter color +highlight SignColumn cterm=NONE ctermfg=0 ctermbg=None +"----------------------------------------------------------------------------------------------------------------------- + + + +"----------------------------------------------------------------------------------------------------------------------- +" Python Mode +"----------------------------------------------------------------------------------------------------------------------- +let g:pymode_run = 1 +let g:pymode_indent = 1 +let g:pymode_motion = 1 +let g:pymode_options_colorcolumn = 0 +let g:pymode_lint = 0 +let g:pymode_rope = 0 +let g:pymode_doc = 0 +let g:pymode_breakpoint = 0 +let g:pymode_lint = 0 +let g:pymode_folding = 0 "----------------------------------------------------------------------------------------------------------------------- -- cgit v1.2.3