Submoduled: repeat, surround, taglist; deleted unused plugins
This commit is contained in:
1
vim/bundle/tpope-vim-repeat
Submodule
1
vim/bundle/tpope-vim-repeat
Submodule
Submodule vim/bundle/tpope-vim-repeat added at cdffdd4381
1
vim/bundle/tpope-vim-surround
Submodule
1
vim/bundle/tpope-vim-surround
Submodule
Submodule vim/bundle/tpope-vim-surround added at 4eb2cdfccc
1
vim/bundle/vim-scripts-taglist
Submodule
1
vim/bundle/vim-scripts-taglist
Submodule
Submodule vim/bundle/vim-scripts-taglist added at 53041fbc45
@@ -1,466 +0,0 @@
|
||||
" theme.menu.vim: Generates Vim themes menu and organizes themes based
|
||||
" upon background colors
|
||||
" Maintainer: Erik Falor <rAjsBnFCybe@tzNnvy.Zpbz g?? - NOSPAM>
|
||||
" Date: Aug 30, 2007
|
||||
" Version: 0.4
|
||||
"
|
||||
|
||||
" Initialization: {{{
|
||||
if exists("g:loaded_theme_menu") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_theme_menu= "0.4"
|
||||
let s:keepcpo = &cpo
|
||||
set cpo&vim
|
||||
"}}}
|
||||
|
||||
" Script Variables: {{{
|
||||
let s:menuFile = strpart(&rtp, 0, stridx(&rtp, ',')) . '/plugin/ColorSchemes.vim'
|
||||
let s:menuName = '&ColorSchemes'
|
||||
let s:xdigit = '[0123456789ABCDEFabcdef]'
|
||||
let s:hexvals = { 0:0, 1:1, 2:2, 3:3,
|
||||
\4:4, 5:5, 6:6, 7:7,
|
||||
\8:8, 9:9, 'a':10, 'b':11,
|
||||
\'c':12, 'd':13, 'e':14, 'f':15,
|
||||
\'A':10, 'B':11, 'C':12, 'D':13,
|
||||
\'E':14, 'F':15 }
|
||||
"}}}
|
||||
|
||||
" Library Functions {{{
|
||||
function! <SID>RGBtoHSV(r, g, b) "{{{
|
||||
let h = 0
|
||||
let s = 0
|
||||
let v = 0
|
||||
if (a:b > a:g) && (a:b > a:r)
|
||||
let v = a:b
|
||||
if v != 0
|
||||
let min = 0
|
||||
if(a:r > a:g)
|
||||
let min = a:g
|
||||
else
|
||||
let min = a:r
|
||||
endif
|
||||
|
||||
let delta = v - min
|
||||
|
||||
if delta != 0
|
||||
let s = (delta * 255) / v
|
||||
let h = 240 + (60 * a:r - 60 * a:g) / delta
|
||||
else
|
||||
let s = 0
|
||||
let h = 240 + (60 * a:r - 60 * a:g)
|
||||
endif
|
||||
if h < 0
|
||||
let h = h + 360
|
||||
endif
|
||||
else
|
||||
let s = 0
|
||||
let h = 0
|
||||
endif
|
||||
elseif a:g > a:r
|
||||
let v = a:g
|
||||
if v != 0
|
||||
let min = 0
|
||||
if a:r > a:b
|
||||
let min = a:b
|
||||
else
|
||||
let min = a:r
|
||||
endif
|
||||
let delta = v - min
|
||||
if delta != 0
|
||||
let s = (delta * 255) / v
|
||||
let h = 120 + (60 * a:b - 60 * a:r) / delta
|
||||
else
|
||||
let s = 0
|
||||
let h = 120 + (60 * a:b - 60 * a:r)
|
||||
endif
|
||||
if h < 0
|
||||
let h = h + 360
|
||||
endif
|
||||
else
|
||||
let s = 0
|
||||
let h = 0
|
||||
endif
|
||||
else
|
||||
let v = a:r
|
||||
if v != 0
|
||||
let min = 0
|
||||
if a:g > a:b
|
||||
let min = a:b
|
||||
else
|
||||
let min = a:g
|
||||
endif
|
||||
let delta = v - min
|
||||
if delta != 0
|
||||
let s = (delta * 255) / v
|
||||
let h = (60 * a:g - 60 * a:b) / delta
|
||||
else
|
||||
let s = 0
|
||||
let h = 60 * a:g - 60 * a:b
|
||||
endif
|
||||
if h < 0
|
||||
let h = h + 360
|
||||
endif
|
||||
else
|
||||
let s = 0
|
||||
let h = 0
|
||||
endif
|
||||
endif
|
||||
return [h, s, v]
|
||||
endfunction "RGBtoHSV()
|
||||
"}}}
|
||||
|
||||
function! <SID>IsBlack(r, g, b, h, s, v) "{{{
|
||||
if a:r == a:g && a:g == a:b && a:b == 0
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "IsBlack()}}}
|
||||
|
||||
function! <SID>IsWhite(r, g, b, h, s, v) "{{{
|
||||
if a:r == a:g && a:g == a:b && a:b == 255
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "IsWhite()}}}
|
||||
|
||||
function! <SID>IsDarkGrey(r, g, b, h, s, v) "{{{
|
||||
let diffRGB = max([a:r, a:g, a:b]) - min([a:r, a:g, a:b])
|
||||
let darkGreyFuzz = 20
|
||||
if diffRGB <= darkGreyFuzz
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "IsDarkGrey()}}}
|
||||
|
||||
function! <SID>IsOffWhite(r, g, b, h, s, v) "{{{
|
||||
let offWhiteSat = 32
|
||||
let offWhiteVal = 255 - 32
|
||||
if a:v >= offWhiteVal && a:s <= offWhiteSat
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsGrey(r, g, b, h, s, v) "{{{
|
||||
let diffRGB = max([a:r, a:g, a:b]) - min([a:r, a:g, a:b])
|
||||
let greyFuzz = 28
|
||||
let greyVal = 32
|
||||
|
||||
if diffRGB > greyFuzz
|
||||
return 0
|
||||
elseif (a:s <= greyFuzz )
|
||||
\&& (a:v <= 255 - (greyVal * 1))
|
||||
\&& (a:v >= 0 + (greyVal * 1))
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsYellow(r, g, b, h, s, v) "{{{
|
||||
if a:h > 30 && a:h <= 90
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsGreen(r, g, b, h, s, v) "{{{
|
||||
if a:h > 90 && a:h <= 180
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsCyan(r, g, b, h, s, v) "{{{
|
||||
" cyan will be 180 deg +/- 10 deg
|
||||
let variance = 10
|
||||
if a:h > 180 - variance && a:h < 180 + variance
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsBlue(r, g, b, h, s, v) "{{{
|
||||
if a:h > 180 && a:h <= 270
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsMagenta(r, g, b, h, s, v) "{{{
|
||||
if a:h > 270 && a:h <= 330
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction }}}
|
||||
|
||||
function! <SID>IsOrange(r, g, b, h, s, v) "{{{
|
||||
"a magic number found through trial and error
|
||||
let greenFuzz = 172
|
||||
if a:r > a:g && a:b == 0 && a:g < greenFuzz && a:g != 0
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>IsRed(r, g, b, h, s, v) "{{{
|
||||
if a:h > 330 || a:h <= 30
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>RgbTxt2Hexes() "{{{
|
||||
"read rgb.txt, return dictionary mapping color names to hex triplet
|
||||
if exists("g:rgbtxt") && filereadable(g:rgbtxt)
|
||||
let rgbtxt = g:rgbtxt
|
||||
else
|
||||
if has("win32") || has("win64")
|
||||
let rgbtxt = expand("$VIMRUNTIME/rgb.txt")
|
||||
elseif filereadable("/usr/X11R6/lib/X11/rgb.txt")
|
||||
let rgbtxt = "/usr/X11R6/lib/X11/rgb.txt"
|
||||
elseif filereadable("/usr/share/X11/rgb.txt")
|
||||
let rgbtxt = "/usr/share/X11/rgb.txt"
|
||||
endif
|
||||
endif
|
||||
let rgbdict = {}
|
||||
if filereadable(rgbtxt)
|
||||
for line in readfile(rgbtxt)
|
||||
if line !~ '^\(!\|#\)'
|
||||
let l = matchlist(line, '\s*\(\d\+\)\s*\(\d\+\)\s*\(\d\+\)\s*\(.*\)')
|
||||
let rgbdict[tolower(l[4])] = printf('%02X%02X%02X', l[1], l[2], l[3])
|
||||
endif
|
||||
endfor
|
||||
"note: vim treats guibg=NONE as guibg=white
|
||||
let rgbdict['none'] = 'FFFFFF'
|
||||
else
|
||||
echoerr "ColorSchemeMenuMaker.vim could not open rgb.txt file at " . rgbtxt
|
||||
endif
|
||||
return rgbdict
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>RGBHexToHexes(rgb) "{{{
|
||||
let xdigits = '\(' . s:xdigit . '\{2\}\)'
|
||||
let pat = '\(#\)\?' . xdigits . xdigits . xdigits
|
||||
let l = matchlist(a:rgb, pat)
|
||||
if len(l) > 0
|
||||
return [ l[2], l[3], l[4] ]
|
||||
else
|
||||
return []
|
||||
endif
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>RGBHexToInts(rgbList) "{{{
|
||||
return map(a:rgbList, '<SID>Hex2Int(v:val)')
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>Hex2Int(hex) "{{{
|
||||
let xdigits = split(a:hex, '\zs')
|
||||
return 16 * s:hexvals[xdigits[0]] + s:hexvals[xdigits[1]]
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>RGB2BoyColor(rgb) "{{{
|
||||
let rgbL = <SID>RGBHexToInts(<SID>RGBHexToHexes(a:rgb))
|
||||
let r = rgbL[0] | let g = rgbL[1] | let b = rgbL[2]
|
||||
let hsvL = <SID>RGBtoHSV(r, g, b)
|
||||
let h = hsvL[0] | let s = hsvL[1] | let v = hsvL[2]
|
||||
if <SID>IsBlack(r, g, b, h, s, v) == 1 | return 'black' | endif
|
||||
if <SID>IsWhite(r, g, b, h, s, v) == 1 | return 'white' | endif
|
||||
if <SID>IsGrey(r, g, b, h, s, v) == 1 | return 'grey' | endif
|
||||
if <SID>IsOffWhite(r, g, b, h, s, v) == 1 | return 'offwhite' | endif
|
||||
if <SID>IsDarkGrey(r, g, b, h, s, v) == 1 | return 'darkgrey' | endif
|
||||
if <SID>IsOrange(r, g, b, h, s, v) == 1 | return 'orange' | endif
|
||||
if <SID>IsYellow(r, g, b, h, s, v) == 1 | return 'yellow' | endif
|
||||
if <SID>IsCyan(r, g, b, h, s, v) == 1 | return 'cyan' | endif
|
||||
if <SID>IsGreen(r, g, b, h, s, v) == 1 | return 'green' | endif
|
||||
if <SID>IsBlue(r, g, b, h, s, v) == 1 | return 'blue' | endif
|
||||
if <SID>IsMagenta(r, g, b, h, s, v) == 1 | return 'magenta' | endif
|
||||
if <SID>IsRed(r, g, b, h, s, v) == 1 | return 'red' | endif
|
||||
return 'unknown'
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>GlobThemes() "{{{
|
||||
"return list containing paths to all theme files in &runtimepath
|
||||
return split(globpath(&rtp, 'colors/*.vim'), '\n')
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>ScanThemeBackground() "{{{
|
||||
"Read each of the theme files and find out which color
|
||||
"each theme 'basically' is. Uses the last 'hi Normal'
|
||||
"group found to classify by color. Notes those color
|
||||
"files that do have more than one 'hi Normal' command.
|
||||
let name2hex = <SID>RgbTxt2Hexes()
|
||||
let themeColors = {}
|
||||
let themeNames = {}
|
||||
let i = 0
|
||||
let pat = 'hi.*\s\+Normal\s\+.\{-}guibg=\(#\?\)\(\w\+\)'
|
||||
for theme in <SID>GlobThemes()
|
||||
if filereadable(theme)
|
||||
|
||||
"DEBUG
|
||||
"let i = i + 1
|
||||
"if i > 10
|
||||
"break
|
||||
"endif
|
||||
|
||||
let higroupfound = 0
|
||||
let color = ''
|
||||
for line in readfile(theme)
|
||||
let bg = matchlist(line, pat)
|
||||
if len(bg) > 0
|
||||
if bg[1] == '#'
|
||||
let color = <SID>RGB2BoyColor(bg[2])
|
||||
else
|
||||
if has_key(name2hex, tolower(bg[2]))
|
||||
let color = <SID>RGB2BoyColor(name2hex[tolower(bg[2])])
|
||||
else
|
||||
let color = 'unknown'
|
||||
endif
|
||||
endif
|
||||
let higroupfound += 1
|
||||
endif
|
||||
endfor
|
||||
let themename = fnamemodify(theme, ':t:r')
|
||||
let letter = toupper(strpart(themename, 0, 1))
|
||||
if letter =~ '\d' | let letter = '#' | endif
|
||||
|
||||
if len(color) < 1
|
||||
let color = 'unknown'
|
||||
endif
|
||||
|
||||
"allocate sub-dict if needed
|
||||
if !has_key(themeColors, color)
|
||||
let themeColors[color] = {}
|
||||
endif
|
||||
"allocate sub-dict if needed
|
||||
if !has_key(themeNames, letter)
|
||||
let themeNames[letter] = {}
|
||||
endif
|
||||
if higroupfound > 1
|
||||
"mark themes with many 'hi Normal' commands
|
||||
if len(color) > 0
|
||||
let themeColors[color][themename] = '*' . themename
|
||||
endif
|
||||
let themeNames[letter][themename] = '*' . themename
|
||||
else
|
||||
if len(color) > 0
|
||||
let themeColors[color][themename] = themename
|
||||
endif
|
||||
let themeNames[letter][themename] = themename
|
||||
endif
|
||||
endif
|
||||
endfor
|
||||
return [themeColors, themeNames]
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>BuildMenu(dicts) "{{{
|
||||
"puts menu commands into a list
|
||||
let menu = []
|
||||
call add(menu, '"ColorScheme menu generated ' . strftime("%c", localtime()))
|
||||
call add(menu, '')
|
||||
call add(menu, '"Themes by color:')
|
||||
call add(menu, '')
|
||||
"count number of themes categorized by color
|
||||
let totThemes = 0
|
||||
for i in keys(a:dicts[0])
|
||||
let totThemes += len(a:dicts[0][i])
|
||||
endfor
|
||||
for color in sort(keys(a:dicts[0]))
|
||||
let numThemes = len(a:dicts[0][color])
|
||||
call add(menu, '')
|
||||
call add(menu, '"submenu '. color)
|
||||
for theme in sort(keys(a:dicts[0][color]))
|
||||
call add(menu, '9000amenu '. s:menuName. '.&Colors\ ('. totThemes . ').'
|
||||
\. color . '\ ('. numThemes . ').'
|
||||
\. a:dicts[0][color][theme]. ' :colo '. theme . '<CR>')
|
||||
endfor
|
||||
endfor
|
||||
call add(menu, '"Themes by name:')
|
||||
call add(menu, '')
|
||||
"count number of themes categorized by name
|
||||
let totThemes = 0
|
||||
for i in keys(a:dicts[1])
|
||||
let totThemes += len(a:dicts[1][i])
|
||||
endfor
|
||||
for letter in sort(keys(a:dicts[1]))
|
||||
let numThemes = len(a:dicts[1][letter])
|
||||
call add(menu, '')
|
||||
call add(menu, '"submenu '. letter)
|
||||
for theme in sort(keys(a:dicts[1][letter]))
|
||||
call add(menu, 'amenu '. s:menuName. '.&Names\ (' . totThemes . ').'
|
||||
\. letter . '\ ('. numThemes .').'
|
||||
\. a:dicts[1][letter][theme] . ' :colo '. theme . '<CR>')
|
||||
endfor
|
||||
endfor
|
||||
|
||||
call add(menu, '')
|
||||
"add a separator and a command to re-init the menu
|
||||
call add(menu, 'amenu ' . s:menuName .'.-Sep- :')
|
||||
call add(menu, 'amenu ' . s:menuName .'.Reload\ Menu :ReloadColors<CR>')
|
||||
call add(menu, 'amenu ' . s:menuName .'.Refresh\ Menu :RefreshColors<CR>')
|
||||
call add(menu, '')
|
||||
call add(menu, 'command! -nargs=0 ReloadColors call <SID>ReloadColors()')
|
||||
call add(menu, 'command! -nargs=0 RefreshColors call <SID>RefreshColors()')
|
||||
call add(menu, '')
|
||||
call add(menu, 'if !exists("g:running_ReloadColors")')
|
||||
call add(menu, ' function! <SID>ReloadColors()')
|
||||
call add(menu, ' let g:running_ReloadColors = 1')
|
||||
call add(menu, ' aunmenu ' . s:menuName)
|
||||
call add(menu, " execute 'source " . s:menuFile . "'")
|
||||
call add(menu, ' unlet g:running_ReloadColors')
|
||||
call add(menu, " echomsg 'Done Reloading " . s:menuFile . "'")
|
||||
call add(menu, ' endfunction')
|
||||
call add(menu, 'endif')
|
||||
|
||||
call add(menu, 'if !exists("g:running_RefreshColors")')
|
||||
call add(menu, ' function! <SID>RefreshColors()')
|
||||
call add(menu, ' let g:running_RefreshColors = 1')
|
||||
call add(menu, ' call WriteColorSchemeMenu()')
|
||||
call add(menu, ' call <SID>ReloadColors()')
|
||||
call add(menu, ' unlet g:running_RefreshColors')
|
||||
call add(menu, " echomsg 'Done Refreshing " . s:menuFile . "'")
|
||||
call add(menu, ' endfunction')
|
||||
call add(menu, 'endif')
|
||||
|
||||
return menu
|
||||
endfunction "}}}
|
||||
|
||||
function! WriteColorSchemeMenu() "{{{
|
||||
"Builds the menu from the two dicts returned by ScanThemeBackground()
|
||||
"Stores menu in first plugin dir specified by &rtp
|
||||
let menu = <SID>BuildMenu(<SID>ScanThemeBackground())
|
||||
call writefile(menu, s:menuFile)
|
||||
endfunction "}}}
|
||||
|
||||
function! <SID>InitMenu() "{{{
|
||||
call WriteColorSchemeMenu()
|
||||
execute "source " . s:menuFile
|
||||
endfunction "}}}
|
||||
|
||||
"}}}
|
||||
|
||||
" Restore &cpo: {{{1
|
||||
let &cpo= s:keepcpo
|
||||
unlet s:keepcpo
|
||||
"}}}1
|
||||
|
||||
"Detect absence of ColorScheme menu, and generate a new one automatically
|
||||
if !filereadable(s:menuFile) "{{{
|
||||
echomsg "Creating ColorScheme menu - Please Wait..."
|
||||
call <SID>InitMenu()
|
||||
echomsg "Done!"
|
||||
endif "}}}
|
||||
|
||||
" vim: tabstop=4 foldmethod=marker
|
||||
@@ -1,486 +0,0 @@
|
||||
"ColorScheme menu generated Sat 01 Sep 2007 23:21:10 NZST
|
||||
|
||||
"Themes by color:
|
||||
|
||||
|
||||
"submenu black
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).adrian :colo adrian<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*af :colo af<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).billw :colo billw<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*black_angus :colo black_angus<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).blackbeauty :colo blackbeauty<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).blacksea :colo blacksea<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).blugrine :colo blugrine<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).brookstream :colo brookstream<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).candy :colo candy<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).colorer :colo colorer<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dante :colo dante<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).darkblack :colo darkblack<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).darkocean :colo darkocean<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_blue :colo dw_blue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_cyan :colo dw_cyan<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_green :colo dw_green<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_orange :colo dw_orange<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_purple :colo dw_purple<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_red :colo dw_red<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).dw_yellow :colo dw_yellow<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).elflord :colo elflord<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).fnaqevan :colo fnaqevan<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).golden :colo golden<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).gothic :colo gothic<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdblue :colo hhdblue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdcyan :colo hhdcyan<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdgray :colo hhdgray<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdgreen :colo hhdgreen<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdmagenta :colo hhdmagenta<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdred :colo hhdred<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).hhdyellow :colo hhdyellow<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*inkpot :colo inkpot<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).jhdark :colo jhdark<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).koehler :colo koehler<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).less :colo less<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).manxome :colo manxome<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).matrix :colo matrix<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).metacosm :colo metacosm<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*motus :colo motus<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).murphy :colo murphy<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).neverness :colo neverness<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).nightwish :colo nightwish<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).oceanblack :colo oceanblack<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).pablo :colo pablo<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).potts :colo potts<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*ps_color :colo ps_color<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).putty :colo putty<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).redblack :colo redblack<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).relaxedgreen :colo relaxedgreen<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).revolutions :colo revolutions<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).ron :colo ron<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).sean :colo sean<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).tango :colo tango<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*torte :colo torte<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).vibrantink :colo vibrantink<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).*vividchalk :colo vividchalk<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).black\ (57).wintersday :colo wintersday<CR>
|
||||
|
||||
"submenu blue
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).adam :colo adam<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).adaryn :colo adaryn<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).aqua :colo aqua<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).astronaut :colo astronaut<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).asu1dark :colo asu1dark<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).blue :colo blue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).bluegreen :colo bluegreen<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).borland :colo borland<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).breeze :colo breeze<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).caramel :colo caramel<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).cleanphp :colo cleanphp<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).*cool :colo cool<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).darkblue :colo darkblue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).darkblue2 :colo darkblue2<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).denim :colo denim<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).desertedocean :colo desertedocean<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).dusk :colo dusk<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).edo_sea :colo edo_sea<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).hhazure :colo hhazure<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).ibmedit :colo ibmedit<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).midnight :colo midnight<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).midnight2 :colo midnight2<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).navajo-night :colo navajo-night<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).nightshimmer :colo nightshimmer<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).northsky :colo northsky<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).oceandeep :colo oceandeep<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).sea :colo sea<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).softblue :colo softblue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).transparent :colo transparent<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).blue\ (30).turbo :colo turbo<CR>
|
||||
|
||||
"submenu cyan
|
||||
9000amenu &ColorSchemes.&Colors\ (190).cyan\ (3).darkslategray :colo darkslategray<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).cyan\ (3).gor :colo gor<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).cyan\ (3).marklar :colo marklar<CR>
|
||||
|
||||
"submenu darkgrey
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).candycode :colo candycode<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).darkdot :colo darkdot<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).darktango :colo darktango<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).greyblue :colo greyblue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).hhspring :colo hhspring<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).hhteal :colo hhteal<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).hhviolet :colo hhviolet<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).lettuce :colo lettuce<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).night :colo night<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).darkgrey\ (10).rdark :colo rdark<CR>
|
||||
|
||||
"submenu green
|
||||
9000amenu &ColorSchemes.&Colors\ (190).green\ (2).earth :colo earth<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).green\ (2).*tabula :colo tabula<CR>
|
||||
|
||||
"submenu grey
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).biogoo :colo biogoo<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).blackdust :colo blackdust<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).camo :colo camo<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).*dawn :colo dawn<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).desert :colo desert<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).desertEx :colo desertEx<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).evening :colo evening<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).fog :colo fog<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).freya :colo freya<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).jhlight :colo jhlight<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).neon :colo neon<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).slate :colo slate<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).toothpik :colo toothpik<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).umber-green :colo umber-green<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).whitedust :colo whitedust<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).xemacs :colo xemacs<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).grey\ (17).*zenburn :colo zenburn<CR>
|
||||
|
||||
"submenu magenta
|
||||
9000amenu &ColorSchemes.&Colors\ (190).magenta\ (1).lilac :colo lilac<CR>
|
||||
|
||||
"submenu offwhite
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).automation :colo automation<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).autumn :colo autumn<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).autumn2 :colo autumn2<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).autumnleaf :colo autumnleaf<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).*baycomb :colo baycomb<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).bmichaelsen :colo bmichaelsen<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).fine_blue :colo fine_blue<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).fruit :colo fruit<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).habiLight :colo habiLight<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).ironman :colo ironman<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).mod_tcsoft :colo mod_tcsoft<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).morning :colo morning<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).nedit :colo nedit<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).nedit2 :colo nedit2<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).nuvola :colo nuvola<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).oceanlight :colo oceanlight<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).pyte :colo pyte<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).python :colo python<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).seashell :colo seashell<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).sf :colo sf<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).offwhite\ (21).simpleandfriendly :colo simpleandfriendly<CR>
|
||||
|
||||
"submenu orange
|
||||
9000amenu &ColorSchemes.&Colors\ (190).orange\ (1).*mars :colo mars<CR>
|
||||
|
||||
"submenu red
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).ChocolateLiquor :colo ChocolateLiquor<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).aiseered :colo aiseered<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).chocolateliquor :colo chocolateliquor<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).hhpink :colo hhpink<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).*navajo :colo navajo<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).peachpuff :colo peachpuff<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).tibet :colo tibet<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).tomatosoup :colo tomatosoup<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).red\ (9).xian :colo xian<CR>
|
||||
|
||||
"submenu unknown
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).brown :colo brown<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).bw :colo bw<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).c :colo c<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).calmar256-light :colo calmar256-light<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).chela_light :colo chela_light<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).coffee :colo coffee<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).colorscheme_template :colo colorscheme_template<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).default :colo default<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).desert256 :colo desert256<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).impact :colo impact<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).psql :colo psql<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).reloaded :colo reloaded<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).unknown\ (13).vc :colo vc<CR>
|
||||
|
||||
"submenu white
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).bog :colo bog<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).delek :colo delek<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).eclipse :colo eclipse<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).emacs :colo emacs<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).gobo :colo gobo<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).lingodirector :colo lingodirector<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).martin_krischik :colo martin_krischik<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).*moria :colo moria<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).print_bw :colo print_bw<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).*scite :colo scite<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).shine :colo shine<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).*sienna :colo sienna<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).taqua :colo taqua<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).tcsoft :colo tcsoft<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).tolerable :colo tolerable<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).vcbc :colo vcbc<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).white :colo white<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).white\ (18).zellner :colo zellner<CR>
|
||||
|
||||
"submenu yellow
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).PapayaWhip :colo PapayaWhip<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).buttercream :colo buttercream<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).hhorange :colo hhorange<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).olive :colo olive<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).papayawhip :colo papayawhip<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).professional :colo professional<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).robinhood :colo robinhood<CR>
|
||||
9000amenu &ColorSchemes.&Colors\ (190).yellow\ (8).sand :colo sand<CR>
|
||||
"Themes by name:
|
||||
|
||||
|
||||
"submenu A
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).adam :colo adam<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).adaryn :colo adaryn<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).adrian :colo adrian<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).*af :colo af<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).aiseered :colo aiseered<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).aqua :colo aqua<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).astronaut :colo astronaut<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).asu1dark :colo asu1dark<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).automation :colo automation<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).autumn :colo autumn<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).autumn2 :colo autumn2<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).A\ (12).autumnleaf :colo autumnleaf<CR>
|
||||
|
||||
"submenu B
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).*baycomb :colo baycomb<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).billw :colo billw<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).biogoo :colo biogoo<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).*black_angus :colo black_angus<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).blackbeauty :colo blackbeauty<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).blackdust :colo blackdust<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).blacksea :colo blacksea<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).blue :colo blue<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).bluegreen :colo bluegreen<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).blugrine :colo blugrine<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).bmichaelsen :colo bmichaelsen<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).bog :colo bog<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).borland :colo borland<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).breeze :colo breeze<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).brookstream :colo brookstream<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).brown :colo brown<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).buttercream :colo buttercream<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).B\ (18).bw :colo bw<CR>
|
||||
|
||||
"submenu C
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).ChocolateLiquor :colo ChocolateLiquor<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).c :colo c<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).calmar256-light :colo calmar256-light<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).camo :colo camo<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).candy :colo candy<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).candycode :colo candycode<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).caramel :colo caramel<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).chela_light :colo chela_light<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).chocolateliquor :colo chocolateliquor<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).cleanphp :colo cleanphp<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).coffee :colo coffee<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).colorer :colo colorer<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).colorscheme_template :colo colorscheme_template<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).C\ (14).*cool :colo cool<CR>
|
||||
|
||||
"submenu D
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dante :colo dante<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darkblack :colo darkblack<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darkblue :colo darkblue<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darkblue2 :colo darkblue2<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darkdot :colo darkdot<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darkocean :colo darkocean<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darkslategray :colo darkslategray<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).darktango :colo darktango<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).*dawn :colo dawn<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).default :colo default<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).delek :colo delek<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).denim :colo denim<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).desert :colo desert<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).desert256 :colo desert256<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).desertEx :colo desertEx<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).desertedocean :colo desertedocean<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dusk :colo dusk<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_blue :colo dw_blue<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_cyan :colo dw_cyan<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_green :colo dw_green<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_orange :colo dw_orange<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_purple :colo dw_purple<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_red :colo dw_red<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).D\ (24).dw_yellow :colo dw_yellow<CR>
|
||||
|
||||
"submenu E
|
||||
amenu &ColorSchemes.&Names\ (190).E\ (6).earth :colo earth<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).E\ (6).eclipse :colo eclipse<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).E\ (6).edo_sea :colo edo_sea<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).E\ (6).elflord :colo elflord<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).E\ (6).emacs :colo emacs<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).E\ (6).evening :colo evening<CR>
|
||||
|
||||
"submenu F
|
||||
amenu &ColorSchemes.&Names\ (190).F\ (5).fine_blue :colo fine_blue<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).F\ (5).fnaqevan :colo fnaqevan<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).F\ (5).fog :colo fog<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).F\ (5).freya :colo freya<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).F\ (5).fruit :colo fruit<CR>
|
||||
|
||||
"submenu G
|
||||
amenu &ColorSchemes.&Names\ (190).G\ (5).gobo :colo gobo<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).G\ (5).golden :colo golden<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).G\ (5).gor :colo gor<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).G\ (5).gothic :colo gothic<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).G\ (5).greyblue :colo greyblue<CR>
|
||||
|
||||
"submenu H
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).habiLight :colo habiLight<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhazure :colo hhazure<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdblue :colo hhdblue<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdcyan :colo hhdcyan<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdgray :colo hhdgray<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdgreen :colo hhdgreen<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdmagenta :colo hhdmagenta<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdred :colo hhdred<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhdyellow :colo hhdyellow<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhorange :colo hhorange<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhpink :colo hhpink<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhspring :colo hhspring<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhteal :colo hhteal<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).H\ (14).hhviolet :colo hhviolet<CR>
|
||||
|
||||
"submenu I
|
||||
amenu &ColorSchemes.&Names\ (190).I\ (4).ibmedit :colo ibmedit<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).I\ (4).impact :colo impact<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).I\ (4).*inkpot :colo inkpot<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).I\ (4).ironman :colo ironman<CR>
|
||||
|
||||
"submenu J
|
||||
amenu &ColorSchemes.&Names\ (190).J\ (2).jhdark :colo jhdark<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).J\ (2).jhlight :colo jhlight<CR>
|
||||
|
||||
"submenu K
|
||||
amenu &ColorSchemes.&Names\ (190).K\ (1).koehler :colo koehler<CR>
|
||||
|
||||
"submenu L
|
||||
amenu &ColorSchemes.&Names\ (190).L\ (4).less :colo less<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).L\ (4).lettuce :colo lettuce<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).L\ (4).lilac :colo lilac<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).L\ (4).lingodirector :colo lingodirector<CR>
|
||||
|
||||
"submenu M
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).manxome :colo manxome<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).marklar :colo marklar<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).*mars :colo mars<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).martin_krischik :colo martin_krischik<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).matrix :colo matrix<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).metacosm :colo metacosm<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).midnight :colo midnight<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).midnight2 :colo midnight2<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).mod_tcsoft :colo mod_tcsoft<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).*moria :colo moria<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).morning :colo morning<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).*motus :colo motus<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).M\ (13).murphy :colo murphy<CR>
|
||||
|
||||
"submenu N
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).*navajo :colo navajo<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).navajo-night :colo navajo-night<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).nedit :colo nedit<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).nedit2 :colo nedit2<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).neon :colo neon<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).neverness :colo neverness<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).night :colo night<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).nightshimmer :colo nightshimmer<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).nightwish :colo nightwish<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).northsky :colo northsky<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).N\ (11).nuvola :colo nuvola<CR>
|
||||
|
||||
"submenu O
|
||||
amenu &ColorSchemes.&Names\ (190).O\ (4).oceanblack :colo oceanblack<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).O\ (4).oceandeep :colo oceandeep<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).O\ (4).oceanlight :colo oceanlight<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).O\ (4).olive :colo olive<CR>
|
||||
|
||||
"submenu P
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).PapayaWhip :colo PapayaWhip<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).pablo :colo pablo<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).papayawhip :colo papayawhip<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).peachpuff :colo peachpuff<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).potts :colo potts<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).print_bw :colo print_bw<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).professional :colo professional<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).*ps_color :colo ps_color<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).psql :colo psql<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).putty :colo putty<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).pyte :colo pyte<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).P\ (12).python :colo python<CR>
|
||||
|
||||
"submenu R
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).rdark :colo rdark<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).redblack :colo redblack<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).relaxedgreen :colo relaxedgreen<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).reloaded :colo reloaded<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).revolutions :colo revolutions<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).robinhood :colo robinhood<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).R\ (7).ron :colo ron<CR>
|
||||
|
||||
"submenu S
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).sand :colo sand<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).*scite :colo scite<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).sea :colo sea<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).sean :colo sean<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).seashell :colo seashell<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).sf :colo sf<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).shine :colo shine<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).*sienna :colo sienna<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).simpleandfriendly :colo simpleandfriendly<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).slate :colo slate<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).S\ (11).softblue :colo softblue<CR>
|
||||
|
||||
"submenu T
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).*tabula :colo tabula<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).tango :colo tango<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).taqua :colo taqua<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).tcsoft :colo tcsoft<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).tibet :colo tibet<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).tolerable :colo tolerable<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).tomatosoup :colo tomatosoup<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).toothpik :colo toothpik<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).*torte :colo torte<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).transparent :colo transparent<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).T\ (11).turbo :colo turbo<CR>
|
||||
|
||||
"submenu U
|
||||
amenu &ColorSchemes.&Names\ (190).U\ (1).umber-green :colo umber-green<CR>
|
||||
|
||||
"submenu V
|
||||
amenu &ColorSchemes.&Names\ (190).V\ (4).vc :colo vc<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).V\ (4).vcbc :colo vcbc<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).V\ (4).vibrantink :colo vibrantink<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).V\ (4).*vividchalk :colo vividchalk<CR>
|
||||
|
||||
"submenu W
|
||||
amenu &ColorSchemes.&Names\ (190).W\ (3).white :colo white<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).W\ (3).whitedust :colo whitedust<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).W\ (3).wintersday :colo wintersday<CR>
|
||||
|
||||
"submenu X
|
||||
amenu &ColorSchemes.&Names\ (190).X\ (2).xemacs :colo xemacs<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).X\ (2).xian :colo xian<CR>
|
||||
|
||||
"submenu Z
|
||||
amenu &ColorSchemes.&Names\ (190).Z\ (2).zellner :colo zellner<CR>
|
||||
amenu &ColorSchemes.&Names\ (190).Z\ (2).*zenburn :colo zenburn<CR>
|
||||
|
||||
amenu &ColorSchemes.-Sep- :
|
||||
amenu &ColorSchemes.Reload\ Menu :ReloadColors<CR>
|
||||
amenu &ColorSchemes.Refresh\ Menu :RefreshColors<CR>
|
||||
|
||||
command! -nargs=0 ReloadColors call <SID>ReloadColors()
|
||||
command! -nargs=0 RefreshColors call <SID>RefreshColors()
|
||||
|
||||
if !exists("g:running_ReloadColors")
|
||||
function! <SID>ReloadColors()
|
||||
let g:running_ReloadColors = 1
|
||||
aunmenu &ColorSchemes
|
||||
execute 'source /home/marty/.vim/plugin/ColorSchemes.vim'
|
||||
unlet g:running_ReloadColors
|
||||
echomsg 'Done Reloading /home/marty/.vim/plugin/ColorSchemes.vim'
|
||||
endfunction
|
||||
endif
|
||||
if !exists("g:running_RefreshColors")
|
||||
function! <SID>RefreshColors()
|
||||
let g:running_RefreshColors = 1
|
||||
call WriteColorSchemeMenu()
|
||||
call <SID>ReloadColors()
|
||||
unlet g:running_RefreshColors
|
||||
echomsg 'Done Refreshing /home/marty/.vim/plugin/ColorSchemes.vim'
|
||||
endfunction
|
||||
endif
|
||||
@@ -1,537 +0,0 @@
|
||||
" pastie.vim: Vim plugin for pastie.caboo.se
|
||||
" Maintainer: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" URL: http://www.vim.org/scripts/script.php?script_id=1624
|
||||
" GetLatestVimScripts: 1624 1
|
||||
" $Id: pastie.vim,v 1.15 2007-12-13 16:44:26 tpope Exp $
|
||||
|
||||
" Installation:
|
||||
" Place in ~/.vim/plugin or vimfiles/plugin
|
||||
" A working ruby install is required (Vim interface not necessary).
|
||||
|
||||
" Usage:
|
||||
" :Pastie creates a new paste (example arguments shown below). Use :w to save
|
||||
" it by posting it to the server (the parser used is derived from the Vim
|
||||
" filetype). This updates the filename and stores the new url in the primary
|
||||
" selection/clipboard when successful. :Pastie! creates a paste, saves, and
|
||||
" closes the buffer, except when loading an existing paste.
|
||||
|
||||
" :Pastie Create a paste from all open windows
|
||||
" :Pastie! Create a paste from all open windows and paste it
|
||||
" :1,10Pastie Create a paste from the specified range
|
||||
" :%Pastie Use the entire current file to create a new paste
|
||||
" :Pastie foo.txt bar.txt Create a paste from foo.txt and bar.txt
|
||||
" :Pastie! foo.txt Paste directly from foo.txt
|
||||
" :Pastie a Create a paste from the "a register
|
||||
" :Pastie @ Create a paste from the default (unnamed) register
|
||||
" :Pastie * Create a paste from the primary selection/clipboard
|
||||
" :Pastie _ Create a new, blank paste
|
||||
" :768Pastie Load existing paste 768
|
||||
" :0Pastie Load the newest paste
|
||||
" :Pastie http://pastie.caboo.se/768 Load existing paste 768
|
||||
" :Pastie http://pastie.caboo.se/123456?key=... Use login from pastie bot
|
||||
|
||||
" Regardless of the command used, on the first write, this script will create
|
||||
" a new paste, and on subsequent writes, it will update the existing paste.
|
||||
" If a bang is passed to a command that load an existing paste (:768), the
|
||||
" first write will update as well. If the loaded paste was not created in the
|
||||
" same vim session, or with an account extracted from your Firefox cookies,
|
||||
" updates will almost certainly silently fail. (Advanced users can muck
|
||||
" around with g:pastie_session_id if desired).
|
||||
|
||||
" As hinted at earlier, pastie.vim will snoop around in your Firefox cookies,
|
||||
" and use an account cookie if one is found. The only way to create one of
|
||||
" these account cookies is by talking to pastie on IRC.
|
||||
|
||||
" At the shell you can directly create a new pastie with a command like
|
||||
" $ vim +Pastie
|
||||
" or, assuming no other plugins conflict
|
||||
" $ vim +Pa
|
||||
" And, to read an existing paste
|
||||
" $ vim +768Pa
|
||||
" You could even paste a file directly
|
||||
" $ vim '+Pa!~/.irbrc' +q
|
||||
" You can even edit a pastie URL directly, but this is not recommended because
|
||||
" netrw can sometimes interfere.
|
||||
|
||||
" Lines ending in #!! will be sent as lines beginning with !!. This alternate
|
||||
" format is easier to read and is less likely to interfere with code
|
||||
" execution. In Vim 7 highlighting is done with :2match (use ":2match none"
|
||||
" to disable it) and in previous versions, :match (use ":match none" to
|
||||
" disable).
|
||||
"
|
||||
" Known Issues:
|
||||
" URL sometimes disappears with the bang (:Pastie!) variant. You can still
|
||||
" retrieve it from the clipboard.
|
||||
|
||||
if exists("g:loaded_pastie") || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_pastie = 1
|
||||
|
||||
augroup pastie
|
||||
autocmd!
|
||||
autocmd BufReadPre http://pastie.caboo.se/*[0-9]?key=* call s:extractcookies(expand("<amatch>"))
|
||||
autocmd BufReadPost http://pastie.caboo.se/*[0-9]?key=* call s:PastieSwapout(expand("<amatch>"))
|
||||
autocmd BufReadPost http://pastie.caboo.se/*[0-9] call s:PastieSwapout(expand("<amatch>"))
|
||||
autocmd BufReadPost http://pastie.caboo.se/pastes/*[0-9]/download call s:PastieRead(expand("<amatch>"))
|
||||
autocmd BufReadPost http://pastie.caboo.se/*[0-9].* call s:PastieRead(expand("<amatch>"))
|
||||
autocmd BufWriteCmd http://pastie.caboo.se/pastes/*[0-9]/download call s:PastieWrite(expand("<amatch>"))
|
||||
autocmd BufWriteCmd http://pastie.caboo.se/*[0-9].* call s:PastieWrite(expand("<amatch>"))
|
||||
autocmd BufWriteCmd http://pastie.caboo.se/pastes/ call s:PastieWrite(expand("<amatch>"))
|
||||
augroup END
|
||||
|
||||
let s:domain = "pastie.caboo.se"
|
||||
|
||||
let s:dl_suffix = ".txt" " Used only for :file
|
||||
|
||||
if !exists("g:pastie_destination")
|
||||
if version >= 700
|
||||
let g:pastie_destination = 'tab'
|
||||
else
|
||||
let g:pastie_destination = 'window'
|
||||
endif
|
||||
"let g:pastie_destination = 'buffer'
|
||||
endif
|
||||
|
||||
command! -bar -bang -nargs=* -range=0 -complete=file Pastie :call s:Pastie(<bang>0,<line1>,<line2>,<count>,<f-args>)
|
||||
|
||||
function! s:Pastie(bang,line1,line2,count,...)
|
||||
if exists(":tab")
|
||||
let tabnr = tabpagenr()
|
||||
endif
|
||||
let newfile = "http://".s:domain."/pastes/"
|
||||
let loggedin = 0
|
||||
let ft = &ft
|
||||
let num = 0
|
||||
if a:0 == 0 && a:count == a:line1 && a:count > line('$')
|
||||
let num = a:count
|
||||
elseif a:0 == 0 && a:line1 == 0 && a:line2 == 0
|
||||
let num = s:latestid()
|
||||
if num == 0
|
||||
return s:error("Could not determine latest paste")
|
||||
endif
|
||||
elseif !a:count && a:0 == 1
|
||||
if a:1 == '*'
|
||||
let numcheck = @*
|
||||
elseif a:1 == '+'
|
||||
let numcheck = @+
|
||||
elseif a:1 == '@'
|
||||
let numcheck = @@
|
||||
else
|
||||
let numcheck = a:1
|
||||
endif
|
||||
let numcheck = substitute(numcheck,'\n\+$','','')
|
||||
let numcheck = substitute(numcheck,'^\n\+','','g')
|
||||
if numcheck =~ '\n'
|
||||
let numcheck = ''
|
||||
endif
|
||||
if numcheck =~ '^\d\d+$'
|
||||
let num = numcheck
|
||||
elseif numcheck =~ '\%(^\|/\)\d\+?key=\x\{8,\}'
|
||||
if exists("b:pastie_fake_login")
|
||||
unlet b:pastie_fake_login
|
||||
else
|
||||
call s:extractcookies('/'.matchstr(numcheck,'\%(^\|/\)\zs\d\+?.*'))
|
||||
endif
|
||||
if exists("g:pastie_account")
|
||||
let loggedin = 1
|
||||
endif
|
||||
let num = matchstr(numcheck,'\%(^\|/\)\zs\d\+\ze?')
|
||||
elseif numcheck =~ '\%(^\|^/\|^http://.*\)\d\+\%([/?]\|$\)'
|
||||
let num = matchstr(numcheck,'\%(^\|/\)\zs\d\+')
|
||||
endif
|
||||
endif
|
||||
if num
|
||||
call s:newwindow()
|
||||
let file = "http://".s:domain."/".num.s:dl_suffix
|
||||
silent exe 'doautocmd BufReadPre '.file
|
||||
silent exe 'read !ruby -rnet/http -e "r = Net::HTTP.get_response(\%{'.s:domain.'}, \%{/pastes/'.num.'/download}); if r.code == \%{200} then print r.body else exit 10+r.code.to_i/100 end"'
|
||||
if v:shell_error && v:shell_error != 14 && v:shell_error !=15
|
||||
return s:error("Something went wrong: shell returned ".v:shell_error)
|
||||
else
|
||||
let err = v:shell_error
|
||||
silent exe "file ".file
|
||||
1d_
|
||||
set nomodified
|
||||
call s:dobufreadpost()
|
||||
if err
|
||||
if loggedin
|
||||
let b:pastie_update = 1
|
||||
else
|
||||
echohl WarningMsg
|
||||
echo "Warning: Failed to retrieve existing paste"
|
||||
echohl None
|
||||
endif
|
||||
endif
|
||||
"call s:PastieRead(file)
|
||||
if a:bang
|
||||
" Instead of saving an identical paste, take ! to mean "do not
|
||||
" create a new paste on first save"
|
||||
let b:pastie_update = 1
|
||||
endif
|
||||
return
|
||||
endif
|
||||
elseif a:0 == 0 && !a:count && a:bang && expand("%") =~ '^http://'.s:domain.'/\d\+'
|
||||
" If the :Pastie! form is used in an existing paste, switch to
|
||||
" updating instead of creating.
|
||||
"echohl Question
|
||||
echo "Will update, not create"
|
||||
echohl None
|
||||
let b:pastie_update = 1
|
||||
return
|
||||
elseif a:0 == 1 && !a:count && a:1 =~ '^[&?]\x\{32,\}'
|
||||
" Set session id with :Pastie&deadbeefcafebabe
|
||||
let g:pastie_session_id = strpart(a:1,1)
|
||||
elseif a:0 == 1 && !a:count && (a:1 == '&' || a:1 == '?')
|
||||
" Extract session id with :Pastie&
|
||||
call s:cookies()
|
||||
if exists("g:pastie_session_id")
|
||||
echo g:pastie_session_id
|
||||
"silent! let @* = g:pastie_session_id
|
||||
endif
|
||||
elseif a:0 == 0 && !a:count && a:line1
|
||||
let ft = 'conf'
|
||||
let sum = ""
|
||||
let cnt = 0
|
||||
let keep = @"
|
||||
windo let tmp = s:grabwin() | if tmp != "" | let cnt = cnt + 1 | let sum = sum . tmp | end
|
||||
let sum = substitute(sum,'\n\+$',"\n",'')
|
||||
if cnt == 1
|
||||
let ft = matchstr(sum,'^##.\{-\} \[\zs\w*\ze\]')
|
||||
if ft != ""
|
||||
let sum = substitute(sum,'^##.\{-\} \[\w*\]\n','','')
|
||||
endif
|
||||
endif
|
||||
call s:newwindow()
|
||||
silent exe "file ".newfile
|
||||
"silent exe "doautocmd BufReadPre ".newfile
|
||||
if sum != ""
|
||||
let @" = sum
|
||||
silent $put
|
||||
1d _
|
||||
endif
|
||||
if ft == 'plaintext' || ft == 'plain_text'
|
||||
"set ft=conf
|
||||
elseif ft != '' && sum != ""
|
||||
let &ft = ft
|
||||
endif
|
||||
let @" = keep
|
||||
call s:dobufreadpost()
|
||||
else
|
||||
let keep = @"
|
||||
let args = ""
|
||||
if a:0 > 0 && a:1 =~ '^[-"@0-9a-zA-Z:.%#*+~_/]$'
|
||||
let i = 1
|
||||
let register = a:1
|
||||
else
|
||||
let i = 0
|
||||
let register = ""
|
||||
endif
|
||||
while i < a:0
|
||||
let i = i+1
|
||||
if strlen(a:{i})
|
||||
let file = fnamemodify(expand(a:{i}),':~:.')
|
||||
let args = args . file . "\n"
|
||||
endif
|
||||
endwhile
|
||||
let range = ""
|
||||
if a:count
|
||||
silent exe a:line1.",".a:line2."yank"
|
||||
let range = @"
|
||||
let @" = keep
|
||||
endif
|
||||
call s:newwindow()
|
||||
silent exe "file ".newfile
|
||||
"silent exe "doautocmd BufReadPre ".newfile
|
||||
if range != ""
|
||||
let &ft = ft
|
||||
let @" = range
|
||||
silent $put
|
||||
endif
|
||||
if register != '' && register != '_'
|
||||
"exe "let regvalue = @".register
|
||||
silent exe "$put ".(register =~ '^[@"]$' ? '' : register)
|
||||
endif
|
||||
while args != ''
|
||||
let file = matchstr(args,'^.\{-\}\ze\n')
|
||||
let args = substitute(args,'^.\{-\}\n','','')
|
||||
let @" = "## ".file." [".s:parser(file)."]\n"
|
||||
if a:0 != 1 || a:count
|
||||
silent $put
|
||||
else
|
||||
let &ft = s:filetype(file)
|
||||
endif
|
||||
silent exe "$read ".substitute(file,' ','\ ','g')
|
||||
endwhile
|
||||
let @" = keep
|
||||
1d_
|
||||
call s:dobufreadpost()
|
||||
if (a:0 + (a:count > 0)) > 1
|
||||
set ft=conf
|
||||
endif
|
||||
endif
|
||||
1
|
||||
call s:afterload()
|
||||
if a:bang
|
||||
write
|
||||
let name = bufname('%')
|
||||
" TODO: re-echo the URL in a way that doesn't disappear. Stupid Vim.
|
||||
silent! bdel
|
||||
if exists("tabnr")
|
||||
silent exe "norm! ".tabnr."gt"
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:dobufreadpost()
|
||||
if expand("%") =~ '/\d\+\.\@!'
|
||||
silent exe "doautocmd BufReadPost ".expand("%")
|
||||
else
|
||||
silent exe "doautocmd BufNewFile ".expand("%")
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:PastieSwapout(file)
|
||||
if a:file =~ '?key='
|
||||
let b:pastie_fake_login = 1
|
||||
endif
|
||||
exe "Pastie ".a:file
|
||||
endfunction
|
||||
|
||||
function! s:PastieRead(file)
|
||||
let lnum = line(".")
|
||||
silent %s/^!!\(.*\)/\1 #!!/e
|
||||
exe lnum
|
||||
set nomodified
|
||||
let num = matchstr(a:file,'/\@<!/\zs\d\+')
|
||||
let url = "http://".s:domain."/pastes/".num
|
||||
"let url = substitute(a:file,'\c/\%(download/\=\|text/\=\)\=$','','')
|
||||
let url = url."/download"
|
||||
let result = system('ruby -rnet/http -e "puts Net::HTTP.get_response(URI.parse(%{'.url.'}))[%{Content-Disposition}]"')
|
||||
let fn = matchstr(result,'filename="\zs.*\ze"')
|
||||
let &ft = s:filetype(fn)
|
||||
if &ft =~ '^\%(html\|ruby\)$' && getline(1).getline(2).getline(3) =~ '<%'
|
||||
set ft=eruby
|
||||
endif
|
||||
call s:afterload()
|
||||
endfunction
|
||||
|
||||
function! s:afterload()
|
||||
set commentstring=%s\ #!! "
|
||||
hi def link pastieIgnore Ignore
|
||||
hi def link pastieNonText NonText
|
||||
if exists(":match")
|
||||
hi def link pastieHighlight MatchParen
|
||||
if version >= 700
|
||||
2match pastieHighlight /^!!\s*.*\|^.\{-\}\ze\s*#!!\s*$/
|
||||
else
|
||||
match pastieHighlight /^!!\s*.*\|^.\{-\}\ze\s*#!!\s*$/
|
||||
endif
|
||||
else
|
||||
hi def link pastieHighlight Search
|
||||
syn match pastieHighlight '^.\{-\}\ze\s*#!!\s*$' nextgroup=pastieIgnore skipwhite
|
||||
syn region pastieHighlight start='^!!\s*' end='$' contains=pastieNonText
|
||||
endif
|
||||
syn match pastieIgnore '#!!\ze\s*$' containedin=rubyComment,rubyString
|
||||
syn match pastieNonText '^!!' containedin=rubyString
|
||||
endfunction
|
||||
|
||||
function! s:PastieWrite(file)
|
||||
let parser = s:parser(&ft)
|
||||
let tmp = tempname()
|
||||
let num = matchstr(a:file,'/\@<!/\zs\d\+')
|
||||
if num == ''
|
||||
let num = 'pastes'
|
||||
endif
|
||||
if exists("b:pastie_update") && s:cookies() != '' && num != ""
|
||||
let url = "/pastes/".num
|
||||
let method = "_method=put&"
|
||||
else
|
||||
let url = "/pastes"
|
||||
let method = ""
|
||||
endif
|
||||
if exists("b:pastie_display_name")
|
||||
let pdn = "&paste[display_name]=".s:urlencode(b:pastie_display_name)
|
||||
elseif exists("g:pastie_display_name")
|
||||
let pdn = "&paste[display_name]=".s:urlencode(g:pastie_display_name)
|
||||
else
|
||||
let pdn = ""
|
||||
endif
|
||||
silent exe "write ".tmp
|
||||
let result = ""
|
||||
let rubycmd = 'obj = Net::HTTP.start(%{'.s:domain.'}){|h|h.post(%{'.url.'}, %q{'.method.'paste[parser]='.parser.pdn.'&paste[authorization]=burger&paste[key]=&paste[body]=} + File.read(%q{'.tmp.'}).gsub(/^(.*?) *#\!\! *#{36.chr}/,%{!\!}+92.chr+%{1}).gsub(/[^a-zA-Z0-9_.-]/n) {|s| %{%%%02x} % s[0]},{%{Cookie} => %{'.s:cookies().'}})}; print obj[%{Location}].to_s+%{ }+obj[%{Set-Cookie}].to_s'
|
||||
let result = system('ruby -rnet/http -e "'.rubycmd.'"')
|
||||
let redirect = matchstr(result,'^[^ ]*')
|
||||
let cookies = matchstr(result,'^[^ ]* \zs.*')
|
||||
call s:extractcookiesfromheader(cookies)
|
||||
call delete(tmp)
|
||||
if redirect =~ '^\w\+://'
|
||||
set nomodified
|
||||
let b:pastie_update = 1
|
||||
"silent! let @+ = result
|
||||
silent! let @* = redirect
|
||||
silent exe "file ".redirect.s:dl_suffix
|
||||
" TODO: make a proper status message
|
||||
echo '"'.redirect.'" written'
|
||||
silent exe "doautocmd BufWritePost ".redirect.s:dl_suffix
|
||||
else
|
||||
if redirect == ''
|
||||
let redirect = "Could not post to ".url
|
||||
endif
|
||||
let redirect = substitute(redirect,'^-e:1:\s*','','')
|
||||
call s:error(redirect)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:error(msg)
|
||||
echohl Error
|
||||
echo a:msg
|
||||
echohl NONE
|
||||
let v:errmsg = a:msg
|
||||
endfunction
|
||||
|
||||
function! s:filetype(type)
|
||||
" Accepts a filename, extension, pastie parser, or vim filetype
|
||||
let type = tolower(substitute(a:type,'.*\.','',''))
|
||||
if type =~ '^\%(x\=html\|asp\w*\)$'
|
||||
return 'html'
|
||||
elseif type =~ '^\%(eruby\|erb\|rhtml\)$'
|
||||
return 'eruby'
|
||||
elseif type =~ '^\%(ruby\|ruby_on_rails\|rb\|rake\|builder\|rjs\|irbrc\)'
|
||||
return 'ruby'
|
||||
elseif type == 'js' || type == 'javascript'
|
||||
return 'javascript'
|
||||
elseif type == 'c' || type == 'cpp' || type == 'c++'
|
||||
return 'cpp'
|
||||
elseif type =~ '^\%(css\|diff\|java\|php\|python\|sql\|sh\|shell-unix-generic\)$'
|
||||
return type
|
||||
else
|
||||
return ''
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:parser(type)
|
||||
let type = s:filetype(a:type)
|
||||
if type == 'text' || type == ''
|
||||
return 'plain_text'
|
||||
elseif type == 'eruby'
|
||||
return 'html_rails'
|
||||
elseif type == 'ruby'
|
||||
return 'ruby_on_rails'
|
||||
elseif type == 'sh'
|
||||
return 'shell-unix-generic'
|
||||
elseif type == 'cpp'
|
||||
return 'c++'
|
||||
else
|
||||
return type
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:grabwin()
|
||||
let ft = (&ft == '' ? expand("%:e") : &ft)
|
||||
let top = "## ".expand("%:~:.")." [".s:parser(ft)."]\n"
|
||||
let keep = @"
|
||||
silent %yank
|
||||
let file = @"
|
||||
let @" = keep
|
||||
if file == "" || file == "\n"
|
||||
return ""
|
||||
else
|
||||
return top.file."\n"
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:cookies()
|
||||
if exists("g:pastie_session_id")
|
||||
let cookies = "_pastie_session_id=".g:pastie_session_id
|
||||
else
|
||||
call s:extractcookies('/')
|
||||
if !exists("g:pastie_session_id")
|
||||
if !exists("s:session_warning")
|
||||
echohl WarningMsg
|
||||
echo "Warning: could not extract session id"
|
||||
let s:session_warning = 1
|
||||
echohl NONE
|
||||
endif
|
||||
let cookies = ""
|
||||
else
|
||||
let cookies = "_pastie_session_id=".g:pastie_session_id
|
||||
endif
|
||||
endif
|
||||
if !exists("g:pastie_account")
|
||||
let rubycmd = '%w(~/.mozilla/firefox ~/.firefox/default ~/.phoenix/default ~/Application\ Data/Mozilla/Firefox/Profiles ~/Library/Application\ Support/Firefox/Profiles)'
|
||||
let rubycmd = rubycmd . '.each {|dir| Dir[File.join(File.expand_path(dir),%{*})].select {|p| File.exists?(File.join(p,%{cookies.txt}))}.each {|p| File.open(File.join(p,%{cookies.txt})).each_line { |l| a=l.split(9.chr); puts [a[4],a[6]].join(%{ }) if a[0] =~ /pastie\.caboo\.se#{36.chr}/ && Time.now.to_i < a[4].to_i && a[5] == %{account} }}}'
|
||||
let output = ''
|
||||
let output = system('ruby -e "'.rubycmd.'"')
|
||||
if output =~ '\n' && output !~ '-e:'
|
||||
let output = substitute(output,'\n.*','','')
|
||||
let g:pastie_account = matchstr(output,' \zs.*')
|
||||
let g:pastie_account_expires = matchstr(output,'.\{-\}\ze ')
|
||||
else
|
||||
let g:pastie_account = ''
|
||||
endif
|
||||
endif
|
||||
if exists("g:pastie_account") && g:pastie_account != ""
|
||||
" You cannot set this arbitrarily, it must be a valid cookie
|
||||
let cookies = cookies . (cookies == "" ? "" : "; ")
|
||||
let cookies = cookies . 'account='.substitute(g:pastie_account,':','%3A','g')
|
||||
endif
|
||||
return cookies
|
||||
endfunction
|
||||
|
||||
function! s:extractcookies(path)
|
||||
let path = substitute(a:path,'\c^http://'.s:domain,'','')
|
||||
if path !~ '^/'
|
||||
let path = '/'.path
|
||||
endif
|
||||
let cookie = system('ruby -rnet/http -e "print Net::HTTP.get_response(%{'.s:domain.'},%{'.path.'})[%{Set-Cookie}]"')
|
||||
if exists("g:pastie_debug")
|
||||
let g:pastie_cookies_path = path
|
||||
let g:pastie_cookies = cookie
|
||||
endif
|
||||
return s:extractcookiesfromheader(cookie)
|
||||
endfunction
|
||||
|
||||
function! s:extractcookiesfromheader(cookie)
|
||||
let cookie = a:cookie
|
||||
if cookie !~ '-e:'
|
||||
let session_id = matchstr(cookie,'\<_pastie_session_id=\zs.\{-\}\ze\%([;,]\|$\)')
|
||||
let account = matchstr(cookie,'\<account=\zs.\{-\}\ze\%([;,]\|$\)')
|
||||
if session_id != ""
|
||||
let g:pastie_session_id = session_id
|
||||
endif
|
||||
if account != ""
|
||||
let g:pastie_account = account
|
||||
let time = matchstr(cookie,'\<[Ee]xpires=\zs\w\w\w,.\{-\}\ze\%([;,]\|$\)')
|
||||
if time != ""
|
||||
let g:pastie_account_expires = system('ruby -e "print Time.parse(%{'.time.'}).to_i"')
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:latestid()
|
||||
return system('ruby -rnet/http -e "print Net::HTTP.get_response(URI.parse(%{http://'.s:domain.'/all})).body.match(%r{<a href=.http://'.s:domain.'/(\d+).>View})[1]"')
|
||||
endfunction
|
||||
|
||||
function! s:urlencode(str)
|
||||
" Vim 6.2, how did we ever live with you?
|
||||
return substitute(substitute(a:str,"[\001-\037%&?=\\\\]",'\="%".printf("%02X",char2nr(submatch(0)))','g'),' ','%20','g')
|
||||
endfunction
|
||||
|
||||
function! s:newwindow()
|
||||
if !(&modified) && (expand("%") == '' || (version >= 700 && winnr("$") == 1 && tabpagenr("$") == 1))
|
||||
enew
|
||||
else
|
||||
if g:pastie_destination == 'tab'
|
||||
tabnew
|
||||
elseif g:pastie_destination == 'window'
|
||||
new
|
||||
else
|
||||
enew
|
||||
endif
|
||||
endif
|
||||
setlocal noswapfile
|
||||
endfunction
|
||||
|
||||
" vim:set sw=4 sts=4 et:
|
||||
@@ -1,72 +0,0 @@
|
||||
" repeat.vim - Let the repeat command repeat plugin maps
|
||||
" Maintainer: Tim Pope
|
||||
" Version: 1.0
|
||||
|
||||
" Installation:
|
||||
" Place in either ~/.vim/plugin/repeat.vim (to load at start up) or
|
||||
" ~/.vim/autoload/repeat.vim (to load automatically as needed).
|
||||
"
|
||||
" Developers:
|
||||
" Basic usage is as follows:
|
||||
"
|
||||
" silent! call repeat#set("\<Plug>MappingToRepeatCommand",3)
|
||||
"
|
||||
" The first argument is the mapping that will be invoked when the |.| key is
|
||||
" pressed. Typically, it will be the same as the mapping the user invoked.
|
||||
" This sequence will be stuffed into the input queue literally. Thus you must
|
||||
" encode special keys by prefixing them with a backslash inside double quotes.
|
||||
"
|
||||
" The second argument is the default count. This is the number that will be
|
||||
" prefixed to the mapping if no explicit numeric argument was given. The
|
||||
" value of the v:count variable is usually correct and it will be used if the
|
||||
" second parameter is omitted. If your mapping doesn't accept a numeric
|
||||
" argument and you never want to receive one, pass a value of -1.
|
||||
"
|
||||
" Make sure to call the repeat#set function _after_ making changes to the
|
||||
" file.
|
||||
|
||||
if exists("g:loaded_repeat") || &cp || v:version < 700
|
||||
finish
|
||||
endif
|
||||
let g:loaded_repeat = 1
|
||||
|
||||
let g:repeat_tick = -1
|
||||
|
||||
function! repeat#set(sequence,...)
|
||||
silent exe "norm! \"=''\<CR>p"
|
||||
let g:repeat_sequence = a:sequence
|
||||
let g:repeat_count = a:0 ? a:1 : v:count
|
||||
let g:repeat_tick = b:changedtick
|
||||
endfunction
|
||||
|
||||
function! s:repeat(count)
|
||||
if g:repeat_tick == b:changedtick
|
||||
let c = g:repeat_count
|
||||
let s = g:repeat_sequence
|
||||
let cnt = c == -1 ? "" : (a:count ? a:count : (c ? c : ''))
|
||||
call feedkeys(cnt . s)
|
||||
else
|
||||
call feedkeys((a:count ? a:count : '') . '.', 'n')
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:wrap(command,count)
|
||||
let preserve = (g:repeat_tick == b:changedtick)
|
||||
exe 'norm! '.(a:count ? a:count : '').a:command
|
||||
if preserve
|
||||
let g:repeat_tick = b:changedtick
|
||||
endif
|
||||
endfunction
|
||||
|
||||
nnoremap <silent> . :<C-U>call <SID>repeat(v:count)<CR>
|
||||
nnoremap <silent> u :<C-U>call <SID>wrap('u',v:count)<CR>
|
||||
nnoremap <silent> U :<C-U>call <SID>wrap('U',v:count)<CR>
|
||||
nnoremap <silent> <C-R> :<C-U>call <SID>wrap("\<Lt>C-R>",v:count)<CR>
|
||||
|
||||
augroup repeatPlugin
|
||||
autocmd!
|
||||
autocmd BufLeave,BufWritePre,BufReadPre * let g:repeat_tick = (g:repeat_tick == b:changedtick || g:repeat_tick == 0) ? 0 : -1
|
||||
autocmd BufEnter,BufWritePost * if g:repeat_tick == 0|let g:repeat_tick = b:changedtick|endif
|
||||
augroup END
|
||||
|
||||
" vim:set ft=vim et sw=4 sts=4:
|
||||
@@ -1,630 +0,0 @@
|
||||
" surround.vim - Surroundings
|
||||
" Author: Tim Pope <vimNOSPAM@tpope.info>
|
||||
" GetLatestVimScripts: 1697 1 :AutoInstall: surround.vim
|
||||
" $Id: surround.vim,v 1.33 2008-02-04 03:50:46 tpope Exp $
|
||||
"
|
||||
" See surround.txt for help. This can be accessed by doing
|
||||
"
|
||||
" :helptags ~/.vim/doc
|
||||
" :help surround
|
||||
"
|
||||
" Licensed under the same terms as Vim itself.
|
||||
|
||||
" ============================================================================
|
||||
|
||||
" Exit quickly when:
|
||||
" - this plugin was already loaded or disabled
|
||||
" - when 'compatible' is set
|
||||
if (exists("g:loaded_surround") && g:loaded_surround) || &cp
|
||||
finish
|
||||
endif
|
||||
let g:loaded_surround = 1
|
||||
|
||||
let s:cpo_save = &cpo
|
||||
set cpo&vim
|
||||
|
||||
" Input functions {{{1
|
||||
|
||||
function! s:getchar()
|
||||
let c = getchar()
|
||||
if c =~ '^\d\+$'
|
||||
let c = nr2char(c)
|
||||
endif
|
||||
return c
|
||||
endfunction
|
||||
|
||||
function! s:inputtarget()
|
||||
let c = s:getchar()
|
||||
while c =~ '^\d\+$'
|
||||
let c = c . s:getchar()
|
||||
endwhile
|
||||
if c == " "
|
||||
let c = c . s:getchar()
|
||||
endif
|
||||
if c =~ "\<Esc>\|\<C-C>\|\0"
|
||||
return ""
|
||||
else
|
||||
return c
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:inputreplacement()
|
||||
"echo '-- SURROUND --'
|
||||
let c = s:getchar()
|
||||
if c == " "
|
||||
let c = c . s:getchar()
|
||||
endif
|
||||
if c =~ "\<Esc>" || c =~ "\<C-C>"
|
||||
return ""
|
||||
else
|
||||
return c
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:beep()
|
||||
exe "norm! \<Esc>"
|
||||
return ""
|
||||
endfunction
|
||||
|
||||
function! s:redraw()
|
||||
redraw
|
||||
return ""
|
||||
endfunction
|
||||
|
||||
" }}}1
|
||||
|
||||
" Wrapping functions {{{1
|
||||
|
||||
function! s:extractbefore(str)
|
||||
if a:str =~ '\r'
|
||||
return matchstr(a:str,'.*\ze\r')
|
||||
else
|
||||
return matchstr(a:str,'.*\ze\n')
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:extractafter(str)
|
||||
if a:str =~ '\r'
|
||||
return matchstr(a:str,'\r\zs.*')
|
||||
else
|
||||
return matchstr(a:str,'\n\zs.*')
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:repeat(str,count)
|
||||
let cnt = a:count
|
||||
let str = ""
|
||||
while cnt > 0
|
||||
let str = str . a:str
|
||||
let cnt = cnt - 1
|
||||
endwhile
|
||||
return str
|
||||
endfunction
|
||||
|
||||
function! s:fixindent(str,spc)
|
||||
let str = substitute(a:str,'\t',s:repeat(' ',&sw),'g')
|
||||
let spc = substitute(a:spc,'\t',s:repeat(' ',&sw),'g')
|
||||
let str = substitute(str,'\(\n\|\%^\).\@=','\1'.spc,'g')
|
||||
if ! &et
|
||||
let str = substitute(str,'\s\{'.&ts.'\}',"\t",'g')
|
||||
endif
|
||||
return str
|
||||
endfunction
|
||||
|
||||
function! s:process(string)
|
||||
let i = 0
|
||||
while i < 7
|
||||
let i = i + 1
|
||||
let repl_{i} = ''
|
||||
let m = matchstr(a:string,nr2char(i).'.\{-\}\ze'.nr2char(i))
|
||||
if m != ''
|
||||
let m = substitute(strpart(m,1),'\r.*','','')
|
||||
let repl_{i} = input(substitute(m,':\s*$','','').': ')
|
||||
endif
|
||||
endwhile
|
||||
let s = ""
|
||||
let i = 0
|
||||
while i < strlen(a:string)
|
||||
let char = strpart(a:string,i,1)
|
||||
if char2nr(char) < 8
|
||||
let next = stridx(a:string,char,i+1)
|
||||
if next == -1
|
||||
let s = s . char
|
||||
else
|
||||
let insertion = repl_{char2nr(char)}
|
||||
let subs = strpart(a:string,i+1,next-i-1)
|
||||
let subs = matchstr(subs,'\r.*')
|
||||
while subs =~ '^\r.*\r'
|
||||
let sub = matchstr(subs,"^\r\\zs[^\r]*\r[^\r]*")
|
||||
let subs = strpart(subs,strlen(sub)+1)
|
||||
let r = stridx(sub,"\r")
|
||||
let insertion = substitute(insertion,strpart(sub,0,r),strpart(sub,r+1),'')
|
||||
endwhile
|
||||
let s = s . insertion
|
||||
let i = next
|
||||
endif
|
||||
else
|
||||
let s = s . char
|
||||
endif
|
||||
let i = i + 1
|
||||
endwhile
|
||||
return s
|
||||
endfunction
|
||||
|
||||
function! s:wrap(string,char,type,...)
|
||||
let keeper = a:string
|
||||
let newchar = a:char
|
||||
let type = a:type
|
||||
let linemode = type ==# 'V' ? 1 : 0
|
||||
let special = a:0 ? a:1 : 0
|
||||
let before = ""
|
||||
let after = ""
|
||||
if type == "V"
|
||||
let initspaces = matchstr(keeper,'\%^\s*')
|
||||
else
|
||||
let initspaces = matchstr(getline('.'),'\%^\s*')
|
||||
endif
|
||||
" Duplicate b's are just placeholders (removed)
|
||||
let pairs = "b()B{}r[]a<>"
|
||||
let extraspace = ""
|
||||
if newchar =~ '^ '
|
||||
let newchar = strpart(newchar,1)
|
||||
let extraspace = ' '
|
||||
endif
|
||||
let idx = stridx(pairs,newchar)
|
||||
if newchar == ' '
|
||||
let before = ''
|
||||
let after = ''
|
||||
elseif exists("b:surround_".char2nr(newchar))
|
||||
let all = s:process(b:surround_{char2nr(newchar)})
|
||||
let before = s:extractbefore(all)
|
||||
let after = s:extractafter(all)
|
||||
elseif exists("g:surround_".char2nr(newchar))
|
||||
let all = s:process(g:surround_{char2nr(newchar)})
|
||||
let before = s:extractbefore(all)
|
||||
let after = s:extractafter(all)
|
||||
elseif newchar ==# "p"
|
||||
let before = "\n"
|
||||
let after = "\n\n"
|
||||
elseif newchar =~# "[tT\<C-T><,]"
|
||||
let dounmapp = 0
|
||||
let dounmapb = 0
|
||||
if !maparg(">","c")
|
||||
let dounmapb= 1
|
||||
" Hide from AsNeeded
|
||||
exe "cn"."oremap > <CR>"
|
||||
exe "cn"."oremap % %<C-V>"
|
||||
"cm ap > <C-R>=getcmdline() =~ '^[^%?].*[%?]$' ? "\026\076" : "\026\076\015"<CR>
|
||||
endif
|
||||
let default = ""
|
||||
if !maparg("%","c")
|
||||
" This is to help when typing things like
|
||||
" <a href="/images/<%= @image.filename %>">
|
||||
" The downside is it breaks backspace, so lets disable it for now
|
||||
"let dounmapp= 1
|
||||
"exe "cn"."oremap % %<C-V>"
|
||||
endif
|
||||
if newchar ==# "T"
|
||||
if !exists("s:lastdel")
|
||||
let s:lastdel = ""
|
||||
endif
|
||||
let default = matchstr(s:lastdel,'<\zs.\{-\}\ze>')
|
||||
endif
|
||||
let tag = input("<",default)
|
||||
echo "<".substitute(tag,'>*$','>','')
|
||||
"if dounmapr
|
||||
"silent! cunmap <CR>
|
||||
"endif
|
||||
if dounmapb
|
||||
silent! cunmap >
|
||||
endif
|
||||
if dounmapp
|
||||
silent! cunmap %
|
||||
endif
|
||||
if tag != ""
|
||||
let tag = substitute(tag,'>*$','','')
|
||||
let before = '<'.tag.'>'
|
||||
if tag =~ '/$'
|
||||
let after = ''
|
||||
else
|
||||
let after = '</'.substitute(tag,' .*','','').'>'
|
||||
endif
|
||||
if newchar == "\<C-T>" || newchar == ","
|
||||
if type ==# "v" || type ==# "V"
|
||||
let before = before . "\n\t"
|
||||
endif
|
||||
if type ==# "v"
|
||||
let after = "\n". after
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
elseif newchar ==# 'l' || newchar == '\'
|
||||
" LaTeX
|
||||
let env = input('\begin{')
|
||||
let env = '{' . env
|
||||
let env = env . s:closematch(env)
|
||||
echo '\begin'.env
|
||||
if env != ""
|
||||
let before = '\begin'.env
|
||||
let after = '\end'.matchstr(env,'[^}]*').'}'
|
||||
endif
|
||||
"if type ==# 'v' || type ==# 'V'
|
||||
"let before = before ."\n\t"
|
||||
"endif
|
||||
"if type ==# 'v'
|
||||
"let after = "\n".initspaces.after
|
||||
"endif
|
||||
elseif newchar ==# 'f' || newchar ==# 'F'
|
||||
let fnc = input('function: ')
|
||||
if fnc != ""
|
||||
let before = substitute(fnc,'($','','').'('
|
||||
let after = ')'
|
||||
if newchar ==# 'F'
|
||||
let before = before . ' '
|
||||
let after = ' ' . after
|
||||
endif
|
||||
endif
|
||||
elseif idx >= 0
|
||||
let spc = (idx % 3) == 1 ? " " : ""
|
||||
let idx = idx / 3 * 3
|
||||
let before = strpart(pairs,idx+1,1) . spc
|
||||
let after = spc . strpart(pairs,idx+2,1)
|
||||
elseif newchar == "\<C-[>" || newchar == "\<C-]>"
|
||||
let before = "{\n\t"
|
||||
let after = "\n}"
|
||||
elseif newchar !~ '\a'
|
||||
let before = newchar
|
||||
let after = newchar
|
||||
else
|
||||
let before = ''
|
||||
let after = ''
|
||||
endif
|
||||
"let before = substitute(before,'\n','\n'.initspaces,'g')
|
||||
let after = substitute(after ,'\n','\n'.initspaces,'g')
|
||||
"let after = substitute(after,"\n\\s*\<C-U>\\s*",'\n','g')
|
||||
if type ==# 'V' || (special && type ==# "v")
|
||||
let before = substitute(before,' \+$','','')
|
||||
let after = substitute(after ,'^ \+','','')
|
||||
if after !~ '^\n'
|
||||
let after = initspaces.after
|
||||
endif
|
||||
if keeper !~ '\n$' && after !~ '^\n'
|
||||
let keeper = keeper . "\n"
|
||||
elseif keeper =~ '\n$' && after =~ '^\n'
|
||||
let after = strpart(after,1)
|
||||
endif
|
||||
if before !~ '\n\s*$'
|
||||
let before = before . "\n"
|
||||
if special
|
||||
let before = before . "\t"
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
if type ==# 'V'
|
||||
let before = initspaces.before
|
||||
endif
|
||||
if before =~ '\n\s*\%$'
|
||||
if type ==# 'v'
|
||||
let keeper = initspaces.keeper
|
||||
endif
|
||||
let padding = matchstr(before,'\n\zs\s\+\%$')
|
||||
let before = substitute(before,'\n\s\+\%$','\n','')
|
||||
let keeper = s:fixindent(keeper,padding)
|
||||
endif
|
||||
if type ==# 'V'
|
||||
let keeper = before.keeper.after
|
||||
elseif type =~ "^\<C-V>"
|
||||
" Really we should be iterating over the buffer
|
||||
let repl = substitute(before,'[\\~]','\\&','g').'\1'.substitute(after,'[\\~]','\\&','g')
|
||||
let repl = substitute(repl,'\n',' ','g')
|
||||
let keeper = substitute(keeper."\n",'\(.\{-\}\)\('.(special ? '\s\{-\}' : '').'\n\)',repl.'\n','g')
|
||||
let keeper = substitute(keeper,'\n\%$','','')
|
||||
else
|
||||
let keeper = before.extraspace.keeper.extraspace.after
|
||||
endif
|
||||
return keeper
|
||||
endfunction
|
||||
|
||||
function! s:wrapreg(reg,char,...)
|
||||
let orig = getreg(a:reg)
|
||||
let type = substitute(getregtype(a:reg),'\d\+$','','')
|
||||
let special = a:0 ? a:1 : 0
|
||||
let new = s:wrap(orig,a:char,type,special)
|
||||
call setreg(a:reg,new,type)
|
||||
endfunction
|
||||
" }}}1
|
||||
|
||||
function! s:insert(...) " {{{1
|
||||
" Optional argument causes the result to appear on 3 lines, not 1
|
||||
"call inputsave()
|
||||
let linemode = a:0 ? a:1 : 0
|
||||
let char = s:inputreplacement()
|
||||
while char == "\<CR>" || char == "\<C-S>"
|
||||
" TODO: use total count for additional blank lines
|
||||
let linemode = linemode + 1
|
||||
let char = s:inputreplacement()
|
||||
endwhile
|
||||
"call inputrestore()
|
||||
if char == ""
|
||||
return ""
|
||||
endif
|
||||
"call inputsave()
|
||||
let cb_save = &clipboard
|
||||
let reg_save = @@
|
||||
call setreg('"',"\r",'v')
|
||||
call s:wrapreg('"',char,linemode)
|
||||
" If line mode is used and the surrounding consists solely of a suffix,
|
||||
" remove the initial newline. This fits a use case of mine but is a
|
||||
" little inconsistent. Is there anyone that would prefer the simpler
|
||||
" behavior of just inserting the newline?
|
||||
if linemode && match(getreg('"'),'^\n\s*\zs.*') == 0
|
||||
call setreg('"',matchstr(getreg('"'),'^\n\s*\zs.*'),getregtype('"'))
|
||||
endif
|
||||
" This can be used to append a placeholder to the end
|
||||
if exists("g:surround_insert_tail")
|
||||
call setreg('"',g:surround_insert_tail,"a".getregtype('"'))
|
||||
endif
|
||||
"if linemode
|
||||
"call setreg('"',substitute(getreg('"'),'^\s\+','',''),'c')
|
||||
"endif
|
||||
if col('.') >= col('$')
|
||||
norm! ""p
|
||||
else
|
||||
norm! ""P
|
||||
endif
|
||||
if linemode
|
||||
call s:reindent()
|
||||
endif
|
||||
norm! `]
|
||||
call search('\r','bW')
|
||||
let @@ = reg_save
|
||||
let &clipboard = cb_save
|
||||
return "\<Del>"
|
||||
endfunction " }}}1
|
||||
|
||||
function! s:reindent() " {{{1
|
||||
if exists("b:surround_indent") ? b:surround_indent : (exists("g:surround_indent") && g:surround_indent)
|
||||
silent norm! '[=']
|
||||
endif
|
||||
endfunction " }}}1
|
||||
|
||||
function! s:dosurround(...) " {{{1
|
||||
let scount = v:count1
|
||||
let char = (a:0 ? a:1 : s:inputtarget())
|
||||
let spc = ""
|
||||
if char =~ '^\d\+'
|
||||
let scount = scount * matchstr(char,'^\d\+')
|
||||
let char = substitute(char,'^\d\+','','')
|
||||
endif
|
||||
if char =~ '^ '
|
||||
let char = strpart(char,1)
|
||||
let spc = 1
|
||||
endif
|
||||
if char == 'a'
|
||||
let char = '>'
|
||||
endif
|
||||
if char == 'r'
|
||||
let char = ']'
|
||||
endif
|
||||
let newchar = ""
|
||||
if a:0 > 1
|
||||
let newchar = a:2
|
||||
if newchar == "\<Esc>" || newchar == "\<C-C>" || newchar == ""
|
||||
return s:beep()
|
||||
endif
|
||||
endif
|
||||
let cb_save = &clipboard
|
||||
set clipboard-=unnamed
|
||||
let append = ""
|
||||
let original = getreg('"')
|
||||
let otype = getregtype('"')
|
||||
call setreg('"',"")
|
||||
let strcount = (scount == 1 ? "" : scount)
|
||||
if char == '/'
|
||||
exe 'norm '.strcount.'[/d'.strcount.']/'
|
||||
else
|
||||
exe 'norm d'.strcount.'i'.char
|
||||
" One character backwards
|
||||
if getreg('"') != ""
|
||||
call search('.','bW')
|
||||
endif
|
||||
endif
|
||||
let keeper = getreg('"')
|
||||
let okeeper = keeper " for reindent below
|
||||
if keeper == ""
|
||||
call setreg('"',original,otype)
|
||||
let &clipboard = cb_save
|
||||
return ""
|
||||
endif
|
||||
let oldline = getline('.')
|
||||
let oldlnum = line('.')
|
||||
if char ==# "p"
|
||||
call setreg('"','','V')
|
||||
elseif char ==# "s" || char ==# "w" || char ==# "W"
|
||||
" Do nothing
|
||||
call setreg('"','')
|
||||
elseif char =~ "[\"'`]"
|
||||
exe "norm! a \<Esc>d2i".char
|
||||
call setreg('"',substitute(getreg('"'),' ','',''))
|
||||
elseif char == '/'
|
||||
norm! "_x
|
||||
call setreg('"','/**/',"c")
|
||||
let keeper = substitute(substitute(keeper,'^/\*\s\=','',''),'\s\=\*$','','')
|
||||
else
|
||||
exe "norm da".char
|
||||
endif
|
||||
let removed = getreg('"')
|
||||
let rem2 = substitute(removed,'\n.*','','')
|
||||
let oldhead = strpart(oldline,0,strlen(oldline)-strlen(rem2))
|
||||
let oldtail = strpart(oldline, strlen(oldline)-strlen(rem2))
|
||||
let regtype = getregtype('"')
|
||||
if char =~# '[\[({<T]' || spc
|
||||
let keeper = substitute(keeper,'^\s\+','','')
|
||||
let keeper = substitute(keeper,'\s\+$','','')
|
||||
endif
|
||||
if col("']") == col("$") && col('.') + 1 == col('$')
|
||||
if oldhead =~# '^\s*$' && a:0 < 2
|
||||
let keeper = substitute(keeper,'\%^\n'.oldhead.'\(\s*.\{-\}\)\n\s*\%$','\1','')
|
||||
endif
|
||||
let pcmd = "p"
|
||||
else
|
||||
let pcmd = "P"
|
||||
endif
|
||||
if line('.') < oldlnum && regtype ==# "V"
|
||||
let pcmd = "p"
|
||||
endif
|
||||
call setreg('"',keeper,regtype)
|
||||
if newchar != ""
|
||||
call s:wrapreg('"',newchar)
|
||||
endif
|
||||
silent exe 'norm! ""'.pcmd.'`['
|
||||
if removed =~ '\n' || okeeper =~ '\n' || getreg('"') =~ '\n'
|
||||
call s:reindent()
|
||||
endif
|
||||
if getline('.') =~ '^\s\+$' && keeper =~ '^\s*\n'
|
||||
silent norm! cc
|
||||
endif
|
||||
call setreg('"',removed,regtype)
|
||||
let s:lastdel = removed
|
||||
let &clipboard = cb_save
|
||||
if newchar == ""
|
||||
silent! call repeat#set("\<Plug>Dsurround".char,scount)
|
||||
else
|
||||
silent! call repeat#set("\<Plug>Csurround".char.newchar,scount)
|
||||
endif
|
||||
endfunction " }}}1
|
||||
|
||||
function! s:changesurround() " {{{1
|
||||
let a = s:inputtarget()
|
||||
if a == ""
|
||||
return s:beep()
|
||||
endif
|
||||
let b = s:inputreplacement()
|
||||
if b == ""
|
||||
return s:beep()
|
||||
endif
|
||||
call s:dosurround(a,b)
|
||||
endfunction " }}}1
|
||||
|
||||
function! s:opfunc(type,...) " {{{1
|
||||
let char = s:inputreplacement()
|
||||
if char == ""
|
||||
return s:beep()
|
||||
endif
|
||||
let reg = '"'
|
||||
let sel_save = &selection
|
||||
let &selection = "inclusive"
|
||||
let cb_save = &clipboard
|
||||
set clipboard-=unnamed
|
||||
let reg_save = getreg(reg)
|
||||
let reg_type = getregtype(reg)
|
||||
"call setreg(reg,"\n","c")
|
||||
let type = a:type
|
||||
if a:type == "char"
|
||||
silent exe 'norm! v`[o`]"'.reg.'y'
|
||||
let type = 'v'
|
||||
elseif a:type == "line"
|
||||
silent exe 'norm! `[V`]"'.reg.'y'
|
||||
let type = 'V'
|
||||
elseif a:type ==# "v" || a:type ==# "V" || a:type ==# "\<C-V>"
|
||||
silent exe 'norm! gv"'.reg.'y'
|
||||
elseif a:type =~ '^\d\+$'
|
||||
let type = 'v'
|
||||
silent exe 'norm! ^v'.a:type.'$h"'.reg.'y'
|
||||
if mode() == 'v'
|
||||
norm! v
|
||||
return s:beep()
|
||||
endif
|
||||
else
|
||||
let &selection = sel_save
|
||||
let &clipboard = cb_save
|
||||
return s:beep()
|
||||
endif
|
||||
let keeper = getreg(reg)
|
||||
if type == "v" && a:type != "v"
|
||||
let append = matchstr(keeper,'\_s\@<!\s*$')
|
||||
let keeper = substitute(keeper,'\_s\@<!\s*$','','')
|
||||
endif
|
||||
call setreg(reg,keeper,type)
|
||||
call s:wrapreg(reg,char,a:0)
|
||||
if type == "v" && a:type != "v" && append != ""
|
||||
call setreg(reg,append,"ac")
|
||||
endif
|
||||
silent exe 'norm! gv'.(reg == '"' ? '' : '"' . reg).'p`['
|
||||
if type == 'V' || (getreg(reg) =~ '\n' && type == 'v')
|
||||
call s:reindent()
|
||||
endif
|
||||
call setreg(reg,reg_save,reg_type)
|
||||
let &selection = sel_save
|
||||
let &clipboard = cb_save
|
||||
if a:type =~ '^\d\+$'
|
||||
silent! call repeat#set("\<Plug>Y".(a:0 ? "S" : "s")."surround".char,a:type)
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! s:opfunc2(arg)
|
||||
call s:opfunc(a:arg,1)
|
||||
endfunction " }}}1
|
||||
|
||||
function! s:closematch(str) " {{{1
|
||||
" Close an open (, {, [, or < on the command line.
|
||||
let tail = matchstr(a:str,'.[^\[\](){}<>]*$')
|
||||
if tail =~ '^\[.\+'
|
||||
return "]"
|
||||
elseif tail =~ '^(.\+'
|
||||
return ")"
|
||||
elseif tail =~ '^{.\+'
|
||||
return "}"
|
||||
elseif tail =~ '^<.+'
|
||||
return ">"
|
||||
else
|
||||
return ""
|
||||
endif
|
||||
endfunction " }}}1
|
||||
|
||||
nnoremap <silent> <Plug>Dsurround :<C-U>call <SID>dosurround(<SID>inputtarget())<CR>
|
||||
nnoremap <silent> <Plug>Csurround :<C-U>call <SID>changesurround()<CR>
|
||||
nnoremap <silent> <Plug>Yssurround :<C-U>call <SID>opfunc(v:count1)<CR>
|
||||
nnoremap <silent> <Plug>YSsurround :<C-U>call <SID>opfunc2(v:count1)<CR>
|
||||
" <C-U> discards the numerical argument but there's not much we can do with it
|
||||
nnoremap <silent> <Plug>Ysurround :<C-U>set opfunc=<SID>opfunc<CR>g@
|
||||
nnoremap <silent> <Plug>YSurround :<C-U>set opfunc=<SID>opfunc2<CR>g@
|
||||
vnoremap <silent> <Plug>Vsurround :<C-U>call <SID>opfunc(visualmode())<CR>
|
||||
vnoremap <silent> <Plug>VSurround :<C-U>call <SID>opfunc2(visualmode())<CR>
|
||||
inoremap <silent> <Plug>Isurround <C-R>=<SID>insert()<CR>
|
||||
inoremap <silent> <Plug>ISurround <C-R>=<SID>insert(1)<CR>
|
||||
|
||||
if !exists("g:surround_no_mappings") || ! g:surround_no_mappings
|
||||
nmap ds <Plug>Dsurround
|
||||
nmap cs <Plug>Csurround
|
||||
nmap ys <Plug>Ysurround
|
||||
nmap yS <Plug>YSurround
|
||||
nmap yss <Plug>Yssurround
|
||||
nmap ySs <Plug>YSsurround
|
||||
nmap ySS <Plug>YSsurround
|
||||
if !hasmapto("<Plug>Vsurround","v")
|
||||
if exists(":xmap")
|
||||
xmap s <Plug>Vsurround
|
||||
else
|
||||
vmap s <Plug>Vsurround
|
||||
endif
|
||||
endif
|
||||
if !hasmapto("<Plug>VSurround","v")
|
||||
if exists(":xmap")
|
||||
xmap S <Plug>VSurround
|
||||
else
|
||||
vmap S <Plug>VSurround
|
||||
endif
|
||||
endif
|
||||
if !hasmapto("<Plug>Isurround","i") && "" == mapcheck("<C-S>","i")
|
||||
imap <C-S> <Plug>Isurround
|
||||
endif
|
||||
imap <C-G>s <Plug>Isurround
|
||||
imap <C-G>S <Plug>ISurround
|
||||
"Implemented internally instead
|
||||
"imap <C-S><C-S> <Plug>ISurround
|
||||
endif
|
||||
|
||||
let &cpo = s:cpo_save
|
||||
|
||||
" vim:set ft=vim sw=4 sts=4 et:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,191 +0,0 @@
|
||||
" Vim default schemes
|
||||
amenu T&hemes.D&efault.Blue :colo blue<CR>
|
||||
amenu T&hemes.D&efault.DarkBlue :colo darkblue<CR>
|
||||
amenu T&hemes.D&efault.Default :colo default<CR>
|
||||
amenu T&hemes.D&efault.Delek :colo delek<CR>
|
||||
amenu T&hemes.D&efault.Desert :colo desert<CR>
|
||||
amenu T&hemes.D&efault.ElfLord :colo elflord<CR>
|
||||
amenu T&hemes.D&efault.Evening :colo evening<CR>
|
||||
amenu T&hemes.D&efault.Koehler :colo koehler<CR>
|
||||
amenu T&hemes.D&efault.Morning :colo morning<CR>
|
||||
amenu T&hemes.D&efault.Murphy :colo murphy<CR>
|
||||
amenu T&hemes.D&efault.Pablo :colo pablo<CR>
|
||||
amenu T&hemes.D&efault.PeachPuff :colo peachpuff<CR>
|
||||
amenu T&hemes.D&efault.Ron :colo ron<CR>
|
||||
amenu T&hemes.D&efault.Shine :colo shine<CR>
|
||||
amenu T&hemes.D&efault.Torte :colo torte<CR>
|
||||
|
||||
amenu T&hemes.-s1- :
|
||||
|
||||
" Recommended Themes
|
||||
amenu T&hemes.&Recommendations.InkPot :colo inkpot<CR>
|
||||
amenu T&hemes.&Recommendations.LingoDirector :colo lingodirector<CR>
|
||||
amenu T&hemes.&Recommendations.MetaCosm :colo metacosm<CR>
|
||||
amenu T&hemes.&Recommendations.MidNight2 :colo midnight2<CR>
|
||||
amenu T&hemes.&Recommendations.PS_Warm :let psc_style='warm'<CR>:colo ps_color<CR>
|
||||
amenu T&hemes.&Recommendations.SCite :colo scite<CR>
|
||||
|
||||
amenu T&hemes.-s2- :
|
||||
|
||||
" Schemes with pure Black background.
|
||||
amenu T&hemes.Blac&k.Adrian :colo adrian<CR>
|
||||
amenu T&hemes.Blac&k.BillW :colo billw<CR>
|
||||
amenu T&hemes.Blac&k.BlackAngus :colo black_angus<CR>
|
||||
amenu T&hemes.Blac&k.BlackBeauty :colo blackbeauty<CR>
|
||||
amenu T&hemes.Blac&k.BlackSea :colo blacksea<CR>
|
||||
amenu T&hemes.Blac&k.Brookstream :colo brookstream<CR>
|
||||
amenu T&hemes.Blac&k.Candy :colo candy<CR>
|
||||
amenu T&hemes.Blac&k.Colorer :colo colorer<CR>
|
||||
amenu T&hemes.Blac&k.Dante :colo dante<CR>
|
||||
" Vim Dark Default is hidden, this can be used to activate it.
|
||||
amenu T&hemes.Blac&k.Dark_Default :let psc_style='defdark'<CR>:colo ps_color<CR>
|
||||
amenu T&hemes.Blac&k.DarkBlack :colo darkblack<CR>
|
||||
amenu T&hemes.Blac&k.DarkOcean :colo darkocean<CR>
|
||||
amenu T&hemes.Blac&k.FnaqEvan :colo fnaqevan<CR>
|
||||
amenu T&hemes.Blac&k.Golden :colo golden<CR>
|
||||
amenu T&hemes.Blac&k.Gothic :colo gothic<CR>
|
||||
amenu T&hemes.Blac&k.GreyBlue :colo greyblue<CR>
|
||||
amenu T&hemes.Blac&k.HHd.blue :colo hhdblue<CR>
|
||||
amenu T&hemes.Blac&k.HHd.cyan :colo hhdcyan<CR>
|
||||
amenu T&hemes.Blac&k.HHd.gray :colo hhdgray<CR>
|
||||
amenu T&hemes.Blac&k.HHd.green :colo hhdgreen<CR>
|
||||
amenu T&hemes.Blac&k.HHd.magenta :colo hhdmagenta<CR>
|
||||
amenu T&hemes.Blac&k.HHd.red :colo hhdred<CR>
|
||||
amenu T&hemes.Blac&k.HHd.yellow :colo hhdyellow<CR>
|
||||
amenu T&hemes.Blac&k.JHDark :colo jhdark<CR>
|
||||
amenu T&hemes.Blac&k.Less :colo less<CR>
|
||||
amenu T&hemes.Blac&k.Manxome :colo manxome<CR>
|
||||
amenu T&hemes.Blac&k.Olive :colo olive<CR>
|
||||
amenu T&hemes.Blac&k.OceanBlack :colo oceanblack<CR>
|
||||
amenu T&hemes.Blac&k.PS_Cool :let psc_style='cool'<CR>:colo ps_color<CR>
|
||||
amenu T&hemes.Blac&k.Putty :colo putty<CR>
|
||||
amenu T&hemes.Blac&k.RedBlack :colo redblack<CR>
|
||||
amenu T&hemes.Blac&k.Revolutions :colo revolutions<CR>
|
||||
amenu T&hemes.Blac&k.RelaxedGreen :colo relaxedgreen<CR>
|
||||
amenu T&hemes.Blac&k.Sean :colo sean<CR>
|
||||
amenu T&hemes.Blac&k.WintersDay :colo wintersday<CR>
|
||||
|
||||
" Dark Blue, or Deep Blue
|
||||
amenu T&hemes.&Blue.Adaryn :colo adaryn<CR>
|
||||
amenu T&hemes.&Blue.Astronaut :colo astronaut<CR>
|
||||
amenu T&hemes.&Blue.BlueGreen :colo bluegreen<CR>
|
||||
amenu T&hemes.&Blue.Blugrine :colo blugrine<CR>
|
||||
amenu T&hemes.&Blue.Borland :colo borland<CR>
|
||||
amenu T&hemes.&Blue.BorlandTurbo :colo turbo<CR>
|
||||
amenu T&hemes.&Blue.Cool :colo cool<CR>
|
||||
amenu T&hemes.&Blue.DarkDot :colo darkdot<CR>
|
||||
amenu T&hemes.&Blue.Denim :colo denim<CR>
|
||||
amenu T&hemes.&Blue.IbmEdit :colo ibmedit<CR>
|
||||
amenu T&hemes.&Blue.InkPot :colo inkpot<CR>
|
||||
amenu T&hemes.&Blue.Midnight :colo midnight<CR>
|
||||
amenu T&hemes.&Blue.Midnight2 :colo midnight2<CR>
|
||||
amenu T&hemes.&Blue.Northsky :colo northsky<CR>
|
||||
amenu T&hemes.&Blue.Sea :colo sea<CR>
|
||||
amenu T&hemes.&Blue.Transparent :colo transparent<CR>
|
||||
|
||||
" A bit lighter Blue, or greenish blue
|
||||
amenu T&hemes.&Blue.Adam :colo adam<CR>
|
||||
amenu T&hemes.&Cyan.Aqua :colo aqua<CR>
|
||||
amenu T&hemes.&Cyan.Breeze :colo breeze<CR>
|
||||
amenu T&hemes.&Cyan.Darkblue2 :colo darkblue2<CR>
|
||||
amenu T&hemes.&Cyan.DarkSlateGray :colo darkslategray<CR>
|
||||
amenu T&hemes.&Cyan.Dusk :colo dusk<CR>
|
||||
amenu T&hemes.&Cyan.Gor :colo gor<CR>
|
||||
amenu T&hemes.&Cyan.HHazure :colo hhazure<CR>
|
||||
amenu T&hemes.&Cyan.Navajo-Night :colo navajo-night<CR>
|
||||
amenu T&hemes.&Cyan.NightShimmer :colo nightshimmer<CR>
|
||||
amenu T&hemes.&Cyan.NightWish :colo nightwish<CR>
|
||||
amenu T&hemes.&Cyan.OceanDeep :colo oceandeep<CR>
|
||||
|
||||
" A traditional Greenish look...
|
||||
amenu T&hemes.&Green.Earth :colo earth<CR>
|
||||
amenu T&hemes.&Green.HHteal :colo hhteal<CR>
|
||||
amenu T&hemes.&Green.Matrix :colo matrix<CR>
|
||||
amenu T&hemes.&Green.RobinHood :colo robinhood<CR>
|
||||
|
||||
" Looks Brown or not pure Black, this is the most popular category,
|
||||
" The top-two on vim.sf.net are all here.
|
||||
amenu T&hemes.&Grey_Brown.BlackDust :colo blackdust<CR>
|
||||
amenu T&hemes.&Grey_Brown.Camo :colo camo<CR>
|
||||
amenu T&hemes.&Grey_Brown.ChocolateLiquor :colo chocolateliquor<CR>
|
||||
amenu T&hemes.&Grey_Brown.Coffee :colo coffee<CR>
|
||||
amenu T&hemes.&Grey_Brown.Desert :colo desert<CR>
|
||||
amenu T&hemes.&Grey_Brown.HHorange :colo hhorange<CR>
|
||||
amenu T&hemes.&Grey_Brown.HHspring :colo hhspring<CR>
|
||||
amenu T&hemes.&Grey_Brown.MetaCosm :colo metacosm<CR>
|
||||
amenu T&hemes.&Grey_Brown.Navajo :colo navajo<CR>
|
||||
amenu T&hemes.&Grey_Brown.Neon :colo neon<CR>
|
||||
amenu T&hemes.&Grey_Brown.UmberGreen :colo umber-green<CR>
|
||||
amenu T&hemes.&Grey_Brown.Zenburn :colo zenburn<CR>
|
||||
|
||||
amenu T&hemes.-s3- :
|
||||
|
||||
" Any scheme with Violet, Magenta, Reddish Blue, or Red
|
||||
amenu T&hemes.&Violet_Red.Aiseered :colo aiseered<CR>
|
||||
amenu T&hemes.&Violet_Red.Asu1Dark :colo asu1dark<CR>
|
||||
amenu T&hemes.&Violet_Red.Caramel :colo caramel<CR>
|
||||
amenu T&hemes.&Violet_Red.EdoSea :colo edo_sea<CR>
|
||||
amenu T&hemes.&Violet_Red.HHpink :colo hhpink<CR>
|
||||
amenu T&hemes.&Violet_Red.HHviolet :colo hhviolet<CR>
|
||||
amenu T&hemes.&Violet_Red.Lilac :colo lilac<CR>
|
||||
amenu T&hemes.&Violet_Red.Mars :colo mars<CR>
|
||||
amenu T&hemes.&Violet_Red.Night :colo night<CR>
|
||||
amenu T&hemes.&Violet_Red.Tibet :colo tibet<CR>
|
||||
amenu T&hemes.&Violet_Red.TomatoSoup :colo tomatosoup<CR>
|
||||
amenu T&hemes.&Violet_Red.Xian :colo xian<CR>
|
||||
|
||||
" Light backgrounds which are not pure white
|
||||
amenu T&hemes.&OffWhite.Autumn :colo autumn2<CR>
|
||||
amenu T&hemes.&OffWhite.Bog :colo bog<CR>
|
||||
amenu T&hemes.&OffWhite.Brown :colo brown<CR>
|
||||
amenu T&hemes.&OffWhite.ButterCream :colo buttercream<CR>
|
||||
amenu T&hemes.&OffWhite.CleanPHP :colo cleanphp<CR>
|
||||
amenu T&hemes.&OffWhite.JHLight :colo jhlight<CR>
|
||||
amenu T&hemes.&OffWhite.OceanLight :colo oceanlight<CR>
|
||||
amenu T&hemes.&OffWhite.PapayaWhip :colo papayawhip<CR>
|
||||
amenu T&hemes.&OffWhite.Python :colo python<CR>
|
||||
amenu T&hemes.&OffWhite.Sand :colo sand<CR>
|
||||
amenu T&hemes.&OffWhite.SeaShell :colo seashell<CR>
|
||||
amenu T&hemes.&OffWhite.SF :colo sf<CR>
|
||||
" Note that on a well-adjusted monitor with 6500k temperature (standard),
|
||||
" #ffffff is not pure white, pure white should be less than #e8e8e8.
|
||||
amenu T&hemes.&OffWhite.TAqua :colo taqua<CR>
|
||||
amenu T&hemes.&OffWhite.TCSoft :colo tcsoft<CR>
|
||||
|
||||
" Pure White with light background
|
||||
amenu T&hemes.&White.Automation :colo automation<CR>
|
||||
amenu T&hemes.&White.Autumn :colo autumn<CR>
|
||||
amenu T&hemes.&White.AutumnLeaf :colo autumnleaf<CR>
|
||||
amenu T&hemes.&White.BioGoo :colo biogoo<CR>
|
||||
amenu T&hemes.&White.BMichaelsen :colo bmichaelsen<CR>
|
||||
amenu T&hemes.&White.BW :colo bw<CR>
|
||||
amenu T&hemes.&White.C :colo c<CR>
|
||||
amenu T&hemes.&White.ChelaLight :colo chela_light<CR>
|
||||
amenu T&hemes.&White.Dawn :colo dawn<CR>
|
||||
amenu T&hemes.&White.Emacs :colo emacs<CR>
|
||||
amenu T&hemes.&White.FineBlue :colo fine_blue<CR>
|
||||
amenu T&hemes.&White.Fog :colo fog<CR>
|
||||
amenu T&hemes.&White.Fruit :colo fruit<CR>
|
||||
amenu T&hemes.&White.Gobo :colo gobo<CR>
|
||||
amenu T&hemes.&White.IronMan :colo ironman<CR>
|
||||
amenu T&hemes.&White.LingoDirector :colo lingodirector<CR>
|
||||
amenu T&hemes.&White.ModTCSoft :colo mod_tcsoft<CR>
|
||||
amenu T&hemes.&White.NEdit :colo nedit<CR>
|
||||
amenu T&hemes.&White.NEdit2 :colo nedit2<CR>
|
||||
amenu T&hemes.&White.Nuvola :colo nuvola<CR>
|
||||
amenu T&hemes.&White.PS_Warm :let psc_style='warm'<CR>:colo ps_color<CR>
|
||||
amenu T&hemes.&White.PrintBW :colo print_bw<CR>
|
||||
amenu T&hemes.&White.SCite :colo scite<CR>
|
||||
amenu T&hemes.&White.SimpleAndFriendly :colo simpleandfriendly<CR>
|
||||
amenu T&hemes.&White.Tolerable :colo tolerable<CR>
|
||||
amenu T&hemes.&White.VC :colo vc<CR>
|
||||
amenu T&hemes.&White.VCBC :colo vcbc<CR>
|
||||
amenu T&hemes.&White.White :colo white<CR>
|
||||
amenu T&hemes.&White.WhiteDust :colo whitedust<CR>
|
||||
amenu T&hemes.&White.Xemacs :colo xemacs<CR>
|
||||
|
||||
amenu T&hemes.-s4- :
|
||||
|
||||
amenu T&hemes.Broken.AF\ (changes\ status\ line) :colo af<CR>
|
||||
amenu T&hemes.Broken.Potts\ (changes\ font) :colo potts<CR>
|
||||
amenu T&hemes.Broken.ToothPik\ (changes\ font) :colo toothpik<CR>
|
||||
Reference in New Issue
Block a user