+ let rtItems = { ftdetect: {}, ftplugin: {}, syntax: {} };
+
+ // require bang if any of the paths exist
+ for (let [type, item] in iter(rtItems)) {
+ let file = io.File(rtDir).child(type, config.name + ".vim");
+ dactyl.assert(!file.exists() || args.bang, _("io.exists", file.path.quote()));
+ item.file = file;
+ }
+
+ rtItems.ftdetect.template = // {{{
+literal(/*" Vim filetype detection file
+<header>
+
+au BufNewFile,BufRead *<name>rc*,*.<fileext> set filetype=<name>
+*/);//}}}
+ rtItems.ftplugin.template = // {{{
+literal(/*" Vim filetype plugin file
+<header>
+
+if exists("b:did_ftplugin")
+ finish
+endif
+let b:did_ftplugin = 1
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+let b:undo_ftplugin = "setl com< cms< fo< ofu< | unlet! b:browsefilter"
+
+setlocal comments=:\"
+setlocal commentstring=\"%s
+setlocal formatoptions-=t formatoptions+=croql
+setlocal omnifunc=syntaxcomplete#Complete
+
+if has("gui_win32") && !exists("b:browsefilter")
+ let b:browsefilter = "<appname> Config Files (*.<fileext>)\t*.<fileext>\n" .
+ \ "All Files (*.*)\t*.*\n"
+endif
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
+*/);//}}}
+ rtItems.syntax.template = // {{{
+literal(/*" Vim syntax file
+<header>