summaryrefslogtreecommitdiffstats
path: root/vim/xz.patch
diff options
context:
space:
mode:
Diffstat (limited to 'vim/xz.patch')
-rw-r--r--vim/xz.patch193
1 files changed, 193 insertions, 0 deletions
diff --git a/vim/xz.patch b/vim/xz.patch
new file mode 100644
index 0000000..0ee9b2a
--- /dev/null
+++ b/vim/xz.patch
@@ -0,0 +1,193 @@
+diff -uNr vim72/autoload/getscript.vim vim72-xz/autoload/getscript.vim
+--- vim72/autoload/getscript.vim 2010-05-16 22:33:59.000000000 +0200
++++ vim72-xz/autoload/getscript.vim 2010-05-16 22:41:34.930283754 +0200
+@@ -557,6 +557,11 @@
+ exe "silent !gunzip ".shellescape(sname)
+ let sname= substitute(sname,'\.gz$','','')
+ " call Decho("decompress: new sname<".sname."> after gunzip")
++ elseif sname =~ '\.xz$'
++" call Decho("decompress: attempt to unxz ".sname)
++ exe "silent !unxz ".shellescape(sname)
++ let sname= substitute(sname,'\.xz$','','')
++" call Decho("decompress: new sname<".sname."> after unxz")
+ else
+ " call Decho("no decompression needed")
+ endif
+diff -uNr vim72/autoload/netrw.vim vim72-xz/autoload/netrw.vim
+--- vim72/autoload/netrw.vim 2010-05-16 22:33:59.000000000 +0200
++++ vim72-xz/autoload/netrw.vim 2010-05-16 22:40:28.007276216 +0200
+@@ -163,7 +163,7 @@
+ endif
+ " Default values - d-g ---------- {{{3
+ call s:NetrwInit("g:netrw_dirhist_cnt" , 0)
+-call s:NetrwInit("g:netrw_decompress" , '{ ".gz" : "gunzip", ".bz2" : "bunzip2", ".zip" : "unzip", ".tar" : "tar -xf"}')
++call s:NetrwInit("g:netrw_decompress" , '{ ".gz" : "gunzip", ".bz2" : "bunzip2", ".xz" : "unxz", ".zip" : "unzip", ".tar" : "tar -xf" }')
+ call s:NetrwInit("g:netrw_dirhistmax" , 10)
+ call s:NetrwInit("g:netrw_fastbrowse" , 1)
+ call s:NetrwInit("g:netrw_ftp_browse_reject", '^total\s\+\d\+$\|^Trying\s\+\d\+.*$\|^KERBEROS_V\d rejected\|^Security extensions not\|No such file\|: connect to address [0-9a-fA-F:]*: No route to host$')
+@@ -920,7 +920,7 @@
+ unlet b:netrw_method
+ unlet b:netrw_fname
+ endif
+- if s:FileReadable(tmpfile) && tmpfile !~ '.tar.bz2$' && tmpfile !~ '.tar.gz$' && tmpfile !~ '.zip' && tmpfile !~ '.tar' && readcmd != 't'
++ if s:FileReadable(tmpfile) && tmpfile !~ '.tar.xz$' && tmpfile !~ '.tar.bz2$' && tmpfile !~ '.tar.gz$' && tmpfile !~ '.zip' && tmpfile !~ '.tar' && readcmd != 't'
+ " call Decho("cleanup by deleting tmpfile<".tmpfile.">")
+ call s:NetrwDelete(tmpfile)
+ endif
+@@ -1387,6 +1387,9 @@
+ elseif rfile =~ '\.tar\.bz2'
+ " call Decho("handling remote bz2-compressed tar file")
+ call tar#Browse(tfile)
++ elseif rfile =~ '\.tar\.xz'
++" call Decho("handling remote xz-compressed tar file")
++ call tar#Browse(tfile)
+ else
+ " call Decho("edit temporary file")
+ e!
+@@ -2312,7 +2315,7 @@
+ exe "sil! keepalt file ".fnameescape(s:method."://".s:user.s:machine."/".s:path)
+ exe "sil keepalt doau BufReadPre ".fnameescape(s:fname)
+ silent call netrw#NetRead(2,s:method."://".s:user.s:machine."/".s:path)
+- if s:path !~ '.tar.bz2$' && s:path !~ '.tar.gz'
++ if s:path !~ '.tar.xz' && s:path !~ '.tar.bz2$' && s:path !~ '.tar.gz'
+ " netrw.vim and tar.vim have already handled decompression of the tarball; avoiding gzip.vim error
+ exe "sil keepalt doau BufReadPost ".fnameescape(s:fname)
+ endif
+@@ -4390,7 +4393,7 @@
+ " using g:netrw_compress_suffix to know which to
+ " do. By default:
+ " g:netrw_compress = "gzip"
+-" g:netrw_decompress = { ".gz" : "gunzip" , ".bz2" : "bunzip2" , ".zip" : "unzip" , ".tar" : "tar -xf"}
++" g:netrw_decompress = { ".gz" : "gunzip" , ".bz2" : "bunzip2" , ".xz" : "unxz", ".zip" : "unzip" , ".tar" : "tar -xf"}
+ fun! s:NetrwMarkFileCompress(islocal)
+ " call Dfunc("s:NetrwMarkFileCompress(islocal=".a:islocal.")")
+ let svpos = netrw#NetrwSavePosn()
+@@ -7868,7 +7871,7 @@
+ if a:fname != ""
+ if a:fname =~ '\.[^./]\+$'
+ " call Decho("using fname<".a:fname.">'s suffix")
+- if a:fname =~ '.tar.gz' || a:fname =~ '.tar.bz2'
++ if a:fname =~ '.tar.gz' || a:fname =~ '.tar.bz2' || a:fname =~ '.tar.xz'
+ let suffix = ".tar".substitute(a:fname,'^.*\(\.[^./]\+\)$','\1','e')
+ else
+ let suffix = substitute(a:fname,'^.*\(\.[^./]\+\)$','\1','e')
+diff -uNr vim72/autoload/tar.vim vim72-xz/autoload/tar.vim
+--- vim72/autoload/tar.vim 2010-05-16 22:33:59.000000000 +0200
++++ vim72-xz/autoload/tar.vim 2010-05-16 22:43:47.552260967 +0200
+@@ -164,6 +164,9 @@
+ elseif tarfile =~# '\.lzma$'
+ " call Decho("3: exe silent r! lzma -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
+ exe "silent r! lzma -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
++ elseif tarfile =~# '\.xz$'
++" call Decho("3: exe silent r! xz -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - ")
++ exe "silent r! xz -d -c -- ".shellescape(tarfile,1)." | ".g:tar_cmd." -".g:tar_browseoptions." - "
+ else
+ if tarfile =~ '^\s*-'
+ " A file name starting with a dash is taken as an option. Prepend ./ to avoid that.
+@@ -265,10 +268,13 @@
+ elseif fname =~ '\.lzma$' && executable("lzcat")
+ let decmp= "|lzcat"
+ let doro = 1
++ elseif fname =~ '\.xz$' && executable("xzcat")
++ let decmp= "|xzcat"
++ let doro = 1
+ else
+ let decmp=""
+ let doro = 0
+- if fname =~ '\.bz2$\|\.gz$\|\.lzma$\|\.zip$\|\.Z$'
++ if fname =~ '\.bz2$\|\.gz$\|\.lzma$\|\.xz$\|\.zip$\|\.Z$'
+ setlocal bin
+ endif
+ endif
+@@ -290,6 +296,9 @@
+ elseif tarfile =~# '\.lzma$'
+ " call Decho("7: exe silent r! lzma -d -c ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp)
+ exe "silent r! lzma -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
++ elseif tarfile =~# '\.xz$'
++" call Decho("7: exe silent r! xz -d -c ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp)
++ exe "silent r! xz -d -c -- ".shellescape(tarfile,1)."| ".g:tar_cmd." -".g:tar_readoptions." - ".tar_secure.shellescape(fname,1).decmp
+ else
+ if tarfile =~ '^\s*-'
+ " A file name starting with a dash is taken as an option. Prepend ./ to avoid that.
+@@ -393,6 +402,11 @@
+ let tarfile = substitute(tarfile,'\.lzma','','e')
+ let compress= "lzma -- ".shellescape(tarfile,0)
+ " call Decho("compress<".compress.">")
++ elseif tarfile =~# '\.xz'
++ call system("xz -d -- ".shellescape(tarfile,0))
++ let tarfile = substitute(tarfile,'\.xz','','e')
++ let compress= "xz -- ".shellescape(tarfile,0)
++" call Decho("compress<".compress.">")
+ elseif tarfile =~# '\.tgz'
+ call system("gzip -d -- ".shellescape(tarfile,0))
+ let tarfile = substitute(tarfile,'\.tgz','.tar','e')
+diff -uNr vim72/autoload/vimball.vim vim72-xz/autoload/vimball.vim
+--- vim72/autoload/vimball.vim 2010-05-16 22:33:59.000000000 +0200
++++ vim72-xz/autoload/vimball.vim 2010-05-16 22:45:32.614510143 +0200
+@@ -505,6 +505,26 @@
+ exe "e ".escape(fname,' \')
+ if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
+
++ elseif expand("%") =~ '.*\.xz' && executable("unxz")
++ " handle *.xz with unxz
++ silent exe "!unxz ".shellescape(a:fname)
++ if v:shell_error != 0
++ call vimball#ShowMesg(s:WARNING,"(vimball#Decompress) unxz may have failed with <".a:fname.">")
++ endif
++ let fname= substitute(a:fname,'\.xz$','','')
++ exe "e ".escape(fname,' \')
++ if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
++
++ elseif expand("%") =~ '.*\.xz' && executable("xz")
++ " handle *.xz with xz -d
++ silent exe "!xz -d ".shellescape(a:fname)
++ if v:shell_error != 0
++ call vimball#ShowMesg(s:WARNING,'(vimball#Decompress) "xz -d" may have failed with <'.a:fname.">")
++ endif
++ let fname= substitute(a:fname,'\.xz$','','')
++ exe "e ".escape(fname,' \')
++ if a:0 == 0| call vimball#ShowMesg(s:USAGE,"Source this file to extract it! (:so %)") | endif
++
+ elseif expand("%") =~ '.*\.zip' && executable("unzip")
+ " handle *.zip with unzip
+ silent exe "!unzip ".shellescape(a:fname)
+diff -uNr vim72/filetype.vim vim72-xz/filetype.vim
+--- vim72/filetype.vim 2010-05-16 22:34:09.000000000 +0200
++++ vim72-xz/filetype.vim 2010-05-16 22:47:29.343285870 +0200
+@@ -37,7 +37,7 @@
+ " Pattern used to match file names which should not be inspected.
+ " Currently finds compressed files.
+ if !exists("g:ft_ignore_pat")
+- let g:ft_ignore_pat = '\.\(Z\|gz\|bz2\|zip\|tgz\)$'
++ let g:ft_ignore_pat = '\.\(Z\|gz\|bz2\|xz\|zip\|tgz\)$'
+ endif
+
+ " Function used for patterns that end in a star: don't set the filetype if the
+diff -uNr vim72/plugin/tarPlugin.vim vim72-xz/plugin/tarPlugin.vim
+--- vim72/plugin/tarPlugin.vim 2010-05-16 22:33:59.000000000 +0200
++++ vim72-xz/plugin/tarPlugin.vim 2010-05-16 22:46:39.220270785 +0200
+@@ -39,8 +39,9 @@
+ au BufReadCmd *.lrp call tar#Browse(expand("<amatch>"))
+ au BufReadCmd *.tar.bz2 call tar#Browse(expand("<amatch>"))
+ au BufReadCmd *.tar.Z call tar#Browse(expand("<amatch>"))
++ au BufReadCmd *.tar.lzma call tar#Browse(expand("<amatch>"))
++ au BufReadCmd *.tar.xz call tar#Browse(expand("<amatch>"))
+ au BufReadCmd *.tgz call tar#Browse(expand("<amatch>"))
+- au BufReadCmd *.tar.lzma call tar#Browse(expand("<amatch>"))
+ augroup END
+ com! -nargs=? -complete=file Vimuntar call tar#Vimuntar(<q-args>)
+
+diff -uNr vim72/plugin/vimballPlugin.vim vim72-xz/plugin/vimballPlugin.vim
+--- vim72/plugin/vimballPlugin.vim 2010-05-16 22:33:59.000000000 +0200
++++ vim72-xz/plugin/vimballPlugin.vim 2010-05-16 22:47:07.425260844 +0200
+@@ -26,8 +26,8 @@
+ com! -na=? -complete=dir UseVimball call vimball#Vimball(1,<f-args>)
+ com! -na=0 VimballList call vimball#Vimball(0)
+ com! -na=* -complete=dir RmVimball call vimball#SaveSettings()|call vimball#RmVimball(<f-args>)|call vimball#RestoreSettings()
+-au SourceCmd *.vba.gz,*.vba.bz2,*.vba.zip call vimball#Decompress(expand("<amatch>"))|call vimball#Vimball(1)
+-au BufEnter *.vba,*.vba.gz,*.vba.bz2,*.vba.zip setlocal bt=nofile fmr=[[[,]]] fdm=marker|if &ff != 'unix'| setlocal ma ff=unix noma |endif|call vimball#ShowMesg(0,"Source this file to extract it! (:so %)")
++au SourceCmd *.vba.gz,*.vba.bz2,*.vba.xz,*.vba.zip call vimball#Decompress(expand("<amatch>"))|call vimball#Vimball(1)
++au BufEnter *.vba,*.vba.gz,*.vba.bz2,*.vba.xz,*.vba.zip setlocal bt=nofile fmr=[[[,]]] fdm=marker|if &ff != 'unix'| setlocal ma ff=unix noma |endif|call vimball#ShowMesg(0,"Source this file to extract it! (:so %)")
+
+ " =====================================================================
+ " Restoration And Modelines: {{{1