Package: vim-common
Version: 1:6.4-000+1
Severity: normal
Tags: patch
reportbug-vim-common-20051020-32416-OfnUGW
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (500, 'unstable'), (500, 'testing')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.12-1-686
Locale: LANG=it_IT.UTF-8, LC_CTYPE=it_IT.UTF-8 (charmap=UTF-8)
Versions of packages vim-common depends on:
ii vim 1:6.4-000+1 Vi IMproved - enhanced vi editor
vim-common recommends no packages.
-- no debconf information
--- netrw.vim.orig 2005-10-20 14:26:11.0 +0200
+++ /usr/share/vim/vim64/plugin/netrw.vim 2005-10-20 14:24:16.0
+0200
@@ -92,8 +92,8 @@
if has(win32)
au BufReadCmd file://* exe doau BufReadPre
.expand(afile)|exe 'e '.substitute(expand(afile),file:/*,,)|exe
doau BufReadPost .expand(afile)
else
- au BufReadCmd file:///*exe doau BufReadPre
.expand(afile)|exe 'e /'.substitute(expand(afile),file:/*,,)|exe
doau BufReadPost .expand(afile)
- au BufReadCmd file://localhost/* exe doau BufReadPre
.expand(afile)|exe 'e /'.substitute(expand(afile),file:/*,,)|exe
doau BufReadPost .expand(afile)
+ au BufReadCmd file://* exe doau BufReadPre
.expand(afile)|exe 'e '.s:ExpandE(afile)|exe doau BufReadPost
.expand(afile)
+ au BufReadCmd file://localhost/* exe doau BufReadPre
.expand(afile)|exe 'e '.s:ExpandE(afile)|exe doau BufReadPost
.expand(afile)
endif
au BufReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,rsync://*,sftp://*
exe doau BufReadPre .expand(afile)|exe Nread 0r .expand(afile)|exe
doau BufReadPost .expand(afile)
au FileReadCmd ftp://*,rcp://*,scp://*,http://*,dav://*,rsync://*,sftp://*
exe doau BufReadPre .expand(afile)|exe Nread.expand(afile)|exe
doau BufReadPost .expand(afile)
@@ -108,6 +108,53 @@
com! -nargs=* NetUserPass call NetUserPass(f-args)
+ ExpandE: expand an argument for :e {{{1
+fun! s:ExpandE(s)
+ let r = a:s
+ let r = expand(r)
+ let r = substitute(r, file://, , )
+ let r = s:UnescapeURI(r)
+ let r = s:EscapeForE(r)
+ return r
+endfun
+
+ UnescapeURI: expand URI escape sequences as per RFC2396 {{{2
+fun! s:UnescapeURI(uri)
+ let i = 0
+ let r =
+ while i strlen(a:uri)
+if a:uri[i] == %
+ let hexs = a:uri[i+1] . a:uri[i+2]
+ if hexs !~ ^\\x\\x$
+echoe Invalid escape sequence \ . a:uri[i] . hexs . \
+return
+ endif
+ let r = r . nr2char(0x . hexs)
+ let i = i + 3
+else
+ let r = r . a:uri[i]
+ let i = i + 1
+endif
+ endwhile
+ return r
+endfun
+
+ EscapeForE: make a string suitable as :e argument {{{2
+fun! s:EscapeForE(s)
+ let i = 0
+ let r =
+ while i strlen(a:s)
+if a:s[i] !~ \\w
+ let r = r . \\ . a:s[i]
+else
+ let r = r . a:s[i]
+endif
+let i = i + 1
+ endwhile
+ return r
+endfun
+
+
NetSavePosn: saves position of cursor on screen {{{1
fun! s:NetSavePosn()
call Dfunc(NetSavePosn())