[20170617]vim 8.0插件安装.txt
--//昨天晚上在自己的家里的机器上安装vim 8.0 for windows,定制化浪费许多时间,剩下就是插件的安装.
--//自己做一个记录:
1.ALign 插件:
http://www.vim.org/scripts/script.php?script_id=294
http://www.vim.org/scripts/download_script.php?src_id=19633
安装很简单:
vim Align.vba.gz
:so %
:q
--//主要SQLUtilities插件需要.
2.SQLUtilities 插件
--//SQL utilities - Formatting, generate - columns lists, procedures for databases
https://vim.sourceforge.net/scripts/script.php?script_id=492
https://vim.sourceforge.io/scripts/download_script.php?src_id=19113
install details
Put <SQLUtilities.vim> into your .vim/plugin or vimfiles/plugin directory.
Put <SQLUtilities.vim> into your .vim/autoload or vimfiles/autoload directory.
Put <SQLUtilities.txt> into your .vim/doc or vimfiles/doc directory, run :helptags $VIM/vimfiles/doc.
3.ClosePairs 插件
--//Auto closes pairs of characters
http://www.vim.org/scripts/script.php?script_id=2373
http://www.vim.org/scripts/download_script.php?src_id=9239
--//安装很简单,拷贝到plugin目录。
4.bccalc.vim : evaluate equations within vim
http://www.vim.org/scripts/script.php?script_id=219
http://www.vim.org/scripts/download_script.php?src_id=25077
--//我做了许多改动,参考链接:http://blog.itpub.net/267265/viewspace-2140602/
--//这个版本对于里面有()依旧存在问题.
5.increment.vim:
http://www.vim.org/scripts/script.php?script_id=842
http://www.vim.org/scripts/download_script.php?src_id=7541
--操作比原来复杂了,自己要再看看!注意doc文档在1.0版本中.执行如下才能生成.
:helptags d:\tools\vim\vim80\doc
:help Inc
6.gundo插件:
http://www.vim.org/scripts/script.php?script_id=3304
http://www.vim.org/scripts/download_script.php?src_id=24805
--//需要下载python 2.7 32位版本后一切ok!(注意版本的选择).
http://www.python.org/ftp/python/2.7.6/python-2.7.6.msi
--//使用很简单:
:GundoToggle
--//具体操作就很简单了,减少记忆一些命令的问题:g- g+ :earlier :last等命令.
7.MRU插件:
http://www.vim.org/scripts/script.php?script_id=521
http://www.vim.org/scripts/download_script.php?src_id=22864
gvim可以从菜单访问
也可以通过:MRU命令打开。
技巧与问题:
--//可以使用/快速定位要修改的文件.按T可以在新的tab窗口打开文件。
8.word_complete.vim:
http://www.vim.org/scripts/script.php?script_id=73
http://www.vim.org/scripts/download_script.php?src_id=6504
To activate, choose "Word Completion" from the Tools menu, or type
:call DoWordComplete()
To make it stop, choose "Tools/Stop Completion," or type
:call EndWordComplete()
If you want to activate word completion for every buffer, add the line
:autocmd BufEnter * call DoWordComplete()
--//我修改了,这样更加科学一点:
let g:WC_min_len = 3
--//如果你打开菜单,使用如下命令,我经常是关闭.再工具里面也可以调用 DoWordComplete(),EndWordComplete.
set guioptions+=m
--//大概就这些插件我经常使用.做一个记录.
9.visSum.vim
--//用来做总和的.
http://www.vim.org/scripts/script.php?script_id=1932
--//我自己现在很少用,我记忆里我修改许多,参看链接:
http://blog.itpub.net/267265/viewspace-777463/
--//链接贴的代码有问题,重新贴一次.
" vim:filetype=vim foldmethod=marker textwidth=78
" ==========================================================================
" File: visSum.vim (global plugin)
" Last Changed: 2012-07-17
" Maintainer: Erik Falor <ewfalor@gmail.com>
" Version: 1.0
" License: Vim License
"
" A great big thanks to Christian Mauderer for providing a patch for
" floating-point support!
"
" ________ __ __
" /_ __/ /_ ____ _____ / /_______/ /
" / / / __ \/ __ `/ __ \/ //_/ ___/ /
" / / / / / / /_/ / / / / ,< (__ )_/
" /_/ /_/ /_/\__,_/_/ /_/_/|_/____(_)
"
" This plugin will work whether or not your Vim is compiled with support for
" floating-point numbers. If your Vim doesn't has('float'), we'll just
" ignore whatever comes after the decimal point.
"
" Due to the way Vim parses floating-point numbers, the only valid separtator
" between the whole and fractional parts of the number is a period. Vim
" won't accept a comma, even if that's your locale's preference. This
" plugin follows that convention.
" ==========================================================================
" Exit quickly if the script has already been loaded
let s:this_version = '1.0'
if exists('g:loaded_visSum') && g:loaded_visSum == s:this_version
finish
endif
let g:loaded_visSum = s:this_version
"Mappings {{{
" clean up existing key mappings upon re-loading of script
if hasmapto('<Plug>SumNum')
nunmap \su
vunmap \su
nunmap <Plug>SumNum
vunmap <Plug>SumNum
endif
" Key mappings
nmap <silent> <unique> <Leader>su <Plug>SumNum
vmap <silent> <unique> <Leader>su <Plug>SumNum
if has('float')
" Call the floating-point version of the function
nmap <silent> <unique> <script> <Plug>SumNum :call <SID>SumNumbers_Float() <ESC>gv<ESC>o<ESC>"pp
vmap <silent> <unique> <script> <Plug>SumNum :call <SID>SumNumbers_Float() <ESC>gv<ESC>o<ESC>"pp
command! -nargs=? -range -register VisSum call <SID>SumNumbers_Float("<reg>")
else
" Call the integer version of the function
nmap <silent> <unique> <script> <Plug>SumNum :call <SID>SumNumbers_Int() <CR>
vmap <silent> <unique> <script> <Plug>SumNum :call <SID>SumNumbers_Int() <CR>
command! -nargs=? -range -register VisSum call <SID>SumNumbers_Int("<reg>")
endif
"}}}
function! <SID>SumNumbers_Float(...) range "{{{
let l:sum = 0.0
let l:cur = ""
if visualmode() =~ '\cv'
let y1 = line("'<")
let y2 = line("'>")
while y1 <= y2
let l:cur = matchstr( getline(y1), '-\?\d\+\(\.\d\+\)\?' )
if l:cur == ""
let l:cur = "0"
endif
let l:sum += eval(l:cur)
let y1 += 1
endwhile
elseif visualmode() == "\<c-v>"
let y1 = line("'<")
let y2 = line("'>")
let x1 = col("'<") - 1
let len = col("'>") - x1 -1
if len == 0
let len = 1
endif
while y1 <= y2
"let line = getline(y1)
"let chunk = strpart(line, x1, len)
let l:cur = matchstr( strpart(getline(y1), x1, len ), '-\?\d\+\(\.\d\+\)\?' )
if l:cur == ""
let l:cur = "0"
endif
let l:sum += eval(l:cur)
let y1 += 1
endwhile
else
echoerr "You must select some text in visual mode first"
return
endif
"Drop the fractional amount if it's zero
"TODO: When scientific notation is supported, this will need to be changed
if abs(l:sum) == trunc(abs(l:sum))
let l:sum = float2nr(l:sum)
endif
redraw
"echo "sum = " l:sum
"save the sum in the variable b:sum, and optionally
"into the register specified by the user
"let b:sum = l:sum
"if a:0 == 1 && len(a:1) > 0
" execute "let @" . a:1 . " = printf('%g', b:sum)"
"endif
let @p = "sum = " . string(l:sum)
endfunction "}}}
function! <SID>SumNumbers_Int(...) range "{{{
let l:sum = 0
let l:cur = 0
if visualmode() =~ '\cv'
let y1 = line("'<")
let y2 = line("'>")
while y1 <= y2
let l:cur = matchstr( getline(y1), '-\{-}\d\+' )
let l:sum += l:cur
let y1 += 1
endwhile
elseif visualmode() == "\<c-v>"
let y1 = line("'<")
let y2 = line("'>")
let x1 = col("'<") - 1
let len = col("'>") - x1
while y1 <= y2
let line = getline(y1)
let chunk = strpart(line, x1, len)
let l:cur = matchstr( strpart(getline(y1), x1, len ), '-\{-}\d\+' )
let l:sum += l:cur
let y1 += 1
endwhile
else
echoerr "You must select some text in visual mode first"
return
endif
redraw
echo "sum = " l:sum
"save the sum in the variable b:sum, and optionally
"into the register specified by the user
let b:sum = l:sum
if a:0 == 1 && len(a:1) > 0
execute "let @" . a:1 . " = b:sum"
endif
endfunction "}}}
"Test Data "{{{
" <column width=\"24\"> The winter of '49</column>
" <column width=\"18\"> The Summer of '48</column>
" <column width=\"44\"/>123
" <column width=\"14\"/>123
"1.5 123
"-2 123.0
"3.1 123.1
"-4.2 123.2
"+5.9 123.3
"-6.0
"7
"8
"8.2
"9.
"10.
"-11.
"+12.
"
"The pedant in me wants to make these numbers work as well;
"but if I've learned anything, it's that the perfect is the
"enemy of the good.
"Avogadro 6.0221415e23
"Planck 6.626068E-34 m^2 kg / s
"Borh Radius 5.2917721092e鈭?1 m
"}}}