From a98a6996c291b3e300d27b791eded9eed333d677 Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Fri, 11 Jul 2014 04:05:51 +0000 Subject: re-integrate runtime/ vim-patch:0 #938 Vim runtime files based on 7.4.384 / hg changeset 7090d7f160f7 Excluding: Amiga icons (*.info, icons/) doc/hangulin.txt tutor/ spell/ lang/ (only used for menu translations) macros/maze/, macros/hanoi/, macros/life/, macros/urm/ These were used to test vi compatibility. termcap "Demonstration of a termcap file (for the Amiga and Archimedes)" Helped-by: Rich Wareham Helped-by: John Helped-by: Yann Helped-by: Christophe Badoit Helped-by: drasill Helped-by: Tae Sandoval Murgan Helped-by: Lowe Thiderman --- runtime/ftplugin/xml.vim | 64 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 runtime/ftplugin/xml.vim (limited to 'runtime/ftplugin/xml.vim') diff --git a/runtime/ftplugin/xml.vim b/runtime/ftplugin/xml.vim new file mode 100644 index 0000000000..236e870537 --- /dev/null +++ b/runtime/ftplugin/xml.vim @@ -0,0 +1,64 @@ +" Vim filetype plugin file +" Language: xml +" Maintainer: Dan Sharp +" Last Changed: 20 Jan 2009 +" URL: http://dwsharp.users.sourceforge.net/vim/ftplugin + +if exists("b:did_ftplugin") | finish | endif +let b:did_ftplugin = 1 + +" Make sure the continuation lines below do not cause problems in +" compatibility mode. +let s:save_cpo = &cpo +set cpo-=C + +setlocal commentstring= +setlocal comments=s: + +setlocal formatoptions-=t +if !exists("g:ft_xml_autocomment") || (g:ft_xml_autocomment == 1) + setlocal formatoptions+=croql +endif + + +" XML: thanks to Johannes Zellner and Akbar Ibrahim +" - case sensitive +" - don't match empty tags +" - match style comments (but not --, --) +" - match inlined dtd's. This is not perfect, as it +" gets confused for example by +" "> +if exists("loaded_matchit") + let b:match_ignorecase=0 + let b:match_words = + \ '<:>,' . + \ '<\@<=!\[CDATA\[:]]>,'. + \ '<\@<=!--:-->,'. + \ '<\@<=?\k\+:?>,'. + \ '<\@<=\([^ \t>/]\+\)\%(\s\+[^>]*\%([^/]>\|$\)\|>\|$\):<\@<=/\1>,'. + \ '<\@<=\%([^ \t>/]\+\)\%(\s\+[^/>]*\|$\):/>' +endif + +" +" For Omni completion, by Mikolaj Machowski. +if exists('&ofu') + setlocal ofu=xmlcomplete#CompleteTags +endif +command! -nargs=+ XMLns call xmlcomplete#CreateConnection() +command! -nargs=? XMLent call xmlcomplete#CreateEntConnection() + + +" Change the :browse e filter to primarily show xml-related files. +if has("gui_win32") + let b:browsefilter="XML Files (*.xml)\t*.xml\n" . + \ "DTD Files (*.dtd)\t*.dtd\n" . + \ "All Files (*.*)\t*.*\n" +endif + +" Undo the stuff we changed. +let b:undo_ftplugin = "setlocal commentstring< comments< formatoptions<" . + \ " | unlet! b:match_ignorecase b:match_words b:browsefilter" + +" Restore the saved compatibility options. +let &cpo = s:save_cpo +unlet s:save_cpo -- cgit