GetLatestVimScripts
git-svn-id: https://vimsuite.svn.sourceforge.net/svnroot/vimsuite/trunk@180 eb2d0018-73a3-4aeb-bfe9-1def61c9ec69
This commit is contained in:
parent
af28abb1bd
commit
587fd7e78a
@ -1,38 +1,34 @@
|
|||||||
ScriptID SourceID Filename
|
ScriptID SourceID Filename
|
||||||
--------------------------
|
--------------------------
|
||||||
1075 9389 netrw.vim
|
1008 3118 srec.vim (ftplugin)
|
||||||
1502 8743 vimball.vim
|
1009 3119 srec.vim (syntax file)
|
||||||
1008 3118 srec.vim (ftplugin)
|
475 2535 latex-suite (install in vimfiles.latex)
|
||||||
1009 3119 srec.vim (syntax file)
|
614 3666 C-Referenz
|
||||||
475 2535 latex-suite (install in vimfiles.latex)
|
670 8073 visincr.vim (Visual Increment)
|
||||||
614 3666 C-Referenz
|
862 2635 cscope_quickfix.vim
|
||||||
670 8073 visincr.vim (Visual Increment)
|
51 171 cscope_macros.vim
|
||||||
862 2635 cscope_quickfix.vim
|
102 9375 DirDiff.vim
|
||||||
51 171 cscope_macros.vim
|
1189 8687 matrix.vim
|
||||||
102 9375 DirDiff.vim
|
1173 11513 tcomment
|
||||||
1189 8687 matrix.vim
|
948 2878 Scons Compiler plugin
|
||||||
1173 8689 tcomment
|
1709 6421 Scons Syntax file
|
||||||
948 2878 Scons Compiler plugin
|
1772 7248 DAMOS.zip DAMOS tools (von Stefan)
|
||||||
1709 6421 Scons Syntax file
|
987 11878 DoxygenToolkit.vim
|
||||||
1772 7248 DAMOS.zip DAMOS tools (von Stefan)
|
1397 11713 xml.vim
|
||||||
987 6978 DoxygenToolkit.vim
|
1290 5190 LogiPat.vim
|
||||||
1397 6887 xml.vim
|
1462 5612 dtd2xml
|
||||||
1290 5190 LogiPat.vim
|
1046 4249 Lusty Explorer
|
||||||
1881 9564 svndiff
|
2043 7805 VimPdb (debugging python)
|
||||||
1462 5612 dtd2xml
|
1776 7902 Vimgrep Replace
|
||||||
1046 4249 Lusty Explorer
|
2048 7817 BlockDiff
|
||||||
2043 7805 VimPdb (debugging python)
|
39 8196 matchit.vim
|
||||||
1776 7902 Vimgrep Replace
|
2092 8095 reloaded.vim (matrix colorscheme)
|
||||||
2048 7817 BlockDiff
|
848 8203 SrchRplcHiGrp.vim (Search/Replace on Syntax Group)
|
||||||
39 8196 matchit.vim
|
294 10110 Align.vim
|
||||||
2092 8095 reloaded.vim (matrix colorscheme)
|
479 9276 MultipleSearch.vba
|
||||||
848 8203 SrchRplcHiGrp.vim (Search/Replace on Syntax Group)
|
1066 7618 cecutil.vim
|
||||||
294 9414 Align.vim
|
1173 11513 tComment.vim
|
||||||
479 9276 MultipleSearch
|
2701 10950 editsrec
|
||||||
1066 7618 cecutil.vim
|
642 8136 :AutoInstall: getscript.vim
|
||||||
642 8136 getscript.vim
|
1075 11979 :AutoInstall: netrw.vim
|
||||||
90 9279 vcscommand
|
1502 11981 :AutoInstall: vimball.vim
|
||||||
642 8136 :AutoInstall: GetLatestVimScripts.vim
|
|
||||||
479 9276 :AutoInstall: MultipleSearch.vba
|
|
||||||
1173 8689 tComment.vim
|
|
||||||
2701 1 editsrec
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
" Align: tool to align multiple fields based on one or more separators
|
" Align: tool to align multiple fields based on one or more separators
|
||||||
" Author: Charles E. Campbell, Jr.
|
" Author: Charles E. Campbell, Jr.
|
||||||
" Date: Oct 08, 2008
|
" Date: Mar 03, 2009
|
||||||
" Version: 34
|
" Version: 35
|
||||||
" GetLatestVimScripts: 294 1 :AutoInstall: Align.vim
|
" GetLatestVimScripts: 294 1 :AutoInstall: Align.vim
|
||||||
" GetLatestVimScripts: 1066 1 :AutoInstall: cecutil.vim
|
" GetLatestVimScripts: 1066 1 :AutoInstall: cecutil.vim
|
||||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
|
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
|
||||||
@ -21,10 +21,10 @@
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Load Once: {{{1
|
" Load Once: {{{1
|
||||||
if exists("g:loaded_align") || &cp
|
if exists("g:loaded_Align") || &cp
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_align = "v34"
|
let g:loaded_Align = "v35"
|
||||||
if v:version < 700
|
if v:version < 700
|
||||||
echohl WarningMsg
|
echohl WarningMsg
|
||||||
echo "***warning*** this version of Align needs vim 7.0"
|
echo "***warning*** this version of Align needs vim 7.0"
|
||||||
@ -36,9 +36,19 @@ set cpo&vim
|
|||||||
"DechoTabOn
|
"DechoTabOn
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Debugging Support:
|
" Debugging Support: {{{1
|
||||||
"if !exists("g:loaded_Decho") | runtime plugin/Decho.vim | endif
|
"if !exists("g:loaded_Decho") | runtime plugin/Decho.vim | endif
|
||||||
|
|
||||||
|
" ---------------------------------------------------------------------
|
||||||
|
" Options: {{{1
|
||||||
|
if !exists("g:Align_xstrlen")
|
||||||
|
if &enc == "latin1" || $LANG == "en_US.UTF-8" || !has("multi_byte")
|
||||||
|
let g:Align_xstrlen= 0
|
||||||
|
else
|
||||||
|
let g:Align_xstrlen= 1
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Align#AlignCtrl: enter alignment patterns here {{{1
|
" Align#AlignCtrl: enter alignment patterns here {{{1
|
||||||
"
|
"
|
||||||
@ -333,12 +343,17 @@ endfun
|
|||||||
fun! Align#Align(hasctrl,...) range
|
fun! Align#Align(hasctrl,...) range
|
||||||
" call Dfunc("Align#Align(hasctrl=".a:hasctrl.",...) a:0=".a:0)
|
" call Dfunc("Align#Align(hasctrl=".a:hasctrl.",...) a:0=".a:0)
|
||||||
|
|
||||||
" sanity check
|
" sanity checks
|
||||||
if string(a:hasctrl) != "0" && string(a:hasctrl) != "1"
|
if string(a:hasctrl) != "0" && string(a:hasctrl) != "1"
|
||||||
echohl Error|echo 'usage: Align#Align(hasctrl<'.a:hasctrl.'> (should be 0 or 1),"separator(s)" (you have '.a:0.') )'|echohl None
|
echohl Error|echo 'usage: Align#Align(hasctrl<'.a:hasctrl.'> (should be 0 or 1),"separator(s)" (you have '.a:0.') )'|echohl None
|
||||||
" call Dret("Align#Align")
|
" call Dret("Align#Align")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
if exists("s:AlignStyle") && s:AlignStyle == ":"
|
||||||
|
echohl Error |echo '(Align#Align) your AlignStyle is ":", which implies "do-no-alignment"!'|echohl None
|
||||||
|
" call Dret("Align#Align")
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
" set up a list akin to an argument list
|
" set up a list akin to an argument list
|
||||||
if a:0 > 0
|
if a:0 > 0
|
||||||
@ -986,12 +1001,12 @@ fun! s:Strlen(x)
|
|||||||
" 'tabstop', wide CJK as 2 rather than 1, Arabic alif as zero when immediately
|
" 'tabstop', wide CJK as 2 rather than 1, Arabic alif as zero when immediately
|
||||||
" preceded by lam, one otherwise, etc.)
|
" preceded by lam, one otherwise, etc.)
|
||||||
" (comment from TM, solution from me)
|
" (comment from TM, solution from me)
|
||||||
let modkeep= &mod
|
let modkeep= &l:mod
|
||||||
exe "norm! o\<esc>"
|
exe "norm! o\<esc>"
|
||||||
call setline(line("."),a:x)
|
call setline(line("."),a:x)
|
||||||
let ret= virtcol("$") - 1
|
let ret= virtcol("$") - 1
|
||||||
d
|
d
|
||||||
let &mod= modkeep
|
let &l:mod= modkeep
|
||||||
|
|
||||||
else
|
else
|
||||||
" at least give a decent default
|
" at least give a decent default
|
||||||
|
@ -1,13 +1,13 @@
|
|||||||
" AlignMaps.vim : support functions for AlignMaps
|
" AlignMaps.vim : support functions for AlignMaps
|
||||||
" Author: Charles E. Campbell, Jr.
|
" Author: Charles E. Campbell, Jr.
|
||||||
" Date: Oct 24, 2008
|
" Date: Mar 03, 2009
|
||||||
" Version: 40
|
" Version: 41
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Load Once: {{{1
|
" Load Once: {{{1
|
||||||
if &cp || exists("g:loaded_AlignMaps")
|
if &cp || exists("g:loaded_AlignMaps")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_AlignMaps= "v40"
|
let g:loaded_AlignMaps= "v41"
|
||||||
let s:keepcpo = &cpo
|
let s:keepcpo = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
@ -16,7 +16,7 @@ set cpo&vim
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" AlignMaps#WrapperStart: {{{2
|
" AlignMaps#WrapperStart: {{{2
|
||||||
fun! AlignMaps#WrapperStart(vis)
|
fun! AlignMaps#WrapperStart(vis) range
|
||||||
" call Dfunc("AlignMaps#WrapperStart(vis=".a:vis.")")
|
" call Dfunc("AlignMaps#WrapperStart(vis=".a:vis.")")
|
||||||
|
|
||||||
if a:vis
|
if a:vis
|
||||||
@ -55,7 +55,7 @@ endfun
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" AlignMaps#WrapperEnd: {{{2
|
" AlignMaps#WrapperEnd: {{{2
|
||||||
fun! AlignMaps#WrapperEnd()
|
fun! AlignMaps#WrapperEnd() range
|
||||||
" call Dfunc("AlignMaps#WrapperEnd() alignmaps_wrapcnt=".s:alignmaps_wrapcnt." my=".line("'y")." mz=".line("'z"))
|
" call Dfunc("AlignMaps#WrapperEnd() alignmaps_wrapcnt=".s:alignmaps_wrapcnt." my=".line("'y")." mz=".line("'z"))
|
||||||
|
|
||||||
" remove trailing white space introduced by whatever in the modification zone
|
" remove trailing white space introduced by whatever in the modification zone
|
||||||
@ -103,7 +103,7 @@ endfun
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" AlignMaps#StdAlign: some semi-standard align calls {{{2
|
" AlignMaps#StdAlign: some semi-standard align calls {{{2
|
||||||
fun! AlignMaps#StdAlign(mode)
|
fun! AlignMaps#StdAlign(mode) range
|
||||||
" call Dfunc("AlignMaps#StdAlign(mode=".a:mode.")")
|
" call Dfunc("AlignMaps#StdAlign(mode=".a:mode.")")
|
||||||
if a:mode == 1
|
if a:mode == 1
|
||||||
" align on @
|
" align on @
|
||||||
@ -157,12 +157,12 @@ endfun
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" AlignMaps#Equals: supports \t= and \T= {{{2
|
" AlignMaps#Equals: supports \t= and \T= {{{2
|
||||||
fun! AlignMaps#Equals()
|
fun! AlignMaps#Equals() range
|
||||||
" call Dfunc("AlignMaps#Equals()")
|
" call Dfunc("AlignMaps#Equals()")
|
||||||
'a,'zs/\s\+\([*/+\-%|&\~^]\==\)/ \1/e
|
'a,'zs/\s\+\([*/+\-%|&\~^]\==\)/ \1/e
|
||||||
'a,'zs@ \+\([*/+\-%|&\~^]\)=@\1=@ge
|
'a,'zs@ \+\([*/+\-%|&\~^]\)=@\1=@ge
|
||||||
'a,'zs/==/\="\<Char-0xff>\<Char-0xff>"/ge
|
'a,'zs/==/\="\<Char-0x0f>\<Char-0x0f>"/ge
|
||||||
'a,'zs/!=/\="!\<Char-0xff>"/ge
|
'a,'zs/\([!<>:]\)=/\=submatch(1)."\<Char-0x0f>"/ge
|
||||||
norm g'zk
|
norm g'zk
|
||||||
AlignCtrl mIp1P1=l =
|
AlignCtrl mIp1P1=l =
|
||||||
AlignCtrl g =
|
AlignCtrl g =
|
||||||
@ -174,15 +174,15 @@ fun! AlignMaps#Equals()
|
|||||||
'a,'z-1v/^\s*\/[*/]/s/\/[*/]/@&@/e
|
'a,'z-1v/^\s*\/[*/]/s/\/[*/]/@&@/e
|
||||||
'a,'z-1v/^\s*\/[*/]/s/\*\//@&/e
|
'a,'z-1v/^\s*\/[*/]/s/\*\//@&/e
|
||||||
if exists("g:mapleader")
|
if exists("g:mapleader")
|
||||||
exe "norm 'zk"
|
exe "norm 'zk"
|
||||||
call AlignMaps#StdAlign(1)
|
call AlignMaps#StdAlign(1)
|
||||||
else
|
else
|
||||||
exe "norm 'zk"
|
exe "norm 'zk"
|
||||||
call AlignMaps#StdAlign(1)
|
call AlignMaps#StdAlign(1)
|
||||||
endif
|
endif
|
||||||
'y,'zs/^\(\s*\) @/\1/e
|
'y,'zs/^\(\s*\) @/\1/e
|
||||||
endif
|
endif
|
||||||
'a,'z-1s/\%xff/=/ge
|
'a,'z-1s/\%x0f/=/ge
|
||||||
'y,'zs/ @//eg
|
'y,'zs/ @//eg
|
||||||
" call Dret("AlignMaps#Equals")
|
" call Dret("AlignMaps#Equals")
|
||||||
endfun
|
endfun
|
||||||
|
152
vimfiles/autoload/libsrec.vim
Normal file
152
vimfiles/autoload/libsrec.vim
Normal file
@ -0,0 +1,152 @@
|
|||||||
|
" Vim Library for Editing .srec Files
|
||||||
|
" Maintainer: Alexander Fleck
|
||||||
|
" <alexander.fleck@gmx.net>
|
||||||
|
" License: This File is placed in the Public Domain.
|
||||||
|
" Revision | Date [DD.MM.YY] | Changes
|
||||||
|
" 00.01.00 | 05.07.09 | 01. Revision
|
||||||
|
|
||||||
|
" create ByteCount
|
||||||
|
fun libsrec#CrBC(line)
|
||||||
|
let s:byco = ""
|
||||||
|
|
||||||
|
" Dictionary with Assumptions
|
||||||
|
let s:dict = { 0: '0F',
|
||||||
|
\ 1: '0F',
|
||||||
|
\ 2: '0F',
|
||||||
|
\ 3: '0F',
|
||||||
|
\ 4: '' ,
|
||||||
|
\ 5: '03',
|
||||||
|
\ 6: '' ,
|
||||||
|
\ 7: '05',
|
||||||
|
\ 8: '04',
|
||||||
|
\ 9: '03' }
|
||||||
|
|
||||||
|
let s:byco = s:dict[a:line[1]]
|
||||||
|
|
||||||
|
unlet s:dict
|
||||||
|
"unlet s:byco
|
||||||
|
return s:byco
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create ADdress
|
||||||
|
fun libsrec#CrAD(line)
|
||||||
|
let s:adrs = ""
|
||||||
|
" Number of Bytes for Address
|
||||||
|
let s:adby = ""
|
||||||
|
" Dictionary
|
||||||
|
let s:dict = { 0: 2,
|
||||||
|
\ 1: 2,
|
||||||
|
\ 2: 3,
|
||||||
|
\ 3: 4,
|
||||||
|
\ 4: 0,
|
||||||
|
\ 5: 2,
|
||||||
|
\ 6: 0,
|
||||||
|
\ 7: 4,
|
||||||
|
\ 8: 3,
|
||||||
|
\ 9: 2 }
|
||||||
|
|
||||||
|
let s:adby = s:dict[a:line[1]]
|
||||||
|
|
||||||
|
let s:n = 0
|
||||||
|
while 1
|
||||||
|
let s:n = s:n + 1
|
||||||
|
if s:n > s:adby
|
||||||
|
break
|
||||||
|
endif
|
||||||
|
let s:adrs = s:adrs . "00"
|
||||||
|
continue
|
||||||
|
endwhile
|
||||||
|
unlet s:n
|
||||||
|
|
||||||
|
unlet s:dict
|
||||||
|
unlet s:adby
|
||||||
|
"unlet s:adrs
|
||||||
|
return s:adrs
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create DAta
|
||||||
|
fun libsrec#CrDA(line)
|
||||||
|
let s:data = ""
|
||||||
|
" Number of Bytes for Data
|
||||||
|
let s:daby = ""
|
||||||
|
|
||||||
|
" get ByteCount from Line
|
||||||
|
let s:bchx = "0x" . a:line[2] . a:line[3]
|
||||||
|
" Dictionary
|
||||||
|
let s:dict = { 0: s:bchx - 3,
|
||||||
|
\ 1: s:bchx - 3,
|
||||||
|
\ 2: s:bchx - 4,
|
||||||
|
\ 3: s:bchx - 5,
|
||||||
|
\ 4: 0 ,
|
||||||
|
\ 5: 0 ,
|
||||||
|
\ 6: 0 ,
|
||||||
|
\ 7: 0 ,
|
||||||
|
\ 8: 0 ,
|
||||||
|
\ 9: 0 }
|
||||||
|
|
||||||
|
let s:daby = s:dict[a:line[1]]
|
||||||
|
|
||||||
|
let s:n = 0
|
||||||
|
while 1
|
||||||
|
let s:n = s:n + 1
|
||||||
|
if s:n > s:daby
|
||||||
|
break
|
||||||
|
endif
|
||||||
|
let s:data = s:data . "FF"
|
||||||
|
continue
|
||||||
|
endwhile
|
||||||
|
unlet s:n
|
||||||
|
|
||||||
|
unlet s:dict
|
||||||
|
unlet s:bchx
|
||||||
|
unlet s:daby
|
||||||
|
"unlet s:data
|
||||||
|
return s:data
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create CheckSum
|
||||||
|
fun libsrec#CrCS(line)
|
||||||
|
" CheckSum as a String
|
||||||
|
let s:chsu = ""
|
||||||
|
|
||||||
|
" get ByteCount from Line
|
||||||
|
let s:bchx = "0x" . a:line[2] . a:line[3]
|
||||||
|
|
||||||
|
if ((a:line[1] == "4") || (a:line[1] == "6"))
|
||||||
|
" there' s no S4 or S6
|
||||||
|
else
|
||||||
|
" CheckSum as a Value
|
||||||
|
let s:csby = 0
|
||||||
|
|
||||||
|
" add the Byte Values
|
||||||
|
let s:n = 0
|
||||||
|
while 1
|
||||||
|
let s:n = s:n + 1
|
||||||
|
if s:n > s:bchx
|
||||||
|
break
|
||||||
|
endif
|
||||||
|
let s:csby = s:csby + ("0x" . a:line[2*s:n] . a:line[2*s:n+1])
|
||||||
|
continue
|
||||||
|
endwhile
|
||||||
|
unlet s:n
|
||||||
|
|
||||||
|
" CheckSum is:
|
||||||
|
let s:csby = 255 - (s:csby % 256)
|
||||||
|
|
||||||
|
" convert to Hex Value,
|
||||||
|
" Hex String without "0x"
|
||||||
|
let s:hxva = "0123456789ABCDEF"
|
||||||
|
while s:csby
|
||||||
|
let s:chsu = s:hxva[s:csby % 16] . s:chsu
|
||||||
|
let s:csby = s:csby / 16
|
||||||
|
endwhile
|
||||||
|
|
||||||
|
unlet s:hxva
|
||||||
|
unlet s:csby
|
||||||
|
endif
|
||||||
|
|
||||||
|
unlet s:bchx
|
||||||
|
"unlet s:chsu
|
||||||
|
return s:chsu
|
||||||
|
endfun
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
@ -145,6 +145,7 @@ fun! netrwSettings#NetrwSettings()
|
|||||||
put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
|
put = 'let g:netrw_special_syntax = '.g:netrw_special_syntax
|
||||||
put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
|
put = 'let g:netrw_ssh_browse_reject = '.g:netrw_ssh_browse_reject
|
||||||
put = 'let g:netrw_scpport = '.g:netrw_scpport
|
put = 'let g:netrw_scpport = '.g:netrw_scpport
|
||||||
|
put = 'let g:netrw_sepchr = '.g:netrw_sepchr
|
||||||
put = 'let g:netrw_sshport = '.g:netrw_sshport
|
put = 'let g:netrw_sshport = '.g:netrw_sshport
|
||||||
put = 'let g:netrw_timefmt = '.g:netrw_timefmt
|
put = 'let g:netrw_timefmt = '.g:netrw_timefmt
|
||||||
let tmpfileescline= line("$")
|
let tmpfileescline= line("$")
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
" tcomment.vim
|
" tcomment.vim
|
||||||
" @Author: Thomas Link (mailto:micathom AT gmail com?subject=[vim])
|
" @Author: Tom Link (mailto:micathom AT gmail com?subject=[vim])
|
||||||
" @Website: http://www.vim.org/account/profile.php?user_id=4037
|
" @Website: http://www.vim.org/account/profile.php?user_id=4037
|
||||||
" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
||||||
" @Created: 2007-09-17.
|
" @Created: 2007-09-17.
|
||||||
" @Last Change: 2008-05-07.
|
" @Last Change: 2009-02-15.
|
||||||
" @Revision: 0.0.46
|
" @Revision: 0.0.66
|
||||||
|
|
||||||
if &cp || exists("loaded_tcomment_autoload")
|
if &cp || exists("loaded_tcomment_autoload")
|
||||||
finish
|
finish
|
||||||
@ -90,6 +90,7 @@ function! tcomment#Comment(beg, end, ...)
|
|||||||
" We want a comment block
|
" We want a comment block
|
||||||
call s:CommentBlock(a:beg, a:end, uncomment, cmtCheck, cms, indentStr)
|
call s:CommentBlock(a:beg, a:end, uncomment, cmtCheck, cms, indentStr)
|
||||||
else
|
else
|
||||||
|
" call s:CommentLines(a:beg, a:end, cstart, cend, uncomment, cmtCheck, cms0, indentStr)
|
||||||
" We want commented lines
|
" We want commented lines
|
||||||
" final search pattern for uncommenting
|
" final search pattern for uncommenting
|
||||||
let cmtCheck = escape('\V\^\(\s\{-}\)'. cmtCheck .'\$', '"/\')
|
let cmtCheck = escape('\V\^\(\s\{-}\)'. cmtCheck .'\$', '"/\')
|
||||||
@ -109,10 +110,12 @@ function! tcomment#Comment(beg, end, ...)
|
|||||||
endif
|
endif
|
||||||
endf
|
endf
|
||||||
|
|
||||||
|
|
||||||
function! tcomment#Operator(type, ...) "{{{3
|
function! tcomment#Operator(type, ...) "{{{3
|
||||||
let commentMode = a:0 >= 1 ? a:1 : ''
|
let commentMode = a:0 >= 1 ? a:1 : ''
|
||||||
let bang = a:0 >= 2 ? a:2 : ''
|
let bang = a:0 >= 2 ? a:2 : ''
|
||||||
|
if !exists('w:tcommentPos')
|
||||||
|
let w:tcommentPos = getpos(".")
|
||||||
|
endif
|
||||||
let sel_save = &selection
|
let sel_save = &selection
|
||||||
let &selection = "inclusive"
|
let &selection = "inclusive"
|
||||||
let reg_save = @@
|
let reg_save = @@
|
||||||
@ -384,6 +387,17 @@ function! s:ProcessedLine(uncomment, match, checkRx, replace)
|
|||||||
return rv
|
return rv
|
||||||
endf
|
endf
|
||||||
|
|
||||||
|
function! s:CommentLines(beg, end, cstart, cend, uncomment, cmtCheck, cms0, indentStr) "{{{3
|
||||||
|
" We want commented lines
|
||||||
|
" final search pattern for uncommenting
|
||||||
|
let cmtCheck = escape('\V\^\(\s\{-}\)'. a:cmtCheck .'\$', '"/\')
|
||||||
|
" final pattern for commenting
|
||||||
|
let cmtReplace = escape(a:cms0, '"/')
|
||||||
|
silent exec a:beg .','. a:end .'s/\V'.
|
||||||
|
\ s:StartRx(a:cstart) . a:indentStr .'\zs\(\.\{-}\)'. s:EndRx(a:cend) .'/'.
|
||||||
|
\ '\=s:ProcessedLine('. a:uncomment .', submatch(0), "'. a:cmtCheck .'", "'. cmtReplace .'")/ge'
|
||||||
|
endf
|
||||||
|
|
||||||
function! s:CommentBlock(beg, end, uncomment, checkRx, replace, indentStr)
|
function! s:CommentBlock(beg, end, uncomment, checkRx, replace, indentStr)
|
||||||
let t = @t
|
let t = @t
|
||||||
try
|
try
|
||||||
@ -428,28 +442,33 @@ function! s:GuessFileType(beg, end, commentMode, filetype, ...)
|
|||||||
let cms = s:GuessCurrentCommentString(0)
|
let cms = s:GuessCurrentCommentString(0)
|
||||||
endif
|
endif
|
||||||
let n = a:beg
|
let n = a:beg
|
||||||
|
" TLogVAR n, a:beg, a:end
|
||||||
while n <= a:end
|
while n <= a:end
|
||||||
let m = indent(n) + 1
|
let m = indent(n) + 1
|
||||||
let le = col('$')
|
let le = len(getline(n))
|
||||||
|
" TLogVAR m, le
|
||||||
while m < le
|
while m < le
|
||||||
let syntaxName = synIDattr(synID(n, m, 1), 'name')
|
let syntaxName = synIDattr(synID(n, m, 1), 'name')
|
||||||
|
" TLogVAR syntaxName, n, m
|
||||||
let ftypeMap = get(g:tcommentSyntaxMap, syntaxName)
|
let ftypeMap = get(g:tcommentSyntaxMap, syntaxName)
|
||||||
if !empty(ftypeMap)
|
if !empty(ftypeMap)
|
||||||
|
" TLogVAR ftypeMap
|
||||||
return s:GetCustomCommentString(ftypeMap, a:commentMode, cms)
|
return s:GetCustomCommentString(ftypeMap, a:commentMode, cms)
|
||||||
elseif syntaxName =~ g:tcommentFileTypesRx
|
elseif syntaxName =~ g:tcommentFileTypesRx
|
||||||
let ft = substitute(syntaxName, g:tcommentFileTypesRx, '\1', '')
|
let ft = substitute(syntaxName, g:tcommentFileTypesRx, '\1', '')
|
||||||
|
" TLogVAR ft
|
||||||
if exists('g:tcommentIgnoreTypes_'. a:filetype) && g:tcommentIgnoreTypes_{a:filetype} =~ '\<'.ft.'\>'
|
if exists('g:tcommentIgnoreTypes_'. a:filetype) && g:tcommentIgnoreTypes_{a:filetype} =~ '\<'.ft.'\>'
|
||||||
let m = m + 1
|
let m += 1
|
||||||
else
|
else
|
||||||
return s:GetCustomCommentString(ft, a:commentMode, cms)
|
return s:GetCustomCommentString(ft, a:commentMode, cms)
|
||||||
endif
|
endif
|
||||||
elseif syntaxName == '' || syntaxName == 'None' || syntaxName =~ '^\u\+$' || syntaxName =~ '^\u\U*$'
|
elseif syntaxName == '' || syntaxName == 'None' || syntaxName =~ '^\u\+$' || syntaxName =~ '^\u\U*$'
|
||||||
let m = m + 1
|
let m += 1
|
||||||
else
|
else
|
||||||
break
|
break
|
||||||
endif
|
endif
|
||||||
endwh
|
endwh
|
||||||
let n = n + 1
|
let n += 1
|
||||||
endwh
|
endwh
|
||||||
return [cms, commentMode]
|
return [cms, commentMode]
|
||||||
endf
|
endf
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
" vimball.vim : construct a file containing both paths and files
|
" vimball.vim : construct a file containing both paths and files
|
||||||
" Author: Charles E. Campbell, Jr.
|
" Author: Charles E. Campbell, Jr.
|
||||||
" Date: May 30, 2008
|
" Date: Dec 28, 2009
|
||||||
" Version: 26
|
" Version: 30
|
||||||
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
|
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
|
||||||
" Copyright: (c) 2004-2007 by Charles E. Campbell, Jr.
|
" Copyright: (c) 2004-2009 by Charles E. Campbell, Jr.
|
||||||
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||||
" (see |copyright|) except use "Vimball" instead of "Vim".
|
" (see |copyright|) except use "Vimball" instead of "Vim".
|
||||||
" No warranty, express or implied.
|
" No warranty, express or implied.
|
||||||
@ -11,11 +11,17 @@
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Load Once: {{{1
|
" Load Once: {{{1
|
||||||
if &cp || exists("g:loaded_vimball") || v:version < 700
|
if &cp || exists("g:loaded_vimball")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let s:keepcpo = &cpo
|
let g:loaded_vimball = "v30"
|
||||||
let g:loaded_vimball = "v26"
|
if v:version < 702
|
||||||
|
echohl WarningMsg
|
||||||
|
echo "***warning*** this version of vimball needs vim 7.2"
|
||||||
|
echohl Normal
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let s:keepcpo= &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
"DechoTabOn
|
"DechoTabOn
|
||||||
|
|
||||||
@ -52,30 +58,6 @@ if !exists("s:USAGE")
|
|||||||
call vimball#ShowMesg(s:WARNING,"(vimball) g:vimball_mkdir undefined")
|
call vimball#ShowMesg(s:WARNING,"(vimball) g:vimball_mkdir undefined")
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" set up shell quoting character
|
|
||||||
if exists("g:vimball_shq") && !exists("g:netrw_shq")
|
|
||||||
let g:netrw_shq= g:vimball_shq
|
|
||||||
endif
|
|
||||||
if !exists("g:netrw_shq")
|
|
||||||
if exists("&shq") && &shq != ""
|
|
||||||
let g:netrw_shq= &shq
|
|
||||||
elseif has("win32") || has("win95") || has("win64") || has("win16")
|
|
||||||
if g:netrw_cygwin
|
|
||||||
let g:netrw_shq= "'"
|
|
||||||
else
|
|
||||||
let g:netrw_shq= '"'
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
let g:netrw_shq= "'"
|
|
||||||
endif
|
|
||||||
" call Decho("g:netrw_shq<".g:netrw_shq.">")
|
|
||||||
endif
|
|
||||||
|
|
||||||
" set up escape string (used to protect paths)
|
|
||||||
if !exists("g:vimball_path_escape")
|
|
||||||
let g:vimball_path_escape= ' ;#%'
|
|
||||||
endif
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" =====================================================================
|
" =====================================================================
|
||||||
@ -106,8 +88,8 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
|
|||||||
let vbname= vbname.'.vba'
|
let vbname= vbname.'.vba'
|
||||||
endif
|
endif
|
||||||
" call Decho("vbname<".vbname.">")
|
" call Decho("vbname<".vbname.">")
|
||||||
if a:1 =~ '[\/]'
|
if !a:writelevel && a:1 =~ '[\/]'
|
||||||
call vimball#ShowMesg(s:ERROR,"(MkVimball) vimball name<".a:1."> should not include slashes")
|
call vimball#ShowMesg(s:ERROR,"(MkVimball) vimball name<".a:1."> should not include slashes; use ! to insist")
|
||||||
" call Dret("MkVimball : vimball name<".a:1."> should not include slashes")
|
" call Dret("MkVimball : vimball name<".a:1."> should not include slashes")
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
@ -125,7 +107,7 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
|
|||||||
let home= expand(a:2)
|
let home= expand(a:2)
|
||||||
else
|
else
|
||||||
" use first existing directory from rtp
|
" use first existing directory from rtp
|
||||||
let home= s:VimballHome()
|
let home= vimball#VimballHome()
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" save current directory
|
" save current directory
|
||||||
@ -169,9 +151,8 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
|
|||||||
call setline(lastline+1,0)
|
call setline(lastline+1,0)
|
||||||
|
|
||||||
" write the file from the tab
|
" write the file from the tab
|
||||||
let svfilepath= s:Path(svfile,'')
|
" call Decho("exe $r ".fnameescape(svfile))
|
||||||
" call Decho("exe $r ".fnameescape(svfilepath))
|
exe "$r ".fnameescape(svfile)
|
||||||
exe "$r ".fnameescape(svfilepath)
|
|
||||||
|
|
||||||
call setline(lastline+1,line("$") - lastline - 1)
|
call setline(lastline+1,line("$") - lastline - 1)
|
||||||
" call Decho("lastline=".lastline." line$=".line("$"))
|
" call Decho("lastline=".lastline." line$=".line("$"))
|
||||||
@ -186,13 +167,11 @@ fun! vimball#MkVimball(line1,line2,writelevel,...) range
|
|||||||
call s:ChgDir(curdir)
|
call s:ChgDir(curdir)
|
||||||
setlocal ff=unix
|
setlocal ff=unix
|
||||||
if a:writelevel
|
if a:writelevel
|
||||||
let vbnamepath= s:Path(vbname,'')
|
" call Decho("exe w! ".fnameescape(vbname))
|
||||||
" call Decho("exe w! ".fnameescape(vbnamepath))
|
exe "w! ".fnameescape(vbname)
|
||||||
exe "w! ".fnameescape(vbnamepath)
|
|
||||||
else
|
else
|
||||||
let vbnamepath= s:Path(vbname,'')
|
" call Decho("exe w ".fnameescape(vbname))
|
||||||
" call Decho("exe w ".fnameescape(vbnamepath))
|
exe "w ".fnameescape(vbname)
|
||||||
exe "w ".fnameescape(vbnamepath)
|
|
||||||
endif
|
endif
|
||||||
" call Decho("Vimball<".vbname."> created")
|
" call Decho("Vimball<".vbname."> created")
|
||||||
echo "Vimball<".vbname."> created"
|
echo "Vimball<".vbname."> created"
|
||||||
@ -215,7 +194,13 @@ endfun
|
|||||||
fun! vimball#Vimball(really,...)
|
fun! vimball#Vimball(really,...)
|
||||||
" call Dfunc("vimball#Vimball(really=".a:really.") a:0=".a:0)
|
" call Dfunc("vimball#Vimball(really=".a:really.") a:0=".a:0)
|
||||||
|
|
||||||
if getline(1) !~ '^" Vimball Archiver by Charles E. Campbell, Jr., Ph.D.$'
|
if v:version < 701 || (v:version == 701 && !exists('*fnameescape'))
|
||||||
|
echoerr "your vim is missing the fnameescape() function"
|
||||||
|
" call Dret("vimball#Vimball : needs 7.1 with patch 299")
|
||||||
|
return
|
||||||
|
endif
|
||||||
|
|
||||||
|
if getline(1) !~ '^" Vimball Archiver'
|
||||||
echoerr "(Vimball) The current file does not appear to be a Vimball!"
|
echoerr "(Vimball) The current file does not appear to be a Vimball!"
|
||||||
" call Dret("vimball#Vimball")
|
" call Dret("vimball#Vimball")
|
||||||
return
|
return
|
||||||
@ -237,7 +222,7 @@ fun! vimball#Vimball(really,...)
|
|||||||
if a:0 > 0
|
if a:0 > 0
|
||||||
let home= expand(a:1)
|
let home= expand(a:1)
|
||||||
else
|
else
|
||||||
let home= s:VimballHome()
|
let home= vimball#VimballHome()
|
||||||
endif
|
endif
|
||||||
" call Decho("home<".home.">")
|
" call Decho("home<".home.">")
|
||||||
|
|
||||||
@ -269,7 +254,9 @@ fun! vimball#Vimball(really,...)
|
|||||||
while 1 < linenr && linenr < line("$")
|
while 1 < linenr && linenr < line("$")
|
||||||
let fname = substitute(getline(linenr),'\t\[\[\[1$','','')
|
let fname = substitute(getline(linenr),'\t\[\[\[1$','','')
|
||||||
let fname = substitute(fname,'\\','/','g')
|
let fname = substitute(fname,'\\','/','g')
|
||||||
let fsize = getline(linenr+1)+0
|
" let fsize = getline(linenr+1)+0
|
||||||
|
let fsize = substitute(getline(linenr+1),'^\(\d\+\).\{-}$','\1','')+0
|
||||||
|
let fenc = substitute(getline(linenr+1),'^\d\+\s*\(\S\+\)$','\1','')
|
||||||
let filecnt = filecnt + 1
|
let filecnt = filecnt + 1
|
||||||
" call Decho("fname<".fname."> fsize=".fsize." filecnt=".filecnt)
|
" call Decho("fname<".fname."> fsize=".fsize." filecnt=".filecnt)
|
||||||
|
|
||||||
@ -304,7 +291,7 @@ fun! vimball#Vimball(really,...)
|
|||||||
if !isdirectory(dirname)
|
if !isdirectory(dirname)
|
||||||
" call Decho("making <".dirname.">")
|
" call Decho("making <".dirname.">")
|
||||||
if exists("g:vimball_mkdir")
|
if exists("g:vimball_mkdir")
|
||||||
call system(g:vimball_mkdir." ".s:Escape(dirname))
|
call system(g:vimball_mkdir." ".shellescape(dirname))
|
||||||
else
|
else
|
||||||
call mkdir(dirname)
|
call mkdir(dirname)
|
||||||
endif
|
endif
|
||||||
@ -332,11 +319,15 @@ fun! vimball#Vimball(really,...)
|
|||||||
|
|
||||||
" write tab to file
|
" write tab to file
|
||||||
if a:really
|
if a:really
|
||||||
let fnamepath= s:Path(home."/".fname,'')
|
let fnamepath= home."/".fname
|
||||||
" call Decho("exe w! ".fnameescape(fnamepath))
|
" call Decho("exe w! ".fnameescape(fnamepath))
|
||||||
exe "silent w! ".fnameescape(fnamepath)
|
if fenc != ""
|
||||||
echo "wrote ".fnamepath
|
exe "silent w! ++enc=".fnameescape(fenc)." ".fnameescape(fnamepath)
|
||||||
call s:RecordInVar(home,"call delete('".fnameescape(fnamepath)."')")
|
else
|
||||||
|
exe "silent w! ".fnameescape(fnamepath)
|
||||||
|
endif
|
||||||
|
echo "wrote ".fnameescape(fnamepath)
|
||||||
|
call s:RecordInVar(home,"call delete('".fnamepath."')")
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" return to tab with vimball
|
" return to tab with vimball
|
||||||
@ -358,9 +349,9 @@ fun! vimball#Vimball(really,...)
|
|||||||
" set up help
|
" set up help
|
||||||
" call Decho("about to set up help: didhelp<".didhelp.">")
|
" call Decho("about to set up help: didhelp<".didhelp.">")
|
||||||
if didhelp != ""
|
if didhelp != ""
|
||||||
let htpath= s:Path(home."/".didhelp,"")
|
let htpath= home."/".didhelp
|
||||||
" call Decho("exe helptags ".htpath)
|
" call Decho("exe helptags ".htpath)
|
||||||
exe "helptags ".htpath
|
exe "helptags ".fnameescape(htpath)
|
||||||
echo "did helptags"
|
echo "did helptags"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -415,7 +406,7 @@ fun! vimball#RmVimball(...)
|
|||||||
if a:0 >= 2
|
if a:0 >= 2
|
||||||
let home= expand(a:2)
|
let home= expand(a:2)
|
||||||
else
|
else
|
||||||
let home= s:VimballHome()
|
let home= vimball#VimballHome()
|
||||||
endif
|
endif
|
||||||
let curdir = getcwd()
|
let curdir = getcwd()
|
||||||
" call Decho("home <".home.">")
|
" call Decho("home <".home.">")
|
||||||
@ -429,19 +420,20 @@ fun! vimball#RmVimball(...)
|
|||||||
keepalt keepjumps 1split
|
keepalt keepjumps 1split
|
||||||
silent! keepalt keepjumps e .VimballRecord
|
silent! keepalt keepjumps e .VimballRecord
|
||||||
let keepsrch= @/
|
let keepsrch= @/
|
||||||
" call Decho("search for ^".curfile.".vba:")
|
" call Decho('search for ^\M'.curfile.'.\m: ')
|
||||||
" call Decho("search for ^".curfile."[-0-9.]*.vba:")
|
" call Decho('search for ^\M'.curfile.'.\mvba: ')
|
||||||
if search('^'.curfile.": ".'cw')
|
" call Decho('search for ^\M'.curfile.'\m[-0-9.]*\.vba: ')
|
||||||
|
if search('^\M'.curfile."\m: ".'cw')
|
||||||
let foundit= 1
|
let foundit= 1
|
||||||
elseif search('^'.curfile.".vba: ",'cw')
|
elseif search('^\M'.curfile.".\mvba: ",'cw')
|
||||||
let foundit= 1
|
let foundit= 1
|
||||||
elseif search('^'.curfile.'[-0-9.]*.vba: ','cw')
|
elseif search('^\M'.curfile.'\m[-0-9.]*\.vba: ','cw')
|
||||||
let foundit= 1
|
let foundit= 1
|
||||||
else
|
else
|
||||||
let foundit = 0
|
let foundit = 0
|
||||||
endif
|
endif
|
||||||
if foundit
|
if foundit
|
||||||
let exestring = substitute(getline("."),'^'.curfile.'\S\{-}\.vba: ','','')
|
let exestring = substitute(getline("."),'^\M'.curfile.'\m\S\{-}\.vba: ','','')
|
||||||
let s:VBRstring= substitute(exestring,'call delete(','','g')
|
let s:VBRstring= substitute(exestring,'call delete(','','g')
|
||||||
let s:VBRstring= substitute(s:VBRstring,"[')]",'','g')
|
let s:VBRstring= substitute(s:VBRstring,"[')]",'','g')
|
||||||
" call Decho("exe ".exestring)
|
" call Decho("exe ".exestring)
|
||||||
@ -469,62 +461,62 @@ endfun
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" vimball#Decompress: attempts to automatically decompress vimballs {{{2
|
" vimball#Decompress: attempts to automatically decompress vimballs {{{2
|
||||||
fun! vimball#Decompress(fname)
|
fun! vimball#Decompress(fname,...)
|
||||||
" call Dfunc("Decompress(fname<".a:fname.">)")
|
" call Dfunc("Decompress(fname<".a:fname.">) a:0=".a:0)
|
||||||
|
|
||||||
" decompression:
|
" decompression:
|
||||||
if expand("%") =~ '.*\.gz' && executable("gunzip")
|
if expand("%") =~ '.*\.gz' && executable("gunzip")
|
||||||
" handle *.gz with gunzip
|
" handle *.gz with gunzip
|
||||||
silent exe "!gunzip ".s:Escape(a:fname)
|
silent exe "!gunzip ".shellescape(a:fname)
|
||||||
if v:shell_error != 0
|
if v:shell_error != 0
|
||||||
call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) gunzip may have failed with <".a:fname.">")
|
call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) gunzip may have failed with <".a:fname.">")
|
||||||
endif
|
endif
|
||||||
let fname= substitute(a:fname,'\.gz$','','')
|
let fname= substitute(a:fname,'\.gz$','','')
|
||||||
exe "e ".escape(fname,' \')
|
exe "e ".escape(fname,' \')
|
||||||
call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)")
|
if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
|
||||||
|
|
||||||
elseif expand("%") =~ '.*\.gz' && executable("gzip")
|
elseif expand("%") =~ '.*\.gz' && executable("gzip")
|
||||||
" handle *.gz with gzip -d
|
" handle *.gz with gzip -d
|
||||||
silent exe "!gzip -d ".s:Escape(a:fname)
|
silent exe "!gzip -d ".shellescape(a:fname)
|
||||||
if v:shell_error != 0
|
if v:shell_error != 0
|
||||||
call vimball#ShowMesg(s:WARNING,'(vimball#Decompress) "gzip -d" may have failed with <'.a:fname.">")
|
call vimball#ShowMesg(s:WARNING,'(vimball#Decompress) "gzip -d" may have failed with <'.a:fname.">")
|
||||||
endif
|
endif
|
||||||
let fname= substitute(a:fname,'\.gz$','','')
|
let fname= substitute(a:fname,'\.gz$','','')
|
||||||
exe "e ".escape(fname,' \')
|
exe "e ".escape(fname,' \')
|
||||||
call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)")
|
if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
|
||||||
|
|
||||||
elseif expand("%") =~ '.*\.bz2' && executable("bunzip2")
|
elseif expand("%") =~ '.*\.bz2' && executable("bunzip2")
|
||||||
" handle *.bz2 with bunzip2
|
" handle *.bz2 with bunzip2
|
||||||
silent exe "!bunzip2 ".s:Escape(a:fname)
|
silent exe "!bunzip2 ".shellescape(a:fname)
|
||||||
if v:shell_error != 0
|
if v:shell_error != 0
|
||||||
call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) bunzip2 may have failed with <".a:fname.">")
|
call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) bunzip2 may have failed with <".a:fname.">")
|
||||||
endif
|
endif
|
||||||
let fname= substitute(a:fname,'\.bz2$','','')
|
let fname= substitute(a:fname,'\.bz2$','','')
|
||||||
exe "e ".escape(fname,' \')
|
exe "e ".escape(fname,' \')
|
||||||
call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)")
|
if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
|
||||||
|
|
||||||
elseif expand("%") =~ '.*\.bz2' && executable("bzip2")
|
elseif expand("%") =~ '.*\.bz2' && executable("bzip2")
|
||||||
" handle *.bz2 with bzip2 -d
|
" handle *.bz2 with bzip2 -d
|
||||||
silent exe "!bzip2 -d ".s:Escape(a:fname)
|
silent exe "!bzip2 -d ".shellescape(a:fname)
|
||||||
if v:shell_error != 0
|
if v:shell_error != 0
|
||||||
call vimball#ShowMesg(s:WARNING,'(vimball#Decompress) "bzip2 -d" may have failed with <'.a:fname.">")
|
call vimball#ShowMesg(s:WARNING,'(vimball#Decompress) "bzip2 -d" may have failed with <'.a:fname.">")
|
||||||
endif
|
endif
|
||||||
let fname= substitute(a:fname,'\.bz2$','','')
|
let fname= substitute(a:fname,'\.bz2$','','')
|
||||||
exe "e ".escape(fname,' \')
|
exe "e ".escape(fname,' \')
|
||||||
call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)")
|
if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
|
||||||
|
|
||||||
elseif expand("%") =~ '.*\.zip' && executable("unzip")
|
elseif expand("%") =~ '.*\.zip' && executable("unzip")
|
||||||
" handle *.zip with unzip
|
" handle *.zip with unzip
|
||||||
silent exe "!unzip ".s:Escape(a:fname)
|
silent exe "!unzip ".shellescape(a:fname)
|
||||||
if v:shell_error != 0
|
if v:shell_error != 0
|
||||||
call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) unzip may have failed with <".a:fname.">")
|
call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) unzip may have failed with <".a:fname.">")
|
||||||
endif
|
endif
|
||||||
let fname= substitute(a:fname,'\.zip$','','')
|
let fname= substitute(a:fname,'\.zip$','','')
|
||||||
exe "e ".escape(fname,' \')
|
exe "e ".escape(fname,' \')
|
||||||
call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)")
|
if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
set noma bt=nofile fmr=[[[,]]] fdm=marker
|
if a:0 == 0| setlocal noma bt=nofile fmr=[[[,]]] fdm=marker | endif
|
||||||
|
|
||||||
" call Dret("Decompress")
|
" call Dret("Decompress")
|
||||||
endfun
|
endfun
|
||||||
@ -533,20 +525,21 @@ endfun
|
|||||||
" vimball#ShowMesg: {{{2
|
" vimball#ShowMesg: {{{2
|
||||||
fun! vimball#ShowMesg(level,msg)
|
fun! vimball#ShowMesg(level,msg)
|
||||||
" call Dfunc("vimball#ShowMesg(level=".a:level." msg<".a:msg.">)")
|
" call Dfunc("vimball#ShowMesg(level=".a:level." msg<".a:msg.">)")
|
||||||
|
|
||||||
let rulerkeep = &ruler
|
let rulerkeep = &ruler
|
||||||
let showcmdkeep = &showcmd
|
let showcmdkeep = &showcmd
|
||||||
set noruler noshowcmd
|
set noruler noshowcmd
|
||||||
redraw!
|
redraw!
|
||||||
|
|
||||||
if &fo =~ '[ta]'
|
if &fo =~ '[ta]'
|
||||||
echomsg "***vimball*** " a:msg
|
echomsg "***vimball*** ".a:msg
|
||||||
else
|
else
|
||||||
if a:level == s:WARNING || a:level == s:USAGE
|
if a:level == s:WARNING || a:level == s:USAGE
|
||||||
echohl WarningMsg
|
echohl WarningMsg
|
||||||
elseif a:level == s:ERROR
|
elseif a:level == s:ERROR
|
||||||
echohl Error
|
echohl Error
|
||||||
endif
|
endif
|
||||||
echomsg "***vimball*** " a:msg
|
echomsg "***vimball*** ".a:msg
|
||||||
echohl None
|
echohl None
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@ -571,27 +564,6 @@ fun! s:ChgDir(newdir)
|
|||||||
" call Dret("ChgDir : curdir<".getcwd().">")
|
" call Dret("ChgDir : curdir<".getcwd().">")
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" s:Path: prepend and append quotes and do escaping {{{2
|
|
||||||
fun! s:Path(cmd,quote)
|
|
||||||
" call Dfunc("Path(cmd<".a:cmd."> quote<".a:quote.">) vimball_path_escape<".g:vimball_path_escape.">")
|
|
||||||
if (has("win32") || has("win95") || has("win64") || has("win16"))
|
|
||||||
" let cmdpath= a:quote.substitute(a:cmd,'/','\\','g').a:quote
|
|
||||||
let cmdpath= a:quote.substitute(a:cmd,'\\','/','g').a:quote
|
|
||||||
" call Decho("cmdpath<".cmdpath."> (win32 mod)")
|
|
||||||
else
|
|
||||||
let cmdpath= a:quote.a:cmd.a:quote
|
|
||||||
" call Decho("cmdpath<".cmdpath."> (not-win32 mod)")
|
|
||||||
endif
|
|
||||||
if a:quote == "" && g:vimball_path_escape !~ ' '
|
|
||||||
let cmdpath= escape(cmdpath,' ')
|
|
||||||
" call Decho("cmdpath<".cmdpath."> (empty quote case)")
|
|
||||||
endif
|
|
||||||
let cmdpath= escape(cmdpath,g:vimball_path_escape)
|
|
||||||
" call Dret("Path <".cmdpath.">")
|
|
||||||
return cmdpath
|
|
||||||
endfun
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" s:RecordInVar: record a un-vimball command in the .VimballRecord file {{{2
|
" s:RecordInVar: record a un-vimball command in the .VimballRecord file {{{2
|
||||||
fun! s:RecordInVar(home,cmd)
|
fun! s:RecordInVar(home,cmd)
|
||||||
@ -664,9 +636,9 @@ fun! s:RecordInFile(home)
|
|||||||
endfun
|
endfun
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" s:VimballHome: determine/get home directory path (usually from rtp) {{{2
|
" vimball#VimballHome: determine/get home directory path (usually from rtp) {{{2
|
||||||
fun! s:VimballHome()
|
fun! vimball#VimballHome()
|
||||||
" call Dfunc("VimballHome()")
|
" call Dfunc("vimball#VimballHome()")
|
||||||
if exists("g:vimball_home")
|
if exists("g:vimball_home")
|
||||||
let home= g:vimball_home
|
let home= g:vimball_home
|
||||||
else
|
else
|
||||||
@ -692,14 +664,14 @@ fun! s:VimballHome()
|
|||||||
if !isdirectory(home)
|
if !isdirectory(home)
|
||||||
if exists("g:vimball_mkdir")
|
if exists("g:vimball_mkdir")
|
||||||
" call Decho("home<".home."> isn't a directory -- making it now with g:vimball_mkdir<".g:vimball_mkdir.">")
|
" call Decho("home<".home."> isn't a directory -- making it now with g:vimball_mkdir<".g:vimball_mkdir.">")
|
||||||
" call Decho("system(".g:vimball_mkdir." ".s:Escape(home).")")
|
" call Decho("system(".g:vimball_mkdir." ".shellescape(home).")")
|
||||||
call system(g:vimball_mkdir." ".s:Escape(home))
|
call system(g:vimball_mkdir." ".shellescape(home))
|
||||||
else
|
else
|
||||||
" call Decho("home<".home."> isn't a directory -- making it now with mkdir()")
|
" call Decho("home<".home."> isn't a directory -- making it now with mkdir()")
|
||||||
call mkdir(home)
|
call mkdir(home)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
" call Dret("VimballHome <".home.">")
|
" call Dret("vimball#VimballHome <".home.">")
|
||||||
return home
|
return home
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
@ -713,14 +685,14 @@ fun! vimball#SaveSettings()
|
|||||||
let s:acdkeep = &acd
|
let s:acdkeep = &acd
|
||||||
endif
|
endif
|
||||||
let s:eikeep = &ei
|
let s:eikeep = &ei
|
||||||
let s:fenkeep = &fen
|
let s:fenkeep = &l:fen
|
||||||
let s:hidkeep = &hidden
|
let s:hidkeep = &hidden
|
||||||
let s:ickeep = &ic
|
let s:ickeep = &ic
|
||||||
let s:lzkeep = &lz
|
let s:lzkeep = &lz
|
||||||
let s:pmkeep = &pm
|
let s:pmkeep = &pm
|
||||||
let s:repkeep = &report
|
let s:repkeep = &report
|
||||||
let s:vekeep = &ve
|
let s:vekeep = &ve
|
||||||
let s:ffkeep = &ff
|
let s:ffkeep = &l:ff
|
||||||
if exists("&acd")
|
if exists("&acd")
|
||||||
setlocal ei=all ve=all noacd nofen noic report=999 nohid bt= ma lz pm= ff=unix
|
setlocal ei=all ve=all noacd nofen noic report=999 nohid bt= ma lz pm= ff=unix
|
||||||
else
|
else
|
||||||
@ -739,7 +711,7 @@ fun! vimball#RestoreSettings()
|
|||||||
if exists("&acd")
|
if exists("&acd")
|
||||||
let &acd = s:acdkeep
|
let &acd = s:acdkeep
|
||||||
endif
|
endif
|
||||||
let &fen = s:fenkeep
|
let &l:fen = s:fenkeep
|
||||||
let &hidden = s:hidkeep
|
let &hidden = s:hidkeep
|
||||||
let &ic = s:ickeep
|
let &ic = s:ickeep
|
||||||
let &lz = s:lzkeep
|
let &lz = s:lzkeep
|
||||||
@ -747,7 +719,7 @@ fun! vimball#RestoreSettings()
|
|||||||
let &report = s:repkeep
|
let &report = s:repkeep
|
||||||
let &ve = s:vekeep
|
let &ve = s:vekeep
|
||||||
let &ei = s:eikeep
|
let &ei = s:eikeep
|
||||||
let &ff = s:ffkeep
|
let &l:ff = s:ffkeep
|
||||||
if s:makeep[0] != 0
|
if s:makeep[0] != 0
|
||||||
" restore mark a
|
" restore mark a
|
||||||
" call Decho("restore mark-a: makeep=".string(makeep))
|
" call Decho("restore mark-a: makeep=".string(makeep))
|
||||||
@ -760,21 +732,6 @@ fun! vimball#RestoreSettings()
|
|||||||
" call Dret("RestoreSettings")
|
" call Dret("RestoreSettings")
|
||||||
endfun
|
endfun
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" s:Escape: {{{2
|
|
||||||
fun s:Escape(name)
|
|
||||||
" shellescape() was added by patch 7.0.111
|
|
||||||
if exists("*shellescape")
|
|
||||||
return shellescape(a:name)
|
|
||||||
endif
|
|
||||||
return g:netrw_shq . a:name . g:netrw_shq
|
|
||||||
endfun
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Restore:
|
|
||||||
let &cpo= s:keepcpo
|
|
||||||
unlet s:keepcpo
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Modelines: {{{1
|
" Modelines: {{{1
|
||||||
" vim: fdm=marker
|
" vim: fdm=marker
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*align.txt* The Alignment Tool Oct 29, 2008
|
*align.txt* The Alignment Tool Mar 04, 2009
|
||||||
|
|
||||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||||
(remove NOSPAM from Campbell's email first)
|
(remove NOSPAM from Campbell's email first)
|
||||||
@ -51,8 +51,17 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Align-copyright*
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
2. Align Manual *alignman* *alignmanual* *align-manual* {{{1
|
2. Align Manual *alignman* *alignmanual* *align-manual* {{{1
|
||||||
|
|
||||||
To Enable: put <Align.vim> and <AlignMaps.vim> into your .vim/plugin
|
Align comes as a vimball; simply typing >
|
||||||
To see a user's guide, see |align-usage|
|
vim Align.vba.gz
|
||||||
|
:so %
|
||||||
|
< should put its components where they belong. The components are: >
|
||||||
|
.vim/plugin/AlignPlugin.vim
|
||||||
|
.vim/plugin/AlignMapsPlugin.vim
|
||||||
|
.vim/plugin/cecutil.vim
|
||||||
|
.vim/autoload/Align.vim
|
||||||
|
.vim/autoload/AlignMaps.vim
|
||||||
|
.vim/doc/Align.txt
|
||||||
|
< To see a user's guide, see |align-userguide|
|
||||||
To see examples, see |alignctrl| and |alignmaps|
|
To see examples, see |alignctrl| and |alignmaps|
|
||||||
>
|
>
|
||||||
/=============+=========+=====================================================\
|
/=============+=========+=====================================================\
|
||||||
@ -130,7 +139,7 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Align-copyright*
|
|||||||
\=============================================================================/
|
\=============================================================================/
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
3. Alignment Usage *alignusage* *align-usage* {{{1
|
3. Alignment Usage *alignusage* *align-usage* *align-userguide* {{{1
|
||||||
|
|
||||||
|
|
||||||
ALIGNMENT CONCEPTS *align-concept* *align-concepts* {{{2
|
ALIGNMENT CONCEPTS *align-concept* *align-concepts* {{{2
|
||||||
@ -179,8 +188,8 @@ ALIGNMENT CONCEPTS *align-concept* *align-concepts* {{{2
|
|||||||
xx = yy = zz = 4;
|
xx = yy = zz = 4;
|
||||||
zzz = yyy = zzz = 5;
|
zzz = yyy = zzz = 5;
|
||||||
a = b = c = 3;
|
a = b = c = 3;
|
||||||
< There are more options available for field justification: see
|
< There are many more options available for field justification: see
|
||||||
|alignctrl-c|.
|
|alignctrl-c| and |alignctrl--|.
|
||||||
|
|
||||||
Separators, although commonly only one character long, are actually
|
Separators, although commonly only one character long, are actually
|
||||||
specified by regular expressions (see |regexp|), and one may left
|
specified by regular expressions (see |regexp|), and one may left
|
||||||
@ -249,7 +258,8 @@ ALIGNMENT COMMANDS *align-command* *align-commands* {{{2
|
|||||||
used (at least once) previously; this command
|
used (at least once) previously; this command
|
||||||
restores the AlignCtrl settings when AlignPush
|
restores the AlignCtrl settings when AlignPush
|
||||||
was last used.
|
was last used.
|
||||||
<
|
< Also see |alignctrl-m| for a way to automatically do
|
||||||
|
an AlignPop after an Align (primarily this is for maps).
|
||||||
|
|
||||||
ALIGNMENT OPTIONS *align-option* *align-options* {{{2
|
ALIGNMENT OPTIONS *align-option* *align-options* {{{2
|
||||||
*align-utf8* *align-utf* *align-codepoint* *align-strlen* *align-multibyte*
|
*align-utf8* *align-utf* *align-codepoint* *align-strlen* *align-multibyte*
|
||||||
@ -258,9 +268,20 @@ ALIGNMENT OPTIONS *align-option* *align-options* {{{2
|
|||||||
available with utf-8, Align now provides a special option which you
|
available with utf-8, Align now provides a special option which you
|
||||||
may choose based upon your needs:
|
may choose based upon your needs:
|
||||||
|
|
||||||
|
Use Built-in strlen() ~
|
||||||
|
>
|
||||||
|
let g:Align_xstrlen= 0
|
||||||
|
|
||||||
|
< This is the fastest method, but it doesn't handle multibyte characters
|
||||||
|
well. It is the default for:
|
||||||
|
|
||||||
|
enc=latin1
|
||||||
|
vim compiled without multi-byte support
|
||||||
|
$LANG is en_US.UTF-8 (assuming USA english)
|
||||||
|
|
||||||
Number of codepoints (Latin a + combining circumflex is two codepoints)~
|
Number of codepoints (Latin a + combining circumflex is two codepoints)~
|
||||||
>
|
>
|
||||||
let g:Align_xstrlen= 1:
|
let g:Align_xstrlen= 1 (default)
|
||||||
<
|
<
|
||||||
Number of spacing codepoints (Latin a + combining circumflex is one~
|
Number of spacing codepoints (Latin a + combining circumflex is one~
|
||||||
spacing codepoint; a hard tab is one; wide and narrow CJK are one~
|
spacing codepoint; a hard tab is one; wide and narrow CJK are one~
|
||||||
@ -276,7 +297,7 @@ ALIGNMENT OPTIONS *align-option* *align-options* {{{2
|
|||||||
<
|
<
|
||||||
By putting one of these settings into your <.vimrc>, Align will use an
|
By putting one of these settings into your <.vimrc>, Align will use an
|
||||||
internal (interpreted) function to determine a string's length instead
|
internal (interpreted) function to determine a string's length instead
|
||||||
of the Vim's built-in |strlen()| function. As the function is
|
of the Vim's built-in |strlen()| function. Since the function is
|
||||||
interpreted, Align will run a bit slower but will handle such strings
|
interpreted, Align will run a bit slower but will handle such strings
|
||||||
correctly. The last setting (g:Align_xstrlen= 3) probably will run
|
correctly. The last setting (g:Align_xstrlen= 3) probably will run
|
||||||
the slowest but be the most accurate. (thanks to Tony Mechelynck for
|
the slowest but be the most accurate. (thanks to Tony Mechelynck for
|
||||||
@ -286,17 +307,17 @@ ALIGNMENT OPTIONS *align-option* *align-options* {{{2
|
|||||||
ALIGNMENT CONTROL *alignctrl* *align-control* {{{2
|
ALIGNMENT CONTROL *alignctrl* *align-control* {{{2
|
||||||
|
|
||||||
This command doesn't do the alignment operation itself; instead, it
|
This command doesn't do the alignment operation itself; instead, it
|
||||||
controls the subsequent alignment operation(s).
|
controls subsequent alignment operation(s).
|
||||||
|
|
||||||
The first argument to AlignCtrl is a string which may contain one or
|
The first argument to AlignCtrl is a string which may contain one or
|
||||||
more alignment control commands. Most of the commands are single
|
more alignment control settings. Most of the settings are specified
|
||||||
letter commands; the exceptions are the p# and P# commands which
|
by single letters; the exceptions are the p# and P# commands which
|
||||||
interpret digits following the p or P as specifying padding about the
|
interpret a digit following the p or P as specifying padding about the
|
||||||
separator.
|
separator.
|
||||||
|
|
||||||
The typical text line is considered to be composed of two or more
|
The typical text line is considered to be composed of two or more
|
||||||
fields separated by one or more separator pattern(s):
|
fields separated by one or more separator pattern(s): >
|
||||||
>
|
|
||||||
ws field ws separator ws field ws separator ...
|
ws field ws separator ws field ws separator ...
|
||||||
<
|
<
|
||||||
where "ws" stands for "white space" such as blanks and/or tabs.
|
where "ws" stands for "white space" such as blanks and/or tabs.
|
||||||
@ -306,9 +327,11 @@ ALIGNMENT CONTROL *alignctrl* *align-control* {{{2
|
|||||||
|
|
||||||
As a result, separators may not have white space (tabs or blanks) on
|
As a result, separators may not have white space (tabs or blanks) on
|
||||||
their outsides (ie. ": :" is fine as a separator, but " :: " is
|
their outsides (ie. ": :" is fine as a separator, but " :: " is
|
||||||
not). Usually such separators are not needed.
|
not). Usually such separators are not needed, although a map has been
|
||||||
|
provided which works around this limitation and aligns on whitespace
|
||||||
|
(see |alignmap-tsp|).
|
||||||
|
|
||||||
However, if you really need to have such separators with leading or
|
However, if you really need to have separators with leading or
|
||||||
trailing whitespace, consider handling them by performing a substitute
|
trailing whitespace, consider handling them by performing a substitute
|
||||||
first (ie. s/ :: /@/g), do the alignment on the temporary pattern
|
first (ie. s/ :: /@/g), do the alignment on the temporary pattern
|
||||||
(ie. @), and then perform a substitute to revert the separators back
|
(ie. @), and then perform a substitute to revert the separators back
|
||||||
@ -533,7 +556,7 @@ ALIGNMENT CONTROL *alignctrl* *align-control* {{{2
|
|||||||
|
|
||||||
Separators may be of differing lengths as shown in the example below.
|
Separators may be of differing lengths as shown in the example below.
|
||||||
Hence they too may be justified left, right, or centered.
|
Hence they too may be justified left, right, or centered.
|
||||||
Furthermore, separator justification specification is cyclic:
|
Furthermore, separator justification specifications are cyclic:
|
||||||
|
|
||||||
< means <<<<<... justify separator(s) to the left
|
< means <<<<<... justify separator(s) to the left
|
||||||
> means >>>>>... justify separator(s) to the right
|
> means >>>>>... justify separator(s) to the right
|
||||||
@ -595,7 +618,7 @@ ALIGNMENT CONTROL *alignctrl* *align-control* {{{2
|
|||||||
AlignCtrl v
|
AlignCtrl v
|
||||||
<
|
<
|
||||||
To see what g/v patterns are currently active, just use the reporting
|
To see what g/v patterns are currently active, just use the reporting
|
||||||
capability of a plain AlignCtrl call: >
|
capability of an unadorned call to AlignCtrl: >
|
||||||
|
|
||||||
AlignCtrl
|
AlignCtrl
|
||||||
<
|
<
|
||||||
@ -656,6 +679,13 @@ ALIGNMENT CONTROL *alignctrl* *align-control* {{{2
|
|||||||
padded on the right with spaces (left justification), and separators
|
padded on the right with spaces (left justification), and separators
|
||||||
will be padded on each side with a single space.
|
will be padded on each side with a single space.
|
||||||
|
|
||||||
|
To change one of these items, see:
|
||||||
|
|
||||||
|
AlignCtrl......|alignctrl|
|
||||||
|
qty............|align-concept|
|
||||||
|
AlignStyle.....|alignctrl--| |alignctrl-+| |alignctrl-:||alignctrl-c|
|
||||||
|
Padding........|alignctrl-p| |alignctrl-P|
|
||||||
|
|
||||||
One may get a string which can be fed back into AlignCtrl: >
|
One may get a string which can be fed back into AlignCtrl: >
|
||||||
|
|
||||||
:let alignctrl= Align#AlignCtrl()
|
:let alignctrl= Align#AlignCtrl()
|
||||||
@ -680,7 +710,7 @@ ALIGNMENT *align-align* {{{2
|
|||||||
|
|
||||||
:[range]Align [list-of-separators]
|
:[range]Align [list-of-separators]
|
||||||
<
|
<
|
||||||
where the |range| is the usual Vim-powered set of possibilities; the
|
where the |:range| is the usual Vim-powered set of possibilities; the
|
||||||
list of separators is the same as the AlignCtrl capability. There is
|
list of separators is the same as the AlignCtrl capability. There is
|
||||||
only one list of separators, but either AlignCtrl or Align can be used
|
only one list of separators, but either AlignCtrl or Align can be used
|
||||||
to specify that list.
|
to specify that list.
|
||||||
@ -728,19 +758,19 @@ ALIGNMENT *align-align* {{{2
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
4. Alignment Maps *alignmaps* *align-maps* {{{1
|
4. Alignment Maps *alignmaps* *align-maps* {{{1
|
||||||
|
|
||||||
There are a number of maps using Align#AlignCtrl() and Align#Align() in the
|
There are a number of maps using Align#AlignCtrl() and Align#Align()
|
||||||
<AlignMaps.vim> file. This file may also be put into the plugins
|
in the <AlignMapsPlugin.vim> file. This file may also be put into the
|
||||||
subdirectory. Since AlignCtrl and Align supercede textab and its
|
plugins subdirectory. Since AlignCtrl and Align supercede textab and
|
||||||
<ttalign.vim> file, the maps either have a leading "t" (for "textab")
|
its <ttalign.vim> file, the maps either have a leading "t" (for
|
||||||
or the more complicated ones an "a" (for "alignment") for backwards
|
"textab") or the more complicated ones an "a" (for "alignment") for
|
||||||
compatibility.
|
backwards compatibility.
|
||||||
|
|
||||||
Thee maps are shown below with a leading backslash (\). Actually,
|
The maps are shown below with a leading backslash (\). Actually, the
|
||||||
the <Leader> construct is used (see :help mapleader), so the leading
|
<Leader> construct is used (see |mapleader|), so the maps' leading
|
||||||
map kick-off character is easily customized.
|
kick-off character is easily customized.
|
||||||
|
|
||||||
Furthermore, all AlignMaps.vim maps use the <Plug> construct (see
|
Furthermore, all AlignMapsPlugin.vim maps use the <Plug> construct (see
|
||||||
|<Plug>|and |<usr_41.txt|). Hence, if one wishes to override the
|
|<Plug>|and |usr_41.txt|). Hence, if one wishes to override the
|
||||||
mapping entirely, one may do that, too. As an example: >
|
mapping entirely, one may do that, too. As an example: >
|
||||||
map <Leader>ACOM <Plug>AM_acom
|
map <Leader>ACOM <Plug>AM_acom
|
||||||
< would have \ACOM do what \acom previously did (assuming that the
|
< would have \ACOM do what \acom previously did (assuming that the
|
||||||
@ -748,6 +778,7 @@ ALIGNMENT *align-align* {{{2
|
|||||||
|
|
||||||
\a, : useful for breaking up comma-separated
|
\a, : useful for breaking up comma-separated
|
||||||
declarations prior to \adec |alignmap-a,|
|
declarations prior to \adec |alignmap-a,|
|
||||||
|
\a( : aligns ( and , (useful for prototypes) *alignmap-a(*
|
||||||
\a? : aligns (...)? ...:... expressions on ? and : |alignmap-a?|
|
\a? : aligns (...)? ...:... expressions on ? and : |alignmap-a?|
|
||||||
\a< : aligns << and >> for c++ |alignmap-a<|
|
\a< : aligns << and >> for c++ |alignmap-a<|
|
||||||
\a= : aligns := assignments |alignmap-a=|
|
\a= : aligns := assignments |alignmap-a=|
|
||||||
@ -777,6 +808,12 @@ ALIGNMENT *align-align* {{{2
|
|||||||
(left justified)
|
(left justified)
|
||||||
\ts, : like \t, but swaps whitespace on the right of *alignmap-ts,*
|
\ts, : like \t, but swaps whitespace on the right of *alignmap-ts,*
|
||||||
the commas to their left
|
the commas to their left
|
||||||
|
\ts: : like \t: but swaps whitespace on the right of *alignmap-ts:*
|
||||||
|
the colons to their left
|
||||||
|
\ts< : like \t< but swaps whitespace on the right of *alignmap-ts<*
|
||||||
|
the less-than signs to their left
|
||||||
|
\ts= : like \t= but swaps whitespace on the right of *alignmap-ts=*
|
||||||
|
the equals signs to their left
|
||||||
\Tsp : use Align to make a table separated by blanks |alignmap-Tsp|
|
\Tsp : use Align to make a table separated by blanks |alignmap-Tsp|
|
||||||
(right justified)
|
(right justified)
|
||||||
\tsq : use Align to make a table separated by blanks |alignmap-tsq|
|
\tsq : use Align to make a table separated by blanks |alignmap-tsq|
|
||||||
@ -808,7 +845,7 @@ ALIGNMENT *align-align* {{{2
|
|||||||
|
|
||||||
ALIGNMENT MAP USE WITH VISUAL MODE~
|
ALIGNMENT MAP USE WITH VISUAL MODE~
|
||||||
Alternatively, one may select the text with the "V" visual mode
|
Alternatively, one may select the text with the "V" visual mode
|
||||||
selector.
|
command.
|
||||||
|
|
||||||
ALIGNMENT MAP USE WITH MENUS~
|
ALIGNMENT MAP USE WITH MENUS~
|
||||||
One may use the mark-and-move style (ma, move, use the menu) or
|
One may use the mark-and-move style (ma, move, use the menu) or
|
||||||
@ -816,7 +853,7 @@ ALIGNMENT *align-align* {{{2
|
|||||||
the alignment map with menu selection). The alignment map menu
|
the alignment map with menu selection). The alignment map menu
|
||||||
items are under DrChip.AlignMaps .
|
items are under DrChip.AlignMaps .
|
||||||
|
|
||||||
One may change the top level menu name to whatever is wished; by
|
One may even change the top level menu name to whatever is wished; by
|
||||||
default, its >
|
default, its >
|
||||||
let g:DrChipTopLvlMenu= "DrChip."
|
let g:DrChipTopLvlMenu= "DrChip."
|
||||||
< If you set the variable to the empty string (""), then no menu items
|
< If you set the variable to the empty string (""), then no menu items
|
||||||
@ -825,14 +862,19 @@ ALIGNMENT *align-align* {{{2
|
|||||||
must be included).
|
must be included).
|
||||||
|
|
||||||
COMPLEX ALIGNMENT MAP METHOD~
|
COMPLEX ALIGNMENT MAP METHOD~
|
||||||
|
|
||||||
For those complex alignment maps which do alignment on constructs
|
For those complex alignment maps which do alignment on constructs
|
||||||
(e.g. \acom, \adec, etc), a series of substitutes is used to insert
|
(e.g. \acom, \adec, etc), a series of substitutes is used to insert
|
||||||
"@" symbols in appropriate locations. Align#Align() is then used to do
|
"@" symbols in appropriate locations. Align#Align() is then used to
|
||||||
alignment directly on "@"s; then it is followed by further substitutes
|
do alignment directly on "@"s; then it is followed by further
|
||||||
to do clean-up. However, the maps \WS and \WE protect any original
|
substitutes to do clean-up. However, the maps \WS and \WE, used by
|
||||||
embedded "@" symbols by first converting them to <DEL> characters,
|
every map supported by AlignMaps, protect any original embedded "@"
|
||||||
doing the requested job, and then converting them back.
|
symbols by first converting them to <DEL> characters, doing the
|
||||||
|
requested job, and then converting them back. >
|
||||||
|
|
||||||
|
\WS calls AlignMaps#WrapperStart()
|
||||||
|
\WE calls AlignMaps#WrapperEnd()
|
||||||
|
<
|
||||||
|
|
||||||
---------------------------
|
---------------------------
|
||||||
Alignment Map Examples: \a, *alignmap-a,* {{{3
|
Alignment Map Examples: \a, *alignmap-a,* {{{3
|
||||||
@ -1136,7 +1178,7 @@ ALIGNMENT *align-align* {{{2
|
|||||||
Also see |alignmap-acom|
|
Also see |alignmap-acom|
|
||||||
|
|
||||||
|
|
||||||
---------------------------
|
--------------------------- *alignmap-Tsp*
|
||||||
Alignment Map Examples: \tsp *alignmap-tsp* {{{3
|
Alignment Map Examples: \tsp *alignmap-tsp* {{{3
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
@ -1266,9 +1308,14 @@ ALIGNMENT *align-align* {{{2
|
|||||||
<TR><TD> ...field three... </TD><TD> ...field four... </TD></TR>
|
<TR><TD> ...field three... </TD><TD> ...field four... </TD></TR>
|
||||||
<
|
<
|
||||||
==============================================================================
|
==============================================================================
|
||||||
4. Alignment Tool History *align-history* {{{1
|
4. Alignment Tools' History *align-history* {{{1
|
||||||
|
|
||||||
ALIGN HISTORY {{{2
|
ALIGN HISTORY {{{2
|
||||||
|
35 : Nov 02, 2008 * g:loaded_AlignPlugin testing to prevent re-loading
|
||||||
|
installed
|
||||||
|
Nov 19, 2008 * new sanity check for an AlignStyle of just ":"
|
||||||
|
Jan 08, 2009 * save&restore of |'mod'| now done with local
|
||||||
|
variant
|
||||||
34 : Jul 08, 2008 * using :AlignCtrl before entering any alignment
|
34 : Jul 08, 2008 * using :AlignCtrl before entering any alignment
|
||||||
control commands was causing an error.
|
control commands was causing an error.
|
||||||
33 : Sep 20, 2007 * s:Strlen() introduced to support various ways
|
33 : Sep 20, 2007 * s:Strlen() introduced to support various ways
|
||||||
@ -1335,6 +1382,14 @@ ALIGN HISTORY {{{2
|
|||||||
9 : Jun 25, 2002 : implemented cyclic padding
|
9 : Jun 25, 2002 : implemented cyclic padding
|
||||||
|
|
||||||
ALIGNMENT MAP HISTORY *alignmap-history* {{{2
|
ALIGNMENT MAP HISTORY *alignmap-history* {{{2
|
||||||
|
v41 Nov 02, 2008 * g:loaded_AlignMapsPlugin testing to prevent
|
||||||
|
re-loading installed
|
||||||
|
* AlignMaps now use 0x0f (ctrl-p) for special
|
||||||
|
character substitutions (instead of 0xff).
|
||||||
|
Seems to avoid some problems with having to
|
||||||
|
use Strlen().
|
||||||
|
* bug fixed with \ts,
|
||||||
|
* new maps: \ts; \ts, \ts: \ts< \ts= \a(
|
||||||
v40 Oct 21, 2008 * Modified AlignMaps so that its maps use <Plug>s
|
v40 Oct 21, 2008 * Modified AlignMaps so that its maps use <Plug>s
|
||||||
and <script>s. \t@ and related maps have been
|
and <script>s. \t@ and related maps have been
|
||||||
changed to call StdAlign() instead. The
|
changed to call StdAlign() instead. The
|
||||||
|
21
vimfiles/doc/editsrec.txt
Normal file
21
vimfiles/doc/editsrec.txt
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
" Vim Global Plugin for Editing .srec Files, doc-File
|
||||||
|
" Maintainer: Alexander Fleck
|
||||||
|
" <alexander.fleck@gmx.net>
|
||||||
|
" License: This File is placed in the Public Domain.
|
||||||
|
" Revision | Date [DD.MM.YY] | Changes
|
||||||
|
" 00.01.00 | 05.07.09 | 01. Revision
|
||||||
|
|
||||||
|
*editsrec.txt* Global Plugin for Editing .srec Files
|
||||||
|
|
||||||
|
This Plugin consists of the following Files:
|
||||||
|
/plugin/editsrec.vim
|
||||||
|
/plugin/editsrec_test.txt
|
||||||
|
/autoload/libsrec.vim
|
||||||
|
and
|
||||||
|
/doc/editsrec.txt
|
||||||
|
, this File.
|
||||||
|
|
||||||
|
The Purpose of this Plugin is to edit .srec-Files.
|
||||||
|
Currently it only allows Editing Line by Line,
|
||||||
|
but Handling of Files will be added later.
|
||||||
|
|
@ -1,8 +1,22 @@
|
|||||||
*pi_netrw.txt* For Vim version 7.2. Last change: 2008 Oct 23
|
*pi_netrw.txt* For Vim version 7.2. Last change: 2009 Dec 28
|
||||||
|
|
||||||
-----------------------------------------------------
|
-----------------------------------------------------
|
||||||
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
|
NETRW REFERENCE MANUAL by Charles E. Campbell, Jr.
|
||||||
-----------------------------------------------------
|
-----------------------------------------------------
|
||||||
|
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||||
|
(remove NOSPAM from Campbell's email first)
|
||||||
|
|
||||||
|
Copyright: Copyright (C) 2009 Charles E Campbell, Jr *netrw-copyright*
|
||||||
|
Permission is hereby granted to use and distribute this code, with
|
||||||
|
or without modifications, provided that this copyright notice is
|
||||||
|
copied with it. Like anything else that's free, netrw.vim,
|
||||||
|
netrwPlugin.vim, netrwFileHandlers.vim, netrwSettings.vim,
|
||||||
|
syntax/netrw.vim, and pi_netrw.txt are provided *as is* and comes
|
||||||
|
with no warranty of any kind, either expressed or implied. No
|
||||||
|
guarantees of merchantability. No guarantees of suitability for
|
||||||
|
any purpose. By using this plugin, you agree that in no event will
|
||||||
|
the copyright holder be liable for any damages resulting from the
|
||||||
|
use of this software.
|
||||||
|
|
||||||
|
|
||||||
*dav* *ftp* *netrw-file* *Nread* *rcp* *scp*
|
*dav* *ftp* *netrw-file* *Nread* *rcp* *scp*
|
||||||
@ -18,6 +32,7 @@
|
|||||||
EXTERNAL APPLICATIONS AND PROTOCOLS................|netrw-externapp|
|
EXTERNAL APPLICATIONS AND PROTOCOLS................|netrw-externapp|
|
||||||
READING............................................|netrw-read|
|
READING............................................|netrw-read|
|
||||||
WRITING............................................|netrw-write|
|
WRITING............................................|netrw-write|
|
||||||
|
SOURCING...........................................|netrw-source|
|
||||||
DIRECTORY LISTING..................................|netrw-dirlist|
|
DIRECTORY LISTING..................................|netrw-dirlist|
|
||||||
CHANGING THE USERID AND PASSWORD...................|netrw-chgup|
|
CHANGING THE USERID AND PASSWORD...................|netrw-chgup|
|
||||||
VARIABLES AND SETTINGS.............................|netrw-variables|
|
VARIABLES AND SETTINGS.............................|netrw-variables|
|
||||||
@ -38,7 +53,7 @@
|
|||||||
Browsing With A Horizontally Split Window..........|netrw-o|
|
Browsing With A Horizontally Split Window..........|netrw-o|
|
||||||
Browsing With A New Tab............................|netrw-t|
|
Browsing With A New Tab............................|netrw-t|
|
||||||
Browsing With A Vertically Split Window............|netrw-v|
|
Browsing With A Vertically Split Window............|netrw-v|
|
||||||
Change Listing Style...............................|netrw-i|
|
Change Listing Style.(thin wide long tree).........|netrw-i|
|
||||||
Changing To A Bookmarked Directory.................|netrw-gb|
|
Changing To A Bookmarked Directory.................|netrw-gb|
|
||||||
Changing To A Predecessor Directory................|netrw-u|
|
Changing To A Predecessor Directory................|netrw-u|
|
||||||
Changing To A Successor Directory..................|netrw-U|
|
Changing To A Successor Directory..................|netrw-U|
|
||||||
@ -81,10 +96,12 @@
|
|||||||
Renaming Files Or Directories......................|netrw-move|
|
Renaming Files Or Directories......................|netrw-move|
|
||||||
Reversing Sorting Order............................|netrw-r|
|
Reversing Sorting Order............................|netrw-r|
|
||||||
Selecting Sorting Style............................|netrw-s|
|
Selecting Sorting Style............................|netrw-s|
|
||||||
|
Setting Editing Window.............................|netrw-C|
|
||||||
10. Problems and Fixes...................................|netrw-problems|
|
10. Problems and Fixes...................................|netrw-problems|
|
||||||
11. Debugging Netrw Itself...............................|netrw-debug|
|
11. Debugging Netrw Itself...............................|netrw-debug|
|
||||||
12. History..............................................|netrw-history|
|
12. History..............................................|netrw-history|
|
||||||
13. Credits..............................................|netrw-credits|
|
13. Todo.................................................|netrw-todo|
|
||||||
|
14. Credits..............................................|netrw-credits|
|
||||||
|
|
||||||
{Vi does not have any of this}
|
{Vi does not have any of this}
|
||||||
|
|
||||||
@ -92,7 +109,7 @@
|
|||||||
2. Starting With Netrw *netrw-start* {{{1
|
2. Starting With Netrw *netrw-start* {{{1
|
||||||
|
|
||||||
Netrw makes reading files, writing files, browsing over a network, and
|
Netrw makes reading files, writing files, browsing over a network, and
|
||||||
browsing locally easy! First, make sure that you have plugins enabled, so
|
local browsing easy! First, make sure that you have plugins enabled, so
|
||||||
you'll need to have at least the following in your <.vimrc>:
|
you'll need to have at least the following in your <.vimrc>:
|
||||||
(or see |netrw-activate|) >
|
(or see |netrw-activate|) >
|
||||||
|
|
||||||
@ -137,8 +154,11 @@ the directory name is followed by a "/"): >
|
|||||||
<
|
<
|
||||||
See |netrw-browse| for more!
|
See |netrw-browse| for more!
|
||||||
|
|
||||||
There are more protocols supported by netrw just than scp and ftp, too: see the
|
There are more protocols supported by netrw than just scp and ftp, too: see the
|
||||||
next section, |netrw-externapp|, for how to use these external applications.
|
next section, |netrw-externapp|, on how to use these external applications with
|
||||||
|
netrw and vim.
|
||||||
|
|
||||||
|
PREVENTING LOADING
|
||||||
|
|
||||||
If you want to use plugins, but for some reason don't wish to use netrw, then
|
If you want to use plugins, but for some reason don't wish to use netrw, then
|
||||||
you need to avoid loading both the plugin and the autoload portions of netrw.
|
you need to avoid loading both the plugin and the autoload portions of netrw.
|
||||||
@ -151,7 +171,7 @@ You may do so by placing the following two lines in your <.vimrc>: >
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
3. Netrw Reference *netrw-ref* {{{1
|
3. Netrw Reference *netrw-ref* {{{1
|
||||||
|
|
||||||
Netrw supports several protocols in addition to scp and ftp mentioned
|
Netrw supports several protocols in addition to scp and ftp as mentioned
|
||||||
in |netrw-start|. These include dav, fetch, http,... well, just look
|
in |netrw-start|. These include dav, fetch, http,... well, just look
|
||||||
at the list in |netrw-externapp|. Each protocol is associated with a
|
at the list in |netrw-externapp|. Each protocol is associated with a
|
||||||
variable which holds the default command supporting that protocol.
|
variable which holds the default command supporting that protocol.
|
||||||
@ -175,17 +195,19 @@ EXTERNAL APPLICATIONS AND PROTOCOLS *netrw-externapp* {{{2
|
|||||||
sftp: *g:netrw_sftp_cmd* = "sftp"
|
sftp: *g:netrw_sftp_cmd* = "sftp"
|
||||||
|
|
||||||
*g:netrw_http_xcmd* : the option string for http://... protocols are
|
*g:netrw_http_xcmd* : the option string for http://... protocols are
|
||||||
specified via this variable and may be independently oveerridden.
|
specified via this variable and may be independently overridden. By
|
||||||
|
default, the option arguments for the http-handling commands are: >
|
||||||
|
|
||||||
elinks : "-dump >"
|
elinks : "-source >"
|
||||||
links : "-dump >"
|
links : "-source >"
|
||||||
curl : "-o"
|
curl : "-o"
|
||||||
wget : "-q -O"
|
wget : "-q -O"
|
||||||
fetch : "-o"
|
fetch : "-o"
|
||||||
|
<
|
||||||
For example, if your system has elinks but you want to see the html
|
For example, if your system has elinks, and you'd rather see the
|
||||||
source in detail rather than a text rendering thereof, you may wish
|
page using an attempt at rendering the text, you may wish to have >
|
||||||
to have let g:netrw_http_xcmd= "-source >" in your .vimrc.
|
let g:netrw_http_xcmd= "-dump >"
|
||||||
|
< in your .vimrc.
|
||||||
|
|
||||||
|
|
||||||
READING *netrw-read* *netrw-nread* {{{2
|
READING *netrw-read* *netrw-nread* {{{2
|
||||||
@ -259,8 +281,8 @@ DIRECTORY LISTING *netrw-dirlist* {{{2
|
|||||||
:e ftp://[user]@hostname/path/
|
:e ftp://[user]@hostname/path/
|
||||||
<
|
<
|
||||||
For remote directories (ie. those using scp or ftp), that trailing
|
For remote directories (ie. those using scp or ftp), that trailing
|
||||||
"/" is necessary (it tells netrw that its to treat it as a directory
|
"/" is necessary (the slash tells netrw to treat the argument as a
|
||||||
to browse instead of a file to download).
|
directory to browse instead of a file to download).
|
||||||
|
|
||||||
However, the Nread command can also be used to accomplish this:
|
However, the Nread command can also be used to accomplish this:
|
||||||
|
|
||||||
@ -293,8 +315,17 @@ preferences. One way to look at them is via the command :NetrwSettings (see
|
|||||||
settings are described below, in |netrw-browser-options|, and in
|
settings are described below, in |netrw-browser-options|, and in
|
||||||
|netrw-externapp|:
|
|netrw-externapp|:
|
||||||
|
|
||||||
*b:netrw_lastfile* last file Network-read/written retained on a per-buffer
|
*b:netrw_lastfile* last file Network-read/written retained on a
|
||||||
basis (supports plain :Nw )
|
per-buffer basis (supports plain :Nw )
|
||||||
|
|
||||||
|
*g:netrw_chgwin* specifies a window number where file edits will take
|
||||||
|
place. (also see |netrw-C|)
|
||||||
|
(default) not defined
|
||||||
|
|
||||||
|
*g:Netrw_funcref* specifies a function to be called when netrw edits
|
||||||
|
a file. The file is first edited, and then the
|
||||||
|
function reference (|Funcref|) is called.
|
||||||
|
(default) not defined
|
||||||
|
|
||||||
*g:netrw_ftp* if it doesn't exist, use default ftp
|
*g:netrw_ftp* if it doesn't exist, use default ftp
|
||||||
=0 use default ftp (uid password)
|
=0 use default ftp (uid password)
|
||||||
@ -303,7 +334,7 @@ settings are described below, in |netrw-browser-options|, and in
|
|||||||
value of this variable to see if the alternate ftp
|
value of this variable to see if the alternate ftp
|
||||||
method works for your setup.
|
method works for your setup.
|
||||||
|
|
||||||
*g:netrw_extracmd* default: doesn't exist
|
*g:netrw_ftpextracmd* default: doesn't exist
|
||||||
If this variable exists, then any string it contains
|
If this variable exists, then any string it contains
|
||||||
will be placed into the commands set to your ftp
|
will be placed into the commands set to your ftp
|
||||||
client. As an example:
|
client. As an example:
|
||||||
@ -323,8 +354,8 @@ settings are described below, in |netrw-browser-options|, and in
|
|||||||
*g:netrw_nogx* if this variable exists, then the "gx" map will not
|
*g:netrw_nogx* if this variable exists, then the "gx" map will not
|
||||||
be available (see |netrw-gx|)
|
be available (see |netrw-gx|)
|
||||||
|
|
||||||
*g:netrw_uid* (ftp) user-id, retained on a per-session basis
|
*g:netrw_uid* (ftp) user-id, retained on a per-vim-session basis
|
||||||
*s:netrw_passwd* (ftp) password, retained on a per-session basis
|
*s:netrw_passwd* (ftp) password, retained on a per-vim-session basis
|
||||||
|
|
||||||
*g:netrw_preview* =0 (default) preview window shown in a horizontally
|
*g:netrw_preview* =0 (default) preview window shown in a horizontally
|
||||||
split window
|
split window
|
||||||
@ -335,6 +366,13 @@ settings are described below, in |netrw-browser-options|, and in
|
|||||||
*g:netrw_scpport* = "-P" : option to use to set port for scp
|
*g:netrw_scpport* = "-P" : option to use to set port for scp
|
||||||
*g:netrw_sshport* = "-p" : option to use to set port for ssh
|
*g:netrw_sshport* = "-p" : option to use to set port for ssh
|
||||||
|
|
||||||
|
*g:netrw_sepchr* =\0xff
|
||||||
|
=\0x01 for enc == euc-jp (and perhaps it should be for
|
||||||
|
others, too, please let me
|
||||||
|
know)
|
||||||
|
Separates priority codes from filenames internally.
|
||||||
|
See |netrw-p12|.
|
||||||
|
|
||||||
*g:netrw_silent* =0 : transfers done normally
|
*g:netrw_silent* =0 : transfers done normally
|
||||||
=1 : transfers done silently
|
=1 : transfers done silently
|
||||||
|
|
||||||
@ -398,6 +436,30 @@ series of commands (typically ftp) which it issues to an external program
|
|||||||
from/written to a temporary file (under Unix/Linux, /tmp/...) which the
|
from/written to a temporary file (under Unix/Linux, /tmp/...) which the
|
||||||
<netrw.vim> script will clean up.
|
<netrw.vim> script will clean up.
|
||||||
|
|
||||||
|
Now, a word about Jan Minář's "FTP User Name and Password Disclosure"; first,
|
||||||
|
ftp is not a secure protocol. User names and passwords are transmitted "in
|
||||||
|
the clear" over the internet; any snooper tool can pick these up; this is not
|
||||||
|
a netrw thing, this is a ftp thing. If you're concerned about this, please
|
||||||
|
try to use scp or sftp instead.
|
||||||
|
|
||||||
|
Netrw re-uses the user id and password during the same vim session and so long
|
||||||
|
as the remote hostname remains the same.
|
||||||
|
|
||||||
|
Jan seems to be a bit confused about how netrw handles ftp; normally multiple
|
||||||
|
commands are performed in a "ftp session", and he seems to feel that the
|
||||||
|
uid/password should only be retained over one ftp session. However, netrw
|
||||||
|
does every ftp operation in a separate "ftp session"; so remembering the
|
||||||
|
uid/password for just one "ftp session" would be the same as not remembering
|
||||||
|
the uid/password at all. IMHO this would rapidly grow tiresome as one
|
||||||
|
browsed remote directories, for example.
|
||||||
|
|
||||||
|
On the other hand, thanks go to Jan M. for pointing out the many
|
||||||
|
vulnerabilities that netrw (and vim itself) had had in handling "crafted"
|
||||||
|
filenames. The |shellescape()| and |fnameescape()| functions were written in
|
||||||
|
response by Bram Moolenaar to handle these sort of problems, and netrw has
|
||||||
|
been modified to use them. Still, my advice is, if the "filename" looks like
|
||||||
|
a vim command that you aren't comfortable with having executed, don't open it.
|
||||||
|
|
||||||
*netrw-putty* *netrw-pscp* *netrw-psftp*
|
*netrw-putty* *netrw-pscp* *netrw-psftp*
|
||||||
One may modify any protocol's implementing external application by setting a
|
One may modify any protocol's implementing external application by setting a
|
||||||
variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to
|
variable (ex. scp uses the variable g:netrw_scp_cmd, which is defaulted to
|
||||||
@ -414,8 +476,8 @@ file). Thus, concerned users may decide to write a NetReadFixup() function
|
|||||||
that will clean up after reading with their ftp. Some Unix systems (ie.,
|
that will clean up after reading with their ftp. Some Unix systems (ie.,
|
||||||
FreeBSD) provide a utility called "fetch" which uses the ftp protocol but is
|
FreeBSD) provide a utility called "fetch" which uses the ftp protocol but is
|
||||||
not noisy and more convenient, actually, for <netrw.vim> to use.
|
not noisy and more convenient, actually, for <netrw.vim> to use.
|
||||||
Consequently, if "fetch" is executable, it will be used to do reads for
|
Consequently, if "fetch" is available (ie. executable), it may be preferable
|
||||||
ftp://... (and http://...) . See |netrw-var| for more about this.
|
to use it for ftp://... based transfers.
|
||||||
|
|
||||||
For rcp, scp, sftp, and http, one may use network-oriented file transfers
|
For rcp, scp, sftp, and http, one may use network-oriented file transfers
|
||||||
transparently; ie.
|
transparently; ie.
|
||||||
@ -423,7 +485,7 @@ transparently; ie.
|
|||||||
vim rcp://[user@]machine/path
|
vim rcp://[user@]machine/path
|
||||||
vim scp://[user@]machine/path
|
vim scp://[user@]machine/path
|
||||||
<
|
<
|
||||||
If your ftp supports <.netrc>, then it too can be just as transparently used
|
If your ftp supports <.netrc>, then it too can be transparently used
|
||||||
if the needed triad of machine name, user id, and password are present in
|
if the needed triad of machine name, user id, and password are present in
|
||||||
that file. Your ftp must be able to use the <.netrc> file on its own, however.
|
that file. Your ftp must be able to use the <.netrc> file on its own, however.
|
||||||
>
|
>
|
||||||
@ -586,9 +648,8 @@ below, a {netfile} is an url to a remote file.
|
|||||||
:[range]Nw[rite] {netfile} [{netfile}]...
|
:[range]Nw[rite] {netfile} [{netfile}]...
|
||||||
Write the specified lines to the {netfile}.
|
Write the specified lines to the {netfile}.
|
||||||
|
|
||||||
:Nr[ead] Read the specified lines into the current
|
:Nr[ead] Read the lines from the file specified in b:netrw_lastfile
|
||||||
buffer from the file specified in
|
into the current buffer.
|
||||||
b:netrw_lastfile.
|
|
||||||
|
|
||||||
:Nr[ead] {netfile} {netfile}...
|
:Nr[ead] {netfile} {netfile}...
|
||||||
Read the {netfile} after the current line.
|
Read the {netfile} after the current line.
|
||||||
@ -651,12 +712,9 @@ set in the user's <.vimrc> file: (see also |netrw-settings| |netrw-protocol|)
|
|||||||
to be ignored.
|
to be ignored.
|
||||||
b:netrw_lastfile Holds latest method/machine/path.
|
b:netrw_lastfile Holds latest method/machine/path.
|
||||||
b:netrw_line Holds current line number (during NetWrite)
|
b:netrw_line Holds current line number (during NetWrite)
|
||||||
g:netrw_passwd Holds current password for ftp.
|
|
||||||
g:netrw_silent =0 transfers done normally
|
g:netrw_silent =0 transfers done normally
|
||||||
=1 transfers done silently
|
=1 transfers done silently
|
||||||
g:netrw_uid Holds current user-id for ftp.
|
g:netrw_uid Holds current user-id for ftp.
|
||||||
=1 use alternate ftp (user uid password)
|
|
||||||
(see |netrw-options|)
|
|
||||||
g:netrw_use_nt_rcp =0 don't use WinNT/2K/XP's rcp (default)
|
g:netrw_use_nt_rcp =0 don't use WinNT/2K/XP's rcp (default)
|
||||||
=1 use WinNT/2K/XP's rcp, binary mode
|
=1 use WinNT/2K/XP's rcp, binary mode
|
||||||
g:netrw_win95ftp =0 use unix-style ftp even if win95/98/ME/etc
|
g:netrw_win95ftp =0 use unix-style ftp even if win95/98/ME/etc
|
||||||
@ -672,9 +730,10 @@ temporarily.
|
|||||||
Variable Meaning
|
Variable Meaning
|
||||||
-------- ------------------------------------
|
-------- ------------------------------------
|
||||||
<
|
<
|
||||||
g:netrw_method Index indicating rcp/ftp+.netrc/ftp
|
b:netrw_method Index indicating rcp/ftp+.netrc/ftp
|
||||||
|
w:netrw_method (same as b:netrw_method)
|
||||||
g:netrw_machine Holds machine name parsed from input
|
g:netrw_machine Holds machine name parsed from input
|
||||||
g:netrw_fname Holds filename being accessed >
|
b:netrw_fname Holds filename being accessed >
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
<
|
<
|
||||||
*netrw-protocol*
|
*netrw-protocol*
|
||||||
@ -764,7 +823,7 @@ renders the server treatment as "trusted".
|
|||||||
|
|
||||||
*netrw-fixup* *netreadfixup*
|
*netrw-fixup* *netreadfixup*
|
||||||
If your ftp for whatever reason generates unwanted lines (such as AUTH
|
If your ftp for whatever reason generates unwanted lines (such as AUTH
|
||||||
messages) you may write a NetReadFixup(tmpfile) function:
|
messages) you may write a NetReadFixup() function:
|
||||||
>
|
>
|
||||||
function! NetReadFixup(method,line1,line2)
|
function! NetReadFixup(method,line1,line2)
|
||||||
" a:line1: first new line in current file
|
" a:line1: first new line in current file
|
||||||
@ -801,7 +860,7 @@ itself:
|
|||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
9. Browsing *netrw-browsing* *netrw-browse* *netrw-help* {{{1
|
9. Browsing *netrw-browsing* *netrw-browse* *netrw-help* {{{1
|
||||||
*netrw-browser* *netrw-dir* *netrw-list*
|
*netrw-browser* *netrw-dir* *netrw-list*
|
||||||
|
|
||||||
INTRODUCTION TO BROWSING *netrw-intro-browse* {{{2
|
INTRODUCTION TO BROWSING *netrw-intro-browse* {{{2
|
||||||
(Quick References: |netrw-quickmaps| |netrw-quickcoms|)
|
(Quick References: |netrw-quickmaps| |netrw-quickcoms|)
|
||||||
@ -837,7 +896,7 @@ where [protocol] is typically scp or ftp. As an example, try: >
|
|||||||
|
|
||||||
vim ftp://ftp.home.vim.org/pub/vim/
|
vim ftp://ftp.home.vim.org/pub/vim/
|
||||||
<
|
<
|
||||||
For local directories, the trailing slash is not required. Again, because its
|
For local directories, the trailing slash is not required. Again, because it's
|
||||||
easy to miss: to browse remote directories, the url must terminate with a
|
easy to miss: to browse remote directories, the url must terminate with a
|
||||||
slash!
|
slash!
|
||||||
|
|
||||||
@ -849,6 +908,7 @@ There are several things you can do to affect the browser's display of files:
|
|||||||
|
|
||||||
* To change the listing style, press the "i" key (|netrw-i|).
|
* To change the listing style, press the "i" key (|netrw-i|).
|
||||||
Currently there are four styles: thin, long, wide, and tree.
|
Currently there are four styles: thin, long, wide, and tree.
|
||||||
|
To make that change "permanent", see |g:netrw_liststyle|.
|
||||||
|
|
||||||
* To hide files (don't want to see those xyz~ files anymore?) see
|
* To hide files (don't want to see those xyz~ files anymore?) see
|
||||||
|netrw-ctrl-h|.
|
|netrw-ctrl-h|.
|
||||||
@ -857,6 +917,18 @@ There are several things you can do to affect the browser's display of files:
|
|||||||
|
|
||||||
See |netrw-browse-cmds| for all the things you can do with netrw!
|
See |netrw-browse-cmds| for all the things you can do with netrw!
|
||||||
|
|
||||||
|
*netrw-getftype* *netrw-filigree* *netrw-ftype*
|
||||||
|
The |getftype()| function is used to append a bit of filigree to indicate
|
||||||
|
filetype to locally listed files:
|
||||||
|
|
||||||
|
directory : /
|
||||||
|
executable : *
|
||||||
|
fifo : |
|
||||||
|
links : @
|
||||||
|
sockets : =
|
||||||
|
|
||||||
|
The filigree also affects the |g:netrw_sort_sequence|.
|
||||||
|
|
||||||
|
|
||||||
QUICK HELP *netrw-quickhelp* {{{2
|
QUICK HELP *netrw-quickhelp* {{{2
|
||||||
(Use ctrl-] to select a topic)~
|
(Use ctrl-] to select a topic)~
|
||||||
@ -895,11 +967,11 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
|||||||
hiding (suppress display of files matching g:netrw_list_hide)
|
hiding (suppress display of files matching g:netrw_list_hide)
|
||||||
showing (display only files which match g:netrw_list_hide)
|
showing (display only files which match g:netrw_list_hide)
|
||||||
c Make browsing directory the current directory |netrw-c|
|
c Make browsing directory the current directory |netrw-c|
|
||||||
|
C Setting the editing window |netrw-C|
|
||||||
d Make a directory |netrw-d|
|
d Make a directory |netrw-d|
|
||||||
D Attempt to remove the file(s)/directory(ies) |netrw-D|
|
D Attempt to remove the file(s)/directory(ies) |netrw-D|
|
||||||
gb Go to previous bookmarked directory |netrw-gb|
|
gb Go to previous bookmarked directory |netrw-gb|
|
||||||
gh Quick hide/unhide of dot-files |netrw-gh|
|
gh Quick hide/unhide of dot-files |netrw-gh|
|
||||||
gi Display information on file |netrw-qf|
|
|
||||||
<c-h> Edit file hiding list |netrw-ctrl-h|
|
<c-h> Edit file hiding list |netrw-ctrl-h|
|
||||||
i Cycle between thin, long, wide, and tree listings |netrw-i|
|
i Cycle between thin, long, wide, and tree listings |netrw-i|
|
||||||
<c-l> Causes Netrw to refresh the directory listing |netrw-ctrl-l|
|
<c-l> Causes Netrw to refresh the directory listing |netrw-ctrl-l|
|
||||||
@ -911,18 +983,19 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
|||||||
mh Toggle marked file suffices' presence on hiding list |netrw-mh|
|
mh Toggle marked file suffices' presence on hiding list |netrw-mh|
|
||||||
mm Move marked files to marked-file target directory |netrw-mm|
|
mm Move marked files to marked-file target directory |netrw-mm|
|
||||||
mp Print marked files |netrw-mp|
|
mp Print marked files |netrw-mp|
|
||||||
mr Mark files satisfying a |regexp| |netrw-mr|
|
mr Mark files satisfying a shell-style |regexp| |netrw-mr|
|
||||||
mt Current browsing directory becomes markfile target |netrw-mt|
|
mt Current browsing directory becomes markfile target |netrw-mt|
|
||||||
mT Apply ctags to marked files |netrw-mT|
|
mT Apply ctags to marked files |netrw-mT|
|
||||||
mu Unmark all marked files |netrw-mu|
|
mu Unmark all marked files |netrw-mu|
|
||||||
mx Apply arbitrary shell command to marked files |netrw-mx|
|
mx Apply arbitrary shell command to marked files |netrw-mx|
|
||||||
mz Compress/decompress marked files |netrw-mz|
|
mz Compress/decompress marked files |netrw-mz|
|
||||||
o Enter the file/directory under the cursor in a new |netrw-o|
|
o Enter the file/directory under the cursor in a new |netrw-o|
|
||||||
browser window. A horizontal split is used.
|
browser window. A horizontal split is used.
|
||||||
O Obtain a file specified by cursor |netrw-O|
|
O Obtain a file specified by cursor |netrw-O|
|
||||||
p Preview the file |netrw-p|
|
p Preview the file |netrw-p|
|
||||||
P Browse in the previously used window |netrw-P|
|
P Browse in the previously used window |netrw-P|
|
||||||
q List bookmarked directories and history |netrw-qb|
|
qb List bookmarked directories and history |netrw-qb|
|
||||||
|
qf Display information on file |netrw-qf|
|
||||||
r Reverse sorting order |netrw-r|
|
r Reverse sorting order |netrw-r|
|
||||||
R Rename the designed file(s)/directory(ies) |netrw-R|
|
R Rename the designed file(s)/directory(ies) |netrw-R|
|
||||||
s Select sorting style: by name, time, or file size |netrw-s|
|
s Select sorting style: by name, time, or file size |netrw-s|
|
||||||
@ -931,11 +1004,12 @@ QUICK REFERENCE: MAPS *netrw-browse-maps* {{{2
|
|||||||
u Change to recently-visited directory |netrw-u|
|
u Change to recently-visited directory |netrw-u|
|
||||||
U Change to subsequently-visited directory |netrw-U|
|
U Change to subsequently-visited directory |netrw-U|
|
||||||
v Enter the file/directory under the cursor in a new |netrw-v|
|
v Enter the file/directory under the cursor in a new |netrw-v|
|
||||||
browser window. A vertical split is used.
|
browser window. A vertical split is used.
|
||||||
x View file with an associated program |netrw-x|
|
x View file with an associated program |netrw-x|
|
||||||
|
|
||||||
% Open a new file in netrw's current directory |netrw-%|
|
% Open a new file in netrw's current directory |netrw-%|
|
||||||
|
|
||||||
|
*netrw-mouse* *netrw-leftmouse* *netrw-middlemouse* *netrw-rightmouse*
|
||||||
<leftmouse> (gvim only) selects word under mouse as if a <cr>
|
<leftmouse> (gvim only) selects word under mouse as if a <cr>
|
||||||
had been pressed (ie. edit file, change directory)
|
had been pressed (ie. edit file, change directory)
|
||||||
<middlemouse> (gvim only) same as P selecting word under mouse;
|
<middlemouse> (gvim only) same as P selecting word under mouse;
|
||||||
@ -970,7 +1044,7 @@ One may easily "bookmark" a directory by using >
|
|||||||
|
|
||||||
mb
|
mb
|
||||||
<
|
<
|
||||||
Bookmarks are retained in between sesions in a $HOME/.netrwbook file, and are
|
Bookmarks are retained in between sessions in a $HOME/.netrwbook file, and are
|
||||||
kept in sorted order.
|
kept in sorted order.
|
||||||
|
|
||||||
Related Topics:
|
Related Topics:
|
||||||
@ -999,8 +1073,8 @@ horizontally or vertically, respectively. When the option is set to three, a
|
|||||||
<cr> will cause the file to appear in a new tab.
|
<cr> will cause the file to appear in a new tab.
|
||||||
|
|
||||||
|
|
||||||
When using the gui (gvim) one may select a file by pressing the <leftmouse>
|
When using the gui (gvim), one may select a file by pressing the <leftmouse>
|
||||||
button. In addtion, if
|
button. In addition, if
|
||||||
|
|
||||||
*|g:netrw_retmap| == 1 AND (its default value is 0)
|
*|g:netrw_retmap| == 1 AND (its default value is 0)
|
||||||
* in a netrw-selected file, AND
|
* in a netrw-selected file, AND
|
||||||
@ -1041,19 +1115,19 @@ new window and cursor at the bottom, have
|
|||||||
|
|
||||||
let g:netrw_alto = 1
|
let g:netrw_alto = 1
|
||||||
|
|
||||||
in your <.vimrc>. (also see |netrw-t| |netrw-v|)
|
in your <.vimrc>. (also see |netrw-t| |netrw-T| |netrw-v|)
|
||||||
|
|
||||||
There is only one tree listing buffer; using "o" on a displayed subdirectory
|
|
||||||
will split the screen, but the same buffer will be shown twice.
|
|
||||||
|
|
||||||
Associated setting variables: |g:netrw_alto| |g:netrw_winsize|
|
Associated setting variables: |g:netrw_alto| |g:netrw_winsize|
|
||||||
|
|
||||||
|
|
||||||
BROWSING WITH A NEW TAB *netrw-t* {{{2
|
BROWSING WITH A NEW TAB *netrw-t* *netrw-T* {{{2
|
||||||
|
|
||||||
Normally one enters a file or directory using the <cr>. The "t" map
|
Normally one enters a file or directory using the <cr>. The "t" map
|
||||||
allows one to open a new window hold the new directory listing or file in a
|
allows one to open a new window holding the new directory listing or file in
|
||||||
new tab. (also see: |netrw-o| |netrw-v|)
|
a new tab. The "T" version puts the file or directory into a background tab
|
||||||
|
(see |gT|)
|
||||||
|
|
||||||
|
Related actions: |netrw-o| |netrw-v|
|
||||||
|
|
||||||
|
|
||||||
BROWSING WITH A VERTICALLY SPLIT WINDOW *netrw-v* {{{2
|
BROWSING WITH A VERTICALLY SPLIT WINDOW *netrw-v* {{{2
|
||||||
@ -1068,18 +1142,19 @@ window and cursor at the right, have
|
|||||||
|
|
||||||
let g:netrw_altv = 1
|
let g:netrw_altv = 1
|
||||||
|
|
||||||
in your <.vimrc>. (also see: |netrw-o| |netrw-t|)
|
in your <.vimrc>. (also see: |netrw-o| |netrw-t| |netrw-T|)
|
||||||
|
|
||||||
There is only one tree listing buffer; using "v" on a displayed subdirectory
|
There is only one tree listing buffer; using "v" on a displayed subdirectory
|
||||||
will split the screen, but the same buffer will be shown twice.
|
will split the screen, but the same buffer will be shown twice.
|
||||||
|
|
||||||
Associated setting variable: |g:netrw_altv| |g:netrw_winsize|
|
Associated setting variable: |g:netrw_altv| |g:netrw_winsize|
|
||||||
|
|
||||||
CHANGE LISTING STYLE *netrw-i* {{{2
|
|
||||||
|
CHANGE LISTING STYLE (THIN LONG WIDE TREE) *netrw-i* {{{2
|
||||||
|
|
||||||
The "i" map cycles between the thin, long, wide, and tree listing formats.
|
The "i" map cycles between the thin, long, wide, and tree listing formats.
|
||||||
|
|
||||||
The short listing format gives just the files' and directories' names.
|
The thin listing format gives just the files' and directories' names.
|
||||||
|
|
||||||
The long listing is either based on the "ls" command via ssh for remote
|
The long listing is either based on the "ls" command via ssh for remote
|
||||||
directories or displays the filename, file size (in bytes), and the time and
|
directories or displays the filename, file size (in bytes), and the time and
|
||||||
@ -1095,13 +1170,23 @@ This listing format is the most compact.
|
|||||||
|
|
||||||
The tree listing format has a top directory followed by files and directories
|
The tree listing format has a top directory followed by files and directories
|
||||||
preceded by a "|". One may open and close directories by pressing the <cr>
|
preceded by a "|". One may open and close directories by pressing the <cr>
|
||||||
key while atop the directory name. There is only one tree listing buffer;
|
key while atop the directory name.
|
||||||
hence, using "v" or "o" on a subdirectory will only show the same buffer,
|
|
||||||
twice.
|
One may make a preferred listing style your default; see |g:netrw_liststyle|.
|
||||||
|
As an example, by putting the following line in your .vimrc, >
|
||||||
|
let g:netrw_liststyle= 4
|
||||||
|
the tree style will become your default listing style.
|
||||||
|
|
||||||
Associated setting variables: |g:netrw_liststyle| |g:netrw_maxfilenamelen|
|
Associated setting variables: |g:netrw_liststyle| |g:netrw_maxfilenamelen|
|
||||||
|g:netrw_timefmt| |g:netrw_list_cmd|
|
|g:netrw_timefmt| |g:netrw_list_cmd|
|
||||||
|
|
||||||
|
CHANGE FILE PERMISSION *netrw-gp* {{{2
|
||||||
|
|
||||||
|
"gp" will ask you for a new permission for the file named under the cursor.
|
||||||
|
Currently, this only works for local files.
|
||||||
|
|
||||||
|
Associated setting variables: |g:netrw_chgperm|
|
||||||
|
|
||||||
|
|
||||||
CHANGING TO A BOOKMARKED DIRECTORY *netrw-gb* {{{2
|
CHANGING TO A BOOKMARKED DIRECTORY *netrw-gb* {{{2
|
||||||
|
|
||||||
@ -1113,7 +1198,7 @@ Any count may be used to reference any of the bookmarks.
|
|||||||
|
|
||||||
Related Topics:
|
Related Topics:
|
||||||
|netrw-mB| how to delete bookmarks
|
|netrw-mB| how to delete bookmarks
|
||||||
|netrw-mb| how to return to a bookmark
|
|netrw-mb| how to make a bookmark
|
||||||
|netrw-qb| how to list bookmarks
|
|netrw-qb| how to list bookmarks
|
||||||
|
|
||||||
|
|
||||||
@ -1189,7 +1274,7 @@ the handler function must exist for it to be called!
|
|||||||
NFH_html("scp://user@host/some/path/mypgm.html")
|
NFH_html("scp://user@host/some/path/mypgm.html")
|
||||||
<
|
<
|
||||||
Users may write their own netrw File Handler functions to support more
|
Users may write their own netrw File Handler functions to support more
|
||||||
suffixes with special handling. See <plugin/netrwFileHandlers.vim> for
|
suffixes with special handling. See <autoload/netrwFileHandlers.vim> for
|
||||||
examples on how to make file handler functions. As an example: >
|
examples on how to make file handler functions. As an example: >
|
||||||
|
|
||||||
" NFH_suffix(filename)
|
" NFH_suffix(filename)
|
||||||
@ -1272,12 +1357,12 @@ Associated setting variable: |g:netrw_local_rmdir| |g:netrw_rm_cmd|
|
|||||||
*netrw-rexplore* *netrw-sexplore* *netrw-texplore* *netrw-vexplore*
|
*netrw-rexplore* *netrw-sexplore* *netrw-texplore* *netrw-vexplore*
|
||||||
DIRECTORY EXPLORATION COMMANDS {{{2
|
DIRECTORY EXPLORATION COMMANDS {{{2
|
||||||
|
|
||||||
:[N]Explore[!] [dir]... Explore directory of current file *:Explore*
|
:[N]Explore[!] [dir]... Explore directory of current file *:Explore*
|
||||||
:[N]Hexplore[!] [dir]... Horizontal Split & Explore *:Hexplore*
|
:[N]Hexplore[!] [dir]... Horizontal Split & Explore *:Hexplore*
|
||||||
:Rexplore ... Return to Explorer *:Rexplore*
|
:Rexplore ... Return to Explorer *:Rexplore*
|
||||||
:[N]Sexplore[!] [dir]... Split&Explore current file's directory*:Sexplore*
|
:[N]Sexplore[!] [dir]... Split&Explore current file's directory *:Sexplore*
|
||||||
:Texplore [dir]... Tab & Explore *:Texplore*
|
:Texplore [dir]... Tab & Explore *:Texplore*
|
||||||
:[N]Vexplore[!] [dir]... Vertical Split & Explore *:Vexplore*
|
:[N]Vexplore[!] [dir]... Vertical Split & Explore *:Vexplore*
|
||||||
|
|
||||||
Used with :Explore **/pattern : (also see |netrw-starstar|)
|
Used with :Explore **/pattern : (also see |netrw-starstar|)
|
||||||
:Nexplore............. go to next matching file *:Nexplore*
|
:Nexplore............. go to next matching file *:Nexplore*
|
||||||
@ -1312,8 +1397,8 @@ windows should have.
|
|||||||
:Rexplore This command is a little different from the others. When one
|
:Rexplore This command is a little different from the others. When one
|
||||||
edits a file, for example by pressing <cr> when atop a file in
|
edits a file, for example by pressing <cr> when atop a file in
|
||||||
a netrw browser window, :Rexplore will return the display to
|
a netrw browser window, :Rexplore will return the display to
|
||||||
that of the last netrw browser window. Its a command version
|
that of the last netrw browser window. It is a command version
|
||||||
of <2-leftmouse> (which is only available under gvim and
|
of the <2-leftmouse> map (which is only available under gvim and
|
||||||
cooperative terms).
|
cooperative terms).
|
||||||
|
|
||||||
|
|
||||||
@ -1326,11 +1411,11 @@ the request. >
|
|||||||
|
|
||||||
*/filepat files in current directory which satisfy filepat
|
*/filepat files in current directory which satisfy filepat
|
||||||
**/filepat files in current directory or below which satisfy the
|
**/filepat files in current directory or below which satisfy the
|
||||||
file pattern
|
file pattern
|
||||||
*//pattern files in the current directory which contain the
|
*//pattern files in the current directory which contain the
|
||||||
pattern (vimgrep is used)
|
pattern (vimgrep is used)
|
||||||
**//pattern files in the current directory or below which contain
|
**//pattern files in the current directory or below which contain
|
||||||
the pattern (vimgrep is used)
|
the pattern (vimgrep is used)
|
||||||
<
|
<
|
||||||
The cursor will be placed on the first file in the list. One may then
|
The cursor will be placed on the first file in the list. One may then
|
||||||
continue to go to subsequent files on that list via |:Nexplore| or to
|
continue to go to subsequent files on that list via |:Nexplore| or to
|
||||||
@ -1383,6 +1468,18 @@ be the only ones displayed (see |netrw-a|).
|
|||||||
The "gh" mapping (see |netrw-gh|) quickly alternates between the usual
|
The "gh" mapping (see |netrw-gh|) quickly alternates between the usual
|
||||||
hiding list and the hiding of files or directories that begin with ".".
|
hiding list and the hiding of files or directories that begin with ".".
|
||||||
|
|
||||||
|
As an example, >
|
||||||
|
let g:netrw_list_hide= '\(^\|\s\s\)\zs\.\S\+'
|
||||||
|
Effectively, this makes the effect of a |netrw-gh| command the initial setting.
|
||||||
|
What it means:
|
||||||
|
|
||||||
|
\(^\|\s\s\) : if the line begins with the following, -or-
|
||||||
|
two consecutive spaces are encountered
|
||||||
|
\zs : start the hiding match now
|
||||||
|
\. : if it now begins with a dot
|
||||||
|
\S\+ : and is followed by one or more non-whitespace
|
||||||
|
characters
|
||||||
|
|
||||||
Associated setting variables: |g:netrw_hide| |g:netrw_list_hide|
|
Associated setting variables: |g:netrw_hide| |g:netrw_list_hide|
|
||||||
Associated topics: |netrw-a| |netrw-gh| |netrw-mh|
|
Associated topics: |netrw-a| |netrw-gh| |netrw-mh|
|
||||||
|
|
||||||
@ -1393,7 +1490,12 @@ When "Sorted by" is name, one may specify priority via the sorting sequence
|
|||||||
(g:netrw_sort_sequence). The sorting sequence typically prioritizes the
|
(g:netrw_sort_sequence). The sorting sequence typically prioritizes the
|
||||||
name-listing by suffix, although any pattern will do. Patterns are delimited
|
name-listing by suffix, although any pattern will do. Patterns are delimited
|
||||||
by commas. The default sorting sequence is (all one line):
|
by commas. The default sorting sequence is (all one line):
|
||||||
>
|
|
||||||
|
For Unix: >
|
||||||
|
'[\/]$,\<core\%(\.\d\+\)\=,\.[a-np-z]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$,
|
||||||
|
\.info$,\.swp$,\.bak$,\~$'
|
||||||
|
<
|
||||||
|
Otherwise: >
|
||||||
'[\/]$,\.[a-np-z]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$,\.info$,
|
'[\/]$,\.[a-np-z]$,\.h$,\.c$,\.cpp$,*,\.o$,\.obj$,\.info$,
|
||||||
\.swp$,\.bak$,\~$'
|
\.swp$,\.bak$,\~$'
|
||||||
<
|
<
|
||||||
@ -1632,10 +1734,11 @@ MARKING FILES BY REGULAR EXPRESSION *netrw-mr* {{{2
|
|||||||
(also see |netrw-mf|)
|
(also see |netrw-mf|)
|
||||||
|
|
||||||
One may also mark files by pressing "mr"; netrw will then issue a prompt,
|
One may also mark files by pressing "mr"; netrw will then issue a prompt,
|
||||||
"Enter regexp: ". You may then enter a regular expression such as \.c$ .
|
"Enter regexp: ". You may then enter a shell-style regular expression such
|
||||||
All files in the current directory will then be marked. Note that the
|
as *.c$ (see |glob()|). For remote systems, glob() doesn't work -- so netrw
|
||||||
regular expressions are vim-style |regexp| ones, not shell ones. So
|
converts "*" into ".*" (see |regexp|) and marks files based on that. In the
|
||||||
entering *.c probably isn't what you want!
|
future I may make it possible to use |regexp|s instead of glob()-style
|
||||||
|
expressions (yet-another-option).
|
||||||
|
|
||||||
|
|
||||||
MARKED FILES: ARBITRARY COMMAND *netrw-mx* {{{2
|
MARKED FILES: ARBITRARY COMMAND *netrw-mx* {{{2
|
||||||
@ -1718,7 +1821,7 @@ MARKED FILES: MOVING *netrw-mm* {{{2
|
|||||||
first or do the copy and then delete yourself using mc and D.
|
first or do the copy and then delete yourself using mc and D.
|
||||||
Use at your own risk!
|
Use at your own risk!
|
||||||
|
|
||||||
Select a target directory with mT (|netrw-mt|). Then change directory,
|
Select a target directory with mt (|netrw-mt|). Then change directory,
|
||||||
select file(s) (see |netrw-mf|), and press "mm".
|
select file(s) (see |netrw-mf|), and press "mm".
|
||||||
|
|
||||||
Associated setting variable: |g:netrw_localmovecmd| |g:netrw_ssh_cmd|
|
Associated setting variable: |g:netrw_localmovecmd| |g:netrw_ssh_cmd|
|
||||||
@ -1743,7 +1846,7 @@ MARKED FILES: TAGGING *netrw-mT* {{{2
|
|||||||
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
(See |netrw-mf| and |netrw-mr| for how to mark files)
|
||||||
(uses the global marked file list)
|
(uses the global marked file list)
|
||||||
|
|
||||||
The "mt" mapping will apply the command in |g:netrw_ctags| (by default, its
|
The "mT" mapping will apply the command in |g:netrw_ctags| (by default, it is
|
||||||
"ctags") to marked files. For remote browsing, in order to create a tags file
|
"ctags") to marked files. For remote browsing, in order to create a tags file
|
||||||
netrw will use ssh (see |g:netrw_ssh_cmd|), and so ssh must be available for
|
netrw will use ssh (see |g:netrw_ssh_cmd|), and so ssh must be available for
|
||||||
this to work on remote systems. For your local system, see |ctags| on how to
|
this to work on remote systems. For your local system, see |ctags| on how to
|
||||||
@ -1791,7 +1894,7 @@ The "mu" mapping will unmark all currently marked files.
|
|||||||
|
|
||||||
NETRW BROWSER VARIABLES *netrw-browser-options* *netrw-browser-var* {{{2
|
NETRW BROWSER VARIABLES *netrw-browser-options* *netrw-browser-var* {{{2
|
||||||
|
|
||||||
(if you're interestd in the netrw file transfer settings, see |netrw-options|)
|
(if you're interested in the netrw file transfer settings, see |netrw-options|)
|
||||||
|
|
||||||
The <netrw.vim> browser provides settings in the form of variables which
|
The <netrw.vim> browser provides settings in the form of variables which
|
||||||
you may modify; by placing these settings in your <.vimrc>, you may customize
|
you may modify; by placing these settings in your <.vimrc>, you may customize
|
||||||
@ -1808,12 +1911,21 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
by setting this variable (see |netrw-v|)
|
by setting this variable (see |netrw-v|)
|
||||||
default: =&spr (see |'spr'|)
|
default: =&spr (see |'spr'|)
|
||||||
|
|
||||||
|
*g:netrw_banner* enable/suppress the banner
|
||||||
|
=0: suppress the banner
|
||||||
|
=1: banner is enabled (default)
|
||||||
|
NOTE: suppressing the banner is a new feature
|
||||||
|
which may cause problems.
|
||||||
|
|
||||||
*g:netrw_browse_split* when browsing, <cr> will open the file by:
|
*g:netrw_browse_split* when browsing, <cr> will open the file by:
|
||||||
=0: re-using the same window
|
=0: re-using the same window
|
||||||
=1: horizontally splitting the window first
|
=1: horizontally splitting the window first
|
||||||
=2: vertically splitting the window first
|
=2: vertically splitting the window first
|
||||||
=3: open file in new tab
|
=3: open file in new tab
|
||||||
=4: act like "P" (ie. open previous window)
|
=4: act like "P" (ie. open previous window)
|
||||||
|
Note that |g:netrw_preview| may be used
|
||||||
|
to get vertical splitting instead of
|
||||||
|
horizontal splitting.
|
||||||
|
|
||||||
*g:netrw_browsex_viewer* specify user's preference for a viewer: >
|
*g:netrw_browsex_viewer* specify user's preference for a viewer: >
|
||||||
"kfmclient exec"
|
"kfmclient exec"
|
||||||
@ -1824,6 +1936,10 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
a script/function to handle the given
|
a script/function to handle the given
|
||||||
extension. (see |netrw_filehandler|).
|
extension. (see |netrw_filehandler|).
|
||||||
|
|
||||||
|
*g:netrw_chgperm* Unix/Linux: "chmod PERM FILENAME"
|
||||||
|
Windows: "cacls FILENAME /e /p PERM"
|
||||||
|
Used to change access permission for a file.
|
||||||
|
|
||||||
*g:netrw_compress* ="gzip"
|
*g:netrw_compress* ="gzip"
|
||||||
Will compress marked files with this
|
Will compress marked files with this
|
||||||
command
|
command
|
||||||
@ -1836,10 +1952,10 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
|g:netrw_liststyle| ==0 (thin listing) or
|
|g:netrw_liststyle| ==0 (thin listing) or
|
||||||
|g:netrw_liststyle| ==1 (long listing) or
|
|g:netrw_liststyle| ==1 (long listing) or
|
||||||
|g:netrw_liststyle| ==3 (tree listing)
|
|g:netrw_liststyle| ==3 (tree listing)
|
||||||
|
(ie. doesn't affect the wide listing)
|
||||||
=0: off
|
=0: off
|
||||||
=2: like ==1, but the wide listing gets both
|
=2: like ==1, but the wide listing gets both
|
||||||
cursorline and |'cursorcolumn'|locally set
|
cursorline and |'cursorcolumn'|locally set
|
||||||
(ie. doesn't affect the wide listing)
|
|
||||||
|
|
||||||
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
*g:netrw_decompress* = { ".gz" : "gunzip" ,
|
||||||
".bz2" : "bunzip2" ,
|
".bz2" : "bunzip2" ,
|
||||||
@ -1873,7 +1989,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
versus speed.
|
versus speed.
|
||||||
|
|
||||||
*g:netrw_fname_escape* =' ?&;%'
|
*g:netrw_fname_escape* =' ?&;%'
|
||||||
Used on filenames before remote reading/writing
|
Used on filenames before remote reading/writing
|
||||||
|
|
||||||
*g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings
|
*g:netrw_ftp_browse_reject* ftp can produce a number of errors and warnings
|
||||||
that can show up as "directories" and "files"
|
that can show up as "directories" and "files"
|
||||||
@ -1907,7 +2023,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
otherwise "dir"
|
otherwise "dir"
|
||||||
|
|
||||||
*g:netrw_glob_escape* ='[]*?`{~$'
|
*g:netrw_glob_escape* ='[]*?`{~$'
|
||||||
These characters in directory names are
|
These characters in directory names are
|
||||||
escaped before applying glob()
|
escaped before applying glob()
|
||||||
|
|
||||||
*g:netrw_hide* if true, the hiding list is used
|
*g:netrw_hide* if true, the hiding list is used
|
||||||
@ -1942,12 +2058,12 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
default: ""
|
default: ""
|
||||||
|
|
||||||
*g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
|
*g:netrw_localcopycmd* ="cp" Linux/Unix/MacOS/Cygwin
|
||||||
="copy" Windows
|
="copy" Windows
|
||||||
Copies marked files (|netrw-mf|) to target
|
Copies marked files (|netrw-mf|) to target
|
||||||
directory (|netrw-mt|, |netrw-mc|)
|
directory (|netrw-mt|, |netrw-mc|)
|
||||||
|
|
||||||
*g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin
|
*g:netrw_localmovecmd* ="mv" Linux/Unix/MacOS/Cygwin
|
||||||
="move" Windows
|
="move" Windows
|
||||||
Moves marked files (|netrw-mf|) to target
|
Moves marked files (|netrw-mf|) to target
|
||||||
directory (|netrw-mt|, |netrw-mm|)
|
directory (|netrw-mt|, |netrw-mm|)
|
||||||
|
|
||||||
@ -1967,6 +2083,14 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
*g:netrw_mkdir_cmd* command for making a remote directory
|
*g:netrw_mkdir_cmd* command for making a remote directory
|
||||||
default: "ssh USEPORT HOSTNAME mkdir"
|
default: "ssh USEPORT HOSTNAME mkdir"
|
||||||
|
|
||||||
|
*g:netrw_mousemaps* =1 (default) enables the mouse buttons
|
||||||
|
while browsing:
|
||||||
|
leftmouse : open file/directory
|
||||||
|
shift-leftmouse : mark file
|
||||||
|
middlemouse : same as P
|
||||||
|
rightmouse : remove file/directory
|
||||||
|
=0: disables mouse maps
|
||||||
|
|
||||||
*g:netrw_retmap* if it exists and is set to one, then:
|
*g:netrw_retmap* if it exists and is set to one, then:
|
||||||
* if in a netrw-selected file, AND
|
* if in a netrw-selected file, AND
|
||||||
* no normal-mode <2-leftmouse> mapping exists,
|
* no normal-mode <2-leftmouse> mapping exists,
|
||||||
@ -2010,12 +2134,14 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
< default: ""
|
< default: ""
|
||||||
|
|
||||||
*g:netrw_sort_sequence* when sorting by name, first sort by the
|
*g:netrw_sort_sequence* when sorting by name, first sort by the
|
||||||
comma-separated pattern sequence
|
comma-separated pattern sequence. Note that
|
||||||
|
the filigree added to indicate filetypes
|
||||||
|
should be accounted for in your pattern.
|
||||||
default: '[\/]$,*,\.bak$,\.o$,\.h$,
|
default: '[\/]$,*,\.bak$,\.o$,\.h$,
|
||||||
\.info$,\.swp$,\.obj$'
|
\.info$,\.swp$,\.obj$'
|
||||||
|
|
||||||
*g:netrw_special_syntax* If true, then certain files will be shown
|
*g:netrw_special_syntax* If true, then certain files will be shown
|
||||||
in special syntax in the browser:
|
in special syntax in the browser:
|
||||||
|
|
||||||
netrwBak : *.bak
|
netrwBak : *.bak
|
||||||
netrwCompress: *.gz *.bz2 *.Z *.zip
|
netrwCompress: *.gz *.bz2 *.Z *.zip
|
||||||
@ -2050,7 +2176,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
|
|
||||||
|
|
||||||
*g:netrw_tmpfile_escape* =' &;'
|
*g:netrw_tmpfile_escape* =' &;'
|
||||||
escape() is applied to all temporary files
|
escape() is applied to all temporary files
|
||||||
to escape these characters.
|
to escape these characters.
|
||||||
|
|
||||||
*g:netrw_timefmt* specify format string to vim's strftime().
|
*g:netrw_timefmt* specify format string to vim's strftime().
|
||||||
@ -2064,7 +2190,7 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
default: "%c"
|
default: "%c"
|
||||||
|
|
||||||
*g:netrw_use_noswf* netrw normally avoids writing swapfiles
|
*g:netrw_use_noswf* netrw normally avoids writing swapfiles
|
||||||
for browser buffers. However, under some
|
for browser buffers. However, under some
|
||||||
systems this apparently is causing nasty
|
systems this apparently is causing nasty
|
||||||
ml_get errors to appear; if you're getting
|
ml_get errors to appear; if you're getting
|
||||||
ml_get errors, try putting
|
ml_get errors, try putting
|
||||||
@ -2076,18 +2202,18 @@ your browsing preferences. (see also: |netrw-settings|)
|
|||||||
|:Hexplore| or |:Vexplore|.
|
|:Hexplore| or |:Vexplore|.
|
||||||
default: ""
|
default: ""
|
||||||
|
|
||||||
*g:netrw_xstrlen* Controls how netrw computes a string
|
*g:netrw_xstrlen* Controls how netrw computes string lengths,
|
||||||
including multi-byte characters' string
|
including multi-byte characters' string
|
||||||
length. (thanks to N Weibull, T Mechelynck)
|
length. (thanks to N Weibull, T Mechelynck)
|
||||||
=0: uses Vim's built-in strlen()
|
=0: uses Vim's built-in strlen()
|
||||||
=1: number of codepoints (Latin + a combining
|
=1: number of codepoints (Latin a + combining
|
||||||
circumflex is two codepoints) (DEFAULT)
|
circumflex is two codepoints) (DEFAULT)
|
||||||
=2: number of spacing codepoints (Latin a +
|
=2: number of spacing codepoints (Latin a +
|
||||||
combining circumflex is one spacing
|
combining circumflex is one spacing
|
||||||
codepoint; a hard tab is one; wide and
|
codepoint; a hard tab is one; wide and
|
||||||
narrow CJK are one each; etc.)
|
narrow CJK are one each; etc.)
|
||||||
=3: virtual length (counting tabs as anything
|
=3: virtual length (counting tabs as anything
|
||||||
between 1 and |'tabstop'|, wide CJJK as 2
|
between 1 and |'tabstop'|, wide CJK as 2
|
||||||
rather than 1, Arabic alif as zero when
|
rather than 1, Arabic alif as zero when
|
||||||
immediately preceded by lam, one
|
immediately preceded by lam, one
|
||||||
otherwise, etc)
|
otherwise, etc)
|
||||||
@ -2238,6 +2364,16 @@ Related topics: |netrw-r| |netrw-S|
|
|||||||
Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence|
|
Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence|
|
||||||
|
|
||||||
|
|
||||||
|
SETTING EDITING WINDOW *netrw-C* {{{2
|
||||||
|
|
||||||
|
One may select a netrw window for editing with the "C" mapping, or by setting
|
||||||
|
g:netrw_chgwin to the selected window number. Subsequent selection of a file
|
||||||
|
to edit (|netrw-cr|) will use that window.
|
||||||
|
|
||||||
|
Related topics: |netrw-cr|
|
||||||
|
Associated setting variables: |g:netrw_chgwin|
|
||||||
|
|
||||||
|
|
||||||
10. Problems and Fixes *netrw-problems* {{{1
|
10. Problems and Fixes *netrw-problems* {{{1
|
||||||
|
|
||||||
(This section is likely to grow as I get feedback)
|
(This section is likely to grow as I get feedback)
|
||||||
@ -2259,7 +2395,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence|
|
|||||||
Windows' ftp has a minimal support for ls (ie. it doesn't
|
Windows' ftp has a minimal support for ls (ie. it doesn't
|
||||||
accept sorting options). It doesn't support the -F which
|
accept sorting options). It doesn't support the -F which
|
||||||
gives an explanatory character (ABC/ for "ABC is a directory").
|
gives an explanatory character (ABC/ for "ABC is a directory").
|
||||||
Netrw then uses "dir" to get both its short and long listings.
|
Netrw then uses "dir" to get both its thin and long listings.
|
||||||
If you think your ftp does support a full-up ls, put the
|
If you think your ftp does support a full-up ls, put the
|
||||||
following into your <.vimrc>: >
|
following into your <.vimrc>: >
|
||||||
|
|
||||||
@ -2350,7 +2486,7 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence|
|
|||||||
|
|
||||||
http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter7.html#plink
|
http://the.earth.li/~sgtatham/putty/0.58/htmldoc/Chapter7.html#plink
|
||||||
|
|
||||||
(Vissale Neang) Maybe you can try OpenSSH for windows, which
|
(Vissale Neang) Maybe you can try OpenSSH for windows, which
|
||||||
can be obtained from:
|
can be obtained from:
|
||||||
|
|
||||||
http://sshwindows.sourceforge.net/
|
http://sshwindows.sourceforge.net/
|
||||||
@ -2451,6 +2587,16 @@ Associated setting variables: |g:netrw_sort_by| |g:netrw_sort_sequence|
|
|||||||
<leftmouse> in the browser window and then press the
|
<leftmouse> in the browser window and then press the
|
||||||
<middlemouse> to select the file.
|
<middlemouse> to select the file.
|
||||||
|
|
||||||
|
*netrw-p12*
|
||||||
|
P12. My directory isn't sorting correctly, or unwanted letters are
|
||||||
|
appearing in the listed filenames, or things aren't lining
|
||||||
|
up properly in the wide listing, ...
|
||||||
|
|
||||||
|
This may be due to an encoding problem. I myself usually use
|
||||||
|
utf-8, but really only use ascii (ie. bytes from 32-126).
|
||||||
|
Multibyte encodings use two (or more) bytes per character.
|
||||||
|
You may need to change |g:netrw_sepchr| and/or |g:netrw_xstrlen|.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
11. Debugging Netrw Itself *netrw-debug* {{{1
|
11. Debugging Netrw Itself *netrw-debug* {{{1
|
||||||
|
|
||||||
@ -2496,7 +2642,7 @@ which is loaded automatically at startup (assuming :set nocp).
|
|||||||
read/write your file over the network in a separate tab.
|
read/write your file over the network in a separate tab.
|
||||||
|
|
||||||
To save the file, use >
|
To save the file, use >
|
||||||
:wincmd j
|
:tabnext
|
||||||
:set bt=
|
:set bt=
|
||||||
:w! DBG
|
:w! DBG
|
||||||
< Please send that information to <netrw.vim>'s maintainer, >
|
< Please send that information to <netrw.vim>'s maintainer, >
|
||||||
@ -2505,6 +2651,57 @@ which is loaded automatically at startup (assuming :set nocp).
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
12. History *netrw-history* {{{1
|
12. History *netrw-history* {{{1
|
||||||
|
|
||||||
|
v136: Jan 14, 2009 * extended |g:Netrw_funcref| to also handle lists
|
||||||
|
of function references
|
||||||
|
Jan 14, 2009 * (reported by Marvin Renich) with spell check
|
||||||
|
enabled, some filenamess will still being
|
||||||
|
displayed as spelling errors.
|
||||||
|
Apr 13, 2009 * (Björn Winckler) writing a file using
|
||||||
|
remote scp caused syntax highlighting problem.
|
||||||
|
Solution: avoid syntax/syntax.vim's
|
||||||
|
au Filetype * syntax setting autocommand by
|
||||||
|
checking that the current buffer has the
|
||||||
|
netrw filetype before attempting a doau
|
||||||
|
in s:NetrwSafeOptions().
|
||||||
|
Apr 14, 2009 * (asgeo1) suggested the "T" map (|netrw-T|)
|
||||||
|
Apr 14, 2009 * marking wasn't working on executable and
|
||||||
|
other special filenames
|
||||||
|
Apr 20, 2009 * (Dennis Benzinger) files opened via http have
|
||||||
|
their syntax filetype auto-detected
|
||||||
|
Jun 19, 2009 * (Yukihiro Nakadaira) help document improvements
|
||||||
|
Jul 22, 2009 * g:netrw_browse_split will honor the
|
||||||
|
|'equalalways'| setting.
|
||||||
|
Jul 29, 2009 * implemented "I" mapping to toggle banner
|
||||||
|
(this is experimental and still being debugged)
|
||||||
|
Sep 19, 2009 * (Mike McEwan) writes via ftp now send both
|
||||||
|
g:netrw_ftpmode and g:netrw_ftpextracmd (if the
|
||||||
|
latter exists)
|
||||||
|
Dec 02, 2009 * netrw uses vimgrep several places; it now uses
|
||||||
|
"noautocmd vimgrep" (should be speedier).
|
||||||
|
Dec 03, 2009 * changed back to using -source instead of -dump
|
||||||
|
for elinks-using commands. (requested by James
|
||||||
|
Vega and Karsten Hopp)
|
||||||
|
v135: Oct 29, 2008 * using |simplify()| on directory names
|
||||||
|
(supporting handling ".."s in directory names)
|
||||||
|
Oct 31, 2008 * added special file highlighting for core dumps
|
||||||
|
under Unix/Linux. The default sorting sequence
|
||||||
|
now also gives core dumps priority.
|
||||||
|
Nov 10, 2008 * uses a call to netrw#Nread() instead of Nread
|
||||||
|
to avoid having to use fnameescape()
|
||||||
|
* fixed a tree redrawing problem (open directory,
|
||||||
|
open subdir, close subdir, close dir)
|
||||||
|
Nov 19, 2008 * sprinkled some histdel("/",-1)s through the code
|
||||||
|
in an attempt to prevent netrw from changing
|
||||||
|
the search history.
|
||||||
|
Jan 02, 2009 * |g:Netrw_funcref| included
|
||||||
|
Jan 05, 2009 * Explore */ **/ *// **// all clear explorer
|
||||||
|
variables
|
||||||
|
Jan 05, 2009 * (Panagiotis Louridas) extended s:WinPath()
|
||||||
|
to remove cygdrive from non-cygwin Windows
|
||||||
|
paths. Improved the determination as to
|
||||||
|
whether or not to do so.
|
||||||
|
Jan 13, 2009 * included contains=@NoSpell in every syntax
|
||||||
|
group for syntax/netrw.vim .
|
||||||
v134: Sep 30, 2008 * (Sander Marechal) provided a bugfix involving
|
v134: Sep 30, 2008 * (Sander Marechal) provided a bugfix involving
|
||||||
the use of the |netrw-t| command with a remote
|
the use of the |netrw-t| command with a remote
|
||||||
directory.
|
directory.
|
||||||
@ -2656,8 +2853,8 @@ which is loaded automatically at startup (assuming :set nocp).
|
|||||||
* executable files now displayed with trailing (*)
|
* executable files now displayed with trailing (*)
|
||||||
* symbolically linked files now displayed with
|
* symbolically linked files now displayed with
|
||||||
trailing (@)
|
trailing (@)
|
||||||
* Somewhen, s:NetrwMarkFileMove() got damaged. Its
|
* Somewhen, s:NetrwMarkFileMove() got damaged. It
|
||||||
now restored (missing an endif, for example).
|
* is now restored (missing an endif, for example).
|
||||||
* |netrw-mu| implemented (unmarking marked files)
|
* |netrw-mu| implemented (unmarking marked files)
|
||||||
* many bugs have been removed from the marked file
|
* many bugs have been removed from the marked file
|
||||||
system (tnx to Mark S. for feedback)
|
system (tnx to Mark S. for feedback)
|
||||||
@ -2728,7 +2925,7 @@ which is loaded automatically at startup (assuming :set nocp).
|
|||||||
the end of the s:NetrwBrowseChgDir() function;
|
the end of the s:NetrwBrowseChgDir() function;
|
||||||
they're now at the end of every if..elseif..else
|
they're now at the end of every if..elseif..else
|
||||||
block. The edit-a-file one is not quite at the end
|
block. The edit-a-file one is not quite at the end
|
||||||
of its block; instead, its just before the edit.
|
of its block; instead, it's just before the edit.
|
||||||
Restores user options, then this new placement
|
Restores user options, then this new placement
|
||||||
allows ftplugins, autocmds, etc to change settings
|
allows ftplugins, autocmds, etc to change settings
|
||||||
(ex. ftplugin/cpp.vim sets cindent).
|
(ex. ftplugin/cpp.vim sets cindent).
|
||||||
@ -2765,7 +2962,7 @@ which is loaded automatically at startup (assuming :set nocp).
|
|||||||
marked files.
|
marked files.
|
||||||
v110: May 10, 2007 * added [ and ] maps to NetrwTreeListing
|
v110: May 10, 2007 * added [ and ] maps to NetrwTreeListing
|
||||||
May 25, 2007 * |g:netrw_preview| included
|
May 25, 2007 * |g:netrw_preview| included
|
||||||
May 29, 2007 * modifed netrw#NetBrowseX to consistently use
|
May 29, 2007 * modified netrw#NetBrowseX to consistently use
|
||||||
g:netrw_shq instead of hardcoded quotes,
|
g:netrw_shq instead of hardcoded quotes,
|
||||||
and modified the snippet that sets up redir
|
and modified the snippet that sets up redir
|
||||||
so Windows machines use "nul" instead of
|
so Windows machines use "nul" instead of
|
||||||
@ -3226,7 +3423,16 @@ which is loaded automatically at startup (assuming :set nocp).
|
|||||||
|
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
12. Credits *netrw-credits* {{{1
|
13. Todo *netrw-todo* {{{1
|
||||||
|
|
||||||
|
07/29/09 : banner :|g:netrw_banner| can be used to suppress the
|
||||||
|
suppression banner. This feature is new and experimental,
|
||||||
|
so its in the process of being debugged.
|
||||||
|
09/04/09 : "gp" : See if it can be made to work for remote systems.
|
||||||
|
: See if it can be made to work with marked files.
|
||||||
|
|
||||||
|
==============================================================================
|
||||||
|
14. Credits *netrw-credits* {{{1
|
||||||
|
|
||||||
Vim editor by Bram Moolenaar (Thanks, Bram!)
|
Vim editor by Bram Moolenaar (Thanks, Bram!)
|
||||||
dav support by C Campbell
|
dav support by C Campbell
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
*pi_vimball.txt* For Vim version 7.1. Last change: 2008 May 30
|
*pi_vimball.txt* For Vim version 7.2. Last change: 2009 Dec 28
|
||||||
|
|
||||||
----------------
|
----------------
|
||||||
Vimball Archiver
|
Vimball Archiver
|
||||||
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
Author: Charles E. Campbell, Jr. <NdrOchip@ScampbellPfamily.AbizM>
|
||||||
(remove NOSPAM from Campbell's email first)
|
(remove NOSPAM from Campbell's email first)
|
||||||
Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
Copyright: (c) 2004-2009 by Charles E. Campbell, Jr. *Vimball-copyright*
|
||||||
The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||||
(see |copyright|) except use "Vimball" instead of "Vim".
|
(see |copyright|) except use "Vimball" instead of "Vim".
|
||||||
No warranty, express or implied.
|
No warranty, express or implied.
|
||||||
@ -55,7 +55,7 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
|||||||
==============================================================================
|
==============================================================================
|
||||||
3. Vimball Manual *vimball-manual*
|
3. Vimball Manual *vimball-manual*
|
||||||
|
|
||||||
*:MkVimball*
|
MAKING A VIMBALL *:MkVimball*
|
||||||
:[range]MkVimball[!] filename [path]
|
:[range]MkVimball[!] filename [path]
|
||||||
|
|
||||||
The range is composed of lines holding paths to files to be included
|
The range is composed of lines holding paths to files to be included
|
||||||
@ -79,29 +79,34 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
|||||||
"filename.vba" file, overwriting it if it already exists. This
|
"filename.vba" file, overwriting it if it already exists. This
|
||||||
behavior resembles that for |:w|.
|
behavior resembles that for |:w|.
|
||||||
|
|
||||||
*g:vimball_mkdir*
|
If you wish to force slashes into the filename, that can also be done
|
||||||
|
by using the exclamation mark (ie. :MkVimball! path/filename).
|
||||||
|
|
||||||
|
The tip at http://vim.wikia.com/wiki/Using_VimBall_with_%27Make%27
|
||||||
|
has a good idea on how to automate the production of vimballs using
|
||||||
|
make.
|
||||||
|
|
||||||
|
|
||||||
|
MAKING DIRECTORIES VIA VIMBALLS *g:vimball_mkdir*
|
||||||
|
|
||||||
First, the |mkdir()| command is tried (not all systems support it).
|
First, the |mkdir()| command is tried (not all systems support it).
|
||||||
|
|
||||||
If it doesn't exist, then g:vimball_mkdir doesn't exist, it is set to:
|
If it doesn't exist, then if g:vimball_mkdir doesn't exist, it is set
|
||||||
|
as follows: >
|
||||||
|g:netrw_local_mkdir|, if it exists
|
|g:netrw_local_mkdir|, if it exists
|
||||||
"mkdir", if it is executable
|
"mkdir" , if it is executable
|
||||||
"makedir", if it is executable
|
"makedir" , if it is executable
|
||||||
Otherwise, it is undefined.
|
Otherwise , it is undefined.
|
||||||
One may explicitly specify the directory making command using
|
< One may explicitly specify the directory making command using
|
||||||
g:vimball_mkdir. This command is used to make directories that
|
g:vimball_mkdir. This command is used to make directories that
|
||||||
are needed as indicated by the vimball.
|
are needed as indicated by the vimball.
|
||||||
|
|
||||||
*g:vimball_home*
|
|
||||||
|
CONTROLLING THE VIMBALL EXTRACTION DIRECTORY *g:vimball_home*
|
||||||
|
|
||||||
You may override the use of the |'runtimepath'| by specifying a
|
You may override the use of the |'runtimepath'| by specifying a
|
||||||
variable, g:vimball_home.
|
variable, g:vimball_home.
|
||||||
|
|
||||||
Path Preprocessing *g:vimball_path_escape*
|
|
||||||
|
|
||||||
Paths used in vimball are preprocessed by s:Path(); in addition,
|
|
||||||
certain characters are escaped (by prepending a backslash). The
|
|
||||||
characters are in g:vimball_path_escape, and may be overridden by
|
|
||||||
the user in his/her .vimrc initialization script.
|
|
||||||
|
|
||||||
*vimball-extract*
|
*vimball-extract*
|
||||||
vim filename.vba
|
vim filename.vba
|
||||||
|
|
||||||
@ -112,12 +117,16 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
|||||||
file holds the "Vimball Archiver by Charles E. Campbell, Jr., Ph.D."
|
file holds the "Vimball Archiver by Charles E. Campbell, Jr., Ph.D."
|
||||||
line.
|
line.
|
||||||
|
|
||||||
:VimballList *:VimballList*
|
LISTING FILES IN A VIMBALL *:VimballList*
|
||||||
|
|
||||||
|
:VimballList
|
||||||
|
|
||||||
This command will tell Vimball to list the files in the archive, along
|
This command will tell Vimball to list the files in the archive, along
|
||||||
with their lengths in lines.
|
with their lengths in lines.
|
||||||
|
|
||||||
:UseVimball [path] *:UseVimball*
|
MANUALLY INVOKING VIMBALL EXTRACTION *:UseVimball*
|
||||||
|
|
||||||
|
:UseVimball [path]
|
||||||
|
|
||||||
This command is contained within the vimball itself; it invokes the
|
This command is contained within the vimball itself; it invokes the
|
||||||
vimball#Vimball() routine which is responsible for unpacking the
|
vimball#Vimball() routine which is responsible for unpacking the
|
||||||
@ -126,7 +135,9 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
|||||||
installation, thereby overriding the automatic choice of the first
|
installation, thereby overriding the automatic choice of the first
|
||||||
existing directory on the |'runtimepath'|.
|
existing directory on the |'runtimepath'|.
|
||||||
|
|
||||||
:RmVimball vimballfile [path] *:RmVimball*
|
REMOVING A VIMBALL *:RmVimball*
|
||||||
|
|
||||||
|
:RmVimball vimballfile [path]
|
||||||
|
|
||||||
This command removes all files generated by the specified vimball
|
This command removes all files generated by the specified vimball
|
||||||
(but not any directories it may have made). One may choose a path
|
(but not any directories it may have made). One may choose a path
|
||||||
@ -136,10 +147,29 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
|||||||
containing a record of what files need to be removed for all vimballs
|
containing a record of what files need to be removed for all vimballs
|
||||||
used thus far.
|
used thus far.
|
||||||
|
|
||||||
|
PREVENTING LOADING
|
||||||
|
|
||||||
|
If for some reason you don't want to be able to extract plugins
|
||||||
|
using vimballs: you may prevent the loading of vimball.vim by
|
||||||
|
putting the following two variables in your <.vimrc>: >
|
||||||
|
|
||||||
|
let g:loaded_vimballPlugin= 1
|
||||||
|
let g:loaded_vimball = 1
|
||||||
|
<
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
4. Vimball History *vimball-history* {{{1
|
4. Vimball History *vimball-history* {{{1
|
||||||
|
|
||||||
|
30 : Dec 08, 2008 * fnameescape() inserted to protect error
|
||||||
|
messaging using corrupted filenames from
|
||||||
|
causing problems
|
||||||
|
* RmVimball supports filenames that would
|
||||||
|
otherwise be considered to have "magic"
|
||||||
|
characters (ie. Abc[1].vba)
|
||||||
|
Feb 18, 2009 * s:Escape(), g:vimball_shq, and g:netrw_shq
|
||||||
|
removed (shellescape() used directly)
|
||||||
|
Oct 05, 2009 * (Nikolai Weibull) suggested that MkVimball
|
||||||
|
be allowed to use slashes in the filename.
|
||||||
26 : May 27, 2008 * g:vimball_mkdir usage installed. Makes the
|
26 : May 27, 2008 * g:vimball_mkdir usage installed. Makes the
|
||||||
$HOME/.vim (or $HOME\vimfiles) directory if
|
$HOME/.vim (or $HOME\vimfiles) directory if
|
||||||
necessary.
|
necessary.
|
||||||
@ -164,7 +194,7 @@ Copyright: (c) 2004-2008 by Charles E. Campbell, Jr. *Vimball-copyright*
|
|||||||
will extract plugin/somefile to the AsNeeded/
|
will extract plugin/somefile to the AsNeeded/
|
||||||
directory
|
directory
|
||||||
17 : Jun 28, 2006 * changes all \s to /s internally for Windows
|
17 : Jun 28, 2006 * changes all \s to /s internally for Windows
|
||||||
16 : Jun 15, 2006 * A. Mechylynck's idea to allow users to specify
|
16 : Jun 15, 2006 * A. Mechelynck's idea to allow users to specify
|
||||||
installation root paths implemented for
|
installation root paths implemented for
|
||||||
UseVimball, MkVimball, and RmVimball.
|
UseVimball, MkVimball, and RmVimball.
|
||||||
* RmVimball implemented
|
* RmVimball implemented
|
||||||
|
@ -1,12 +1,3 @@
|
|||||||
:CVSEdit vcscommand.txt /*:CVSEdit*
|
|
||||||
:CVSEditors vcscommand.txt /*:CVSEditors*
|
|
||||||
:CVSUnedit vcscommand.txt /*:CVSUnedit*
|
|
||||||
:CVSWatch vcscommand.txt /*:CVSWatch*
|
|
||||||
:CVSWatchAdd vcscommand.txt /*:CVSWatchAdd*
|
|
||||||
:CVSWatchOff vcscommand.txt /*:CVSWatchOff*
|
|
||||||
:CVSWatchOn vcscommand.txt /*:CVSWatchOn*
|
|
||||||
:CVSWatchRemove vcscommand.txt /*:CVSWatchRemove*
|
|
||||||
:CVSWatchers vcscommand.txt /*:CVSWatchers*
|
|
||||||
:Explore pi_netrw.txt /*:Explore*
|
:Explore pi_netrw.txt /*:Explore*
|
||||||
:GLVS pi_getscript.txt /*:GLVS*
|
:GLVS pi_getscript.txt /*:GLVS*
|
||||||
:GetLatestVimScripts_dat pi_getscript.txt /*:GetLatestVimScripts_dat*
|
:GetLatestVimScripts_dat pi_getscript.txt /*:GetLatestVimScripts_dat*
|
||||||
@ -40,6 +31,7 @@
|
|||||||
:RmVimball pi_vimball.txt /*:RmVimball*
|
:RmVimball pi_vimball.txt /*:RmVimball*
|
||||||
:Search MultipleSearch.txt /*:Search*
|
:Search MultipleSearch.txt /*:Search*
|
||||||
:SearchBuffers MultipleSearch.txt /*:SearchBuffers*
|
:SearchBuffers MultipleSearch.txt /*:SearchBuffers*
|
||||||
|
:Sexplore pi_netrw.txt /*:Sexplore*
|
||||||
:TComment tComment.txt /*:TComment*
|
:TComment tComment.txt /*:TComment*
|
||||||
:TCommentAs tComment.txt /*:TCommentAs*
|
:TCommentAs tComment.txt /*:TCommentAs*
|
||||||
:TCommentBlock tComment.txt /*:TCommentBlock*
|
:TCommentBlock tComment.txt /*:TCommentBlock*
|
||||||
@ -47,23 +39,6 @@
|
|||||||
:TCommentRight tComment.txt /*:TCommentRight*
|
:TCommentRight tComment.txt /*:TCommentRight*
|
||||||
:Texplore pi_netrw.txt /*:Texplore*
|
:Texplore pi_netrw.txt /*:Texplore*
|
||||||
:UseVimball pi_vimball.txt /*:UseVimball*
|
:UseVimball pi_vimball.txt /*:UseVimball*
|
||||||
:VCSAdd vcscommand.txt /*:VCSAdd*
|
|
||||||
:VCSAnnotate vcscommand.txt /*:VCSAnnotate*
|
|
||||||
:VCSBlame vcscommand.txt /*:VCSBlame*
|
|
||||||
:VCSCommit vcscommand.txt /*:VCSCommit*
|
|
||||||
:VCSDelete vcscommand.txt /*:VCSDelete*
|
|
||||||
:VCSDiff vcscommand.txt /*:VCSDiff*
|
|
||||||
:VCSGotoOriginal vcscommand.txt /*:VCSGotoOriginal*
|
|
||||||
:VCSInfo vcscommand.txt /*:VCSInfo*
|
|
||||||
:VCSLock vcscommand.txt /*:VCSLock*
|
|
||||||
:VCSLog vcscommand.txt /*:VCSLog*
|
|
||||||
:VCSRemove vcscommand.txt /*:VCSRemove*
|
|
||||||
:VCSRevert vcscommand.txt /*:VCSRevert*
|
|
||||||
:VCSReview vcscommand.txt /*:VCSReview*
|
|
||||||
:VCSStatus vcscommand.txt /*:VCSStatus*
|
|
||||||
:VCSUnlock vcscommand.txt /*:VCSUnlock*
|
|
||||||
:VCSUpdate vcscommand.txt /*:VCSUpdate*
|
|
||||||
:VCSVimDiff vcscommand.txt /*:VCSVimDiff*
|
|
||||||
:Vexplore pi_netrw.txt /*:Vexplore*
|
:Vexplore pi_netrw.txt /*:Vexplore*
|
||||||
:VimballList pi_vimball.txt /*:VimballList*
|
:VimballList pi_vimball.txt /*:VimballList*
|
||||||
Align-copyright Align.txt /*Align-copyright*
|
Align-copyright Align.txt /*Align-copyright*
|
||||||
@ -92,25 +67,6 @@ SRHiGrp SrchRplcHiGrp.txt /*SRHiGrp*
|
|||||||
SRSearch SrchRplcHiGrp.txt /*SRSearch*
|
SRSearch SrchRplcHiGrp.txt /*SRSearch*
|
||||||
SrchRplcHiGrp.txt SrchRplcHiGrp.txt /*SrchRplcHiGrp.txt*
|
SrchRplcHiGrp.txt SrchRplcHiGrp.txt /*SrchRplcHiGrp.txt*
|
||||||
TCommentDefineType() tComment.txt /*TCommentDefineType()*
|
TCommentDefineType() tComment.txt /*TCommentDefineType()*
|
||||||
VCSCommandCVSDiffOpt vcscommand.txt /*VCSCommandCVSDiffOpt*
|
|
||||||
VCSCommandCVSExec vcscommand.txt /*VCSCommandCVSExec*
|
|
||||||
VCSCommandCommitOnWrite vcscommand.txt /*VCSCommandCommitOnWrite*
|
|
||||||
VCSCommandDeleteOnHide vcscommand.txt /*VCSCommandDeleteOnHide*
|
|
||||||
VCSCommandDiffSplit vcscommand.txt /*VCSCommandDiffSplit*
|
|
||||||
VCSCommandDisableAll vcscommand.txt /*VCSCommandDisableAll*
|
|
||||||
VCSCommandDisableExtensionMappings vcscommand.txt /*VCSCommandDisableExtensionMappings*
|
|
||||||
VCSCommandDisableMappings vcscommand.txt /*VCSCommandDisableMappings*
|
|
||||||
VCSCommandEdit vcscommand.txt /*VCSCommandEdit*
|
|
||||||
VCSCommandEnableBufferSetup vcscommand.txt /*VCSCommandEnableBufferSetup*
|
|
||||||
VCSCommandMapPrefix vcscommand.txt /*VCSCommandMapPrefix*
|
|
||||||
VCSCommandMappings vcscommand.txt /*VCSCommandMappings*
|
|
||||||
VCSCommandResultBufferNameExtension vcscommand.txt /*VCSCommandResultBufferNameExtension*
|
|
||||||
VCSCommandResultBufferNameFunction vcscommand.txt /*VCSCommandResultBufferNameFunction*
|
|
||||||
VCSCommandSVKExec vcscommand.txt /*VCSCommandSVKExec*
|
|
||||||
VCSCommandSVNDiffExt vcscommand.txt /*VCSCommandSVNDiffExt*
|
|
||||||
VCSCommandSVNDiffOpt vcscommand.txt /*VCSCommandSVNDiffOpt*
|
|
||||||
VCSCommandSVNExec vcscommand.txt /*VCSCommandSVNExec*
|
|
||||||
VCSCommandSplit vcscommand.txt /*VCSCommandSplit*
|
|
||||||
VimPdb.txt VimPdb.txt /*VimPdb.txt*
|
VimPdb.txt VimPdb.txt /*VimPdb.txt*
|
||||||
Vimball-copyright pi_vimball.txt /*Vimball-copyright*
|
Vimball-copyright pi_vimball.txt /*Vimball-copyright*
|
||||||
[% matchit.txt /*[%*
|
[% matchit.txt /*[%*
|
||||||
@ -132,6 +88,7 @@ align-option Align.txt /*align-option*
|
|||||||
align-options Align.txt /*align-options*
|
align-options Align.txt /*align-options*
|
||||||
align-strlen Align.txt /*align-strlen*
|
align-strlen Align.txt /*align-strlen*
|
||||||
align-usage Align.txt /*align-usage*
|
align-usage Align.txt /*align-usage*
|
||||||
|
align-userguide Align.txt /*align-userguide*
|
||||||
align-utf Align.txt /*align-utf*
|
align-utf Align.txt /*align-utf*
|
||||||
align-utf8 Align.txt /*align-utf8*
|
align-utf8 Align.txt /*align-utf8*
|
||||||
align.txt Align.txt /*align.txt*
|
align.txt Align.txt /*align.txt*
|
||||||
@ -162,6 +119,8 @@ alignman Align.txt /*alignman*
|
|||||||
alignmanual Align.txt /*alignmanual*
|
alignmanual Align.txt /*alignmanual*
|
||||||
alignmap-Htd Align.txt /*alignmap-Htd*
|
alignmap-Htd Align.txt /*alignmap-Htd*
|
||||||
alignmap-T= Align.txt /*alignmap-T=*
|
alignmap-T= Align.txt /*alignmap-T=*
|
||||||
|
alignmap-Tsp Align.txt /*alignmap-Tsp*
|
||||||
|
alignmap-a( Align.txt /*alignmap-a(*
|
||||||
alignmap-a, Align.txt /*alignmap-a,*
|
alignmap-a, Align.txt /*alignmap-a,*
|
||||||
alignmap-a< Align.txt /*alignmap-a<*
|
alignmap-a< Align.txt /*alignmap-a<*
|
||||||
alignmap-a= Align.txt /*alignmap-a=*
|
alignmap-a= Align.txt /*alignmap-a=*
|
||||||
@ -187,16 +146,15 @@ alignmap-t? Align.txt /*alignmap-t?*
|
|||||||
alignmap-tab Align.txt /*alignmap-tab*
|
alignmap-tab Align.txt /*alignmap-tab*
|
||||||
alignmap-tml Align.txt /*alignmap-tml*
|
alignmap-tml Align.txt /*alignmap-tml*
|
||||||
alignmap-ts, Align.txt /*alignmap-ts,*
|
alignmap-ts, Align.txt /*alignmap-ts,*
|
||||||
|
alignmap-ts: Align.txt /*alignmap-ts:*
|
||||||
|
alignmap-ts< Align.txt /*alignmap-ts<*
|
||||||
|
alignmap-ts= Align.txt /*alignmap-ts=*
|
||||||
alignmap-tsp Align.txt /*alignmap-tsp*
|
alignmap-tsp Align.txt /*alignmap-tsp*
|
||||||
alignmap-tsq Align.txt /*alignmap-tsq*
|
alignmap-tsq Align.txt /*alignmap-tsq*
|
||||||
alignmap-tt Align.txt /*alignmap-tt*
|
alignmap-tt Align.txt /*alignmap-tt*
|
||||||
alignmap-t~ Align.txt /*alignmap-t~*
|
alignmap-t~ Align.txt /*alignmap-t~*
|
||||||
alignmaps Align.txt /*alignmaps*
|
alignmaps Align.txt /*alignmaps*
|
||||||
alignusage Align.txt /*alignusage*
|
alignusage Align.txt /*alignusage*
|
||||||
b:VCSCommandCommand vcscommand.txt /*b:VCSCommandCommand*
|
|
||||||
b:VCSCommandOriginalBuffer vcscommand.txt /*b:VCSCommandOriginalBuffer*
|
|
||||||
b:VCSCommandSourceFile vcscommand.txt /*b:VCSCommandSourceFile*
|
|
||||||
b:VCSCommandVCSType vcscommand.txt /*b:VCSCommandVCSType*
|
|
||||||
b:match_col matchit.txt /*b:match_col*
|
b:match_col matchit.txt /*b:match_col*
|
||||||
b:match_debug matchit.txt /*b:match_debug*
|
b:match_debug matchit.txt /*b:match_debug*
|
||||||
b:match_ignorecase matchit.txt /*b:match_ignorecase*
|
b:match_ignorecase matchit.txt /*b:match_ignorecase*
|
||||||
@ -1450,11 +1408,11 @@ crvdoc-licGPL crefvimdoc.txt /*crvdoc-licGPL*
|
|||||||
crvdoc-licLGPL crefvimdoc.txt /*crvdoc-licLGPL*
|
crvdoc-licLGPL crefvimdoc.txt /*crvdoc-licLGPL*
|
||||||
crvdoc-limbugs crefvimdoc.txt /*crvdoc-limbugs*
|
crvdoc-limbugs crefvimdoc.txt /*crvdoc-limbugs*
|
||||||
crvdoc-usage crefvimdoc.txt /*crvdoc-usage*
|
crvdoc-usage crefvimdoc.txt /*crvdoc-usage*
|
||||||
cvscommand-changes vcscommand.txt /*cvscommand-changes*
|
|
||||||
dav pi_netrw.txt /*dav*
|
dav pi_netrw.txt /*dav*
|
||||||
davs pi_netrw.txt /*davs*
|
davs pi_netrw.txt /*davs*
|
||||||
drv-dtArrayInit crefvim.txt /*drv-dtArrayInit*
|
drv-dtArrayInit crefvim.txt /*drv-dtArrayInit*
|
||||||
drv-dtIncompleteArrayDecl crefvim.txt /*drv-dtIncompleteArrayDecl*
|
drv-dtIncompleteArrayDecl crefvim.txt /*drv-dtIncompleteArrayDecl*
|
||||||
|
editsrec.txt editsrec.txt /*editsrec.txt*
|
||||||
ex-visincr-I visincr.txt /*ex-visincr-I*
|
ex-visincr-I visincr.txt /*ex-visincr-I*
|
||||||
ex-visincr-IA visincr.txt /*ex-visincr-IA*
|
ex-visincr-IA visincr.txt /*ex-visincr-IA*
|
||||||
ex-visincr-ID visincr.txt /*ex-visincr-ID*
|
ex-visincr-ID visincr.txt /*ex-visincr-ID*
|
||||||
@ -1470,17 +1428,20 @@ g:MultipleSearchColorSequence MultipleSearch.txt /*g:MultipleSearchColorSequence
|
|||||||
g:MultipleSearchMaxColors MultipleSearch.txt /*g:MultipleSearchMaxColors*
|
g:MultipleSearchMaxColors MultipleSearch.txt /*g:MultipleSearchMaxColors*
|
||||||
g:MultipleSearchTextColorSequence MultipleSearch.txt /*g:MultipleSearchTextColorSequence*
|
g:MultipleSearchTextColorSequence MultipleSearch.txt /*g:MultipleSearchTextColorSequence*
|
||||||
g:NetrwTopLvlMenu pi_netrw.txt /*g:NetrwTopLvlMenu*
|
g:NetrwTopLvlMenu pi_netrw.txt /*g:NetrwTopLvlMenu*
|
||||||
|
g:Netrw_funcref pi_netrw.txt /*g:Netrw_funcref*
|
||||||
g:netrw_alto pi_netrw.txt /*g:netrw_alto*
|
g:netrw_alto pi_netrw.txt /*g:netrw_alto*
|
||||||
g:netrw_altv pi_netrw.txt /*g:netrw_altv*
|
g:netrw_altv pi_netrw.txt /*g:netrw_altv*
|
||||||
|
g:netrw_banner pi_netrw.txt /*g:netrw_banner*
|
||||||
g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split*
|
g:netrw_browse_split pi_netrw.txt /*g:netrw_browse_split*
|
||||||
g:netrw_browsex_viewer pi_netrw.txt /*g:netrw_browsex_viewer*
|
g:netrw_browsex_viewer pi_netrw.txt /*g:netrw_browsex_viewer*
|
||||||
|
g:netrw_chgperm pi_netrw.txt /*g:netrw_chgperm*
|
||||||
|
g:netrw_chgwin pi_netrw.txt /*g:netrw_chgwin*
|
||||||
g:netrw_compress pi_netrw.txt /*g:netrw_compress*
|
g:netrw_compress pi_netrw.txt /*g:netrw_compress*
|
||||||
g:netrw_ctags pi_netrw.txt /*g:netrw_ctags*
|
g:netrw_ctags pi_netrw.txt /*g:netrw_ctags*
|
||||||
g:netrw_cursorline pi_netrw.txt /*g:netrw_cursorline*
|
g:netrw_cursorline pi_netrw.txt /*g:netrw_cursorline*
|
||||||
g:netrw_cygwin pi_netrw.txt /*g:netrw_cygwin*
|
g:netrw_cygwin pi_netrw.txt /*g:netrw_cygwin*
|
||||||
g:netrw_dav_cmd pi_netrw.txt /*g:netrw_dav_cmd*
|
g:netrw_dav_cmd pi_netrw.txt /*g:netrw_dav_cmd*
|
||||||
g:netrw_decompress pi_netrw.txt /*g:netrw_decompress*
|
g:netrw_decompress pi_netrw.txt /*g:netrw_decompress*
|
||||||
g:netrw_extracmd pi_netrw.txt /*g:netrw_extracmd*
|
|
||||||
g:netrw_fastbrowse pi_netrw.txt /*g:netrw_fastbrowse*
|
g:netrw_fastbrowse pi_netrw.txt /*g:netrw_fastbrowse*
|
||||||
g:netrw_fetch_cmd pi_netrw.txt /*g:netrw_fetch_cmd*
|
g:netrw_fetch_cmd pi_netrw.txt /*g:netrw_fetch_cmd*
|
||||||
g:netrw_fname_escape pi_netrw.txt /*g:netrw_fname_escape*
|
g:netrw_fname_escape pi_netrw.txt /*g:netrw_fname_escape*
|
||||||
@ -1490,6 +1451,7 @@ g:netrw_ftp_cmd pi_netrw.txt /*g:netrw_ftp_cmd*
|
|||||||
g:netrw_ftp_list_cmd pi_netrw.txt /*g:netrw_ftp_list_cmd*
|
g:netrw_ftp_list_cmd pi_netrw.txt /*g:netrw_ftp_list_cmd*
|
||||||
g:netrw_ftp_sizelist_cmd pi_netrw.txt /*g:netrw_ftp_sizelist_cmd*
|
g:netrw_ftp_sizelist_cmd pi_netrw.txt /*g:netrw_ftp_sizelist_cmd*
|
||||||
g:netrw_ftp_timelist_cmd pi_netrw.txt /*g:netrw_ftp_timelist_cmd*
|
g:netrw_ftp_timelist_cmd pi_netrw.txt /*g:netrw_ftp_timelist_cmd*
|
||||||
|
g:netrw_ftpextracmd pi_netrw.txt /*g:netrw_ftpextracmd*
|
||||||
g:netrw_ftpmode pi_netrw.txt /*g:netrw_ftpmode*
|
g:netrw_ftpmode pi_netrw.txt /*g:netrw_ftpmode*
|
||||||
g:netrw_glob_escape pi_netrw.txt /*g:netrw_glob_escape*
|
g:netrw_glob_escape pi_netrw.txt /*g:netrw_glob_escape*
|
||||||
g:netrw_hide pi_netrw.txt /*g:netrw_hide*
|
g:netrw_hide pi_netrw.txt /*g:netrw_hide*
|
||||||
@ -1508,6 +1470,7 @@ g:netrw_localmovecmd pi_netrw.txt /*g:netrw_localmovecmd*
|
|||||||
g:netrw_maxfilenamelen pi_netrw.txt /*g:netrw_maxfilenamelen*
|
g:netrw_maxfilenamelen pi_netrw.txt /*g:netrw_maxfilenamelen*
|
||||||
g:netrw_menu pi_netrw.txt /*g:netrw_menu*
|
g:netrw_menu pi_netrw.txt /*g:netrw_menu*
|
||||||
g:netrw_mkdir_cmd pi_netrw.txt /*g:netrw_mkdir_cmd*
|
g:netrw_mkdir_cmd pi_netrw.txt /*g:netrw_mkdir_cmd*
|
||||||
|
g:netrw_mousemaps pi_netrw.txt /*g:netrw_mousemaps*
|
||||||
g:netrw_nogx pi_netrw.txt /*g:netrw_nogx*
|
g:netrw_nogx pi_netrw.txt /*g:netrw_nogx*
|
||||||
g:netrw_preview pi_netrw.txt /*g:netrw_preview*
|
g:netrw_preview pi_netrw.txt /*g:netrw_preview*
|
||||||
g:netrw_rcp_cmd pi_netrw.txt /*g:netrw_rcp_cmd*
|
g:netrw_rcp_cmd pi_netrw.txt /*g:netrw_rcp_cmd*
|
||||||
@ -1518,6 +1481,7 @@ g:netrw_rmf_cmd pi_netrw.txt /*g:netrw_rmf_cmd*
|
|||||||
g:netrw_rsync_cmd pi_netrw.txt /*g:netrw_rsync_cmd*
|
g:netrw_rsync_cmd pi_netrw.txt /*g:netrw_rsync_cmd*
|
||||||
g:netrw_scp_cmd pi_netrw.txt /*g:netrw_scp_cmd*
|
g:netrw_scp_cmd pi_netrw.txt /*g:netrw_scp_cmd*
|
||||||
g:netrw_scpport pi_netrw.txt /*g:netrw_scpport*
|
g:netrw_scpport pi_netrw.txt /*g:netrw_scpport*
|
||||||
|
g:netrw_sepchr pi_netrw.txt /*g:netrw_sepchr*
|
||||||
g:netrw_sftp_cmd pi_netrw.txt /*g:netrw_sftp_cmd*
|
g:netrw_sftp_cmd pi_netrw.txt /*g:netrw_sftp_cmd*
|
||||||
g:netrw_silent pi_netrw.txt /*g:netrw_silent*
|
g:netrw_silent pi_netrw.txt /*g:netrw_silent*
|
||||||
g:netrw_sort_by pi_netrw.txt /*g:netrw_sort_by*
|
g:netrw_sort_by pi_netrw.txt /*g:netrw_sort_by*
|
||||||
@ -1544,7 +1508,6 @@ g:tcommentMapLeaderOp2 tComment.txt /*g:tcommentMapLeaderOp2*
|
|||||||
g:tcommentOpModeExtra tComment.txt /*g:tcommentOpModeExtra*
|
g:tcommentOpModeExtra tComment.txt /*g:tcommentOpModeExtra*
|
||||||
g:vimball_home pi_vimball.txt /*g:vimball_home*
|
g:vimball_home pi_vimball.txt /*g:vimball_home*
|
||||||
g:vimball_mkdir pi_vimball.txt /*g:vimball_mkdir*
|
g:vimball_mkdir pi_vimball.txt /*g:vimball_mkdir*
|
||||||
g:vimball_path_escape pi_vimball.txt /*g:vimball_path_escape*
|
|
||||||
g:visincr_datedivset visincr.txt /*g:visincr_datedivset*
|
g:visincr_datedivset visincr.txt /*g:visincr_datedivset*
|
||||||
getlatestvimscripts-install pi_getscript.txt /*getlatestvimscripts-install*
|
getlatestvimscripts-install pi_getscript.txt /*getlatestvimscripts-install*
|
||||||
getscript pi_getscript.txt /*getscript*
|
getscript pi_getscript.txt /*getscript*
|
||||||
@ -1611,11 +1574,13 @@ netreadfixup pi_netrw.txt /*netreadfixup*
|
|||||||
netrw pi_netrw.txt /*netrw*
|
netrw pi_netrw.txt /*netrw*
|
||||||
netrw-% pi_netrw.txt /*netrw-%*
|
netrw-% pi_netrw.txt /*netrw-%*
|
||||||
netrw-- pi_netrw.txt /*netrw--*
|
netrw-- pi_netrw.txt /*netrw--*
|
||||||
|
netrw-C pi_netrw.txt /*netrw-C*
|
||||||
netrw-D pi_netrw.txt /*netrw-D*
|
netrw-D pi_netrw.txt /*netrw-D*
|
||||||
netrw-O pi_netrw.txt /*netrw-O*
|
netrw-O pi_netrw.txt /*netrw-O*
|
||||||
netrw-P pi_netrw.txt /*netrw-P*
|
netrw-P pi_netrw.txt /*netrw-P*
|
||||||
netrw-R pi_netrw.txt /*netrw-R*
|
netrw-R pi_netrw.txt /*netrw-R*
|
||||||
netrw-S pi_netrw.txt /*netrw-S*
|
netrw-S pi_netrw.txt /*netrw-S*
|
||||||
|
netrw-T pi_netrw.txt /*netrw-T*
|
||||||
netrw-U pi_netrw.txt /*netrw-U*
|
netrw-U pi_netrw.txt /*netrw-U*
|
||||||
netrw-a pi_netrw.txt /*netrw-a*
|
netrw-a pi_netrw.txt /*netrw-a*
|
||||||
netrw-activate pi_netrw.txt /*netrw-activate*
|
netrw-activate pi_netrw.txt /*netrw-activate*
|
||||||
@ -1633,6 +1598,7 @@ netrw-cadaver pi_netrw.txt /*netrw-cadaver*
|
|||||||
netrw-chgup pi_netrw.txt /*netrw-chgup*
|
netrw-chgup pi_netrw.txt /*netrw-chgup*
|
||||||
netrw-clean pi_netrw.txt /*netrw-clean*
|
netrw-clean pi_netrw.txt /*netrw-clean*
|
||||||
netrw-contents pi_netrw.txt /*netrw-contents*
|
netrw-contents pi_netrw.txt /*netrw-contents*
|
||||||
|
netrw-copyright pi_netrw.txt /*netrw-copyright*
|
||||||
netrw-cr pi_netrw.txt /*netrw-cr*
|
netrw-cr pi_netrw.txt /*netrw-cr*
|
||||||
netrw-credits pi_netrw.txt /*netrw-credits*
|
netrw-credits pi_netrw.txt /*netrw-credits*
|
||||||
netrw-ctrl-h pi_netrw.txt /*netrw-ctrl-h*
|
netrw-ctrl-h pi_netrw.txt /*netrw-ctrl-h*
|
||||||
@ -1652,10 +1618,14 @@ netrw-explore pi_netrw.txt /*netrw-explore*
|
|||||||
netrw-explore-cmds pi_netrw.txt /*netrw-explore-cmds*
|
netrw-explore-cmds pi_netrw.txt /*netrw-explore-cmds*
|
||||||
netrw-externapp pi_netrw.txt /*netrw-externapp*
|
netrw-externapp pi_netrw.txt /*netrw-externapp*
|
||||||
netrw-file pi_netrw.txt /*netrw-file*
|
netrw-file pi_netrw.txt /*netrw-file*
|
||||||
|
netrw-filigree pi_netrw.txt /*netrw-filigree*
|
||||||
netrw-fixup pi_netrw.txt /*netrw-fixup*
|
netrw-fixup pi_netrw.txt /*netrw-fixup*
|
||||||
netrw-ftp pi_netrw.txt /*netrw-ftp*
|
netrw-ftp pi_netrw.txt /*netrw-ftp*
|
||||||
|
netrw-ftype pi_netrw.txt /*netrw-ftype*
|
||||||
netrw-gb pi_netrw.txt /*netrw-gb*
|
netrw-gb pi_netrw.txt /*netrw-gb*
|
||||||
|
netrw-getftype pi_netrw.txt /*netrw-getftype*
|
||||||
netrw-gh pi_netrw.txt /*netrw-gh*
|
netrw-gh pi_netrw.txt /*netrw-gh*
|
||||||
|
netrw-gp pi_netrw.txt /*netrw-gp*
|
||||||
netrw-gx pi_netrw.txt /*netrw-gx*
|
netrw-gx pi_netrw.txt /*netrw-gx*
|
||||||
netrw-handler pi_netrw.txt /*netrw-handler*
|
netrw-handler pi_netrw.txt /*netrw-handler*
|
||||||
netrw-help pi_netrw.txt /*netrw-help*
|
netrw-help pi_netrw.txt /*netrw-help*
|
||||||
@ -1667,6 +1637,7 @@ netrw-horiz pi_netrw.txt /*netrw-horiz*
|
|||||||
netrw-i pi_netrw.txt /*netrw-i*
|
netrw-i pi_netrw.txt /*netrw-i*
|
||||||
netrw-incompatible pi_netrw.txt /*netrw-incompatible*
|
netrw-incompatible pi_netrw.txt /*netrw-incompatible*
|
||||||
netrw-intro-browse pi_netrw.txt /*netrw-intro-browse*
|
netrw-intro-browse pi_netrw.txt /*netrw-intro-browse*
|
||||||
|
netrw-leftmouse pi_netrw.txt /*netrw-leftmouse*
|
||||||
netrw-list pi_netrw.txt /*netrw-list*
|
netrw-list pi_netrw.txt /*netrw-list*
|
||||||
netrw-listbookmark pi_netrw.txt /*netrw-listbookmark*
|
netrw-listbookmark pi_netrw.txt /*netrw-listbookmark*
|
||||||
netrw-listhack pi_netrw.txt /*netrw-listhack*
|
netrw-listhack pi_netrw.txt /*netrw-listhack*
|
||||||
@ -1680,8 +1651,10 @@ netrw-me pi_netrw.txt /*netrw-me*
|
|||||||
netrw-mf pi_netrw.txt /*netrw-mf*
|
netrw-mf pi_netrw.txt /*netrw-mf*
|
||||||
netrw-mg pi_netrw.txt /*netrw-mg*
|
netrw-mg pi_netrw.txt /*netrw-mg*
|
||||||
netrw-mh pi_netrw.txt /*netrw-mh*
|
netrw-mh pi_netrw.txt /*netrw-mh*
|
||||||
|
netrw-middlemouse pi_netrw.txt /*netrw-middlemouse*
|
||||||
netrw-ml_get pi_netrw.txt /*netrw-ml_get*
|
netrw-ml_get pi_netrw.txt /*netrw-ml_get*
|
||||||
netrw-mm pi_netrw.txt /*netrw-mm*
|
netrw-mm pi_netrw.txt /*netrw-mm*
|
||||||
|
netrw-mouse pi_netrw.txt /*netrw-mouse*
|
||||||
netrw-move pi_netrw.txt /*netrw-move*
|
netrw-move pi_netrw.txt /*netrw-move*
|
||||||
netrw-mp pi_netrw.txt /*netrw-mp*
|
netrw-mp pi_netrw.txt /*netrw-mp*
|
||||||
netrw-mr pi_netrw.txt /*netrw-mr*
|
netrw-mr pi_netrw.txt /*netrw-mr*
|
||||||
@ -1700,6 +1673,7 @@ netrw-p pi_netrw.txt /*netrw-p*
|
|||||||
netrw-p1 pi_netrw.txt /*netrw-p1*
|
netrw-p1 pi_netrw.txt /*netrw-p1*
|
||||||
netrw-p10 pi_netrw.txt /*netrw-p10*
|
netrw-p10 pi_netrw.txt /*netrw-p10*
|
||||||
netrw-p11 pi_netrw.txt /*netrw-p11*
|
netrw-p11 pi_netrw.txt /*netrw-p11*
|
||||||
|
netrw-p12 pi_netrw.txt /*netrw-p12*
|
||||||
netrw-p2 pi_netrw.txt /*netrw-p2*
|
netrw-p2 pi_netrw.txt /*netrw-p2*
|
||||||
netrw-p3 pi_netrw.txt /*netrw-p3*
|
netrw-p3 pi_netrw.txt /*netrw-p3*
|
||||||
netrw-p4 pi_netrw.txt /*netrw-p4*
|
netrw-p4 pi_netrw.txt /*netrw-p4*
|
||||||
@ -1732,6 +1706,7 @@ netrw-ref pi_netrw.txt /*netrw-ref*
|
|||||||
netrw-rename pi_netrw.txt /*netrw-rename*
|
netrw-rename pi_netrw.txt /*netrw-rename*
|
||||||
netrw-reverse pi_netrw.txt /*netrw-reverse*
|
netrw-reverse pi_netrw.txt /*netrw-reverse*
|
||||||
netrw-rexplore pi_netrw.txt /*netrw-rexplore*
|
netrw-rexplore pi_netrw.txt /*netrw-rexplore*
|
||||||
|
netrw-rightmouse pi_netrw.txt /*netrw-rightmouse*
|
||||||
netrw-s pi_netrw.txt /*netrw-s*
|
netrw-s pi_netrw.txt /*netrw-s*
|
||||||
netrw-settings pi_netrw.txt /*netrw-settings*
|
netrw-settings pi_netrw.txt /*netrw-settings*
|
||||||
netrw-sexplore pi_netrw.txt /*netrw-sexplore*
|
netrw-sexplore pi_netrw.txt /*netrw-sexplore*
|
||||||
@ -1746,6 +1721,7 @@ netrw-starstarpat pi_netrw.txt /*netrw-starstarpat*
|
|||||||
netrw-start pi_netrw.txt /*netrw-start*
|
netrw-start pi_netrw.txt /*netrw-start*
|
||||||
netrw-t pi_netrw.txt /*netrw-t*
|
netrw-t pi_netrw.txt /*netrw-t*
|
||||||
netrw-texplore pi_netrw.txt /*netrw-texplore*
|
netrw-texplore pi_netrw.txt /*netrw-texplore*
|
||||||
|
netrw-todo pi_netrw.txt /*netrw-todo*
|
||||||
netrw-transparent pi_netrw.txt /*netrw-transparent*
|
netrw-transparent pi_netrw.txt /*netrw-transparent*
|
||||||
netrw-u pi_netrw.txt /*netrw-u*
|
netrw-u pi_netrw.txt /*netrw-u*
|
||||||
netrw-uidpass pi_netrw.txt /*netrw-uidpass*
|
netrw-uidpass pi_netrw.txt /*netrw-uidpass*
|
||||||
@ -1791,29 +1767,6 @@ v_]% matchit.txt /*v_]%*
|
|||||||
v_a% matchit.txt /*v_a%*
|
v_a% matchit.txt /*v_a%*
|
||||||
v_g% matchit.txt /*v_g%*
|
v_g% matchit.txt /*v_g%*
|
||||||
vba pi_vimball.txt /*vba*
|
vba pi_vimball.txt /*vba*
|
||||||
vcscommand vcscommand.txt /*vcscommand*
|
|
||||||
vcscommand-buffer-management vcscommand.txt /*vcscommand-buffer-management*
|
|
||||||
vcscommand-buffer-variables vcscommand.txt /*vcscommand-buffer-variables*
|
|
||||||
vcscommand-bugs vcscommand.txt /*vcscommand-bugs*
|
|
||||||
vcscommand-commands vcscommand.txt /*vcscommand-commands*
|
|
||||||
vcscommand-config vcscommand.txt /*vcscommand-config*
|
|
||||||
vcscommand-contents vcscommand.txt /*vcscommand-contents*
|
|
||||||
vcscommand-customize vcscommand.txt /*vcscommand-customize*
|
|
||||||
vcscommand-events vcscommand.txt /*vcscommand-events*
|
|
||||||
vcscommand-install vcscommand.txt /*vcscommand-install*
|
|
||||||
vcscommand-intro vcscommand.txt /*vcscommand-intro*
|
|
||||||
vcscommand-manual vcscommand.txt /*vcscommand-manual*
|
|
||||||
vcscommand-mappings vcscommand.txt /*vcscommand-mappings*
|
|
||||||
vcscommand-mappings-override vcscommand.txt /*vcscommand-mappings-override*
|
|
||||||
vcscommand-naming vcscommand.txt /*vcscommand-naming*
|
|
||||||
vcscommand-options vcscommand.txt /*vcscommand-options*
|
|
||||||
vcscommand-ssh vcscommand.txt /*vcscommand-ssh*
|
|
||||||
vcscommand-ssh-config vcscommand.txt /*vcscommand-ssh-config*
|
|
||||||
vcscommand-ssh-env vcscommand.txt /*vcscommand-ssh-env*
|
|
||||||
vcscommand-ssh-other vcscommand.txt /*vcscommand-ssh-other*
|
|
||||||
vcscommand-ssh-wrapper vcscommand.txt /*vcscommand-ssh-wrapper*
|
|
||||||
vcscommand-statusline vcscommand.txt /*vcscommand-statusline*
|
|
||||||
vcscommand.txt vcscommand.txt /*vcscommand.txt*
|
|
||||||
vimball pi_vimball.txt /*vimball*
|
vimball pi_vimball.txt /*vimball*
|
||||||
vimball-contents pi_vimball.txt /*vimball-contents*
|
vimball-contents pi_vimball.txt /*vimball-contents*
|
||||||
vimball-extract pi_vimball.txt /*vimball-extract*
|
vimball-extract pi_vimball.txt /*vimball-extract*
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
" FileType: XML
|
" FileType: XML
|
||||||
" Author: Rene de Zwart <renez (at) lightcon.xs4all.nl>
|
" Author: Rene de Zwart <renez (at) lightcon.xs4all.nl>
|
||||||
" Maintainer: Rene de Zwart <renez (at) lightcon.xs4all.nl>
|
" Maintainer: Rene de Zwart <renez (at) lightcon.xs4all.nl>
|
||||||
" Last Change: $Date: 2007/03/17 12:39:40 $
|
" Last Change: Date: 2009-11-12
|
||||||
" Version: $Revision: 1.35 $
|
" Version: Revision: 1.37
|
||||||
"
|
"
|
||||||
" Licence: This program is free software; you can redistribute it
|
" Licence: This program is free software; you can redistribute it
|
||||||
" and/or modify it under the terms of the GNU General Public
|
" and/or modify it under the terms of the GNU General Public
|
||||||
@ -12,12 +12,17 @@
|
|||||||
" for the original code. Guo-Peng Wen for the self
|
" for the original code. Guo-Peng Wen for the self
|
||||||
" install documentation code.
|
" install documentation code.
|
||||||
" Bart vam Deenen for makeElement function
|
" Bart vam Deenen for makeElement function
|
||||||
|
" Rene de Zwart
|
||||||
|
|
||||||
|
|
||||||
" Observation - If you want to do something to a match pair most of the time
|
" Observation - If you want to do something to a match pair most of the time
|
||||||
" you must do first the close tag. Because doing first the open
|
" you must do first the close tag. Because doing first the open
|
||||||
" tag could change the close tag position.
|
" tag could change the close tag position.
|
||||||
|
|
||||||
|
" NOTE with filetype index on de standard indent/html.vim interferes
|
||||||
|
" with xml.vim. You can
|
||||||
|
" 1) set filetype indent off in .vimrc
|
||||||
|
" 2) echo "let b:did_indent = 1" > .vim/indent/html.vim
|
||||||
|
|
||||||
|
|
||||||
" Only do this when not done yet for this buffer
|
" Only do this when not done yet for this buffer
|
||||||
@ -54,7 +59,7 @@ let s:OptAttrib = s:Attrib . '*'. s:NoSlashBeforeGt
|
|||||||
let s:ReqAttrib = s:Attrib . '\+'. s:NoSlashBeforeGt
|
let s:ReqAttrib = s:Attrib . '\+'. s:NoSlashBeforeGt
|
||||||
let s:OpenTag = '<[^!/?][^>]*' . s:OptAttrib
|
let s:OpenTag = '<[^!/?][^>]*' . s:OptAttrib
|
||||||
let s:OpenOrCloseTag = '<[^!?][^>]*'. s:OptAttrib
|
let s:OpenOrCloseTag = '<[^!?][^>]*'. s:OptAttrib
|
||||||
let s:CloseTag = '<\/[^>]*'. s:OptAttrib
|
let s:CloseTag = '<\/[^>]*'. s:NoSlashBeforeGt
|
||||||
let s:SpaceInfront = '^\s*<'
|
let s:SpaceInfront = '^\s*<'
|
||||||
let s:EndofName = '\($\|\s\|>\)'
|
let s:EndofName = '\($\|\s\|>\)'
|
||||||
|
|
||||||
@ -109,25 +114,19 @@ endfunction
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
" SavePos() saves position in bufferwide variable {{{1
|
" SavePos() saves position in bufferwide variable {{{1
|
||||||
if !exists('*s:SavePos')
|
|
||||||
fun! s:SavePos()
|
fun! s:SavePos()
|
||||||
retu 'call cursor('.line('.').','. col('.'). ')'
|
retu 'call cursor('.line('.').','. col('.'). ')'
|
||||||
endf
|
endf
|
||||||
en
|
|
||||||
|
|
||||||
" findOpenTag() {{{1
|
" findOpenTag() {{{1
|
||||||
if !exists('*s:findOpenTag')
|
|
||||||
fun! s:findOpenTag(flag)
|
fun! s:findOpenTag(flag)
|
||||||
call search(s:OpenTag,a:flag)
|
call search(s:OpenTag,a:flag)
|
||||||
endf
|
endf
|
||||||
en
|
|
||||||
|
|
||||||
" findCloseTag() {{{1
|
" findCloseTag() {{{1
|
||||||
if !exists('*s:findCloseTag')
|
|
||||||
fun! s:findCloseTag(flag)
|
fun! s:findCloseTag(flag)
|
||||||
call search(s:CloseTag,a:flag)
|
call search(s:CloseTag,a:flag)
|
||||||
endf
|
endf
|
||||||
en
|
|
||||||
|
|
||||||
" GetTagName() Gets the tagname from start position {{{1
|
" GetTagName() Gets the tagname from start position {{{1
|
||||||
"Now lets go for the name part. The namepart are xmlnamechars which
|
"Now lets go for the name part. The namepart are xmlnamechars which
|
||||||
@ -141,7 +140,6 @@ endf
|
|||||||
en
|
en
|
||||||
" hasAtt() Looks for attribute in open tag {{{1
|
" hasAtt() Looks for attribute in open tag {{{1
|
||||||
" expect cursor to be on <
|
" expect cursor to be on <
|
||||||
if !exists('*s:hasAtt')
|
|
||||||
fun! s:hasAtt()
|
fun! s:hasAtt()
|
||||||
"Check if this open tag has attributes
|
"Check if this open tag has attributes
|
||||||
let l:line = line('.') | let l:col = col('.')
|
let l:line = line('.') | let l:col = col('.')
|
||||||
@ -151,7 +149,6 @@ fun! s:hasAtt()
|
|||||||
en
|
en
|
||||||
en
|
en
|
||||||
endf
|
endf
|
||||||
en
|
|
||||||
|
|
||||||
|
|
||||||
" TagUnderCursor() Is there a tag under the cursor? {{{1
|
" TagUnderCursor() Is there a tag under the cursor? {{{1
|
||||||
@ -266,7 +263,7 @@ fun! s:Match(name)
|
|||||||
let l:flags='bW'
|
let l:flags='bW'
|
||||||
let l:level = -1
|
let l:level = -1
|
||||||
el
|
el
|
||||||
exe 'normal '.b:endline.'G0'.(b:endcol-1).'l'
|
exe 'normal! '.b:endline.'G0'.(b:endcol-1).'l'
|
||||||
let l:flags='W'
|
let l:flags='W'
|
||||||
let l:level = 1
|
let l:level = 1
|
||||||
en
|
en
|
||||||
@ -351,16 +348,16 @@ fun! s:DelComment()
|
|||||||
if s:InComment()
|
if s:InComment()
|
||||||
if b:begcom
|
if b:begcom
|
||||||
if search('-->','W' ) >=0
|
if search('-->','W' ) >=0
|
||||||
normal hh3x
|
normal! hh3x
|
||||||
call cursor(b:begcomline,b:begcomcol)
|
call cursor(b:begcomline,b:begcomcol)
|
||||||
normal 4x
|
normal! 4x
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
el
|
el
|
||||||
if search('<!--','bW' ) >=0
|
if search('<!--','bW' ) >=0
|
||||||
normal 4x
|
normal! 4x
|
||||||
call cursor(b:endcomline,b:endcomcol)
|
call cursor(b:endcomline,b:endcomcol)
|
||||||
normal hh3x
|
normal! hh3x
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
@ -382,20 +379,20 @@ fun! s:DelCommentSection()
|
|||||||
let l:len = strlen(l:sentinel)
|
let l:len = strlen(l:sentinel)
|
||||||
if b:begcom
|
if b:begcom
|
||||||
if search('-->','W' ) >=0
|
if search('-->','W' ) >=0
|
||||||
exe "normal f>a".l:sentinel."\<Esc>"
|
exe "normal! f>a".l:sentinel."\<Esc>"
|
||||||
call cursor(b:begcomline,b:begcomcol)
|
call cursor(b:begcomline,b:begcomcol)
|
||||||
exe "normal \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
exe "normal! \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
||||||
exe "normal ".l:len."x"
|
exe "normal! ".l:len."x"
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
el
|
el
|
||||||
if search('<!--','bW' ) >=0
|
if search('<!--','bW' ) >=0
|
||||||
let l:restore = s:SavePos()
|
let l:restore = s:SavePos()
|
||||||
call cursor(b:endcomline,b:endcomcol)
|
call cursor(b:endcomline,b:endcomcol)
|
||||||
exe "normal a".l:sentinel."\<Esc>"
|
exe "normal! a".l:sentinel."\<Esc>"
|
||||||
exe l:restore
|
exe l:restore
|
||||||
exe "normal \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
exe "normal! \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
||||||
exe "normal ".l:len."x"
|
exe "normal! ".l:len."x"
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
@ -415,16 +412,16 @@ fun! s:DelCData()
|
|||||||
if s:InCData()
|
if s:InCData()
|
||||||
if b:begdat
|
if b:begdat
|
||||||
if search(']]>','W' ) >=0
|
if search(']]>','W' ) >=0
|
||||||
normal hh3x
|
normal! hh3x
|
||||||
call cursor(b:begdatline,b:begdatcol)
|
call cursor(b:begdatline,b:begdatcol)
|
||||||
normal 9x
|
normal! 9x
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
el
|
el
|
||||||
if search('<![CDATA[','bW' ) >=0
|
if search('<![CDATA[','bW' ) >=0
|
||||||
normal 9x
|
normal! 9x
|
||||||
call cursor(b:enddatline,b:enddatcol)
|
call cursor(b:enddatline,b:enddatcol)
|
||||||
normal hh3x
|
normal! hh3x
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
@ -503,20 +500,20 @@ fun! s:DelCDataSection()
|
|||||||
let l:len = strlen(l:sentinel)
|
let l:len = strlen(l:sentinel)
|
||||||
if b:begdat
|
if b:begdat
|
||||||
if search(']]>','W' ) >=0
|
if search(']]>','W' ) >=0
|
||||||
exe "normal f>a".l:sentinel."\<Esc>"
|
exe "normal! f>a".l:sentinel."\<Esc>"
|
||||||
call cursor(b:begdatline,b:begdatcol)
|
call cursor(b:begdatline,b:begdatcol)
|
||||||
exe "normal \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
exe "normal! \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
||||||
exe "normal ".l:len."x"
|
exe "normal! ".l:len."x"
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
el
|
el
|
||||||
if search('<![CDATA[','bW' ) >=0
|
if search('<![CDATA[','bW' ) >=0
|
||||||
let l:restore = s:SavePos()
|
let l:restore = s:SavePos()
|
||||||
call cursor(b:enddatline,b:enddatcol)
|
call cursor(b:enddatline,b:enddatcol)
|
||||||
exe "normal a".l:sentinel."\<Esc>"
|
exe "normal! a".l:sentinel."\<Esc>"
|
||||||
exe l:restore
|
exe l:restore
|
||||||
exe "normal \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
exe "normal! \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
||||||
exe "normal ".l:len."x"
|
exe "normal! ".l:len."x"
|
||||||
retu 1
|
retu 1
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
@ -546,16 +543,16 @@ fun! s:MatchesVisual()
|
|||||||
let l:restore = s:SavePos()
|
let l:restore = s:SavePos()
|
||||||
if s:TagUnderCursor()
|
if s:TagUnderCursor()
|
||||||
if b:firstWasEndTag
|
if b:firstWasEndTag
|
||||||
normal f>
|
normal! f>
|
||||||
en
|
en
|
||||||
normal gv
|
normal! gv
|
||||||
if s:Match(b:tagName)
|
if s:Match(b:tagName)
|
||||||
if b:firstWasEndTag == 0
|
if b:firstWasEndTag == 0
|
||||||
normal f>
|
normal! f>
|
||||||
en
|
en
|
||||||
retu
|
retu
|
||||||
en
|
en
|
||||||
normal v
|
normal! v
|
||||||
en
|
en
|
||||||
exe l:restore
|
exe l:restore
|
||||||
endf
|
endf
|
||||||
@ -568,18 +565,18 @@ function! s:makeElement()
|
|||||||
let b:haveAtt = 0
|
let b:haveAtt = 0
|
||||||
let l:alone = (match(getline('.'),'^\s*>\s*$') >= 0)
|
let l:alone = (match(getline('.'),'^\s*>\s*$') >= 0)
|
||||||
let l:endOfLine = ((col('.')+1) == col('$'))
|
let l:endOfLine = ((col('.')+1) == col('$'))
|
||||||
normal i<pf>
|
normal! i<pf>
|
||||||
if b:html_mode && b:tagName =~? b:emptyTags
|
if b:html_mode && b:tagName =~? b:emptyTags
|
||||||
if b:haveAtt == 0
|
if b:haveAtt == 0
|
||||||
call s:Callback (b:tagName, b:html_mode)
|
call s:Callback (b:tagName, b:html_mode)
|
||||||
endif
|
endif
|
||||||
if b:xml_use_xhtml
|
if b:xml_use_xhtml
|
||||||
exe "normal i/\<Esc>l"
|
exe "normal! i/\<Esc>l"
|
||||||
en
|
en
|
||||||
if l:endOfLine
|
if l:endOfLine
|
||||||
start!
|
start!
|
||||||
el
|
el
|
||||||
normal l
|
normal! l
|
||||||
start
|
start
|
||||||
en
|
en
|
||||||
el
|
el
|
||||||
@ -607,29 +604,29 @@ fun! s:CloseTagFun()
|
|||||||
"<t>
|
"<t>
|
||||||
" cursor comes here
|
" cursor comes here
|
||||||
"</t>
|
"</t>
|
||||||
normal h
|
normal! h
|
||||||
if s:TagUnderCursor()
|
if s:TagUnderCursor()
|
||||||
if b:firstWasEndTag == 0
|
if b:firstWasEndTag == 0
|
||||||
exe "normal 2f>s\<Cr>\<Esc>Ox\<Esc>>>$x"
|
exe "normal! 2f>s\<Cr>\<Esc>Ox\<Esc>>>$x"
|
||||||
start!
|
start!
|
||||||
retu
|
retu
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
elseif s:TagUnderCursor()
|
elseif s:TagUnderCursor()
|
||||||
if b:firstWasEndTag == 0
|
if b:firstWasEndTag == 0
|
||||||
exe "normal />\<Cr>"
|
exe "normal! />\<Cr>"
|
||||||
if b:html_mode && b:tagName =~? b:emptyTags
|
if b:html_mode && b:tagName =~? b:emptyTags
|
||||||
if b:haveAtt == 0
|
if b:haveAtt == 0
|
||||||
call s:Callback (b:tagName, b:html_mode)
|
call s:Callback (b:tagName, b:html_mode)
|
||||||
en
|
en
|
||||||
if b:xml_use_xhtml
|
if b:xml_use_xhtml
|
||||||
exe "normal i/\<Esc>l"
|
exe "normal! i/\<Esc>l"
|
||||||
en
|
en
|
||||||
if l:endOfLine
|
if l:endOfLine
|
||||||
start!
|
start!
|
||||||
retu
|
retu
|
||||||
el
|
el
|
||||||
normal l
|
normal! l
|
||||||
start
|
start
|
||||||
retu
|
retu
|
||||||
en
|
en
|
||||||
@ -647,7 +644,7 @@ fun! s:CloseTagFun()
|
|||||||
if (col('.')+1) == col("$")
|
if (col('.')+1) == col("$")
|
||||||
startinsert!
|
startinsert!
|
||||||
else
|
else
|
||||||
normal l
|
normal! l
|
||||||
startinsert
|
startinsert
|
||||||
en
|
en
|
||||||
endf
|
endf
|
||||||
@ -671,14 +668,14 @@ fun! s:BlockTag(multi)
|
|||||||
|
|
||||||
"Get at the end of the block
|
"Get at the end of the block
|
||||||
if col('.') == col("'<") && line('.') == line("'<")
|
if col('.') == col("'<") && line('.') == line("'<")
|
||||||
normal gvov
|
normal! gvov
|
||||||
en
|
en
|
||||||
if a:multi
|
if a:multi
|
||||||
exe "normal! a\<Cr></".l:newname.">\<Cr>\<Esc>"
|
exe "normal! a\<Cr></".l:newname.">\<Cr>\<Esc>"
|
||||||
let l:eline = line('.')
|
let l:eline = line('.')
|
||||||
normal gvov
|
normal! gvov
|
||||||
if col('.') == col("'>") && line('.') == line("'>")
|
if col('.') == col("'>") && line('.') == line("'>")
|
||||||
normal gvov
|
normal! gvov
|
||||||
en
|
en
|
||||||
let l:sline = line(".") + 2
|
let l:sline = line(".") + 2
|
||||||
exe "normal! i\<Cr><".l:newname.
|
exe "normal! i\<Cr><".l:newname.
|
||||||
@ -688,11 +685,11 @@ fun! s:BlockTag(multi)
|
|||||||
let &report=999999
|
let &report=999999
|
||||||
exe l:sline.','.l:eline.'>'
|
exe l:sline.','.l:eline.'>'
|
||||||
let &report= l:rep
|
let &report= l:rep
|
||||||
exe 'normal '.l:sline.'G0mh'.l:eline."G$v'hgq"
|
exe 'normal! '.l:sline.'G0mh'.l:eline."G$v'hgq"
|
||||||
el
|
el
|
||||||
exe "normal! a</".l:newname.">\<Esc>gvov"
|
exe "normal! a</".l:newname.">\<Esc>gvov"
|
||||||
if col('.') == col("'>") && line('.') == line("'>")
|
if col('.') == col("'>") && line('.') == line("'>")
|
||||||
normal gvov
|
normal! gvov
|
||||||
en
|
en
|
||||||
exe "normal! i<".l:newname.
|
exe "normal! i<".l:newname.
|
||||||
\ (strlen(l:newatt) ? ' '.l:newatt : '' )
|
\ (strlen(l:newatt) ? ' '.l:newatt : '' )
|
||||||
@ -707,10 +704,10 @@ en
|
|||||||
if !exists('*s:BlockWith')
|
if !exists('*s:BlockWith')
|
||||||
fun! s:BlockWith(open,close)
|
fun! s:BlockWith(open,close)
|
||||||
if col('.') == col("'<") && line('.') == line("'<")
|
if col('.') == col("'<") && line('.') == line("'<")
|
||||||
normal gvov
|
normal! gvov
|
||||||
en
|
en
|
||||||
exe "normal! a\<Cr>;x\<Esc>0cfx".a:close."\<Cr>\<Esc>"
|
exe "normal! a\<Cr>;x\<Esc>0cfx".a:close."\<Cr>\<Esc>"
|
||||||
normal gvov
|
normal! gvov
|
||||||
exe "normal! i\<Cr>;x\<Esc>0cfx".a:open."\<Cr>\<Esc>"
|
exe "normal! i\<Cr>;x\<Esc>0cfx".a:open."\<Cr>\<Esc>"
|
||||||
endf
|
endf
|
||||||
en
|
en
|
||||||
@ -722,10 +719,10 @@ if !exists('*s:vlistitem')
|
|||||||
fun! s:vlistitem()
|
fun! s:vlistitem()
|
||||||
"Get at the end of the block
|
"Get at the end of the block
|
||||||
if col('.') == col("'<") && line('.') == line("'<")
|
if col('.') == col("'<") && line('.') == line("'<")
|
||||||
normal gvov
|
normal! gvov
|
||||||
en
|
en
|
||||||
exe "normal! a</para>\<Cr></listitem>\<Esc>mh"
|
exe "normal! a</para>\<Cr></listitem>\<Esc>mh"
|
||||||
normal gvov
|
normal! gvov
|
||||||
exe "normal! i\<Cr><listitem>\<Cr>\<Tab><para>\<Esc>'h/listitem>/e+1\<Cr>"
|
exe "normal! i\<Cr><listitem>\<Cr>\<Tab><para>\<Esc>'h/listitem>/e+1\<Cr>"
|
||||||
endf
|
endf
|
||||||
en
|
en
|
||||||
@ -741,9 +738,9 @@ fun! s:Change()
|
|||||||
let b:lastTag = l:newname
|
let b:lastTag = l:newname
|
||||||
if s:Match(b:tagName)
|
if s:Match(b:tagName)
|
||||||
exe b:gotoCloseTag
|
exe b:gotoCloseTag
|
||||||
exe 'normal 2lcw' . l:newname . "\<Esc>"
|
exe 'normal! 2lcw' . l:newname . "\<Esc>"
|
||||||
exe b:gotoOpenTag
|
exe b:gotoOpenTag
|
||||||
exe 'normal lcw' . l:newname . "\<Esc>"
|
exe 'normal! lcw' . l:newname . "\<Esc>"
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
endf
|
endf
|
||||||
@ -777,7 +774,7 @@ fun! s:Join()
|
|||||||
el
|
el
|
||||||
let b:gotoCloseTag = s:SavePos()
|
let b:gotoCloseTag = s:SavePos()
|
||||||
en
|
en
|
||||||
let l:DeleteTag = "normal d/>/e\<Cr>"
|
let l:DeleteTag = "normal! d/>/e\<Cr>"
|
||||||
exe b:gotoCloseTag
|
exe b:gotoCloseTag
|
||||||
exe l:DeleteTag
|
exe l:DeleteTag
|
||||||
exe b:gotoOpenTag
|
exe b:gotoOpenTag
|
||||||
@ -804,9 +801,9 @@ fun! s:ChangeWholeTag()
|
|||||||
en
|
en
|
||||||
if s:Match(b:tagName)
|
if s:Match(b:tagName)
|
||||||
exe b:gotoCloseTag
|
exe b:gotoCloseTag
|
||||||
exe "normal 2lc/>\<Cr>".l:newname."\<Esc>"
|
exe "normal! 2lc/>\<Cr>".l:newname."\<Esc>"
|
||||||
exe b:gotoOpenTag
|
exe b:gotoOpenTag
|
||||||
exe "normal lc/>/\<Cr>".l:newname.
|
exe "normal! lc/>/\<Cr>".l:newname.
|
||||||
\ (strlen(l:newatt) ? ' '.l:newatt : '' )
|
\ (strlen(l:newatt) ? ' '.l:newatt : '' )
|
||||||
\."\<Esc>"
|
\."\<Esc>"
|
||||||
en
|
en
|
||||||
@ -820,7 +817,7 @@ fun! s:Delete()
|
|||||||
let l:restore = s:SavePos()
|
let l:restore = s:SavePos()
|
||||||
if s:TagUnderCursor()
|
if s:TagUnderCursor()
|
||||||
if s:Match(b:tagName)
|
if s:Match(b:tagName)
|
||||||
let l:DeleteTag = "normal d/>/e\<Cr>"
|
let l:DeleteTag = "normal! d/>/e\<Cr>"
|
||||||
exe b:gotoCloseTag
|
exe b:gotoCloseTag
|
||||||
exe l:DeleteTag
|
exe l:DeleteTag
|
||||||
exe b:gotoOpenTag
|
exe b:gotoOpenTag
|
||||||
@ -845,10 +842,10 @@ fun! s:DeleteSection()
|
|||||||
let l:rep=&report
|
let l:rep=&report
|
||||||
let &report=999999
|
let &report=999999
|
||||||
exe b:gotoCloseTag
|
exe b:gotoCloseTag
|
||||||
exe "normal />\<Cr>a".l:sentinel."\<Esc>"
|
exe "normal! />\<Cr>a".l:sentinel."\<Esc>"
|
||||||
exe b:gotoOpenTag
|
exe b:gotoOpenTag
|
||||||
exe "normal \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
exe "normal! \"xd/".l:sentinel."/e-".l:len."\<Cr>"
|
||||||
exe "normal ".l:len."x"
|
exe "normal! ".l:len."x"
|
||||||
let &report= l:rep
|
let &report= l:rep
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
@ -889,7 +886,7 @@ fun! s:FoldTagAll()
|
|||||||
en
|
en
|
||||||
let b:lastTag = l:tname
|
let b:lastTag = l:tname
|
||||||
en
|
en
|
||||||
normal G$
|
normal! G$
|
||||||
let l:flag='w'
|
let l:flag='w'
|
||||||
while search('<'.l:tname.s:OptAttrib,l:flag) > 0
|
while search('<'.l:tname.s:OptAttrib,l:flag) > 0
|
||||||
let l:flag='W'
|
let l:flag='W'
|
||||||
@ -952,7 +949,7 @@ fun! s:EndTag()
|
|||||||
if l:level == 0
|
if l:level == 0
|
||||||
let l:Name = s:GetTagName(col('.'))
|
let l:Name = s:GetTagName(col('.'))
|
||||||
exe l:restore
|
exe l:restore
|
||||||
exe 'normal a</'. l:Name.">\e"
|
exe 'normal! a</'. l:Name.">\e"
|
||||||
el
|
el
|
||||||
exe l:restore
|
exe l:restore
|
||||||
en
|
en
|
||||||
@ -1087,9 +1084,9 @@ fun! s:FormatTag()
|
|||||||
if s:TagUnderCursor()
|
if s:TagUnderCursor()
|
||||||
if s:Match(b:tagName)
|
if s:Match(b:tagName)
|
||||||
exe b:gotoCloseTag
|
exe b:gotoCloseTag
|
||||||
normal hhmh
|
normal! hhmh
|
||||||
exe b:gotoOpenTag
|
exe b:gotoOpenTag
|
||||||
exe "normal />/e+1\<Cr>v'hgq"
|
exe "normal! />/e+1\<Cr>v'hgq"
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
endf
|
endf
|
||||||
@ -1112,18 +1109,18 @@ fun! s:FormatTagAll()
|
|||||||
retu
|
retu
|
||||||
en
|
en
|
||||||
en
|
en
|
||||||
normal G$
|
normal! G$
|
||||||
let l:flag = 'w'
|
let l:flag = 'w'
|
||||||
while search('<'.l:tname . s:OptAttrib, l:flag) > 0
|
while search('<'.l:tname . s:OptAttrib, l:flag) > 0
|
||||||
let l:flag = 'W'
|
let l:flag = 'W'
|
||||||
let l:sline = line('.')
|
let l:sline = line('.')
|
||||||
let l:level = 1
|
let l:level = 1
|
||||||
exe "normal />/e+1\<cr>mh"
|
exe "normal! />/e+1\<cr>mh"
|
||||||
while l:level && search('</\='.l:tname . s:EndofName,'W') > 0
|
while l:level && search('</\='.l:tname . s:EndofName,'W') > 0
|
||||||
let l:level = l:level + (getline('.')[col('.')] == '/' ? -1 : 1)
|
let l:level = l:level + (getline('.')[col('.')] == '/' ? -1 : 1)
|
||||||
endwhile
|
endwhile
|
||||||
if l:level == 0
|
if l:level == 0
|
||||||
normal hv'hogq
|
normal! hv'hogq
|
||||||
el
|
el
|
||||||
let l:tmp =
|
let l:tmp =
|
||||||
\ inputdialog("The tag ".l:tname."(".l:sline.") doesn't have a closetag")
|
\ inputdialog("The tag ".l:tname."(".l:sline.") doesn't have a closetag")
|
||||||
@ -1143,39 +1140,39 @@ fun! s:IndentAll()
|
|||||||
let l:rep=&report
|
let l:rep=&report
|
||||||
let &report=999999
|
let &report=999999
|
||||||
"shift everything left
|
"shift everything left
|
||||||
normal 1G<G<G<G<G<G<GG$
|
normal! 1G<G<G<G<G<G<GG$
|
||||||
if search(s:OpenTag,'w') > 0
|
if search(s:OpenTag,'w') > 0
|
||||||
let l:level = 1
|
let l:level = 1
|
||||||
normal f>
|
normal! f>
|
||||||
"if there is something after the tag move that to the next line
|
"if there is something after the tag move that to the next line
|
||||||
if col('.')+1 != col('$')
|
if col('.')+1 != col('$')
|
||||||
echo "after tag".line('.')
|
echo "after tag".line('.')
|
||||||
exe "normal a\<Cr>\<Esc>"
|
exe "normal! a\<Cr>\<Esc>"
|
||||||
el
|
el
|
||||||
normal j
|
normal! j
|
||||||
en
|
en
|
||||||
normal >Gk$
|
normal! >Gk$
|
||||||
while search(s:OpenOrCloseTag,'W') > 0
|
while search(s:OpenOrCloseTag,'W') > 0
|
||||||
"if there is text before the tag then move the tag to the next line
|
"if there is text before the tag then move the tag to the next line
|
||||||
if match(getline('.'),s:SpaceInfront) == -1
|
if match(getline('.'),s:SpaceInfront) == -1
|
||||||
exe "normal i\<Cr>\<Esc>l"
|
exe "normal! i\<Cr>\<Esc>l"
|
||||||
en
|
en
|
||||||
if getline('.')[col('.')] == '/'
|
if getline('.')[col('.')] == '/'
|
||||||
normal <G0f>
|
normal! <G0f>
|
||||||
"if there is something after the tag move that to the next line
|
"if there is something after the tag move that to the next line
|
||||||
if col('.')+1 != col('$')
|
if col('.')+1 != col('$')
|
||||||
exe "normal a\<Cr>\<Esc>"
|
exe "normal! a\<Cr>\<Esc>"
|
||||||
en
|
en
|
||||||
let l:level = l:level - 1
|
let l:level = l:level - 1
|
||||||
el
|
el
|
||||||
normal f>
|
normal! f>
|
||||||
"if there is something after the tag move that to the next line
|
"if there is something after the tag move that to the next line
|
||||||
if col('.')+1 != col('$')
|
if col('.')+1 != col('$')
|
||||||
exe "normal a\<Cr>\<Esc>"
|
exe "normal! a\<Cr>\<Esc>"
|
||||||
el
|
el
|
||||||
normal j0
|
normal! j0
|
||||||
en
|
en
|
||||||
normal >Gk$
|
normal! >Gk$
|
||||||
let l:level = l:level + 1
|
let l:level = l:level + 1
|
||||||
en
|
en
|
||||||
endwhile
|
endwhile
|
||||||
@ -1298,7 +1295,7 @@ function! s:XmlInstallDocumentation(full_name, revision)
|
|||||||
" Try a default configuration in user home:
|
" Try a default configuration in user home:
|
||||||
"let l:vim_doc_path = expand("~") . l:doc_home
|
"let l:vim_doc_path = expand("~") . l:doc_home
|
||||||
let l:vim_doc_path = matchstr(&rtp,
|
let l:vim_doc_path = matchstr(&rtp,
|
||||||
\ escape($HOME, '\') .'[/\\]\%(\.vim\|vimfiles\)')
|
\ escape($HOME, ' \') .'[/\\]\%(\.vim\|vimfiles\)')
|
||||||
if (!(filewritable(l:vim_doc_path) == 2))
|
if (!(filewritable(l:vim_doc_path) == 2))
|
||||||
execute l:mkdir_cmd . l:vim_doc_path
|
execute l:mkdir_cmd . l:vim_doc_path
|
||||||
if (!(filewritable(l:vim_doc_path) == 2))
|
if (!(filewritable(l:vim_doc_path) == 2))
|
||||||
@ -1367,7 +1364,7 @@ function! s:XmlInstallDocumentation(full_name, revision)
|
|||||||
call append(line('$'), ' v' . 'im:tw=78:ts=8:fen:fdm=marker:ft=help:norl:')
|
call append(line('$'), ' v' . 'im:tw=78:ts=8:fen:fdm=marker:ft=help:norl:')
|
||||||
|
|
||||||
" Replace revision:
|
" Replace revision:
|
||||||
exe "normal :1,5s/#version#/ v" . a:revision . "/\<CR>"
|
exe "normal! :1,5s/#version#/ v" . a:revision . "/\<CR>"
|
||||||
|
|
||||||
" Save the help document:
|
" Save the help document:
|
||||||
exe 'w! ' . l:doc_file
|
exe 'w! ' . l:doc_file
|
||||||
@ -1382,7 +1379,7 @@ endfunction
|
|||||||
" }}}2
|
" }}}2
|
||||||
|
|
||||||
let s:revision=
|
let s:revision=
|
||||||
\ substitute("$Revision: 1.35 $",'\$\S*: \([.0-9]\+\) \$','\1','')
|
\ substitute("$Revision: 1.36 $",'\$\S*: \([.0-9]\+\) \$','\1','')
|
||||||
silent! let s:install_status =
|
silent! let s:install_status =
|
||||||
\ s:XmlInstallDocumentation(expand('<sfile>:p'), s:revision)
|
\ s:XmlInstallDocumentation(expand('<sfile>:p'), s:revision)
|
||||||
if (s:install_status == 1)
|
if (s:install_status == 1)
|
||||||
@ -1744,9 +1741,6 @@ for details.
|
|||||||
------------------------------------------------------------------------------
|
------------------------------------------------------------------------------
|
||||||
*xml-plugin-callbacks*
|
*xml-plugin-callbacks*
|
||||||
|
|
||||||
------------------------------------------------------------------------------
|
|
||||||
*xml-plugin-callbacks*
|
|
||||||
|
|
||||||
Callback Functions {{{2 ~
|
Callback Functions {{{2 ~
|
||||||
|
|
||||||
A callback function is a function used to customize features on a per tag
|
A callback function is a function used to customize features on a per tag
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
" AlignMapsPlugin: Alignment maps based upon <Align.vim> and <AlignMaps.vim>
|
" AlignMapsPlugin: Alignment maps based upon <Align.vim> and <AlignMaps.vim>
|
||||||
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
|
||||||
" Date: Oct 24, 2008
|
" Date: Mar 03, 2009
|
||||||
"
|
"
|
||||||
" NOTE: the code herein needs vim 6.0 or later
|
" NOTE: the code herein needs vim 6.0 or later
|
||||||
" needs <Align.vim> v6 or later
|
" needs <Align.vim> v6 or later
|
||||||
@ -36,10 +36,11 @@
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Load Once: {{{1
|
" Load Once: {{{1
|
||||||
if &cp
|
if &cp || exists("g:loaded_AlignMapsPlugin")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let s:keepcpo= &cpo
|
let s:keepcpo = &cpo
|
||||||
|
let g:loaded_AlignMapsPlugin = "v41"
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
" =====================================================================
|
" =====================================================================
|
||||||
@ -63,11 +64,12 @@ endif
|
|||||||
nmap <silent> <script> <Plug>AlignMapsWrapperEnd :call AlignMaps#WrapperEnd()<CR>:set nolz<CR>
|
nmap <silent> <script> <Plug>AlignMapsWrapperEnd :call AlignMaps#WrapperEnd()<CR>:set nolz<CR>
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Complex C-code alignment maps: {{{2!= ""
|
" Complex C-code alignment maps: {{{2
|
||||||
if !hasmapto('<Plug>AM_a?') |map <unique> <Leader>a? <Plug>AM_a?|endif
|
if !hasmapto('<Plug>AM_a?') |map <unique> <Leader>a? <Plug>AM_a?|endif
|
||||||
if !hasmapto('<Plug>AM_a,') |map <unique> <Leader>a, <Plug>AM_a,|endif
|
if !hasmapto('<Plug>AM_a,') |map <unique> <Leader>a, <Plug>AM_a,|endif
|
||||||
if !hasmapto('<Plug>AM_a<') |map <unique> <Leader>a< <Plug>AM_a<|endif
|
if !hasmapto('<Plug>AM_a<') |map <unique> <Leader>a< <Plug>AM_a<|endif
|
||||||
if !hasmapto('<Plug>AM_a=') |map <unique> <Leader>a= <Plug>AM_a=|endif
|
if !hasmapto('<Plug>AM_a=') |map <unique> <Leader>a= <Plug>AM_a=|endif
|
||||||
|
if !hasmapto('<Plug>AM_a(') |map <unique> <Leader>a( <Plug>AM_a(|endif
|
||||||
if !hasmapto('<Plug>AM_abox') |map <unique> <Leader>abox <Plug>AM_abox|endif
|
if !hasmapto('<Plug>AM_abox') |map <unique> <Leader>abox <Plug>AM_abox|endif
|
||||||
if !hasmapto('<Plug>AM_acom') |map <unique> <Leader>acom <Plug>AM_acom|endif
|
if !hasmapto('<Plug>AM_acom') |map <unique> <Leader>acom <Plug>AM_acom|endif
|
||||||
if !hasmapto('<Plug>AM_adcom')|map <unique> <Leader>adcom <Plug>AM_adcom|endif
|
if !hasmapto('<Plug>AM_adcom')|map <unique> <Leader>adcom <Plug>AM_adcom|endif
|
||||||
@ -88,6 +90,7 @@ endif
|
|||||||
map <silent> <script> <Plug>AM_a? <SID>WS:AlignCtrl mIp1P1lC ? : : : : <CR>:'a,.Align<CR>:'a,'z-1s/\(\s\+\)? /?\1/e<CR><SID>WE
|
map <silent> <script> <Plug>AM_a? <SID>WS:AlignCtrl mIp1P1lC ? : : : : <CR>:'a,.Align<CR>:'a,'z-1s/\(\s\+\)? /?\1/e<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_a, <SID>WS:'y,'zs/\(\S\)\s\+/\1 /ge<CR>'yjma'zk:call AlignMaps#CharJoiner(",")<cr>:silent 'y,'zg/,/call AlignMaps#FixMultiDec()<CR>'z:exe "norm \<Plug>AM_adec"<cr><SID>WE
|
map <silent> <script> <Plug>AM_a, <SID>WS:'y,'zs/\(\S\)\s\+/\1 /ge<CR>'yjma'zk:call AlignMaps#CharJoiner(",")<cr>:silent 'y,'zg/,/call AlignMaps#FixMultiDec()<CR>'z:exe "norm \<Plug>AM_adec"<cr><SID>WE
|
||||||
map <silent> <script> <Plug>AM_a< <SID>WS:AlignCtrl mIp1P1=l << >><CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_a< <SID>WS:AlignCtrl mIp1P1=l << >><CR>:'a,.Align<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_a( <SID>WS:AlignCtrl mIp0P1=l<CR>:'a,.Align [(,]<CR>:sil 'y+1,'z-1s/\(\s\+\),/,\1/ge<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_a= <SID>WS:AlignCtrl mIp1P1=l<CR>:AlignCtrl g :=<CR>:'a,'zAlign :\==<CR><SID>WE
|
map <silent> <script> <Plug>AM_a= <SID>WS:AlignCtrl mIp1P1=l<CR>:AlignCtrl g :=<CR>:'a,'zAlign :\==<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_abox <SID>WS:let g:alignmaps_iws=substitute(getline("'a"),'^\(\s*\).*$','\1','e')<CR>:'a,'z-1s/^\s\+//e<CR>:'a,'z-1s/^.*$/@&@/<CR>:AlignCtrl m=p01P0w @<CR>:'a,.Align<CR>:'a,'z-1s/@/ * /<CR>:'a,'z-1s/@$/*/<CR>'aYP:s/./*/g<CR>0r/'zkYp:s/./*/g<CR>0r A/<Esc>:exe "'a-1,'z-1s/^/".g:alignmaps_iws."/e"<CR><SID>WE
|
map <silent> <script> <Plug>AM_abox <SID>WS:let g:alignmaps_iws=substitute(getline("'a"),'^\(\s*\).*$','\1','e')<CR>:'a,'z-1s/^\s\+//e<CR>:'a,'z-1s/^.*$/@&@/<CR>:AlignCtrl m=p01P0w @<CR>:'a,.Align<CR>:'a,'z-1s/@/ * /<CR>:'a,'z-1s/@$/*/<CR>'aYP:s/./*/g<CR>0r/'zkYp:s/./*/g<CR>0r A/<Esc>:exe "'a-1,'z-1s/^/".g:alignmaps_iws."/e"<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_acom <SID>WS:'a,.s/\/[*/]\/\=/@&@/e<CR>:'a,.s/\*\//@&/e<CR>:'y,'zs/^\( *\) @/\1@/e<CR>'zk:call AlignMaps#StdAlign(2)<CR>:'y,'zs/^\(\s*\) @/\1/e<CR>:'y,'zs/ @//eg<CR><SID>WE
|
map <silent> <script> <Plug>AM_acom <SID>WS:'a,.s/\/[*/]\/\=/@&@/e<CR>:'a,.s/\*\//@&/e<CR>:'y,'zs/^\( *\) @/\1@/e<CR>'zk:call AlignMaps#StdAlign(2)<CR>:'y,'zs/^\(\s*\) @/\1/e<CR>:'y,'zs/ @//eg<CR><SID>WE
|
||||||
@ -97,8 +100,8 @@ map <silent> <script> <Plug>AM_ascom <SID>WS:'a,.s/\/[*/]/@&@/e<CR>:'a,.s/\*\//@
|
|||||||
map <silent> <script> <Plug>AM_adec <SID>WS:'a,'zs/\([^ \t/(]\)\([*&]\)/\1 \2/e<CR>:'y,'zv/^\//s/\([^ \t]\)\s\+/\1 /ge<CR>:'y,'zv/^\s*[*/]/s/\([^/][*&]\)\s\+/\1/ge<CR>:'y,'zv/^\s*[*/]/s/^\(\s*\%(\K\k*\s\+\%([a-zA-Z_*(&]\)\@=\)\+\)\([*(&]*\)\s*\([a-zA-Z0-9_()]\+\)\s*\(\(\[.\{-}]\)*\)\s*\(=\)\=\s*\(.\{-}\)\=\s*;/\1@\2#@\3\4@\6@\7;@/e<CR>:'y,'zv/^\s*[*/]/s/\*\/\s*$/@*\//e<CR>:'y,'zv/^\s*[*/]/s/^\s\+\*/@@@@@* /e<CR>:'y,'zv/^\s*[*/]/s/^@@@@@\*\(.*[^*/]\)$/&@*/e<CR>'yjma'zk:AlignCtrl v ^\s*[*/#]<CR>:call AlignMaps#StdAlign(1)<cr>:'y,'zv/^\s*[*/]/s/@ //ge<CR>:'y,'zv/^\s*[*/]/s/\(\s*\);/;\1/e<CR>:'y,'zv/^#/s/# //e<CR>:'y,'zv/^\s\+[*/#]/s/\([^/*]\)\(\*\+\)\( \+\)/\1\3\2/e<CR>:'y,'zv/^\s\+[*/#]/s/\((\+\)\( \+\)\*/\2\1*/e<CR>:'y,'zv/^\s\+[*/#]/s/^\(\s\+\) \*/\1*/e<CR>:'y,'zv/^\s\+[*/#]/s/[ \t@]*$//e<CR>:'y,'zs/^[*]/ */e<CR><SID>WE
|
map <silent> <script> <Plug>AM_adec <SID>WS:'a,'zs/\([^ \t/(]\)\([*&]\)/\1 \2/e<CR>:'y,'zv/^\//s/\([^ \t]\)\s\+/\1 /ge<CR>:'y,'zv/^\s*[*/]/s/\([^/][*&]\)\s\+/\1/ge<CR>:'y,'zv/^\s*[*/]/s/^\(\s*\%(\K\k*\s\+\%([a-zA-Z_*(&]\)\@=\)\+\)\([*(&]*\)\s*\([a-zA-Z0-9_()]\+\)\s*\(\(\[.\{-}]\)*\)\s*\(=\)\=\s*\(.\{-}\)\=\s*;/\1@\2#@\3\4@\6@\7;@/e<CR>:'y,'zv/^\s*[*/]/s/\*\/\s*$/@*\//e<CR>:'y,'zv/^\s*[*/]/s/^\s\+\*/@@@@@* /e<CR>:'y,'zv/^\s*[*/]/s/^@@@@@\*\(.*[^*/]\)$/&@*/e<CR>'yjma'zk:AlignCtrl v ^\s*[*/#]<CR>:call AlignMaps#StdAlign(1)<cr>:'y,'zv/^\s*[*/]/s/@ //ge<CR>:'y,'zv/^\s*[*/]/s/\(\s*\);/;\1/e<CR>:'y,'zv/^#/s/# //e<CR>:'y,'zv/^\s\+[*/#]/s/\([^/*]\)\(\*\+\)\( \+\)/\1\3\2/e<CR>:'y,'zv/^\s\+[*/#]/s/\((\+\)\( \+\)\*/\2\1*/e<CR>:'y,'zv/^\s\+[*/#]/s/^\(\s\+\) \*/\1*/e<CR>:'y,'zv/^\s\+[*/#]/s/[ \t@]*$//e<CR>:'y,'zs/^[*]/ */e<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_adef <SID>WS:AlignPush<CR>:AlignCtrl v ^\s*\(\/\*\<bar>\/\/\)<CR>:'a,.v/^\s*\(\/\*\<bar>\/\/\)/s/^\(\s*\)#\(\s\)*define\s*\(\I[a-zA-Z_0-9(),]*\)\s*\(.\{-}\)\($\<Bar>\/\*\)/#\1\2define @\3@\4@\5/e<CR>:'a,.v/^\s*\(\/\*\<bar>\/\/\)/s/\($\<Bar>\*\/\)/@&/e<CR>'zk:call AlignMaps#StdAlign(1)<cr>'yjma'zk:'a,.v/^\s*\(\/\*\<bar>\/\/\)/s/ @//g<CR><SID>WE
|
map <silent> <script> <Plug>AM_adef <SID>WS:AlignPush<CR>:AlignCtrl v ^\s*\(\/\*\<bar>\/\/\)<CR>:'a,.v/^\s*\(\/\*\<bar>\/\/\)/s/^\(\s*\)#\(\s\)*define\s*\(\I[a-zA-Z_0-9(),]*\)\s*\(.\{-}\)\($\<Bar>\/\*\)/#\1\2define @\3@\4@\5/e<CR>:'a,.v/^\s*\(\/\*\<bar>\/\/\)/s/\($\<Bar>\*\/\)/@&/e<CR>'zk:call AlignMaps#StdAlign(1)<cr>'yjma'zk:'a,.v/^\s*\(\/\*\<bar>\/\/\)/s/ @//g<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_afnc :<c-u>set lz<CR>:silent call AlignMaps#Afnc()<CR>:set nolz<CR>
|
map <silent> <script> <Plug>AM_afnc :<c-u>set lz<CR>:silent call AlignMaps#Afnc()<CR>:set nolz<CR>
|
||||||
map <silent> <script> <Plug>AM_aunum <SID>WS:'a,'zs/\%([0-9.]\)\s\+\zs\([-+.]\=\d\)/@\1/ge<CR>:'a,'zs/\(\(^\|\s\)\d\+\)\(\s\+\)@/\1@\3@/ge<CR>:'a,'zs/\.@/\.0@/ge<CR>:AlignCtrl mp0P0r<CR>:'a,'zAlign [.@]<CR>:'a,'zs/@/ /ge<CR>:'a,'zs/\(\.\)\(\s\+\)\([0-9.,eE+]\+\)/\1\3\2/ge<CR>:'a,'zs/\([eE]\)\(\s\+\)\([0-9+\-+]\+\)/\1\3\2/ge<CR><SID>WE
|
map <silent> <script> <Plug>AM_aunum <SID>WS:'a,'zs/\%([0-9.]\)\s\+\zs\([-+.]\=\d\)/@\1/ge<CR>:'a,'zs/\(\(^\|\s\)\d\+\)\(\s\+\)@/\1@\3@/ge<CR>:'a,'zs/\.@/\.0@/ge<CR>:AlignCtrl wmp0P0r<CR>:'a,'zAlign [.@]<CR>:'a,'zs/@/ /ge<CR>:'a,'zs/\(\.\)\(\s\+\)\([0-9.,eE+]\+\)/\1\3\2/ge<CR>:'a,'zs/\([eE]\)\(\s\+\)\([0-9+\-+]\+\)/\1\3\2/ge<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_aenum <SID>WS:'a,'zs/\%([0-9.]\)\s\+\([-+]\=\d\)/\1@\2/ge<CR>:'a,'zs/\.@/\.0@/ge<CR>:AlignCtrl mp0P0r<CR>:'a,'zAlign [,@]<CR>:'a,'zs/@/ /ge<CR>:'a,'zs/\(,\)\(\s\+\)\([-0-9.,eE+]\+\)/\1\3\2/ge<CR>:'a,'zs/\([eE]\)\(\s\+\)\([0-9+\-+]\+\)/\1\3\2/ge<CR><SID>WE
|
map <silent> <script> <Plug>AM_aenum <SID>WS:'a,'zs/\%([0-9.]\)\s\+\([-+]\=\d\)/\1@\2/ge<CR>:'a,'zs/\.@/\.0@/ge<CR>:AlignCtrl wmp0P0r<CR>:'a,'zAlign [,@]<CR>:'a,'zs/@/ /ge<CR>:'a,'zs/\(,\)\(\s\+\)\([-0-9.,eE+]\+\)/\1\3\2/ge<CR>:'a,'zs/\([eE]\)\(\s\+\)\([0-9+\-+]\+\)/\1\3\2/ge<CR><SID>WE
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" html table alignment {{{2
|
" html table alignment {{{2
|
||||||
@ -128,7 +131,7 @@ map <silent> <script> <Plug>AM_Ts, <SID>WS:AlignCtrl mIp0P1=r ,<CR>:'a,.Align<C
|
|||||||
map <silent> <script> <Plug>AM_T: <SID>WS:AlignCtrl mIp1P1=r :<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_T: <SID>WS:AlignCtrl mIp1P1=r :<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_T; <SID>WS:AlignCtrl mIp0P0=r ;<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_T; <SID>WS:AlignCtrl mIp0P0=r ;<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_T< <SID>WS:AlignCtrl mIp0P0=r <<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_T< <SID>WS:AlignCtrl mIp0P0=r <<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_T= <SID>WS:'a,'z-1s/\s\+\([*/+\-%<Bar>&\~^]\==\)/ \1/e<CR>:'a,'z-1s@ \+\([*/+\-%<Bar>&\~^]\)=@\1=@ge<CR>:'a,'z-1s/; */;@/e<CR>:'a,'z-1s/==/\="\<Char-0xff>\<Char-0xff>"/ge<CR>:'a,'z-1s/!=/\x="!\<Char-0xff>"/ge<CR>:AlignCtrl mIp1P1=r = @<CR>:AlignCtrl g =<CR>:'a,'z-1Align<CR>:'a,'z-1s/; *@/;/e<CR>:'a,'z-1s/; *$/;/e<CR>:'a,'z-1s@\([*/+\-%<Bar>&\~^]\)\( \+\)=@\2\1=@ge<CR>:'a,'z-1s/\( \+\);/;\1/ge<CR>:'a,'z-1s/\xff/=/ge<CR><SID>WE:exe "norm <Plug>acom"
|
map <silent> <script> <Plug>AM_T= <SID>WS:'a,'z-1s/\s\+\([*/+\-%<Bar>&\~^]\==\)/ \1/e<CR>:'a,'z-1s@ \+\([*/+\-%<Bar>&\~^]\)=@\1=@ge<CR>:'a,'z-1s/; */;@/e<CR>:'a,'z-1s/==/\="\<Char-0x0f>\<Char-0x0f>"/ge<CR>:'a,'z-1s/!=/\x="!\<Char-0x0f>"/ge<CR>:AlignCtrl mIp1P1=r = @<CR>:AlignCtrl g =<CR>:'a,'z-1Align<CR>:'a,'z-1s/; *@/;/e<CR>:'a,'z-1s/; *$/;/e<CR>:'a,'z-1s@\([*/+\-%<Bar>&\~^]\)\( \+\)=@\2\1=@ge<CR>:'a,'z-1s/\( \+\);/;\1/ge<CR>:'a,'z-1s/\xff/=/ge<CR><SID>WE:exe "norm <Plug>acom"
|
||||||
map <silent> <script> <Plug>AM_T? <SID>WS:AlignCtrl mIp0P0=r ?<CR>:'a,.Align<CR>:'y,'zs/ \( *\);/;\1/ge<CR><SID>WE
|
map <silent> <script> <Plug>AM_T? <SID>WS:AlignCtrl mIp0P0=r ?<CR>:'a,.Align<CR>:'y,'zs/ \( *\);/;\1/ge<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_T@ <SID>WS:AlignCtrl mIp0P0=r @<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_T@ <SID>WS:AlignCtrl mIp0P0=r @<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_Tab <SID>WS:'a,.s/^\(\t*\)\(.*\)/\=submatch(1).escape(substitute(submatch(2),'\t','@','g'),'\')/<CR>:AlignCtrl mI=r @<CR>:'a,.Align<CR>:'y+1,'z-1s/@/ /g<CR><SID>WE
|
map <silent> <script> <Plug>AM_Tab <SID>WS:'a,.s/^\(\t*\)\(.*\)/\=submatch(1).escape(substitute(submatch(2),'\t','@','g'),'\')/<CR>:AlignCtrl mI=r @<CR>:'a,.Align<CR>:'y+1,'z-1s/@/ /g<CR><SID>WE
|
||||||
@ -140,11 +143,15 @@ map <silent> <script> <Plug>AM_T~ <SID>WS:AlignCtrl mIp0P0=r ~<CR>:'a,.Align<C
|
|||||||
if !hasmapto('<Plug>AM_t|') |map <unique> <Leader>t| <Plug>AM_t||endif
|
if !hasmapto('<Plug>AM_t|') |map <unique> <Leader>t| <Plug>AM_t||endif
|
||||||
if !hasmapto('<Plug>AM_t#') |map <unique> <Leader>t# <Plug>AM_t#|endif
|
if !hasmapto('<Plug>AM_t#') |map <unique> <Leader>t# <Plug>AM_t#|endif
|
||||||
if !hasmapto('<Plug>AM_t,') |map <unique> <Leader>t, <Plug>AM_t,|endif
|
if !hasmapto('<Plug>AM_t,') |map <unique> <Leader>t, <Plug>AM_t,|endif
|
||||||
if !hasmapto('<Plug>AM_ts,') |map <unique> <Leader>ts, <Plug>AM_ts,|endif
|
|
||||||
if !hasmapto('<Plug>AM_t:') |map <unique> <Leader>t: <Plug>AM_t:|endif
|
if !hasmapto('<Plug>AM_t:') |map <unique> <Leader>t: <Plug>AM_t:|endif
|
||||||
if !hasmapto('<Plug>AM_t;') |map <unique> <Leader>t; <Plug>AM_t;|endif
|
if !hasmapto('<Plug>AM_t;') |map <unique> <Leader>t; <Plug>AM_t;|endif
|
||||||
if !hasmapto('<Plug>AM_t<') |map <unique> <Leader>t< <Plug>AM_t<|endif
|
if !hasmapto('<Plug>AM_t<') |map <unique> <Leader>t< <Plug>AM_t<|endif
|
||||||
if !hasmapto('<Plug>AM_t=') |map <unique> <Leader>t= <Plug>AM_t=|endif
|
if !hasmapto('<Plug>AM_t=') |map <unique> <Leader>t= <Plug>AM_t=|endif
|
||||||
|
if !hasmapto('<Plug>AM_ts,') |map <unique> <Leader>ts, <Plug>AM_ts,|endif
|
||||||
|
if !hasmapto('<Plug>AM_ts:') |map <unique> <Leader>ts: <Plug>AM_ts:|endif
|
||||||
|
if !hasmapto('<Plug>AM_ts;') |map <unique> <Leader>ts; <Plug>AM_ts;|endif
|
||||||
|
if !hasmapto('<Plug>AM_ts<') |map <unique> <Leader>ts< <Plug>AM_ts<|endif
|
||||||
|
if !hasmapto('<Plug>AM_ts=') |map <unique> <Leader>ts= <Plug>AM_ts=|endif
|
||||||
if !hasmapto('<Plug>AM_w=') |map <unique> <Leader>w= <Plug>AM_w=|endif
|
if !hasmapto('<Plug>AM_w=') |map <unique> <Leader>w= <Plug>AM_w=|endif
|
||||||
if !hasmapto('<Plug>AM_t?') |map <unique> <Leader>t? <Plug>AM_t?|endif
|
if !hasmapto('<Plug>AM_t?') |map <unique> <Leader>t? <Plug>AM_t?|endif
|
||||||
if !hasmapto('<Plug>AM_t~') |map <unique> <Leader>t~ <Plug>AM_t~|endif
|
if !hasmapto('<Plug>AM_t~') |map <unique> <Leader>t~ <Plug>AM_t~|endif
|
||||||
@ -159,17 +166,22 @@ if !hasmapto('<Plug>AM_tt') |map <unique> <Leader>tt <Plug>AM_tt|endif
|
|||||||
map <silent> <script> <Plug>AM_t| <SID>WS:AlignCtrl mIp0P0=l <Bar><CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_t| <SID>WS:AlignCtrl mIp0P0=l <Bar><CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t# <SID>WS:AlignCtrl mIp0P0=l #<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_t# <SID>WS:AlignCtrl mIp0P0=l #<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t, <SID>WS:AlignCtrl mIp0P1=l ,<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_t, <SID>WS:AlignCtrl mIp0P1=l ,<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_ts, <SID>WS:AlignCtrl mIp0P1=l ,<CR>:'a,.Align<CR>:'a,.s/\(\s*\),/,\1/ge<CR><SID>WE
|
|
||||||
map <silent> <script> <Plug>AM_t: <SID>WS:AlignCtrl mIp1P1=l :<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_t: <SID>WS:AlignCtrl mIp1P1=l :<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t; <SID>WS:AlignCtrl mIp0P1=l ;<CR>:'a,.Align<CR>:'y,'zs/\( *\);/;\1/ge<CR><SID>WE
|
map <silent> <script> <Plug>AM_t; <SID>WS:AlignCtrl mIp0P1=l ;<CR>:'a,.Align<CR>:sil 'y,'zs/\( *\);/;\1/ge<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t< <SID>WS:AlignCtrl mIp0P0=l <<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_t< <SID>WS:AlignCtrl mIp0P0=l <<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t= <SID>WS:call AlignMaps#Equals()<CR><SID>WE
|
map <silent> <script> <Plug>AM_t= <SID>WS:call AlignMaps#Equals()<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_w= <SID>WS:'a,'zg/=/s/\s\+\([*/+\-%<Bar>&\~^]\==\)/ \1/e<CR>:'a,'zg/=/s@ \+\([*/+\-%<Bar>&\~^]\)=@\1=@ge<CR>:'a,'zg/=/s/==/\="\<Char-0xff>\<Char-0xff>"/ge<CR>:'a,'zg/=/s/!=/\="!\<Char-0xff>"/ge<CR>'zk:AlignCtrl mWp1P1=l =<CR>:AlignCtrl g =<CR>:'a,'z-1g/=/Align<CR>:'a,'z-1g/=/s@\([*/+\-%<Bar>&\~^!=]\)\( \+\)=@\2\1=@ge<CR>:'a,'z-1g/=/s/\( \+\);/;\1/ge<CR>:'a,'z-1v/^\s*\/[*/]/s/\/[*/]/@&@/e<CR>:'a,'z-1v/^\s*\/[*/]/s/\*\//@&/e<CR>'zk:call AlignMaps#StdAlign(1)<cr>:'y,'zs/^\(\s*\) @/\1/e<CR>:'a,'z-1g/=/s/\xff/=/ge<CR>:'y,'zg/=/s/ @//eg<CR><SID>WE
|
map <silent> <script> <Plug>AM_ts, <SID>WS:AlignCtrl mIp0P1=l #<CR>:'a,.Align<CR>:sil 'y+1,'z-1s/\(\s*\)#/,\1/ge<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_ts, <SID>WS:AlignCtrl mIp0P1=l ,<CR>:'a,.Align<CR>:sil 'y+1,'z-1s/\(\s*\),/,\1/ge<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_ts: <SID>WS:AlignCtrl mIp1P1=l :<CR>:'a,.Align<CR>:sil 'y+1,'z-1s/\(\s*\):/:\1/ge<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_ts; <SID>WS:AlignCtrl mIp1P1=l ;<CR>:'a,.Align<CR>:sil 'y+1,'z-1s/\(\s*\);/;\1/ge<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_ts< <SID>WS:AlignCtrl mIp1P1=l <<CR>:'a,.Align<CR>:sil 'y+1,'z-1s/\(\s*\)</<\1/ge<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_ts= <SID>WS:AlignCtrl mIp1P1=l =<CR>:'a,.Align<CR>:sil 'y+1,'z-1s/\(\s*\)=/=\1/ge<CR><SID>WE
|
||||||
|
map <silent> <script> <Plug>AM_w= <SID>WS:'a,'zg/=/s/\s\+\([*/+\-%<Bar>&\~^]\==\)/ \1/e<CR>:'a,'zg/=/s@ \+\([*/+\-%<Bar>&\~^]\)=@\1=@ge<CR>:'a,'zg/=/s/==/\="\<Char-0x0f>\<Char-0x0f>"/ge<CR>:'a,'zg/=/s/!=/\="!\<Char-0x0f>"/ge<CR>'zk:AlignCtrl mWp1P1=l =<CR>:AlignCtrl g =<CR>:'a,'z-1g/=/Align<CR>:'a,'z-1g/=/s@\([*/+\-%<Bar>&\~^!=]\)\( \+\)=@\2\1=@ge<CR>:'a,'z-1g/=/s/\( \+\);/;\1/ge<CR>:'a,'z-1v/^\s*\/[*/]/s/\/[*/]/@&@/e<CR>:'a,'z-1v/^\s*\/[*/]/s/\*\//@&/e<CR>'zk:call AlignMaps#StdAlign(1)<cr>:'y,'zs/^\(\s*\) @/\1/e<CR>:'a,'z-1g/=/s/\xff/=/ge<CR>:'y,'zg/=/s/ @//eg<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t? <SID>WS:AlignCtrl mIp0P0=l ?<CR>:'a,.Align<CR>:.,'zs/ \( *\);/;\1/ge<CR><SID>WE
|
map <silent> <script> <Plug>AM_t? <SID>WS:AlignCtrl mIp0P0=l ?<CR>:'a,.Align<CR>:.,'zs/ \( *\);/;\1/ge<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t~ <SID>WS:AlignCtrl mIp0P0=l ~<CR>:'a,.Align<CR>:'y,'zs/ \( *\);/;\1/ge<CR><SID>WE
|
map <silent> <script> <Plug>AM_t~ <SID>WS:AlignCtrl mIp0P0=l ~<CR>:'a,.Align<CR>:'y,'zs/ \( *\);/;\1/ge<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_t@ <SID>WS::call AlignMaps#StdAlign(1)<cr>:<SID>WE
|
map <silent> <script> <Plug>AM_t@ <SID>WS::call AlignMaps#StdAlign(1)<cr>:<SID>WE
|
||||||
map <silent> <script> <Plug>AM_m= <SID>WS:'a,'zs/\s\+\([*/+\-%<Bar>&\~^]\==\)/ \1/e<CR>:'a,'zs@ \+\([*/+\-%<Bar>&\~^]\)=@\1=@ge<CR>:'a,'zs/==/\="\<Char-0xff>\<Char-0xff>"/ge<CR>:'a,'zs/!=/\="!\<Char-0xff>"/ge<CR>'zk:AlignCtrl mIp1P1=l =<CR>:AlignCtrl g =<CR>:'a,'z-1Align<CR>:'a,'z-1s@\([*/+\-%<Bar>&\~^!=]\)\( \+\)=@\2\1=@ge<CR>:'a,'z-1s/\( \+\);/;\1/ge<CR>:'a,'z-s/%\ze[^=]/ @%@ /e<CR>'zk:call AlignMaps#StdAlign(1)<cr>:'y,'zs/^\(\s*\) @/\1/e<CR>:'a,'z-1s/\xff/=/ge<CR>:'y,'zs/ @//eg<CR><SID>WE
|
map <silent> <script> <Plug>AM_m= <SID>WS:'a,'zs/\s\+\([*/+\-%<Bar>&\~^]\==\)/ \1/e<CR>:'a,'zs@ \+\([*/+\-%<Bar>&\~^]\)=@\1=@ge<CR>:'a,'zs/==/\="\<Char-0x0f>\<Char-0x0f>"/ge<CR>:'a,'zs/!=/\="!\<Char-0x0f>"/ge<CR>'zk:AlignCtrl mIp1P1=l =<CR>:AlignCtrl g =<CR>:'a,'z-1Align<CR>:'a,'z-1s@\([*/+\-%<Bar>&\~^!=]\)\( \+\)=@\2\1=@ge<CR>:'a,'z-1s/\( \+\);/;\1/ge<CR>:'a,'z-s/%\ze[^=]/ @%@ /e<CR>'zk:call AlignMaps#StdAlign(1)<cr>:'y,'zs/^\(\s*\) @/\1/e<CR>:'a,'z-1s/\xff/=/ge<CR>:'y,'zs/ @//eg<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_tab <SID>WS:'a,.s/^\(\t*\)\(.*\)$/\=submatch(1).escape(substitute(submatch(2),'\t',"\<Char-0xff>",'g'),'\')/<CR>:if &ts == 1<bar>exe "AlignCtrl mI=lp0P0 \<Char-0xff>"<bar>else<bar>exe "AlignCtrl mI=l \<Char-0xff>"<bar>endif<CR>:'a,.Align<CR>:exe "'y+1,'z-1s/\<Char-0xff>/".((&ts == 1)? '\t' : ' ')."/g"<CR><SID>WE
|
map <silent> <script> <Plug>AM_tab <SID>WS:'a,.s/^\(\t*\)\(.*\)$/\=submatch(1).escape(substitute(submatch(2),'\t',"\<Char-0x0f>",'g'),'\')/<CR>:if &ts == 1<bar>exe "AlignCtrl mI=lp0P0 \<Char-0x0f>"<bar>else<bar>exe "AlignCtrl mI=l \<Char-0x0f>"<bar>endif<CR>:'a,.Align<CR>:exe "'y+1,'z-1s/\<Char-0x0f>/".((&ts == 1)? '\t' : ' ')."/g"<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_tml <SID>WS:AlignCtrl mWp1P0=l \\\@<!\\\s*$<CR>:'a,.Align<CR><SID>WE
|
map <silent> <script> <Plug>AM_tml <SID>WS:AlignCtrl mWp1P0=l \\\@<!\\\s*$<CR>:'a,.Align<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_tsp <SID>WS:'a,.s/^\(\s*\)\(.*\)/\=submatch(1).escape(substitute(submatch(2),'\s\+','@','g'),'\')/<CR>:AlignCtrl mI=lp0P0 @<CR>:'a,.Align<CR>:'y+1,'z-1s/@/ /g<CR><SID>WE
|
map <silent> <script> <Plug>AM_tsp <SID>WS:'a,.s/^\(\s*\)\(.*\)/\=submatch(1).escape(substitute(submatch(2),'\s\+','@','g'),'\')/<CR>:AlignCtrl mI=lp0P0 @<CR>:'a,.Align<CR>:'y+1,'z-1s/@/ /g<CR><SID>WE
|
||||||
map <silent> <script> <Plug>AM_tsq <SID>WS:'a,.AlignReplaceQuotedSpaces<CR>:'a,.s/^\(\s*\)\(.*\)/\=submatch(1).substitute(submatch(2),'\s\+','@','g')/<CR>:AlignCtrl mIp0P0=l @<CR>:'a,.Align<CR>:'y+1,'z-1s/[%@]/ /g<CR><SID>WE
|
map <silent> <script> <Plug>AM_tsq <SID>WS:'a,.AlignReplaceQuotedSpaces<CR>:'a,.s/^\(\s*\)\(.*\)/\=submatch(1).substitute(submatch(2),'\s\+','@','g')/<CR>:AlignCtrl mIp0P0=l @<CR>:'a,.Align<CR>:'y+1,'z-1s/[%@]/ /g<CR><SID>WE
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
" AlignPlugin: tool to align multiple fields based on one or more separators
|
" AlignPlugin: tool to align multiple fields based on one or more separators
|
||||||
" Author: Charles E. Campbell, Jr.
|
" Author: Charles E. Campbell, Jr.
|
||||||
" Date: Nov 15, 2007
|
" Date: Nov 02, 2008
|
||||||
" GetLatestVimScripts: 294 1 :AutoInstall: Align.vim
|
" GetLatestVimScripts: 294 1 :AutoInstall: Align.vim
|
||||||
" GetLatestVimScripts: 1066 1 :AutoInstall: cecutil.vim
|
" GetLatestVimScripts: 1066 1 :AutoInstall: cecutil.vim
|
||||||
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
|
" Copyright: Copyright (C) 1999-2007 Charles E. Campbell, Jr. {{{1
|
||||||
@ -19,10 +19,10 @@
|
|||||||
" faith to faith.
|
" faith to faith.
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" Load Once: {{{1
|
" Load Once: {{{1
|
||||||
if &cp || exists("g:loaded_alignPlugin")
|
if &cp || exists("g:loaded_AlignPlugin")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_alignPlugin = 1
|
let g:loaded_AlignPlugin = "v35"
|
||||||
let s:keepcpo = &cpo
|
let s:keepcpo = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,468 +0,0 @@
|
|||||||
" ---------------------------------------------------------------------
|
|
||||||
" GetLatestVimScripts.vim
|
|
||||||
" Author: Charles E. Campbell, Jr.
|
|
||||||
" Date: Feb 15, 2006
|
|
||||||
" Version: 20
|
|
||||||
" Installing: :help glvs-install
|
|
||||||
" Usage: :help glvs
|
|
||||||
"
|
|
||||||
" GetLatestVimScripts: 642 1 :AutoInstall: GetLatestVimScripts.vim
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Initialization: {{{1
|
|
||||||
" if you're sourcing this file, surely you can't be
|
|
||||||
" expecting vim to be in its vi-compatible mode
|
|
||||||
if &cp
|
|
||||||
echoerr "GetLatestVimScripts is not vi-compatible; not loaded (you need to set nocp)"
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
let s:keepfo = &fo
|
|
||||||
let s:keepcpo = &cpo
|
|
||||||
set cpo&vim
|
|
||||||
|
|
||||||
if exists("loaded_GetLatestVimScripts")
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
let g:loaded_GetLatestVimScripts= "v20"
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Global Variables: {{{1
|
|
||||||
" allow user to change the command for obtaining scripts (does fetch work?)
|
|
||||||
if !exists("g:GetLatestVimScripts_wget")
|
|
||||||
let g:GetLatestVimScripts_wget= "wget"
|
|
||||||
endif
|
|
||||||
if !exists("g:GetLatestVimScripts_options")
|
|
||||||
let g:GetLatestVimScripts_options= "-q -O"
|
|
||||||
endif
|
|
||||||
if !exists("g:GetLatestVimScripts_allowautoinstall")
|
|
||||||
let g:GetLatestVimScripts_allowautoinstall= 1
|
|
||||||
endif
|
|
||||||
|
|
||||||
"" For debugging:
|
|
||||||
"let g:GetLatestVimScripts_wget = "echo"
|
|
||||||
"let g:GetLatestVimScripts_options = "options"
|
|
||||||
|
|
||||||
" check if s:autoinstall is possible
|
|
||||||
let s:autoinstall= ""
|
|
||||||
if g:GetLatestVimScripts_allowautoinstall
|
|
||||||
|
|
||||||
if (has("win32") || has("gui_win32") || has("gui_win32s") || has("win16") || has("win64") || has("win32unix") || has("win95")) && &shell != "bash"
|
|
||||||
" windows (but not cygwin/bash)
|
|
||||||
let s:dotvim= "vimfiles"
|
|
||||||
if !exists("g:GetLatestVimScripts_mv")
|
|
||||||
let g:GetLatestVimScripts_mv= "ren"
|
|
||||||
endif
|
|
||||||
|
|
||||||
else
|
|
||||||
" unix
|
|
||||||
let s:dotvim= ".vim"
|
|
||||||
if !exists("g:GetLatestVimScripts_mv")
|
|
||||||
let g:GetLatestVimScripts_mv= "mv"
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
if exists('$HOME') && isdirectory(expand("$HOME")."/".s:dotvim)
|
|
||||||
let s:autoinstall= $HOME."/".s:dotvim
|
|
||||||
endif
|
|
||||||
" call Decho("s:autoinstall<".s:autoinstall.">")
|
|
||||||
else
|
|
||||||
" call Decho("g:GetLatestVimScripts_allowautoinstall=".g:GetLatestVimScripts_allowautoinstall.": :AutoInstall: disabled")
|
|
||||||
endif
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" Public Interface: {{{1
|
|
||||||
com! -nargs=0 GetLatestVimScripts call <SID>GetLatestVimScripts()
|
|
||||||
silent! com -nargs=0 GLVS call <SID>GetLatestVimScripts()
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" GetOneScript: (Get Latest Vim Script) this function operates {{{1
|
|
||||||
" on the current line, interpreting two numbers and text as
|
|
||||||
" ScriptID, SourceID, and Filename.
|
|
||||||
" It downloads any scripts that have newer versions from vim.sf.net.
|
|
||||||
fun! <SID>GetOneScript(...)
|
|
||||||
" call Dfunc("GetOneScript()")
|
|
||||||
|
|
||||||
" set options to allow progress to be shown on screen
|
|
||||||
let t_ti= &t_ti
|
|
||||||
let t_te= &t_te
|
|
||||||
let rs = &rs
|
|
||||||
set t_ti= t_te= nors
|
|
||||||
|
|
||||||
" put current line on top-of-screen and interpret it into
|
|
||||||
" a script identifer : used to obtain webpage
|
|
||||||
" source identifier : used to identify current version
|
|
||||||
" and an associated comment: used to report on what's being considered
|
|
||||||
if a:0 >= 3
|
|
||||||
let scriptid = a:1
|
|
||||||
let srcid = a:2
|
|
||||||
let cmmnt = a:3
|
|
||||||
" call Decho("scriptid<".scriptid.">")
|
|
||||||
" call Decho("srcid <".srcid.">")
|
|
||||||
" call Decho("cmmnt <".cmmnt.">")
|
|
||||||
else
|
|
||||||
let curline = getline(".")
|
|
||||||
let parsepat = '^\s*\(\d\+\)\s\+\(\d\+\)\s\+\(.\{-}\)$'
|
|
||||||
try
|
|
||||||
let scriptid = substitute(curline,parsepat,'\1','e')
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E486/
|
|
||||||
let scriptid= 0
|
|
||||||
endtry
|
|
||||||
try
|
|
||||||
let srcid = substitute(curline,parsepat,'\2','e')
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E486/
|
|
||||||
let srcid= 0
|
|
||||||
endtry
|
|
||||||
try
|
|
||||||
let cmmnt = substitute(curline,parsepat,'\3','e')
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E486/
|
|
||||||
let cmmnt= ""
|
|
||||||
endtry
|
|
||||||
" call Decho("curline <".curline.">")
|
|
||||||
" call Decho("parsepat<".parsepat.">")
|
|
||||||
" call Decho("scriptid<".scriptid.">")
|
|
||||||
" call Decho("srcid <".srcid.">")
|
|
||||||
" call Decho("cmmnt <".cmmnt.">")
|
|
||||||
endif
|
|
||||||
|
|
||||||
if scriptid == 0 || srcid == 0
|
|
||||||
" When looking for :AutoInstall: lines, skip scripts that
|
|
||||||
" have 0 0 scriptname
|
|
||||||
" call Dret("GetOneScript : skipping a scriptid==srcid==0 line")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
|
|
||||||
let doautoinstall= 0
|
|
||||||
if cmmnt =~ ":AutoInstall:"
|
|
||||||
" call Decho("cmmnt<".cmmnt."> has :AutoInstall:...")
|
|
||||||
let aicmmnt= substitute(cmmnt,'\s\+:AutoInstall:\s\+',' ','')
|
|
||||||
" call Decho("aicmmnt<".aicmmnt."> s:autoinstall=".s:autoinstall)
|
|
||||||
if s:autoinstall != ""
|
|
||||||
let doautoinstall = g:GetLatestVimScripts_allowautoinstall
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
let aicmmnt= cmmnt
|
|
||||||
endif
|
|
||||||
" call Decho("aicmmnt<".aicmmnt.">: doautoinstall=".doautoinstall)
|
|
||||||
|
|
||||||
exe "norm z\<CR>"
|
|
||||||
redraw!
|
|
||||||
" call Decho('considering <'.aicmmnt.'> scriptid='.scriptid.' srcid='.srcid)
|
|
||||||
echomsg 'considering <'.aicmmnt.'> scriptid='.scriptid.' srcid='.srcid
|
|
||||||
|
|
||||||
" grab a copy of the plugin's vim.sf.net webpage
|
|
||||||
let scriptaddr = 'http://vim.sf.net/script.php?script_id='.scriptid
|
|
||||||
let tmpfile = tempname()
|
|
||||||
let v:errmsg = ""
|
|
||||||
|
|
||||||
" make three tries at downloading the description
|
|
||||||
let itry= 1
|
|
||||||
while itry <= 3
|
|
||||||
" call Decho("try#".itry." to download description of <".aicmmnt."> with addr=".scriptaddr)
|
|
||||||
if has("win32") || has("win16") || has("win95")
|
|
||||||
" call Decho("silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile.' "'.scriptaddr.'"')
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile.' "'.scriptaddr.'"'
|
|
||||||
else
|
|
||||||
" call Decho("silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile." '".scriptaddr."'")
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".tmpfile." '".scriptaddr."'"
|
|
||||||
endif
|
|
||||||
if itry == 1
|
|
||||||
exe "silent vsplit ".tmpfile
|
|
||||||
else
|
|
||||||
silent! e %
|
|
||||||
endif
|
|
||||||
|
|
||||||
" find the latest source-id in the plugin's webpage
|
|
||||||
silent! 1
|
|
||||||
let findpkg= search('Click on the package to download','W')
|
|
||||||
if findpkg > 0
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
let itry= itry + 1
|
|
||||||
endwhile
|
|
||||||
" call Decho(" --- end downloading tries while loop --- itry=".itry)
|
|
||||||
|
|
||||||
" testing: did finding /Click on the package.../ fail?
|
|
||||||
if findpkg == 0 || itry >= 4
|
|
||||||
silent q!
|
|
||||||
call delete(tmpfile)
|
|
||||||
" restore options
|
|
||||||
let &t_ti = t_ti
|
|
||||||
let &t_te = t_te
|
|
||||||
let &rs = rs
|
|
||||||
let s:downerrors = s:downerrors + 1
|
|
||||||
" call Decho("***warning*** couldn'".'t find "Click on the package..." in description page for <'.aicmmnt.">")
|
|
||||||
echomsg "***warning*** couldn'".'t find "Click on the package..." in description page for <'.aicmmnt.">"
|
|
||||||
" call Dret("GetOneScript : srch for /Click on the package/ failed")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
" call Decho('found "Click on the package to download"')
|
|
||||||
|
|
||||||
let findsrcid= search('src_id=','W')
|
|
||||||
if findsrcid == 0
|
|
||||||
silent q!
|
|
||||||
call delete(tmpfile)
|
|
||||||
" restore options
|
|
||||||
let &t_ti = t_ti
|
|
||||||
let &t_te = t_te
|
|
||||||
let &rs = rs
|
|
||||||
let s:downerrors = s:downerrors + 1
|
|
||||||
" call Decho("***warning*** couldn'".'t find "src_id=" in description page for <'.aicmmnt.">")
|
|
||||||
echomsg "***warning*** couldn'".'t find "src_id=" in description page for <'.aicmmnt.">"
|
|
||||||
" call Dret("GetOneScript : srch for /src_id/ failed")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
" call Decho('found "src_id=" in description page')
|
|
||||||
|
|
||||||
let srcidpat = '^\s*<td class.*src_id=\(\d\+\)">\([^<]\+\)<.*$'
|
|
||||||
let latestsrcid= substitute(getline("."),srcidpat,'\1','')
|
|
||||||
let fname = substitute(getline("."),srcidpat,'\2','')
|
|
||||||
" call Decho("srcidpat<".srcidpat."> latestsrcid<".latestsrcid."> fname<".fname.">")
|
|
||||||
silent q!
|
|
||||||
call delete(tmpfile)
|
|
||||||
|
|
||||||
" convert the strings-of-numbers into numbers
|
|
||||||
let srcid = srcid + 0
|
|
||||||
let latestsrcid = latestsrcid + 0
|
|
||||||
" call Decho("srcid=".srcid." latestsrcid=".latestsrcid." fname<".fname.">")
|
|
||||||
|
|
||||||
" has the plugin's most-recent srcid increased, which indicates
|
|
||||||
" that it has been updated
|
|
||||||
if latestsrcid > srcid
|
|
||||||
let s:downloads= s:downloads + 1
|
|
||||||
if fname == bufname("%")
|
|
||||||
" GetLatestVimScript has to be careful about downloading itself
|
|
||||||
let fname= "NEW_".fname
|
|
||||||
endif
|
|
||||||
|
|
||||||
" the plugin has been updated since we last obtained it, so download a new copy
|
|
||||||
" call Decho("...downloading new <".fname.">")
|
|
||||||
echomsg "...downloading new <".fname.">"
|
|
||||||
if has("win32") || has("gui_win32") || has("gui_win32s") || has("win16") || has("win64") || has("win32unix") || has("win95")
|
|
||||||
" call Decho("windows: silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname.' "'.'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid.'"')
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname.' "'.'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid.'"'
|
|
||||||
else
|
|
||||||
" call Decho("unix: silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname." '".'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid."'")
|
|
||||||
exe "silent !".g:GetLatestVimScripts_wget." ".g:GetLatestVimScripts_options." ".fname." '".'http://vim.sf.net/scripts/download_script.php?src_id='.latestsrcid."'"
|
|
||||||
endif
|
|
||||||
|
|
||||||
" AutoInstall: only if doautoinstall is so indicating
|
|
||||||
if doautoinstall
|
|
||||||
" call Decho("attempting to do autoinstall: getcwd<".getcwd()."> filereadable(".fname.")=".filereadable(fname))
|
|
||||||
if filereadable(fname)
|
|
||||||
" call Decho("move <".fname."> to ".s:autoinstall)
|
|
||||||
" call Decho("DISABLED for testing")
|
|
||||||
exe "silent !"g:GetLatestVimScripts_mv." ".fname." ".s:autoinstall
|
|
||||||
let curdir= escape(substitute(getcwd(),'\','/','ge'),"|[]*'\" #")
|
|
||||||
exe "cd ".s:autoinstall
|
|
||||||
if fname =~ '\.bz2$'
|
|
||||||
" call Decho("attempt to bunzip2 ".fname)
|
|
||||||
exe "silent !bunzip2 ".fname
|
|
||||||
let fname= substitute(fname,'\.bz2$','','')
|
|
||||||
elseif fname =~ '\.gz$'
|
|
||||||
" call Decho("attempt to gunzip ".fname)
|
|
||||||
exe "silent !gunzip ".fname
|
|
||||||
let fname= substitute(fname,'\.gz$','','')
|
|
||||||
endif
|
|
||||||
if fname =~ '\.zip$'
|
|
||||||
" call Decho("attempt to unzip ".fname)
|
|
||||||
exe "silent !unzip -o".fname
|
|
||||||
elseif fname =~ '\.tar$'
|
|
||||||
" call Decho("attempt to untar ".fname)
|
|
||||||
exe "silent !tar -oxvf ".fname
|
|
||||||
endif
|
|
||||||
if fname =~ '.vim$'
|
|
||||||
" call Decho("attempt to simply move ".fname." to plugin")
|
|
||||||
exe "silent !".g:GetLatestVimScripts_mv." ".fname." plugin"
|
|
||||||
endif
|
|
||||||
exe "helptags ../".s:dotvim."/doc"
|
|
||||||
exe "cd ".curdir
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
" update the data in the <GetLatestVimScripts.dat> file
|
|
||||||
let modline=scriptid." ".latestsrcid." ".cmmnt
|
|
||||||
call setline(line("."),modline)
|
|
||||||
" call Decho("modline<".modline."> (updated GetLatestVimScripts.dat file)")
|
|
||||||
endif
|
|
||||||
|
|
||||||
" restore options
|
|
||||||
let &t_ti= t_ti
|
|
||||||
let &t_te= t_te
|
|
||||||
let &rs = rs
|
|
||||||
|
|
||||||
" call Dret("GetOneScript")
|
|
||||||
endfun
|
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
" GetLatestVimScripts: this function gets the latest versions of {{{1
|
|
||||||
" scripts based on the list in
|
|
||||||
"
|
|
||||||
" (first dir in runtimepath)/GetLatest/GetLatestVimScripts.dat
|
|
||||||
fun! <SID>GetLatestVimScripts()
|
|
||||||
" call Dfunc("GetLatestVimScripts() autoinstall<".s:autoinstall.">")
|
|
||||||
|
|
||||||
" insure that wget is executable
|
|
||||||
if executable(g:GetLatestVimScripts_wget) != 1
|
|
||||||
echoerr "GetLatestVimScripts needs ".g:GetLatestVimScripts_wget." which apparently is not available on your system"
|
|
||||||
" call Dret("GetLatestVimScripts : wget not executable/availble")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Find the .../GetLatest sudirectory under the runtimepath
|
|
||||||
let rtplist= &rtp
|
|
||||||
while rtplist != ""
|
|
||||||
let datadir= substitute(rtplist,',.*$','','e')."/GetLatest"
|
|
||||||
if isdirectory(datadir)
|
|
||||||
" call Decho("found directory<".datadir.">")
|
|
||||||
break
|
|
||||||
endif
|
|
||||||
unlet datadir
|
|
||||||
if rtplist =~ ','
|
|
||||||
let rtplist= substitute(rtplist,'^.\{-},','','e')
|
|
||||||
else
|
|
||||||
let rtplist= ""
|
|
||||||
endif
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
" Sanity checks: readability and writability
|
|
||||||
if !exists("datadir")
|
|
||||||
echoerr "Unable to find a GetLatest subdirectory on your runtimepath"
|
|
||||||
" call Dret("GetLatestVimScripts : unable to find a GetLatest subdirectory")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
if filewritable(datadir) != 2
|
|
||||||
echoerr "Your ".datadir." isn't writable"
|
|
||||||
" call Dret("GetLatestVimScripts : non-writable directory<".datadir.">")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
let datafile= datadir."/GetLatestVimScripts.dat"
|
|
||||||
if !filereadable(datafile)
|
|
||||||
echoerr "Your data file<".datafile."> isn't readable"
|
|
||||||
" call Dret("GetLatestVimScripts : non-readable datafile<".datafile.">")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
if !filewritable(datafile)
|
|
||||||
echoerr "Your data file<".datafile."> isn't writable"
|
|
||||||
" call Dret("GetLatestVimScripts : non-writable datafile<".datafile.">")
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
" call Decho("datadir <".datadir.">")
|
|
||||||
" call Decho("datafile <".datafile.">")
|
|
||||||
|
|
||||||
" don't let any events interfere (like winmanager's, taglist's, etc)
|
|
||||||
let eikeep= &ei
|
|
||||||
set ei=all
|
|
||||||
|
|
||||||
" record current directory, change to datadir, open split window with
|
|
||||||
" datafile
|
|
||||||
let origdir= getcwd()
|
|
||||||
exe "cd ".escape(substitute(datadir,'\','/','ge'),"|[]*'\" #")
|
|
||||||
split
|
|
||||||
exe "e ".escape(substitute(datafile,'\','/','ge'),"|[]*'\" #")
|
|
||||||
res 1000
|
|
||||||
let s:downloads = 0
|
|
||||||
let s:downerrors= 0
|
|
||||||
|
|
||||||
" Check on dependencies mentioned in plugins
|
|
||||||
" call Decho(" ")
|
|
||||||
" call Decho("searching plugins for GetLatestVimScripts dependencies")
|
|
||||||
let lastline = line("$")
|
|
||||||
let plugins = globpath(&rtp,"plugin/*.vim")
|
|
||||||
let foundscript = 0
|
|
||||||
|
|
||||||
" call Decho("plugins<".plugins."> lastline#".lastline)
|
|
||||||
while plugins != ""
|
|
||||||
let plugin = substitute(plugins,'\n.*$','','e')
|
|
||||||
let plugins= (plugins =~ '\n')? substitute(plugins,'^.\{-}\n\(.*\)$','\1','e') : ""
|
|
||||||
$
|
|
||||||
" call Decho(".dependency checking<".plugin."> line$=".line("$"))
|
|
||||||
exe "silent r ".plugin
|
|
||||||
while search('^"\s\+GetLatestVimScripts:\s\+\d\+\s\+\d\+','W') != 0
|
|
||||||
let newscript= substitute(getline("."),'^"\s\+GetLatestVimScripts:\s\+\d\+\s\+\d\+\s\+\(.*\)$','\1','e')
|
|
||||||
let llp1 = lastline+1
|
|
||||||
|
|
||||||
if newscript !~ '^"'
|
|
||||||
" found a "GetLatestVimScripts: # #" line in the script; check if its already in the datafile
|
|
||||||
let curline = line(".")
|
|
||||||
let noai_script = substitute(newscript,'\s*:AutoInstall:\s*','','e')
|
|
||||||
exe llp1
|
|
||||||
let srchline = search('\<'.noai_script.'\>','bW')
|
|
||||||
" call Decho("..newscript<".newscript."> noai_script<".noai_script."> srch=".srchline." lastline=".lastline)
|
|
||||||
|
|
||||||
if srchline == 0
|
|
||||||
" found a new script to permanently include in the datafile
|
|
||||||
let keep_rega = @a
|
|
||||||
let @a = substitute(getline(curline),'^"\s\+GetLatestVimScripts:\s\+','','')
|
|
||||||
exe lastline."put a"
|
|
||||||
echomsg "Appending <".@a."> to ".datafile." for ".newscript
|
|
||||||
" call Decho("..APPEND (".noai_script.")<".@a."> to GetLatestVimScripts.dat")
|
|
||||||
let @a = keep_rega
|
|
||||||
let lastline = llp1
|
|
||||||
let curline = curline + 1
|
|
||||||
let foundscript = foundscript + 1
|
|
||||||
" else " Decho
|
|
||||||
" call Decho("..found <".noai_script."> (already in datafile at line#".srchline.")")
|
|
||||||
endif
|
|
||||||
|
|
||||||
let curline = curline + 1
|
|
||||||
exe curline
|
|
||||||
endif
|
|
||||||
|
|
||||||
endwhile
|
|
||||||
let llp1= lastline + 1
|
|
||||||
" call Decho(".deleting lines: ".llp1.",$d")
|
|
||||||
exe "silent! ".llp1.",$d"
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
if foundscript == 0
|
|
||||||
set nomod
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Check on out-of-date scripts using GetLatest/GetLatestVimScripts.dat
|
|
||||||
set lz
|
|
||||||
" call Decho(" --- end of dependency checking loop --- ")
|
|
||||||
" call Decho("call GetOneScript on lines at end of datafile<".datafile.">")
|
|
||||||
1
|
|
||||||
/^-----/,$g/^\s*\d/call <SID>GetOneScript()
|
|
||||||
|
|
||||||
" Final report (an echomsg)
|
|
||||||
try
|
|
||||||
silent! ?^-------?
|
|
||||||
catch /^Vim\%((\a\+)\)\=:E114/
|
|
||||||
" call Dret("GetLatestVimScripts : nothing done!")
|
|
||||||
return
|
|
||||||
endtry
|
|
||||||
exe "norm! kz\<CR>"
|
|
||||||
let s:msg = ""
|
|
||||||
if s:downloads == 1
|
|
||||||
let s:msg = "Downloaded one updated script to <".datadir.">"
|
|
||||||
elseif s:downloads == 2
|
|
||||||
let s:msg= "Downloaded two updated scripts to <".datadir.">"
|
|
||||||
elseif s:downloads > 1
|
|
||||||
let s:msg= "Downloaded ".s:downloads." updated scripts to <".datadir.">"
|
|
||||||
else
|
|
||||||
let s:msg= "Everything was already current"
|
|
||||||
endif
|
|
||||||
if s:downerrors > 0
|
|
||||||
let s:msg= s:msg." (".s:downerrors." downloading errors)"
|
|
||||||
endif
|
|
||||||
echomsg s:msg
|
|
||||||
" save the file
|
|
||||||
if &mod
|
|
||||||
wq
|
|
||||||
else
|
|
||||||
q
|
|
||||||
endif
|
|
||||||
|
|
||||||
" restore events and current directory
|
|
||||||
exe "cd ".escape(substitute(origdir,'\','/','ge'),"|[]*'\" #")
|
|
||||||
let &ei= eikeep
|
|
||||||
set nolz
|
|
||||||
" call Dret("GetLatestVimScripts : did ".s:downloads." downloads")
|
|
||||||
endfun
|
|
||||||
" ---------------------------------------------------------------------
|
|
||||||
|
|
||||||
" Restore Options: {{{1
|
|
||||||
let &fo = s:keepfo
|
|
||||||
let &cpo= s:keepcpo
|
|
||||||
|
|
||||||
" vim: ts=4 fdm=marker nowrap
|
|
@ -83,7 +83,7 @@ fun! SaveWinPosn(...)
|
|||||||
return ""
|
return ""
|
||||||
endif
|
endif
|
||||||
let so_keep = &l:so
|
let so_keep = &l:so
|
||||||
let siso_keep = &l:siso
|
let siso_keep = &siso
|
||||||
let ss_keep = &l:ss
|
let ss_keep = &l:ss
|
||||||
setlocal so=0 siso=0 ss=0
|
setlocal so=0 siso=0 ss=0
|
||||||
|
|
||||||
@ -114,9 +114,9 @@ fun! SaveWinPosn(...)
|
|||||||
let b:cecutil_winposn{b:cecutil_iwinposn}= savedposn
|
let b:cecutil_winposn{b:cecutil_iwinposn}= savedposn
|
||||||
endif
|
endif
|
||||||
|
|
||||||
let &l:so = so_keep
|
let &l:so = so_keep
|
||||||
let &l:siso = siso_keep
|
let &siso = siso_keep
|
||||||
let &l:ss = ss_keep
|
let &l:ss = ss_keep
|
||||||
|
|
||||||
" if exists("b:cecutil_iwinposn") " Decho
|
" if exists("b:cecutil_iwinposn") " Decho
|
||||||
" call Decho("b:cecutil_winpos{".b:cecutil_iwinposn."}[".b:cecutil_winposn{b:cecutil_iwinposn}."]")
|
" call Decho("b:cecutil_winpos{".b:cecutil_iwinposn."}[".b:cecutil_winposn{b:cecutil_iwinposn}."]")
|
||||||
@ -129,6 +129,8 @@ endfun
|
|||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
" RestoreWinPosn: {{{2
|
" RestoreWinPosn: {{{2
|
||||||
|
" call RestoreWinPosn()
|
||||||
|
" call RestoreWinPosn(winposn)
|
||||||
fun! RestoreWinPosn(...)
|
fun! RestoreWinPosn(...)
|
||||||
" call Dfunc("RestoreWinPosn() a:0=".a:0)
|
" call Dfunc("RestoreWinPosn() a:0=".a:0)
|
||||||
" call Decho("getline(1)<".getline(1).">")
|
" call Decho("getline(1)<".getline(1).">")
|
||||||
|
169
vimfiles/plugin/editsrec.vim
Normal file
169
vimfiles/plugin/editsrec.vim
Normal file
@ -0,0 +1,169 @@
|
|||||||
|
" Vim Global Plugin for Editing .srec Files
|
||||||
|
" Maintainer: Alexander Fleck
|
||||||
|
" <alexander.fleck@gmx.net>
|
||||||
|
" License: This File is placed in the Public Domain.
|
||||||
|
" Revision | Date [DD.MM.YY] | Changes
|
||||||
|
" 00.01.00 | 05.07.09 | 01. Revision
|
||||||
|
|
||||||
|
if exists("loaded_editsrec")
|
||||||
|
finish
|
||||||
|
endif
|
||||||
|
let loaded_editsrec = 1
|
||||||
|
|
||||||
|
let s:save_cpo = &cpo
|
||||||
|
set cpo&vim
|
||||||
|
|
||||||
|
" BC = ByteCount
|
||||||
|
if !hasmapto('<Plug>EditSrecLineBC')
|
||||||
|
map <unique> <Leader>lb <Plug>EditSrecLineBC
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecLineBC <SID>AutoLineBC
|
||||||
|
noremap <SID>AutoLineBC <Esc>:call <SID>AutoLineBC()<CR>
|
||||||
|
if !hasmapto('<Plug>EditSrecPartBC')
|
||||||
|
map <unique> <Leader>pb <Plug>EditSrecPartBC
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecPartBC <SID>AutoPartBC
|
||||||
|
noremap <SID>AutoPartBC <Esc>:call <SID>AutoPartBC()<CR>
|
||||||
|
|
||||||
|
" AD = ADdress
|
||||||
|
if !hasmapto('<Plug>EditSrecLineAD')
|
||||||
|
map <unique> <Leader>la <Plug>EditSrecLineAD
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecLineAD <SID>AutoLineAD
|
||||||
|
noremap <SID>AutoLineAD <Esc>:call <SID>AutoLineAD()<CR>
|
||||||
|
if !hasmapto('<Plug>EditSrecPartAD')
|
||||||
|
map <unique> <Leader>pa <Plug>EditSrecPartAD
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecPartAD <SID>AutoPartAD
|
||||||
|
noremap <SID>AutoPartAD <Esc>:call <SID>AutoPartAD()<CR>
|
||||||
|
|
||||||
|
" DA = DAta
|
||||||
|
if !hasmapto('<Plug>EditSrecLineDA')
|
||||||
|
map <unique> <Leader>ld <Plug>EditSrecLineDA
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecLineDA <SID>AutoLineDA
|
||||||
|
noremap <SID>AutoLineDA <Esc>:call <SID>AutoLineDA()<CR>
|
||||||
|
if !hasmapto('<Plug>EditSrecPartDA')
|
||||||
|
map <unique> <Leader>pd <Plug>EditSrecPartDA
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecPartDA <SID>AutoPartDA
|
||||||
|
noremap <SID>AutoPartDA <Esc>:call <SID>AutoPartDA()<CR>
|
||||||
|
|
||||||
|
" CS = CheckSum
|
||||||
|
if !hasmapto('<Plug>EditSrecLineCS')
|
||||||
|
map <unique> <Leader>lc <Plug>EditSrecLineCS
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecLineCS <SID>AutoLineCS
|
||||||
|
noremap <SID>AutoLineCS <Esc>:call <SID>AutoLineCS()<CR>
|
||||||
|
if !hasmapto('<Plug>EditSrecPartCS')
|
||||||
|
map <unique> <Leader>pc <Plug>EditSrecPartCS
|
||||||
|
endif
|
||||||
|
noremap <unique> <script> <Plug>EditSrecPartCS <SID>AutoPartCS
|
||||||
|
noremap <SID>AutoPartCS <Esc>:call <SID>AutoPartCS()<CR>
|
||||||
|
|
||||||
|
" obsolete Mappings
|
||||||
|
"imap <F5> <Esc>:call <SID>AutoLineBC()<CR>a
|
||||||
|
"imap <F6> <Esc>:call <SID>AutoLineAD()<CR>a
|
||||||
|
"imap <F7> <Esc>:call <SID>AutoLineDA()<CR>a
|
||||||
|
"imap <F8> <Esc>:call <SID>AutoLineCS()<CR>a
|
||||||
|
"imap <C-F5> <Esc>:call <SID>AutoPartBC()<CR>a
|
||||||
|
"imap <C-F6> <Esc>:call <SID>AutoPartAD()<CR>a
|
||||||
|
"imap <C-F7> <Esc>:call <SID>AutoPartDA()<CR>a
|
||||||
|
"imap <C-F8> <Esc>:call <SID>AutoPartCS()<CR>a
|
||||||
|
|
||||||
|
" create Line from ByteCount
|
||||||
|
fun s:AutoLineBC()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrBC(s:ln)
|
||||||
|
let s:ln = s:ln . libsrec#CrAD(s:ln)
|
||||||
|
let s:ln = s:ln . libsrec#CrDA(s:ln)
|
||||||
|
let s:ln = s:ln . libsrec#CrCS(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create only ByteCount
|
||||||
|
fun s:AutoPartBC()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrBC(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create Line from ADdress
|
||||||
|
fun s:AutoLineAD()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrAD(s:ln)
|
||||||
|
let s:ln = s:ln . libsrec#CrDA(s:ln)
|
||||||
|
let s:ln = s:ln . libsrec#CrCS(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create only ADdress
|
||||||
|
fun s:AutoPartAD()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrAD(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create Line from DAta
|
||||||
|
fun s:AutoLineDA()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrDA(s:ln)
|
||||||
|
let s:ln = s:ln . libsrec#CrCS(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create only DAta
|
||||||
|
fun s:AutoPartDA()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrDA(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create Line from CheckSum
|
||||||
|
fun s:AutoLineCS()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrCS(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
" create only CheckSum
|
||||||
|
fun s:AutoPartCS()
|
||||||
|
let s:ln = getline(".")
|
||||||
|
|
||||||
|
let s:ln = s:ln . libsrec#CrCS(s:ln)
|
||||||
|
|
||||||
|
call setline(".", s:ln)
|
||||||
|
|
||||||
|
unlet s:ln
|
||||||
|
endfun
|
||||||
|
|
||||||
|
let &cpo = s:save_cpo
|
||||||
|
|
337
vimfiles/plugin/editsrec_test.txt
Normal file
337
vimfiles/plugin/editsrec_test.txt
Normal file
@ -0,0 +1,337 @@
|
|||||||
|
" Vim Test Cases for Editing .srec Files
|
||||||
|
" Maintainer: Alexander Fleck
|
||||||
|
" <alexander.fleck@gmx.net>
|
||||||
|
" License: This File is placed in the Public Domain.
|
||||||
|
" Revision | Date [DD.MM.YY] | Changes
|
||||||
|
" 00.01.00 | 05.07.09 | 01. Revision
|
||||||
|
|
||||||
|
" This File contains Test Cases for the Plugin 'editsrec.vim'
|
||||||
|
" and its Library 'libsrec.vim'.
|
||||||
|
|
||||||
|
TestCases for ByteCount
|
||||||
|
Line -----------------------------
|
||||||
|
insert a new Line and type "S0"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S1"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S10F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S2"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S20F000000FFFFFFFFFFFFFFFFFFFFFFFB
|
||||||
|
insert a new Line and type "S3"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S30F00000000FFFFFFFFFFFFFFFFFFFFFA
|
||||||
|
insert a new Line and type "S4"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S5"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000FC
|
||||||
|
insert a new Line and type "S6"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S7"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000FA
|
||||||
|
insert a new Line and type "S8"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000FB
|
||||||
|
insert a new Line and type "S9"
|
||||||
|
type "<Esc><Leader>lb"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000FC
|
||||||
|
|
||||||
|
Part -----------------------------
|
||||||
|
insert a new Line and type "S0"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S00F
|
||||||
|
insert a new Line and type "S1"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S10F
|
||||||
|
insert a new Line and type "S2"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S20F
|
||||||
|
insert a new Line and type "S3"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S30F
|
||||||
|
insert a new Line and type "S4"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S5"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S503
|
||||||
|
insert a new Line and type "S6"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S7"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S705
|
||||||
|
insert a new Line and type "S8"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S804
|
||||||
|
insert a new Line and type "S9"
|
||||||
|
type "<Esc><Leader>pb"
|
||||||
|
the following Line will be created
|
||||||
|
S903
|
||||||
|
|
||||||
|
|
||||||
|
TestCases for ADdress
|
||||||
|
Line -----------------------------
|
||||||
|
insert a new Line and type "S00F"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S10F"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S10F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S20F"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S20F000000FFFFFFFFFFFFFFFFFFFFFFFB
|
||||||
|
insert a new Line and type "S30F"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S30F00000000FFFFFFFFFFFFFFFFFFFFFA
|
||||||
|
insert a new Line and type "S40F"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S503"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000FC
|
||||||
|
insert a new Line and type "S60F"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S705"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000FA
|
||||||
|
insert a new Line and type "S804"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000FB
|
||||||
|
insert a new Line and type "S903"
|
||||||
|
type "<Esc><Leader>la"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000FC
|
||||||
|
|
||||||
|
Part -----------------------------
|
||||||
|
insert a new Line and type "S00F"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000
|
||||||
|
insert a new Line and type "S10F"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S10F0000
|
||||||
|
insert a new Line and type "S20F"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S20F000000
|
||||||
|
insert a new Line and type "S30F"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S30F00000000
|
||||||
|
insert a new Line and type "S40F"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S503"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000
|
||||||
|
insert a new Line and type "S60F"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S705"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000
|
||||||
|
insert a new Line and type "S804"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000
|
||||||
|
insert a new Line and type "S903"
|
||||||
|
type "<Esc><Leader>pa"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000
|
||||||
|
|
||||||
|
|
||||||
|
TestCases for DAta
|
||||||
|
Line -----------------------------
|
||||||
|
insert a new Line and type "S00F0000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S10F0000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S10F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S20F000000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S20F000000FFFFFFFFFFFFFFFFFFFFFFFB
|
||||||
|
insert a new Line and type "S30F00000000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S30F00000000FFFFFFFFFFFFFFFFFFFFFA
|
||||||
|
insert a new Line and type "S40F0000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S5030000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000FC
|
||||||
|
insert a new Line and type "S60F0000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S70500000000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000FA
|
||||||
|
insert a new Line and type "S804000000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000FB
|
||||||
|
insert a new Line and type "S9030000"
|
||||||
|
type "<Esc><Leader>ld"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000FC
|
||||||
|
|
||||||
|
Part -----------------------------
|
||||||
|
insert a new Line and type "S00F0000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFF
|
||||||
|
insert a new Line and type "S10F0000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFF
|
||||||
|
insert a new Line and type "S20F000000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S00F000000FFFFFFFFFFFFFFFFFFFFFF
|
||||||
|
insert a new Line and type "S30F00000000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S00F00000000FFFFFFFFFFFFFFFFFFFF
|
||||||
|
insert a new Line and type "S40F0000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S5030000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000
|
||||||
|
insert a new Line and type "S60F0000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S70500000000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000
|
||||||
|
insert a new Line and type "S804000000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000
|
||||||
|
insert a new Line and type "S9030000"
|
||||||
|
type "<Esc><Leader>pd"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000
|
||||||
|
|
||||||
|
|
||||||
|
TestCases for CheckSum
|
||||||
|
Line -----------------------------
|
||||||
|
insert a new Line and type "S00F0000FFFFFFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S10F0000FFFFFFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S10F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S20F000000FFFFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S20F000000FFFFFFFFFFFFFFFFFFFFFFFB
|
||||||
|
insert a new Line and type "S30F00000000FFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S30F00000000FFFFFFFFFFFFFFFFFFFFFA
|
||||||
|
insert a new Line and type "S40F0000"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S5030000"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000FC
|
||||||
|
insert a new Line and type "S60F0000"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000FA
|
||||||
|
insert a new Line and type "S804000000"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000FB
|
||||||
|
insert a new Line and type "S9030000"
|
||||||
|
type "<Esc><Leader>lc"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000FC
|
||||||
|
|
||||||
|
Part -----------------------------
|
||||||
|
insert a new Line and type "S00F0000FFFFFFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S00F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S10F0000FFFFFFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S10F0000FFFFFFFFFFFFFFFFFFFFFFFFFC
|
||||||
|
insert a new Line and type "S20F000000FFFFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S20F000000FFFFFFFFFFFFFFFFFFFFFFFB
|
||||||
|
insert a new Line and type "S30F00000000FFFFFFFFFFFFFFFFFFFF"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S30F00000000FFFFFFFFFFFFFFFFFFFFFA
|
||||||
|
insert a new Line and type "S40F0000"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S5030000"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S5030000FC
|
||||||
|
insert a new Line and type "S60F0000"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
Nothing will be created
|
||||||
|
insert a new Line and type "S70500000000"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S70500000000FA
|
||||||
|
insert a new Line and type "S804000000"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S804000000FB
|
||||||
|
insert a new Line and type "S9030000"
|
||||||
|
type "<Esc><Leader>pc"
|
||||||
|
the following Line will be created
|
||||||
|
S9030000FC
|
||||||
|
|
@ -20,7 +20,7 @@
|
|||||||
if &cp || exists("g:loaded_netrwPlugin")
|
if &cp || exists("g:loaded_netrwPlugin")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_netrwPlugin = "v134"
|
let g:loaded_netrwPlugin = "v136"
|
||||||
if v:version < 702
|
if v:version < 702
|
||||||
echohl WarningMsg | echo "***netrw*** you need vim version 7.2 for this version of netrw" | echohl None
|
echohl WarningMsg | echo "***netrw*** you need vim version 7.2 for this version of netrw" | echohl None
|
||||||
finish
|
finish
|
||||||
@ -49,8 +49,8 @@ augroup Network
|
|||||||
au BufReadCmd file://* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://\(.*\)','\1',""))|exe "bwipe ".fnameescape(expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
|
au BufReadCmd file://* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://\(.*\)','\1',""))|exe "bwipe ".fnameescape(expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
|
||||||
au BufReadCmd file://localhost/* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://localhost/\(.*\)','\1',""))|exe "bwipe ".fnameescape(substitute(expand("<amatch>"),'file://\(\k\+@\)\=','',''))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
|
au BufReadCmd file://localhost/* exe "silent doau BufReadPre ".fnameescape(netrw#RFC2396(expand("<amatch>")))|exe 'e '.fnameescape(substitute(netrw#RFC2396(expand("<amatch>")),'file://localhost/\(.*\)','\1',""))|exe "bwipe ".fnameescape(substitute(expand("<amatch>"),'file://\(\k\+@\)\=','',''))|exe "silent doau BufReadPost ".fnameescape(netrw#RFC2396(expand("<amatch>")))
|
||||||
endif
|
endif
|
||||||
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".fnameescape(expand("<amatch>"))|exe '2Nread '.fnameescape(expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(expand("<amatch>"))
|
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(2,expand("<amatch>"))|exe "silent doau BufReadPost ".fnameescape(expand("<amatch>"))
|
||||||
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".fnameescape(expand("<amatch>"))|exe 'Nread '.fnameescape(expand("<amatch>"))|exe "silent doau FileReadPost ".fnameescape(expand("<amatch>"))
|
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileReadPre ".fnameescape(expand("<amatch>"))|call netrw#Nread(1,expand("<amatch>"))|exe "silent doau FileReadPost ".fnameescape(expand("<amatch>"))
|
||||||
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau BufWritePost ".fnameescape(expand("<amatch>"))
|
au BufWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau BufWritePre ".fnameescape(expand("<amatch>"))|exe 'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau BufWritePost ".fnameescape(expand("<amatch>"))
|
||||||
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau FileWritePost ".fnameescape(expand("<amatch>"))
|
au FileWriteCmd ftp://*,rcp://*,scp://*,dav://*,davs://*,rsync://*,sftp://* exe "silent doau FileWritePre ".fnameescape(expand("<amatch>"))|exe "'[,']".'Nwrite '.fnameescape(expand("<amatch>"))|exe "silent doau FileWritePost ".fnameescape(expand("<amatch>"))
|
||||||
try
|
try
|
||||||
|
@ -1,374 +0,0 @@
|
|||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
" svndiff (C) 2007 Ico Doornekamp
|
|
||||||
"
|
|
||||||
" This program is free software; you can redistribute it and/or modify it
|
|
||||||
" under the terms of the GNU General Public License as published by the Free
|
|
||||||
" Software Foundation; either version 2 of the License, or (at your option)
|
|
||||||
" any later version.
|
|
||||||
"
|
|
||||||
" This program is distributed in the hope that it will be useful, but WITHOUT
|
|
||||||
" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
||||||
" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
|
|
||||||
" more details.
|
|
||||||
"
|
|
||||||
" Introduction
|
|
||||||
" ------------
|
|
||||||
"
|
|
||||||
" NOTE: This plugin is unix-only!
|
|
||||||
"
|
|
||||||
" An small vim 7.0 plugin for showing RCS diff information in a file while
|
|
||||||
" editing. This plugin runs a diff between the current buffer and the original
|
|
||||||
" file from svn or git, and shows coloured signs indicating where the buffer
|
|
||||||
" differs from the original file from the repository. The original
|
|
||||||
" text is not shown, only signs are used to indicate where changes were made.
|
|
||||||
"
|
|
||||||
" The plugin can be used for files managed with subversion or GIT. The type of
|
|
||||||
" RCS will be detected when first issuing a svndiff command on the file.
|
|
||||||
"
|
|
||||||
" The following symbols and syntax highlight groups are used for the signs:
|
|
||||||
"
|
|
||||||
" > DiffAdd: Newly added lines. (default=blue)
|
|
||||||
"
|
|
||||||
" ! DiffChange: Lines which are changed from the original. (default=cyan)
|
|
||||||
"
|
|
||||||
" < DiffDel: Applied to the lines directly above and below a deleted block
|
|
||||||
" (default=magenta)
|
|
||||||
" Usage
|
|
||||||
" -----
|
|
||||||
"
|
|
||||||
" The plugin defines one function: Svndiff(). This function figures out the
|
|
||||||
" difference between the current buffer and it's svn/git original, and adds
|
|
||||||
" the signs at the places where the buffer differs from the original file from
|
|
||||||
" svn or git. You'll need to call this function after making changes to update
|
|
||||||
" the highlighting.
|
|
||||||
"
|
|
||||||
" The function takes one argument specifying an additional action to perform:
|
|
||||||
"
|
|
||||||
" "prev" : jump to the previous different block
|
|
||||||
" "next" : jump to the next different block
|
|
||||||
" "clear" : clean up all signs
|
|
||||||
"
|
|
||||||
" You might want to map some keys to run the Svndiff function. For
|
|
||||||
" example, add to your .vimrc:
|
|
||||||
"
|
|
||||||
" noremap <F3> :call Svndiff("prev")<CR>
|
|
||||||
" noremap <F4> :call Svndiff("next")<CR>
|
|
||||||
" noremap <F5> :call Svndiff("clear")<CR>
|
|
||||||
"
|
|
||||||
"
|
|
||||||
" Configuration
|
|
||||||
" -------------
|
|
||||||
"
|
|
||||||
" The following configuration variables are availabe:
|
|
||||||
"
|
|
||||||
" * g:svndiff_autoupdate
|
|
||||||
"
|
|
||||||
" If this variable is defined, svndiff will automatically update the signs
|
|
||||||
" when the user stops typing for a short while, and when leaving insert
|
|
||||||
" mode. This might slow things down on large files, so use with caution.
|
|
||||||
" The vim variable 'updatetime' can be used to set the auto-update intervar,
|
|
||||||
" but not that changing this variable other effects as well. (refer to the
|
|
||||||
" vim docs for more info)
|
|
||||||
" To use, add to your .vimrc:
|
|
||||||
"
|
|
||||||
" let g:svndiff_autoupdate = 1
|
|
||||||
"
|
|
||||||
" * g:svndiff_one_sign_delete
|
|
||||||
"
|
|
||||||
" Normally, two 'delete' signs are placed around the location where
|
|
||||||
" text was deleted. When this variable is defined, only one sign is
|
|
||||||
" placed, above the location of the deleted text.
|
|
||||||
" To use, add to your .vimrc:
|
|
||||||
"
|
|
||||||
" let g:svndiff_one_sign_delete = 1
|
|
||||||
"
|
|
||||||
" Colors
|
|
||||||
" ------
|
|
||||||
"
|
|
||||||
" Personally, I find the following colours more intuitive for diff colours:
|
|
||||||
" red=deleted, green=added, yellow=changed. If you want to use these colours,
|
|
||||||
" try adding the following lines to your .vimrc
|
|
||||||
"
|
|
||||||
" hi DiffAdd ctermfg=0 ctermbg=2 guibg='green'
|
|
||||||
" hi DiffDelete ctermfg=0 ctermbg=1 guibg='red'
|
|
||||||
" hi DiffChange ctermfg=0 ctermbg=3 guibg='yellow'
|
|
||||||
"
|
|
||||||
" Changelog
|
|
||||||
" ---------
|
|
||||||
"
|
|
||||||
" 1.0 2007-04-02 Initial version
|
|
||||||
"
|
|
||||||
" 1.1 2007-04-02 Added goto prev/next diffblock commands
|
|
||||||
"
|
|
||||||
" 1.2 2007-06-14 Updated diff arguments from -u0 (obsolete) to -U0
|
|
||||||
"
|
|
||||||
" 2.0 2007-08-16 Changed from syntax highlighting to using signs, thanks
|
|
||||||
" to Noah Spurrier for the idea. NOTE: the name of the
|
|
||||||
" function changed from Svndiff_show() to Svndiff(), so
|
|
||||||
" you might need to update your .vimrc mappings!
|
|
||||||
"
|
|
||||||
" 3.0 2008-02-02 Redesign with some ideas from Jan Bezdekovsky. The
|
|
||||||
" diff is only updated when the buffer actually changes,
|
|
||||||
" cleanup of signs is now done properly and some info
|
|
||||||
" about each diff block is printed in the status line.
|
|
||||||
"
|
|
||||||
" 3.1 2008-02-04 Fixed bug that broke plugin in non-english locales, thanks
|
|
||||||
" to Bernhard Walle for the patch
|
|
||||||
"
|
|
||||||
" 3.2 2008-02-27 The latest rewrite broke vim 6 compatiblity. The plugin
|
|
||||||
" is now simply disabled for older vim versions to avoid
|
|
||||||
" a lot of warnings when loading.
|
|
||||||
"
|
|
||||||
" 4.0 2008-11-24 Added GIT support. The RCS type is now detected (svn/git)
|
|
||||||
"
|
|
||||||
" 4.1 2008-11-25 Added CVS support.
|
|
||||||
"
|
|
||||||
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
|
|
||||||
|
|
||||||
if v:version < 700
|
|
||||||
finish
|
|
||||||
endif
|
|
||||||
|
|
||||||
" Globals for this plugin
|
|
||||||
|
|
||||||
let s:sign_base = 200000 " Base for our sign id's, hoping to avoid colisions
|
|
||||||
let s:is_active = {} " dictionary with buffer names that have svndiff active
|
|
||||||
let s:rcs_type = {} " RCS type, will be autodetected to 'svn' or 'git'
|
|
||||||
let s:rcs_cmd = {} " Shell command to execute to get contents of clean file from RCS
|
|
||||||
let s:diff_signs = {} " dict with list of ids of all signs, per file
|
|
||||||
let s:diff_blocks = {} " dict with list of ids of first line of each diff block, per file
|
|
||||||
let s:changedtick = {} " dict with changedticks of each buffer since last invocation
|
|
||||||
|
|
||||||
" Commands to execute to get current file contents in various rcs systems
|
|
||||||
|
|
||||||
let s:rcs_cmd_svn = "svn cat "
|
|
||||||
let s:rcs_cmd_git = "git cat-file -p HEAD:"
|
|
||||||
let s:rcs_cmd_cvs = "cvs -q update -p "
|
|
||||||
|
|
||||||
"
|
|
||||||
" Do the diff and update signs.
|
|
||||||
"
|
|
||||||
|
|
||||||
function s:Svndiff_update(...)
|
|
||||||
|
|
||||||
let fname = bufname("%")
|
|
||||||
|
|
||||||
if ! exists("s:is_active[fname]")
|
|
||||||
return 0
|
|
||||||
end
|
|
||||||
|
|
||||||
" Guess RCS type for this file
|
|
||||||
|
|
||||||
if ! has_key(s:rcs_type, fname)
|
|
||||||
|
|
||||||
let info = system("LANG=C svn info " . fname)
|
|
||||||
if match(info, "Path") != -1
|
|
||||||
let s:rcs_type[fname] = "svn"
|
|
||||||
let s:rcs_cmd[fname] = s:rcs_cmd_svn
|
|
||||||
end
|
|
||||||
|
|
||||||
let info = system("git st " . fname)
|
|
||||||
if v:shell_error == 0
|
|
||||||
let s:rcs_type[fname] = "git"
|
|
||||||
let s:rcs_cmd[fname] = s:rcs_cmd_git
|
|
||||||
end
|
|
||||||
|
|
||||||
let info = system("cvs st " . fname)
|
|
||||||
if v:shell_error == 0
|
|
||||||
let s:rcs_type[fname] = "cvs"
|
|
||||||
let s:rcs_cmd[fname] = s:rcs_cmd_cvs
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
" Could not detect RCS type, print message and exit
|
|
||||||
|
|
||||||
if ! has_key(s:rcs_type, fname)
|
|
||||||
echom "Svndiff: Warning, file " . fname . " is not managed by subversion or git"
|
|
||||||
unlet s:is_active[fname]
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
" Check if the changedticks changed since the last invocation of this
|
|
||||||
" function. If nothing changed, there's no need to update the signs.
|
|
||||||
|
|
||||||
if exists("s:changedtick[fname]") && s:changedtick[fname] == b:changedtick
|
|
||||||
return 1
|
|
||||||
end
|
|
||||||
let s:changedtick[fname] = b:changedtick
|
|
||||||
|
|
||||||
" The diff has changed since the last time, so we need to update the signs.
|
|
||||||
" This is where the magic happens: pipe the current buffer contents to a
|
|
||||||
" shell command calculating the diff in a friendly parsable format.
|
|
||||||
|
|
||||||
let contents = join(getbufline("%", 1, "$"), "\n")
|
|
||||||
let diff = system("diff -U0 <(" . s:rcs_cmd[fname] . fname . ") <(cat;echo)", contents)
|
|
||||||
|
|
||||||
" clear the old signs
|
|
||||||
|
|
||||||
call s:Svndiff_clear()
|
|
||||||
|
|
||||||
" Parse the output of the diff command and put signs at changed, added and
|
|
||||||
" removed lines
|
|
||||||
|
|
||||||
for line in split(diff, '\n')
|
|
||||||
|
|
||||||
let part = matchlist(line, '@@ -\([0-9]*\),*\([0-9]*\) +\([0-9]*\),*\([0-9]*\) @@')
|
|
||||||
|
|
||||||
if ! empty(part)
|
|
||||||
let old_from = part[1]
|
|
||||||
let old_count = part[2] == '' ? 1 : part[2]
|
|
||||||
let new_from = part[3]
|
|
||||||
let new_count = part[4] == '' ? 1 : part[4]
|
|
||||||
|
|
||||||
" Figure out if text was added, removed or changed.
|
|
||||||
|
|
||||||
if old_count == 0
|
|
||||||
let from = new_from
|
|
||||||
let to = new_from + new_count - 1
|
|
||||||
let name = 'svndiff_add'
|
|
||||||
let info = new_count . " lines added"
|
|
||||||
elseif new_count == 0
|
|
||||||
let from = new_from
|
|
||||||
let to = new_from
|
|
||||||
let name = 'svndiff_delete'
|
|
||||||
let info = old_count . " lines deleted"
|
|
||||||
if ! exists("g:svndiff_one_sign_delete")
|
|
||||||
let to += 1
|
|
||||||
endif
|
|
||||||
else
|
|
||||||
let from = new_from
|
|
||||||
let to = new_from + new_count - 1
|
|
||||||
let name = 'svndiff_change'
|
|
||||||
let info = new_count . " lines changed"
|
|
||||||
endif
|
|
||||||
|
|
||||||
let id = from + s:sign_base
|
|
||||||
let s:diff_blocks[fname] += [{ 'id': id, 'info': info }]
|
|
||||||
|
|
||||||
" Add signs to mark the changed lines
|
|
||||||
|
|
||||||
let line = from
|
|
||||||
while line <= to
|
|
||||||
let id = line + s:sign_base
|
|
||||||
exec 'sign place ' . id . ' line=' . line . ' name=' . name . ' file=' . fname
|
|
||||||
let s:diff_signs[fname] += [id]
|
|
||||||
let line = line + 1
|
|
||||||
endwhile
|
|
||||||
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
"
|
|
||||||
" Remove all signs we placed earlier
|
|
||||||
"
|
|
||||||
|
|
||||||
function s:Svndiff_clear(...)
|
|
||||||
let fname = bufname("%")
|
|
||||||
if exists("s:diff_signs[fname]")
|
|
||||||
for id in s:diff_signs[fname]
|
|
||||||
exec 'sign unplace ' . id . ' file=' . fname
|
|
||||||
endfor
|
|
||||||
end
|
|
||||||
let s:diff_blocks[fname] = []
|
|
||||||
let s:diff_signs[fname] = []
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
|
|
||||||
"
|
|
||||||
" Jump to previous diff block sign above the current line
|
|
||||||
"
|
|
||||||
|
|
||||||
function s:Svndiff_prev(...)
|
|
||||||
let fname = bufname("%")
|
|
||||||
let diff_blocks_reversed = reverse(copy(s:diff_blocks[fname]))
|
|
||||||
for block in diff_blocks_reversed
|
|
||||||
let line = block.id - s:sign_base
|
|
||||||
if line < line(".")
|
|
||||||
call setpos(".", [ 0, line, 1, 0 ])
|
|
||||||
echom 'svndiff: ' . block.info
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
echom 'svndiff: no more diff blocks above cursor'
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
|
|
||||||
"
|
|
||||||
" Jump to next diff block sign below the current line
|
|
||||||
"
|
|
||||||
|
|
||||||
function s:Svndiff_next(...)
|
|
||||||
let fname = bufname("%")
|
|
||||||
for block in s:diff_blocks[fname]
|
|
||||||
let line = block.id - s:sign_base
|
|
||||||
if line > line(".")
|
|
||||||
call setpos(".", [ 0, line, 1, 0 ])
|
|
||||||
echom 'svndiff: ' . block.info
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
endfor
|
|
||||||
echom 'svndiff: no more diff blocks below cursor'
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
|
|
||||||
"
|
|
||||||
" Wrapper function: Takes one argument, which is the action to perform:
|
|
||||||
" {next|prev|clear}
|
|
||||||
"
|
|
||||||
|
|
||||||
function Svndiff(...)
|
|
||||||
|
|
||||||
let cmd = exists("a:1") ? a:1 : ''
|
|
||||||
let fname = bufname("%")
|
|
||||||
if fname == ""
|
|
||||||
echom "Buffer has no file name, can not do a svn diff"
|
|
||||||
return
|
|
||||||
endif
|
|
||||||
|
|
||||||
if cmd == 'clear'
|
|
||||||
let s:changedtick[fname] = 0
|
|
||||||
if exists("s:is_active[fname]")
|
|
||||||
unlet s:is_active[fname]
|
|
||||||
endif
|
|
||||||
call s:Svndiff_clear()
|
|
||||||
end
|
|
||||||
|
|
||||||
if cmd == 'prev'
|
|
||||||
let s:is_active[fname] = 1
|
|
||||||
let ok = s:Svndiff_update()
|
|
||||||
if ok
|
|
||||||
call s:Svndiff_prev()
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
if cmd == 'next'
|
|
||||||
let s:is_active[fname] = 1
|
|
||||||
let ok = s:Svndiff_update()
|
|
||||||
if ok
|
|
||||||
call s:Svndiff_next()
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
endfunction
|
|
||||||
|
|
||||||
|
|
||||||
" Define sign characters and colors
|
|
||||||
|
|
||||||
sign define svndiff_add text=> texthl=diffAdd
|
|
||||||
sign define svndiff_delete text=< texthl=diffDelete
|
|
||||||
sign define svndiff_change text=! texthl=diffChange
|
|
||||||
|
|
||||||
|
|
||||||
" Define autocmds if autoupdate is enabled
|
|
||||||
|
|
||||||
if exists("g:svndiff_autoupdate")
|
|
||||||
autocmd CursorHold,CursorHoldI * call s:Svndiff_update()
|
|
||||||
autocmd InsertLeave * call s:Svndiff_update()
|
|
||||||
endif
|
|
||||||
|
|
||||||
" vi: ts=2 sw=2
|
|
||||||
|
|
@ -1,9 +1,9 @@
|
|||||||
" tComment.vim -- An easily extensible & universal comment plugin
|
" tComment.vim -- An easily extensible & universal comment plugin
|
||||||
" @Author: Thomas Link (micathom AT gmail com)
|
" @Author: Tom Link (micathom AT gmail com)
|
||||||
" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
" @License: GPL (see http://www.gnu.org/licenses/gpl.txt)
|
||||||
" @Created: 27-Dez-2004.
|
" @Created: 27-Dez-2004.
|
||||||
" @Last Change: 2008-05-15.
|
" @Last Change: 2009-08-07.
|
||||||
" @Revision: 1.9.664
|
" @Revision: 1.9.671
|
||||||
"
|
"
|
||||||
" GetLatestVimScripts: 1173 1 tComment.vim
|
" GetLatestVimScripts: 1173 1 tComment.vim
|
||||||
|
|
||||||
@ -129,6 +129,7 @@ call TCommentDefineType('c_inline', g:tcommentInlineC )
|
|||||||
call TCommentDefineType('c_block', g:tcommentBlockC )
|
call TCommentDefineType('c_block', g:tcommentBlockC )
|
||||||
call TCommentDefineType('cfg', '# %s' )
|
call TCommentDefineType('cfg', '# %s' )
|
||||||
call TCommentDefineType('conf', '# %s' )
|
call TCommentDefineType('conf', '# %s' )
|
||||||
|
call TCommentDefineType('crontab', '# %s' )
|
||||||
call TCommentDefineType('desktop', '# %s' )
|
call TCommentDefineType('desktop', '# %s' )
|
||||||
call TCommentDefineType('docbk', '<!-- %s -->' )
|
call TCommentDefineType('docbk', '<!-- %s -->' )
|
||||||
call TCommentDefineType('docbk_inline', g:tcommentInlineXML)
|
call TCommentDefineType('docbk_inline', g:tcommentInlineXML)
|
||||||
@ -158,7 +159,9 @@ call TCommentDefineType('java', '/* %s */' )
|
|||||||
call TCommentDefineType('java_inline', g:tcommentInlineC )
|
call TCommentDefineType('java_inline', g:tcommentInlineC )
|
||||||
call TCommentDefineType('java_block', g:tcommentBlockC )
|
call TCommentDefineType('java_block', g:tcommentBlockC )
|
||||||
call TCommentDefineType('java_doc_block', g:tcommentBlockC2 )
|
call TCommentDefineType('java_doc_block', g:tcommentBlockC2 )
|
||||||
|
call TCommentDefineType('jproperties', '# %s' )
|
||||||
call TCommentDefineType('lisp', '; %s' )
|
call TCommentDefineType('lisp', '; %s' )
|
||||||
|
call TCommentDefineType('lynx', '# %s' )
|
||||||
call TCommentDefineType('m4', 'dnl %s' )
|
call TCommentDefineType('m4', 'dnl %s' )
|
||||||
call TCommentDefineType('mail', '> %s' )
|
call TCommentDefineType('mail', '> %s' )
|
||||||
call TCommentDefineType('msidl', '// %s' )
|
call TCommentDefineType('msidl', '// %s' )
|
||||||
@ -376,3 +379,7 @@ new: >)
|
|||||||
1.9
|
1.9
|
||||||
- Fix left offset for inline comments (via operator binding)
|
- Fix left offset for inline comments (via operator binding)
|
||||||
|
|
||||||
|
1.10
|
||||||
|
- tcomment#Operator defines w:tcommentPos if invoked repeatedly
|
||||||
|
- s:GuessFileType: use len(getline()) instead of col()
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
" vimballPlugin : construct a file containing both paths and files
|
" vimballPlugin : construct a file containing both paths and files
|
||||||
" Author: Charles E. Campbell, Jr.
|
" Author: Charles E. Campbell, Jr.
|
||||||
" Copyright: (c) 2004-2007 by Charles E. Campbell, Jr.
|
" Copyright: (c) 2004-2009 by Charles E. Campbell, Jr.
|
||||||
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
|
||||||
" (see |copyright|) except use "Vimball" instead of "Vim".
|
" (see |copyright|) except use "Vimball" instead of "Vim".
|
||||||
" No warranty, express or implied.
|
" No warranty, express or implied.
|
||||||
@ -16,18 +16,18 @@
|
|||||||
if &cp || exists("g:loaded_vimballPlugin")
|
if &cp || exists("g:loaded_vimballPlugin")
|
||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
let g:loaded_vimballPlugin = "v26"
|
let g:loaded_vimballPlugin = "v30"
|
||||||
let s:keepcpo = &cpo
|
let s:keepcpo = &cpo
|
||||||
set cpo&vim
|
set cpo&vim
|
||||||
|
|
||||||
" ------------------------------------------------------------------------------
|
" ------------------------------------------------------------------------------
|
||||||
" Public Interface: {{{1
|
" Public Interface: {{{1
|
||||||
com! -ra -complete=file -na=+ -bang MkVimball call vimball#MkVimball(<line1>,<line2>,<bang>0,<f-args>)
|
com! -ra -complete=file -na=+ -bang MkVimball call vimball#MkVimball(<line1>,<line2>,<bang>0,<f-args>)
|
||||||
com! -na=? -complete=dir UseVimball call vimball#Vimball(1,<f-args>)
|
com! -na=? -complete=dir UseVimball call vimball#Vimball(1,<f-args>)
|
||||||
com! -na=0 VimballList call vimball#Vimball(0)
|
com! -na=0 VimballList call vimball#Vimball(0)
|
||||||
com! -na=* -complete=dir RmVimball call vimball#SaveSettings()|call vimball#RmVimball(<f-args>)|call vimball#RestoreSettings()
|
com! -na=* -complete=dir RmVimball call vimball#SaveSettings()|call vimball#RmVimball(<f-args>)|call vimball#RestoreSettings()
|
||||||
au BufEnter *.vba.gz,*.vba.bz2,*.vba.zip call vimball#Decompress(expand("<amatch>"))
|
au SourceCmd *.vba.gz,*.vba.bz2,*.vba.zip call vimball#Decompress(expand("<amatch>"))|call vimball#Vimball(1)
|
||||||
au BufEnter *.vba setlocal ff=unix noma bt=nofile fmr=[[[,]]] fdm=marker|call vimball#ShowMesg(0,"Source this file to extract it! (:so %)")
|
au BufEnter *.vba,*.vba.gz,*.vba.bz2,*.vba.zip setlocal bt=nofile fmr=[[[,]]] fdm=marker|if &ff != 'unix'| setlocal ff=unix|endif|call vimball#ShowMesg(0,"Source this file to extract it! (:so %)")
|
||||||
|
|
||||||
" =====================================================================
|
" =====================================================================
|
||||||
" Restoration And Modelines: {{{1
|
" Restoration And Modelines: {{{1
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
" Language : Netrw Remote-Directory Listing Syntax
|
" Language : Netrw Remote-Directory Listing Syntax
|
||||||
" Maintainer : Charles E. Campbell, Jr.
|
" Maintainer : Charles E. Campbell, Jr.
|
||||||
" Last change: Aug 12, 2008
|
" Last change: Jan 14, 2009
|
||||||
" Version : 14
|
" Version : 16
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
|
|
||||||
" Syntax Clearing: {{{1
|
" Syntax Clearing: {{{1
|
||||||
@ -16,51 +16,55 @@ endif
|
|||||||
syn cluster NetrwGroup contains=netrwHide,netrwSortBy,netrwSortSeq,netrwQuickHelp,netrwVersion,netrwCopyTgt
|
syn cluster NetrwGroup contains=netrwHide,netrwSortBy,netrwSortSeq,netrwQuickHelp,netrwVersion,netrwCopyTgt
|
||||||
syn cluster NetrwTreeGroup contains=netrwDir,netrwSymLink,netrwExe
|
syn cluster NetrwTreeGroup contains=netrwDir,netrwSymLink,netrwExe
|
||||||
|
|
||||||
syn match netrwSpecial "\%(\S\+ \)*\S\+[*|=]\ze\%(\s\{2,}\|$\)" contains=netrwClassify
|
syn match netrwPlain "\(\S\+ \)*\S\+" contains=@NoSpell
|
||||||
syn match netrwDir "\.\{1,2}/" contains=netrwClassify
|
syn match netrwSpecial "\%(\S\+ \)*\S\+[*|=]\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||||
syn match netrwDir "\%(\S\+ \)*\S\+/" contains=netrwClassify
|
syn match netrwDir "\.\{1,2}/" contains=netrwClassify,@NoSpell
|
||||||
syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" contains=netrwDateSep skipwhite nextgroup=netrwTime
|
syn match netrwDir "\%(\S\+ \)*\S\+/" contains=netrwClassify,@NoSpell
|
||||||
syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify
|
syn match netrwSizeDate "\<\d\+\s\d\{1,2}/\d\{1,2}/\d\{4}\s" skipwhite contains=netrwDateSep,@NoSpell nextgroup=netrwTime
|
||||||
syn match netrwExe "\%(\S\+ \)*\S\+\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify
|
syn match netrwSymLink "\%(\S\+ \)*\S\+@\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||||
syn match netrwTreeBar "^\%([-+|] \)*" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
|
syn match netrwExe "\%(\S\+ \)*\S\+\*\ze\%(\s\{2,}\|$\)" contains=netrwClassify,@NoSpell
|
||||||
syn match netrwTreeBarSpace " " contained
|
syn match netrwTreeBar "^\%([-+|] \)\+" contains=netrwTreeBarSpace nextgroup=@netrwTreeGroup
|
||||||
|
syn match netrwTreeBarSpace " " contained
|
||||||
|
|
||||||
syn match netrwClassify "[*=|@/]\ze\%(\s\{2,}\|$\)" contained
|
syn match netrwClassify "[*=|@/]\ze\%(\s\{2,}\|$\)" contained
|
||||||
syn match netrwDateSep "/" contained
|
syn match netrwDateSep "/" contained
|
||||||
syn match netrwTime "\d\{1,2}:\d\{2}:\d\{2}" contained contains=netrwTimeSep
|
syn match netrwTime "\d\{1,2}:\d\{2}:\d\{2}" contained contains=netrwTimeSep
|
||||||
syn match netrwTimeSep ":"
|
syn match netrwTimeSep ":"
|
||||||
|
|
||||||
syn match netrwComment '".*\%(\t\|$\)' contains=@NetrwGroup
|
syn match netrwComment '".*\%(\t\|$\)' contains=@NetrwGroup,@NoSpell
|
||||||
syn match netrwHide '^"\s*\(Hid\|Show\)ing:' skipwhite nextgroup=netrwHidePat
|
syn match netrwHide '^"\s*\(Hid\|Show\)ing:' skipwhite contains=@NoSpell nextgroup=netrwHidePat
|
||||||
syn match netrwSlash "/" contained
|
syn match netrwSlash "/" contained
|
||||||
syn match netrwHidePat "[^,]\+" contained skipwhite nextgroup=netrwHideSep
|
syn match netrwHidePat "[^,]\+" contained skipwhite contains=@NoSpell nextgroup=netrwHideSep
|
||||||
syn match netrwHideSep "," contained skipwhite nextgroup=netrwHidePat
|
syn match netrwHideSep "," contained skipwhite nextgroup=netrwHidePat
|
||||||
syn match netrwSortBy "Sorted by" contained transparent skipwhite nextgroup=netrwList
|
syn match netrwSortBy "Sorted by" contained transparent skipwhite nextgroup=netrwList
|
||||||
syn match netrwSortSeq "Sort sequence:" contained transparent skipwhite nextgroup=netrwList
|
syn match netrwSortSeq "Sort sequence:" contained transparent skipwhite nextgroup=netrwList
|
||||||
syn match netrwCopyTgt "Copy/Move Tgt:" contained transparent skipwhite nextgroup=netrwList
|
syn match netrwCopyTgt "Copy/Move Tgt:" contained transparent skipwhite nextgroup=netrwList
|
||||||
syn match netrwList ".*$" contained contains=netrwComma
|
syn match netrwList ".*$" contained contains=netrwComma,@NoSpell
|
||||||
syn match netrwComma "," contained
|
syn match netrwComma "," contained
|
||||||
syn region netrwQuickHelp matchgroup=Comment start="Quick Help:\s\+" end="$" contains=netrwHelpCmd keepend contained
|
syn region netrwQuickHelp matchgroup=Comment start="Quick Help:\s\+" end="$" contains=netrwHelpCmd,@NoSpell keepend contained
|
||||||
syn match netrwHelpCmd "\S\ze:" contained skipwhite nextgroup=netrwCmdSep
|
syn match netrwHelpCmd "\S\ze:" contained skipwhite contains=@NoSpell nextgroup=netrwCmdSep
|
||||||
syn match netrwCmdSep ":" contained nextgroup=netrwCmdNote
|
syn match netrwCmdSep ":" contained nextgroup=netrwCmdNote
|
||||||
syn match netrwCmdNote ".\{-}\ze " contained
|
syn match netrwCmdNote ".\{-}\ze " contained contains=@NoSpell
|
||||||
syn match netrwVersion "(netrw.*)" contained
|
syn match netrwVersion "(netrw.*)" contained contains=@NoSpell
|
||||||
|
|
||||||
" -----------------------------
|
" -----------------------------
|
||||||
" Special filetype highlighting {{{1
|
" Special filetype highlighting {{{1
|
||||||
" -----------------------------
|
" -----------------------------
|
||||||
if exists("g:netrw_special_syntax") && netrw_special_syntax
|
if exists("g:netrw_special_syntax") && netrw_special_syntax
|
||||||
syn match netrwBak "\(\S\+ \)*\S\+\.bak\>" contains=netrwTreeBar
|
syn match netrwBak "\(\S\+ \)*\S\+\.bak\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwCompress "\(\S\+ \)*\S\+\.\%(gz\|bz2\|Z\|zip\)\>" contains=netrwTreeBar
|
syn match netrwCompress "\(\S\+ \)*\S\+\.\%(gz\|bz2\|Z\|zip\)\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwData "\(\S\+ \)*\S\+\.dat\>" contains=netrwTreeBar
|
if has("unix")
|
||||||
syn match netrwHdr "\(\S\+ \)*\S\+\.h\>" contains=netrwTreeBar
|
syn match netrwCoreDump "\<core\%(\.\d\+\)\=\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwLib "\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>" contains=netrwTreeBar
|
endif
|
||||||
syn match netrwMakeFile "\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>" contains=netrwTreeBar
|
syn match netrwData "\(\S\+ \)*\S\+\.dat\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar
|
syn match netrwHdr "\(\S\+ \)*\S\+\.h\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwTags "\<tags\>" contains=netrwTreeBar
|
syn match netrwLib "\(\S\+ \)*\S*\.\%(a\|so\|lib\|dll\)\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar
|
syn match netrwMakeFile "\<[mM]akefile\>\|\(\S\+ \)*\S\+\.mak\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwTilde "\(\S\+ \)*\S\+\~\>" contains=netrwTreeBar
|
syn match netrwObj "\(\S\+ \)*\S*\.\%(o\|obj\)\>" contains=netrwTreeBar,@NoSpell
|
||||||
syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar
|
syn match netrwTags "\<tags\>" contains=netrwTreeBar,@NoSpell
|
||||||
|
syn match netrwTags "\<\(ANmenu\|ANtags\)\>" contains=netrwTreeBar,@NoSpell
|
||||||
|
syn match netrwTilde "\(\S\+ \)*\S\+\~\>" contains=netrwTreeBar,@NoSpell
|
||||||
|
syn match netrwTmp "\<tmp\(\S\+ \)*\S\+\>\|\(\S\+ \)*\S*tmp\>" contains=netrwTreeBar,@NoSpell
|
||||||
endif
|
endif
|
||||||
|
|
||||||
" ---------------------------------------------------------------------
|
" ---------------------------------------------------------------------
|
||||||
@ -89,6 +93,7 @@ if !exists("did_drchip_netrwlist_syntax")
|
|||||||
" special syntax highlighting (see :he g:netrw_special_syntax)
|
" special syntax highlighting (see :he g:netrw_special_syntax)
|
||||||
hi default link netrwBak NonText
|
hi default link netrwBak NonText
|
||||||
hi default link netrwCompress Folded
|
hi default link netrwCompress Folded
|
||||||
|
hi default link netrwCoreDump WarningMsg
|
||||||
hi default link netrwData DiffChange
|
hi default link netrwData DiffChange
|
||||||
hi default link netrwLib DiffChange
|
hi default link netrwLib DiffChange
|
||||||
hi default link netrwMakefile DiffChange
|
hi default link netrwMakefile DiffChange
|
||||||
|
Loading…
x
Reference in New Issue
Block a user