From 8c12d9bb0d4212741b7ea4e053f066e1e16b13ef Mon Sep 17 00:00:00 2001 From: gryf Date: Sun, 6 Nov 2011 10:43:14 +0100 Subject: [PATCH] Added switch for current VCS, updated buffergator and sorcerer --- .vimrc | 66 ++++++++++++++++++++ GetLatest/GetLatestVimScripts.dat | 2 +- colors/sorcerer.vim | 100 +++++++++++++++++++++++++++++- plugin/buffergator.vim | 11 ++-- 4 files changed, 172 insertions(+), 7 deletions(-) diff --git a/.vimrc b/.vimrc index 90d6654..a45e63d 100644 --- a/.vimrc +++ b/.vimrc @@ -216,9 +216,36 @@ map ]b :call OpenInWebBrowser() "remove search highlight and refresh nnoremap :nohl:syn sync fromstart +map :call ChangeVCS() +map :call ToggleHex() " }}} " FUNCTIONS: usefull functions for all of th files {{{ +" Switch VCSCommand current used VCS system +function ChangeVCS() + echo "" + let l:vcs = ["HG", "SVN", "CVS", "GIT"] + let l:scv = {1: "HG", 2: "SVN", 3: "CVS", 4: "GIT"} + let l:cho = "" + let l:current = 0 + + if exists("VCSCommandVCSTypeExplicitOverride") && + \ index(vcs, g:VCSCommandVCSTypeExplicitOverride) != -1 + let l:current = vcs[g:VCSCommandVCSTypeExplicitOverride] + endif + + let l:choice = confirm('Switch VCS: ', "&" . join(l:vcs, "\n&"), l:current) + execute ':redraw!' + + if has_key(l:scv, l:choice) + let g:VCSCommandVCSTypeExplicitOverride=l:scv[l:choice] + + echohl Statement + echo "Switched to " . g:VCSCommandVCSTypeExplicitOverride + echohl None + endif +endfunction + " Simple wrapper for :make command function Make() echohl Statement @@ -316,6 +343,45 @@ function OpenInWebBrowser() echohl None endfunction +" helper function to toggle hex mode +function ToggleHex() + " hex mode should be considered a read-only operation + " save values for modified and read-only for restoration later, + " and clear the read-only flag for now + let l:modified=&mod + let l:oldreadonly=&readonly + let &readonly=0 + let l:oldmodifiable=&modifiable + let &modifiable=1 + if !exists("b:editHex") || !b:editHex + " save old options + let b:oldft=&ft + let b:oldbin=&bin + " set new options + setlocal binary " make sure it overrides any textwidth, etc. + let &ft="xxd" + " set status + let b:editHex=1 + " switch to hex editor + %!xxd + else + " restore old options + let &ft=b:oldft + if !b:oldbin + setlocal nobinary + endif + " set status + let b:editHex=0 + " return to normal editing + %!xxd -r + endif + " restore values for modified and read only state + let &mod=l:modified + let &readonly=l:oldreadonly + let &modifiable=l:oldmodifiable +endfunction + +"Toggle "}}} " GUI: detect graphics mode, set colorscheme {{{ if has('gui_running') diff --git a/GetLatest/GetLatestVimScripts.dat b/GetLatest/GetLatestVimScripts.dat index d2c9127..50d1a21 100644 --- a/GetLatest/GetLatestVimScripts.dat +++ b/GetLatest/GetLatestVimScripts.dat @@ -26,7 +26,7 @@ ScriptID SourceID Filename 1143 11833 inkpot.vim 2555 15432 jellybeans.vim 2536 16615 lucius.vim -3299 14475 sorcerer.vim +3299 16773 sorcerer.vim 1165 3741 tolerable.vim 3309 15759 vydark 2589 15760 vylight diff --git a/colors/sorcerer.vim b/colors/sorcerer.vim index d708c10..88b6398 100644 --- a/colors/sorcerer.vim +++ b/colors/sorcerer.vim @@ -12,7 +12,10 @@ endif let colors_name = "sorcerer" -hi Normal guifg=#c2c2b0 guibg=#202020 gui=NONE +" GUI Colors {{{1 +" ============================================================================ + +hi Normal guifg=#c2c2b0 guibg=#222222 gui=NONE hi ColorColumn guifg=NONE guibg=#1c1c1c hi Cursor guifg=NONE guibg=#626262 gui=NONE hi CursorColumn guibg=#2d2d2d @@ -95,3 +98,98 @@ hi pythonExClass guifg=#996666 guibg=NONE gui=NONE hi pythonDecorator guifg=#888555 guibg=NONE gui=NONE hi link pythonDecoratorFunction pythonDecorator +" 1}}} + +" 256 Colors {{{1 +" ============================================================================ +hi Normal cterm=NONE ctermbg=235 ctermfg=145 +hi ColorColumn cterm=NONE ctermbg=234 ctermfg=fg +hi Cursor cterm=NONE ctermbg=241 ctermfg=fg +hi CursorColumn cterm=NONE ctermbg=236 ctermfg=fg +hi DiffAdd cterm=NONE ctermbg=71 ctermfg=16 +hi DiffChange cterm=NONE ctermbg=68 ctermfg=16 +hi DiffDelete cterm=NONE ctermbg=94 ctermfg=16 +hi DiffText cterm=NONE ctermbg=117 ctermfg=16 +hi Directory cterm=NONE ctermbg=234 ctermfg=33 +hi ErrorMsg cterm=bold ctermbg=bg ctermfg=203 +hi FoldColumn cterm=bold ctermbg=239 ctermfg=66 +hi Folded cterm=NONE ctermbg=16 ctermfg=60 +hi IncSearch cterm=bold ctermbg=202 ctermfg=231 +hi LineNr cterm=NONE ctermbg=16 ctermfg=59 +hi MatchParen cterm=bold ctermbg=16 ctermfg=226 +hi ModeMsg cterm=bold ctermbg=46 ctermfg=16 +hi MoreMsg cterm=bold ctermbg=234 ctermfg=29 +hi NonText cterm=NONE ctermbg=234 ctermfg=59 +hi Pmenu cterm=NONE ctermbg=238 ctermfg=231 +hi PmenuSbar cterm=NONE ctermbg=250 ctermfg=fg +hi PmenuSel cterm=NONE ctermbg=149 ctermfg=16 +hi Question cterm=bold ctermbg=bg ctermfg=46 +hi Search cterm=bold ctermbg=185 ctermfg=16 +hi SignColumn cterm=NONE ctermbg=187 ctermfg=231 +hi SpecialKey cterm=NONE ctermbg=bg ctermfg=59 +hi SpellBad cterm=undercurl ctermbg=bg ctermfg=196 +hi SpellCap cterm=undercurl ctermbg=bg ctermfg=21 +hi SpellLocal cterm=undercurl ctermbg=bg ctermfg=30 +hi SpellRare cterm=undercurl ctermbg=bg ctermfg=201 +hi StatusLine cterm=bold ctermbg=101 ctermfg=16 +hi StatusLineNC cterm=NONE ctermbg=102 ctermfg=16 +hi VertSplit cterm=NONE ctermbg=102 ctermfg=102 +hi TabLine cterm=bold ctermbg=102 ctermfg=16 +hi TabLineFill cterm=NONE ctermbg=102 ctermfg=16 +hi TabLineSel cterm=bold ctermbg=16 ctermfg=59 +hi Title cterm=bold ctermbg=bg ctermfg=66 +hi Visual cterm=NONE ctermbg=67 ctermfg=16 +hi WarningMsg cterm=NONE ctermbg=234 ctermfg=208 +hi WildMenu cterm=NONE ctermbg=116 ctermfg=16 + +hi Comment cterm=NONE ctermbg=bg ctermfg=65 +hi Boolean cterm=NONE ctermbg=bg ctermfg=208 +hi String cterm=NONE ctermbg=bg ctermfg=101 +hi Identifier cterm=NONE ctermbg=bg ctermfg=145 +hi Function cterm=NONE ctermbg=bg ctermfg=230 +hi Type cterm=NONE ctermbg=bg ctermfg=103 +hi Statement cterm=NONE ctermbg=bg ctermfg=110 +hi Keyword cterm=NONE ctermbg=bg ctermfg=110 +hi Constant cterm=NONE ctermbg=bg ctermfg=208 +hi Number cterm=NONE ctermbg=bg ctermfg=172 +hi Special cterm=NONE ctermbg=bg ctermfg=64 +hi PreProc cterm=NONE ctermbg=bg ctermfg=66 +hi Todo cterm=bold,underline ctermbg=234 ctermfg=96 + +hi diffAdded cterm=NONE ctermbg=bg ctermfg=40 +hi diffChanged cterm=NONE ctermbg=bg ctermfg=68 +hi diffFile cterm=NONE ctermbg=bg ctermfg=214 +hi diffLine cterm=NONE ctermbg=bg ctermfg=201 +hi diffNewFile cterm=NONE ctermbg=bg ctermfg=226 +hi diffOldFile cterm=NONE ctermbg=bg ctermfg=170 +hi diffRemoved cterm=NONE ctermbg=bg ctermfg=167 + +hi pythonClass cterm=NONE ctermbg=bg ctermfg=fg +hi pythonDecorator cterm=NONE ctermbg=bg ctermfg=101 +hi pythonExClass cterm=NONE ctermbg=bg ctermfg=95 +hi pythonException cterm=NONE ctermbg=bg ctermfg=110 +hi pythonFunc cterm=NONE ctermbg=bg ctermfg=fg +hi pythonFuncParams cterm=NONE ctermbg=bg ctermfg=fg +hi pythonKeyword cterm=NONE ctermbg=bg ctermfg=fg +hi pythonParam cterm=NONE ctermbg=bg ctermfg=fg +hi pythonRawEscape cterm=NONE ctermbg=bg ctermfg=fg +hi pythonSuperclasses cterm=NONE ctermbg=bg ctermfg=fg +hi pythonSync cterm=NONE ctermbg=bg ctermfg=fg + +hi Conceal cterm=NONE ctermbg=248 ctermfg=252 +hi Error cterm=NONE ctermbg=196 ctermfg=231 +hi Ignore cterm=NONE ctermbg=bg ctermfg=234 +hi InsertModeCursorLine cterm=NONE ctermbg=16 ctermfg=fg +hi NormalModeCursorLine cterm=NONE ctermbg=235 ctermfg=fg +hi PmenuThumb cterm=reverse ctermbg=bg ctermfg=fg +hi StatusLineAlert cterm=NONE ctermbg=160 ctermfg=231 +hi StatusLineUnalert cterm=NONE ctermbg=238 ctermfg=144 +hi Test cterm=NONE ctermbg=bg ctermfg=fg +hi Underlined cterm=underline ctermbg=bg ctermfg=111 +hi VisualNOS cterm=bold,underline ctermbg=bg ctermfg=fg +hi cCursor cterm=reverse ctermbg=bg ctermfg=fg +hi iCursor cterm=NONE ctermbg=210 ctermfg=16 +hi lCursor cterm=NONE ctermbg=145 ctermfg=234 +hi nCursor cterm=NONE ctermbg=46 ctermfg=16 +hi vCursor cterm=NONE ctermbg=201 ctermfg=16 +" 1}}} diff --git a/plugin/buffergator.vim b/plugin/buffergator.vim index 805816c..02c0f05 100644 --- a/plugin/buffergator.vim +++ b/plugin/buffergator.vim @@ -1014,19 +1014,20 @@ function! s:NewBufferCatalogViewer() """"" Selection: show target and switch focus noremap :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "") noremap o :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "") - " gryf: let's keep it stright: s should h split, v should vertical + " gryf: let's keep it stright: s should split, v should vsplit " split noremap s :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "sb") noremap v :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "vert sb") noremap t :call b:buffergator_catalog_viewer.visit_target(!g:buffergator_autodismiss_on_select, 0, "tab sb") """"" Preview: show target , keeping focus on catalog + " gryf: also here, I want to have consistent shortcuts noremap O :call b:buffergator_catalog_viewer.visit_target(1, 1, "") noremap go :call b:buffergator_catalog_viewer.visit_target(1, 1, "") - noremap S :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") - noremap gs :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") - noremap I :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") - noremap gi :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") + noremap S :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") + noremap gs :call b:buffergator_catalog_viewer.visit_target(1, 1, "sb") + noremap V :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") + noremap gv :call b:buffergator_catalog_viewer.visit_target(1, 1, "vert sb") noremap T :call b:buffergator_catalog_viewer.visit_target(1, 1, "tab sb") noremap :call b:buffergator_catalog_viewer.goto_index_entry("n", 1, 1) noremap :call b:buffergator_catalog_viewer.goto_index_entry("p", 1, 1)