Patch 8.0.0894
Problem:    There is no test for runtime filetype detection.
Solution:   Test a list of filetypes from patterns.
Files:      src/testdir/test_filetype.vim, runtime/filetype.vim


*** ../vim-8.0.0893/src/testdir/test_filetype.vim       2017-06-04 
18:59:10.791459095 +0200
--- src/testdir/test_filetype.vim       2017-08-09 22:00:42.201004674 +0200
***************
*** 41,43 ****
--- 41,518 ----
    call delete('Xfile')
    filetype off
  endfunc
+ 
+ " Filetypes detected just from matching the file name.
+ let s:filename_checks = {
+     \ 'a2ps': ['/etc/a2ps.cfg', '/etc/a2ps/file.cfg', 'a2psrc', '.a2psrc'],
+     \ 'a65': ['file.a65'],
+     \ 'abap': ['file.abap'],
+     \ 'abc': ['file.abc'],
+     \ 'abel': ['file.abl'],
+     \ 'acedb': ['file.wrm'],
+     \ 'ada': ['file.adb', 'file.ads', 'file.ada', 'file.gpr'],
+     \ 'ahdl': ['file.tdf'],
+     \ 'alsaconf': ['.asoundrc', '/usr/share/alsa/alsa.conf', 
'/etc/asound.conf'],
+     \ 'aml': ['file.aml'],
+     \ 'ampl': ['file.run'],
+     \ 'ant': ['build.xml'],
+     \ 'apache': ['.htaccess', '/etc/httpd/file.conf'],
+     \ 'applescript': ['file.scpt'],
+     \ 'aptconf': ['apt.conf', '/.aptitude/config'],
+     \ 'arch': ['.arch-inventory'],
+     \ 'arduino': ['file.ino', 'file.pde'],
+     \ 'art': ['file.art'],
+     \ 'asciidoc': ['file.asciidoc', 'file.adoc'],
+     \ 'asn': ['file.asn', 'file.asn1'],
+     \ 'atlas': ['file.atl', 'file.as'],
+     \ 'autohotkey': ['file.ahk'],
+     \ 'autoit': ['file.au3'],
+     \ 'automake': ['GNUmakefile.am'],
+     \ 'ave': ['file.ave'],
+     \ 'awk': ['file.awk'],
+     \ 'b': ['file.mch', 'file.ref', 'file.imp'],
+     \ 'bc': ['file.bc'],
+     \ 'bdf': ['file.bdf'],
+     \ 'bib': ['file.bib'],
+     \ 'bindzone': ['named.root'],
+     \ 'blank': ['file.bl'],
+     \ 'bst': ['file.bst'],
+     \ 'bzr': ['bzr_log.any'],
+     \ 'c': ['*enlightenment/file.cfg', 'file.qc', 'file.c'],
+     \ 'cabal': ['file.cabal'],
+     \ 'calendar': ['calendar'],
+     \ 'catalog': ['catalog'],
+     \ 'cdl': ['file.cdl'],
+     \ 'cdrdaoconf': ['/etc/cdrdao.conf', '/etc/defaults/cdrdao', 
'/etc/default/cdrdao', '.cdrdao'],
+     \ 'cdrtoc': ['file.toc'],
+     \ 'cf': ['file.cfm', 'file.cfi', 'file.cfc'],
+     \ 'cfengine': ['cfengine.conf'],
+     \ 'cfg': ['file.cfg', 'file.hgrc', 'filehgrc'],
+     \ 'ch': ['file.chf'],
+     \ 'chaiscript': ['file.chai'],
+     \ 'chaskell': ['file.chs'],
+     \ 'chill': ['file..ch'],
+     \ 'chordpro': ['file.chopro', 'file.crd', 'file.cho', 'file.crdpro', 
'file.chordpro'],
+     \ 'cl': ['file.eni'],
+     \ 'clean': ['file.dcl', 'file.icl'],
+     \ 'clojure': ['file.clj', 'file.cljs', 'file.cljx', 'file.cljc'],
+     \ 'cmake': ['CMakeLists.txt', 'file.cmake', 'file.cmake.in'],
+     \ 'cmusrc': ['any/.cmus/autosave', 'any/.cmus/rc', 
'any/.cmus/command-history', 'any/.cmus/file.theme', 'any/cmus/rc', 
'any/cmus/file.theme'],
+     \ 'cobol': ['file.cbl', 'file.cob', 'file.lib'],
+     \ 'coco': ['file.atg'],
+     \ 'conaryrecipe': ['file.recipe'],
+     \ 'conf': ['auto.master'],
+     \ 'config': ['configure.in', 'configure.ac'],
+     \ 'context': ['tex/context/any/file.tex', 'file.mkii', 'file.mkiv', 
'file.mkvi'],
+     \ 'cpp': ['file.cxx', 'file.c++', 'file.hh', 'file.hxx', 'file.hpp', 
'file.ipp', 'file.moc', 'file.tcc', 'file.inl', 'file.tlh'],
+     \ 'crm': ['file.crm'],
+     \ 'cs': ['file.cs'],
+     \ 'csc': ['file.csc'],
+     \ 'csdl': ['file.csdl'],
+     \ 'csp': ['file.csp', 'file.fdr'],
+     \ 'css': ['file.css'],
+     \ 'cterm': ['file.con'],
+     \ 'cucumber': ['file.feature'],
+     \ 'cuda': ['file.cu'],
+     \ 'cupl': ['file.pld'],
+     \ 'cuplsim': ['file.si'],
+     \ 'cvs': ['cvs123'],
+     \ 'cvsrc': ['.cvsrc'],
+     \ 'cynpp': ['file.cyn'],
+     \ 'datascript': ['file.ds'],
+     \ 'dcd': ['file.dcd'],
+     \ 'debcontrol': ['/debian/control'],
+     \ 'debsources': ['/etc/apt/sources.list', 
'/etc/apt/sources.list.d/file.list'],
+     \ 'def': ['file.def'],
+     \ 'denyhosts': ['denyhosts.conf'],
+     \ 'desc': ['file.desc'],
+     \ 'desktop': ['file.desktop', '.directory'],
+     \ 'dictconf': ['dict.conf', '.dictrc'],
+     \ 'dictdconf': ['dictd.conf'],
+     \ 'diff': ['file.diff', 'file.rej'],
+     \ 'dircolors': ['.dir_colors', '.dircolors', '/etc/DIR_COLORS'],
+     \ 'dnsmasq': ['/etc/dnsmasq.conf'],
+     \ 'dockerfile': ['Dockerfile', 'file.Dockerfile'],
+     \ 'dosbatch': ['file.bat', 'file.sys'],
+     \ 'dosini': ['.editorconfig', '/etc/yum.conf', 'file.ini'],
+     \ 'dot': ['file.dot'],
+     \ 'dracula': ['file.drac', 'file.drc', '*lvs', '*lpe'],
+     \ 'dsl': ['file.dsl'],
+     \ 'dtd': ['file.dtd'],
+     \ 'dts': ['file.dts', 'file.dtsi'],
+     \ 'dylan': ['file.dylan'],
+     \ 'dylanintr': ['file.intr'],
+     \ 'dylanlid': ['file.lid'],
+     \ 'ecd': ['file.ecd'],
+     \ 'edif': ['file.edf', 'file.edif', 'file.edo'],
+     \ 'elinks': ['/etc/elinks.conf', '/.elinks/elinks.conf'],
+     \ 'elmfilt': ['filter-rules'],
+     \ 'erlang': ['file.erl', 'file.hrl', 'file.yaws'],
+     \ 'eruby': ['file.erb', 'file.rhtml'],
+     \ 'esmtprc': ['*esmtprc'],
+     \ 'esqlc': ['file.ec', 'file.EC'],
+     \ 'esterel': ['file.strl'],
+     \ 'eterm': ['*Eterm/file.cfg'],
+     \ 'exim': ['exim.conf'],
+     \ 'expect': ['file.exp'],
+     \ 'exports': ['exports'],
+     \ 'factor': ['file.factor'],
+     \ 'falcon': ['file.fal'],
+     \ 'fan': ['file.fan', 'file.fwt'],
+     \ 'fetchmail': ['.fetchmailrc'],
+     \ 'fgl': ['file.4gl', 'file.4gh', 'file.m4gl'],
+     \ 'focexec': ['file.fex', 'file.focexec'],
+     \ 'forth': ['file.fs', 'file.ft'],
+     \ 'fortran': ['file.f', 'file.for', 'file.fortran', 'file.fpp', 
'file.ftn', 'file.f77', 'file.f90', 'file.f95', 'file.f03', 'file.f08'],
+     \ 'framescript': ['file.fsl'],
+     \ 'freebasic': ['file.fb', 'file.bi'],
+     \ 'fstab': ['fstab', 'mtab'],
+     \ 'gdb': ['.gdbinit'],
+     \ 'gdmo': ['file.mo', 'file.gdmo'],
+     \ 'gedcom': ['file.ged', 'lltxxxxx.txt'],
+     \ 'gitcommit': ['COMMIT_EDITMSG', 'MERGE_MSG', 'TAG_EDITMSG'],
+     \ 'gitconfig': ['file.git/config', '.gitconfig', '.gitmodules', 
'file.git/modules//config', '/.config/git/config'],
+     \ 'gitolite': ['gitolite.conf'],
+     \ 'gitrebase': ['git-rebase-todo'],
+     \ 'gitsendemail': ['.gitsendemail.msg.??????'],
+     \ 'gkrellmrc': ['gkrellmrc', 'gkrellmrc_?'],
+     \ 'gnash': ['gnashrc', '.gnashrc', 'gnashpluginrc', '.gnashpluginrc'],
+     \ 'gnuplot': ['file.gpi'],
+     \ 'go': ['file.go'],
+     \ 'gp': ['file.gp', '.gprc'],
+     \ 'gpg': ['/.gnupg/options', '/.gnupg/gpg.conf', 
'/usr/*/gnupg/options.skel'],
+     \ 'grads': ['file.gs'],
+     \ 'gretl': ['file.gretl'],
+     \ 'groovy': ['file.gradle', 'file.groovy'],
+     \ 'group': ['any/etc/group', 'any/etc/group-', 'any/etc/group.edit', 
'any/etc/gshadow', 'any/etc/gshadow-', 'any/etc/gshadow.edit', 
'any/var/backups/group.bak', 'any/var/backups/gshadow.bak'],
+     \ 'grub': ['/boot/grub/menu.lst', '/boot/grub/grub.conf', 
'/etc/grub.conf'],
+     \ 'gsp': ['file.gsp'],
+     \ 'gtkrc': ['.gtkrc', 'gtkrc'],
+     \ 'haml': ['file.haml'],
+     \ 'hamster': ['file.hsc', 'file.hsm'],
+     \ 'haskell': ['file.hs', 'file.hs-boot'],
+     \ 'haste': ['file.ht'],
+     \ 'hastepreproc': ['file.htpp'],
+     \ 'hb': ['file.hb'],
+     \ 'hercules': ['file.vc', 'file.ev', 'file.sum', 'file.errsum'],
+     \ 'hex': ['file.hex', 'file.h32'],
+     \ 'hgcommit': ['hg-editor-file.txt'],
+     \ 'hog': ['file.hog', 'snort.conf', 'vision.conf'],
+     \ 'hostconf': ['/etc/host.conf'],
+     \ 'hostsaccess': ['/etc/hosts.allow', '/etc/hosts.deny'],
+     \ 'htmlcheetah': ['file.tmpl'],
+     \ 'htmlm4': ['file.html.m4'],
+     \ 'httest': ['file.htt', 'file.htb'],
+     \ 'ibasic': ['file.iba', 'file.ibi'],
+     \ 'icemenu': ['/.icewm/menu'],
+     \ 'icon': ['file.icn'],
+     \ 'indent': ['.indent.pro', 'indentrc'],
+     \ 'inform': ['file.inf', 'file.INF'],
+     \ 'initng': ['/etc/initng/*/file.i', 'file.ii'],
+     \ 'inittab': ['inittab'],
+     \ 'ipfilter': ['ipf.conf', 'ipf6.conf', 'ipf.rules'],
+     \ 'iss': ['file.iss'],
+     \ 'ist': ['file.ist', 'file.mst'],
+     \ 'j': ['file.ijs'],
+     \ 'jal': ['file.jal', 'file.JAL'],
+     \ 'jam': ['file.jpl', 'file.jpr'],
+     \ 'java': ['file.java', 'file.jav'],
+     \ 'javacc': ['file.jj', 'file.jjt'],
+     \ 'javascript': ['file.js', 'file.javascript', 'file.es', 'file.jsx', 
'file.mjs'],
+     \ 'jess': ['file.clp'],
+     \ 'jgraph': ['file.jgr'],
+     \ 'jovial': ['file.jov', 'file.j73', 'file.jovial'],
+     \ 'jproperties': ['file.properties', 'file.properties_??', 
'file.properties_??_??'],
+     \ 'json': ['file.json', 'file.jsonp', 'file.webmanifest'],
+     \ 'jsp': ['file.jsp'],
+     \ 'kconfig': ['Kconfig', 'Kconfig.debug'],
+     \ 'kivy': ['file.kv'],
+     \ 'kix': ['file.kix'],
+     \ 'kscript': ['file.ks'],
+     \ 'kwt': ['file.k'],
+     \ 'lace': ['file.ace', 'file.ACE'],
+     \ 'latte': ['file.latte', 'file.lte'],
+     \ 'ld': ['file.ld'],
+     \ 'ldif': ['file.ldif'],
+     \ 'less': ['file.less'],
+     \ 'lex': ['file.lex', 'file.l', 'file.lxx', 'file.l++'],
+     \ 'lftp': ['lftp.conf', '.lftprc', '*lftp/rc'],
+     \ 'lhaskell': ['file.lhs'],
+     \ 'libao': ['/etc/libao.conf', '/.libao'],
+     \ 'lifelines': ['file.ll'],
+     \ 'lilo': ['lilo.conf'],
+     \ 'limits': ['/etc/limits', '/etc/*limits.conf', 
'/etc/*limits.d/file.conf'],
+     \ 'liquid': ['file.liquid'],
+     \ 'lisp': ['sbclrc', '.sbclrc'],
+     \ 'lite': ['file.lite', 'file.lt'],
+     \ 'litestep': ['/LiteStep/*/file.rc'],
+     \ 'loginaccess': ['/etc/login.access'],
+     \ 'logindefs': ['/etc/login.defs'],
+     \ 'logtalk': ['file.lgt'],
+     \ 'lotos': ['file.lot', 'file.lotos'],
+     \ 'lout': ['file.lou', 'file.lout'],
+     \ 'lprolog': ['file.sig'],
+     \ 'lsl': ['file.lsl'],
+     \ 'lss': ['file.lss'],
+     \ 'lua': ['file.lua', 'file.rockspec', 'file.nse'],
+     \ 'lynx': ['lynx.cfg'],
+     \ 'm4': ['file.at'],
+     \ 'mail': ['snd.123', '.letter', '.letter.123', '.followup', '.article', 
'.article.123', 'pico.123', 'mutt-xx-xxx', 'muttng-xx-xxx', 'ae123.txt', 
'file.eml'],
+     \ 'mailaliases': ['/etc/mail/aliases', '/etc/aliases'],
+     \ 'mailcap': ['.mailcap', 'mailcap'],
+     \ 'make': ['file.mk', 'file.mak', 'file.dsp'],
+     \ 'mallard': ['file.page'],
+     \ 'man': ['file.man'],
+     \ 'manconf': ['/etc/man.conf', 'man.config'],
+     \ 'map': ['file.map'],
+     \ 'maple': ['file.mv', 'file.mpl', 'file.mws'],
+     \ 'markdown': ['file.markdown', 'file.mdown', 'file.mkd', 'file.mkdn', 
'file.mdwn', 'file.md'],
+     \ 'mason': ['file.mason', 'file.mhtml', 'file.comp'],
+     \ 'master': ['file.mas', 'file.master'],
+     \ 'mel': ['file.mel'],
+     \ 'messages': ['/log/auth', '/log/cron', '/log/daemon', '/log/debug', 
'/log/kern', '/log/lpr', '/log/mail', '/log/messages', '/log/news/news', 
'/log/syslog', '/log/user',
+     \     '/log/auth.log', '/log/cron.log', '/log/daemon.log', 
'/log/debug.log', '/log/kern.log', '/log/lpr.log', '/log/mail.log', 
'/log/messages.log', '/log/news/news.log', '/log/syslog.log', '/log/user.log',
+     \     '/log/auth.err', '/log/cron.err', '/log/daemon.err', 
'/log/debug.err', '/log/kern.err', '/log/lpr.err', '/log/mail.err', 
'/log/messages.err', '/log/news/news.err', '/log/syslog.err', '/log/user.err',
+     \      '/log/auth.info', '/log/cron.info', '/log/daemon.info', 
'/log/debug.info', '/log/kern.info', '/log/lpr.info', '/log/mail.info', 
'/log/messages.info', '/log/news/news.info', '/log/syslog.info', 
'/log/user.info',
+     \      '/log/auth.warn', '/log/cron.warn', '/log/daemon.warn', 
'/log/debug.warn', '/log/kern.warn', '/log/lpr.warn', '/log/mail.warn', 
'/log/messages.warn', '/log/news/news.warn', '/log/syslog.warn', 
'/log/user.warn',
+     \      '/log/auth.crit', '/log/cron.crit', '/log/daemon.crit', 
'/log/debug.crit', '/log/kern.crit', '/log/lpr.crit', '/log/mail.crit', 
'/log/messages.crit', '/log/news/news.crit', '/log/syslog.crit', 
'/log/user.crit',
+     \      '/log/auth.notice', '/log/cron.notice', '/log/daemon.notice', 
'/log/debug.notice', '/log/kern.notice', '/log/lpr.notice', '/log/mail.notice', 
'/log/messages.notice', '/log/news/news.notice', '/log/syslog.notice', 
'/log/user.notice'],
+     \ 'mf': ['file.mf'],
+     \ 'mgl': ['file.mgl'],
+     \ 'mgp': ['file.mgp'],
+     \ 'mib': ['file.mib', 'file.my'],
+     \ 'mix': ['file.mix', 'file.mixal'],
+     \ 'mma': ['file.nb'],
+     \ 'mmp': ['file.mmp'],
+     \ 'modconf': ['/etc/modules.conf', '/etc/modules', '/etc/conf.modules'],
+     \ 'modula2': ['file.m2', 'file.DEF', 'file.MOD', 'file.mi'],
+     \ 'monk': ['file.isc', 'file.monk', 'file.ssc', 'file.tsc'],
+     \ 'moo': ['file.moo'],
+     \ 'mp': ['file.mp'],
+     \ 'mplayerconf': ['mplayer.conf', '/.mplayer/config'],
+     \ 'mrxvtrc': ['mrxvtrc', '.mrxvtrc'],
+     \ 'msidl': ['file.odl', 'file.mof'],
+     \ 'msql': ['file.msql'],
+     \ 'mupad': ['file.mu'],
+     \ 'mush': ['file.mush'],
+     \ 'muttrc': ['Muttngrc', 'Muttrc'],
+     \ 'mysql': ['file.mysql'],
+     \ 'named': ['namedfile.conf', 'rndcfile.conf'],
+     \ 'nanorc': ['/etc/nanorc', 'file.nanorc'],
+     \ 'ncf': ['file.ncf'],
+     \ 'netrc': ['.netrc'],
+     \ 'ninja': ['file.ninja'],
+     \ 'nqc': ['file.nqc'],
+     \ 'nroff': ['file.tr', 'file.nr', 'file.roff', 'file.tmac', 'file.mom'],
+     \ 'nsis': ['file.nsi', 'file.nsh'],
+     \ 'obj': ['file.obj'],
+     \ 'ocaml': ['file.ml', 'file.mli', 'file.mll', 'file.mly', '.ocamlinit'],
+     \ 'occam': ['file.occ'],
+     \ 'omnimark': ['file.xom', 'file.xin'],
+     \ 'openroad': ['file.or'],
+     \ 'ora': ['file.ora'],
+     \ 'pamconf': ['/etc/pam.conf'],
+     \ 'papp': ['file.papp', 'file.pxml', 'file.pxsl'],
+     \ 'pascal': ['file.pas', 'file.dpr'],
+     \ 'passwd': ['any/etc/passwd', 'any/etc/passwd-', 'any/etc/passwd.edit', 
'any/etc/shadow', 'any/etc/shadow-', 'any/etc/shadow.edit', 
'any/var/backups/passwd.bak', 'any/var/backups/shadow.bak'],
+     \ 'pccts': ['file.g'],
+     \ 'pdf': ['file.pdf'],
+     \ 'perl': ['file.plx', 'file.al', 'file.psgi', 'gitolite.rc', 
'.gitolite.rc', 'example.gitolite.rc'],
+     \ 'perl6': ['file.p6', 'file.pm6', 'file.pl6'],
+     \ 'pf': ['pf.conf'],
+     \ 'pfmain': ['main.cf'],
+     \ 'php': ['file.php', 'file.php9', 'file.phtml', 'file.ctp'],
+     \ 'pike': ['file.pike', 'file.lpc', 'file.ulpc', 'file.pmod'],
+     \ 'pilrc': ['file.rcp'],
+     \ 'pine': ['.pinerc', 'pinerc', '.pinercex', 'pinercex'],
+     \ 'pinfo': ['/etc/pinforc', '/.pinforc'],
+     \ 'pli': ['file.pli', 'file.pl1'],
+     \ 'plm': ['file.plm', 'file.p36', 'file.pac'],
+     \ 'plp': ['file.plp'],
+     \ 'plsql': ['file.pls', 'file.plsql'],
+     \ 'po': ['file.po', 'file.pot'],
+     \ 'pod': ['file.pod'],
+     \ 'pod6': ['file.pod6'],
+     \ 'postscr': ['file.ps', 'file.pfa', 'file.afm', 'file.eps', 'file.epsf', 
'file.epsi', 'file.ai'],
+     \ 'pov': ['file.pov'],
+     \ 'povini': ['.povrayrc'],
+     \ 'ppd': ['file.ppd'],
+     \ 'ppwiz': ['file.it', 'file.ih'],
+     \ 'privoxy': ['file.action'],
+     \ 'proc': ['file.pc'],
+     \ 'procmail': ['.procmail', '.procmailrc'],
+     \ 'prolog': ['file.pdb'],
+     \ 'promela': ['file.pml'],
+     \ 'proto': ['file.proto'],
+     \ 'protocols': ['/etc/protocols'],
+     \ 'psf': ['file.psf'],
+     \ 'pyrex': ['file.pyx', 'file.pxd'],
+     \ 'python': ['file.py', 'file.pyw', '.pythonstartup', '.pythonrc', 
'file.ptl'],
+     \ 'quake': ['anybaseq2/file.cfg', 'anyid1/file.cfg', 'quake3/file.cfg'],
+     \ 'radiance': ['file.rad', 'file.mat'],
+     \ 'ratpoison': ['.ratpoisonrc', 'ratpoisonrc'],
+     \ 'rc': ['file.rc', 'file.rch'],
+     \ 'rcs': ['file,v'],
+     \ 'readline': ['.inputrc', 'inputrc'],
+     \ 'remind': ['.reminders', 'file.remind', 'file.rem'],
+     \ 'resolv': ['resolv.conf'],
+     \ 'reva': ['file.frt'],
+     \ 'rexx': ['file.rex', 'file.orx', 'file.rxo', 'file.rxj', 'file.jrexx', 
'file.rexxj', 'file.rexx', 'file.testGroup', 'file.testUnit'],
+     \ 'rib': ['file.rib'],
+     \ 'rnc': ['file.rnc'],
+     \ 'rng': ['file.rng'],
+     \ 'robots': ['robots.txt'],
+     \ 'rpcgen': ['file.x'],
+     \ 'rpl': ['file.rpl'],
+     \ 'rst': ['file.rst'],
+     \ 'rtf': ['file.rtf'],
+     \ 'ruby': ['.irbrc', 'irbrc', 'file.rb', 'file.rbw', 'file.gemspec', 
'file.ru', 'Gemfile', 'file.builder', 'file.rxml', 'file.rjs', 'file.rant', 
'file.rake'],
+     \ 'rust': ['file.rs'],
+     \ 'samba': ['smb.conf'],
+     \ 'sas': ['file.sas'],
+     \ 'sass': ['file.sass'],
+     \ 'sather': ['file.sa'],
+     \ 'sbt': ['file.sbt'],
+     \ 'scala': ['file.scala'],
+     \ 'scheme': ['file.scm', 'file.ss', 'file.rkt'],
+     \ 'scilab': ['file.sci', 'file.sce'],
+     \ 'screen': ['.screenrc', 'screenrc'],
+     \ 'scss': ['file.scss'],
+     \ 'sd': ['file.sd'],
+     \ 'sdc': ['file.sdc'],
+     \ 'sdl': ['file.sdl', 'file.pr'],
+     \ 'sed': ['file.sed'],
+     \ 'sensors': ['/etc/sensors.conf', '/etc/sensors3.conf'],
+     \ 'services': ['/etc/services'],
+     \ 'setserial': ['/etc/serial.conf'],
+     \ 'sh': ['/etc/udev/cdsymlinks.conf'],
+     \ 'sieve': ['file.siv'],
+     \ 'simula': ['file.sim'],
+     \ 'sinda': ['file.sin', 'file.s85'],
+     \ 'sisu': ['file.sst', 'file.ssm', 'file.ssi', 'file.-sst', 'file._sst', 
'file.sst.meta', 'file.-sst.meta', 'file._sst.meta'],
+     \ 'skill': ['file.il', 'file.ils', 'file.cdf'],
+     \ 'slang': ['file.sl'],
+     \ 'slice': ['file.ice'],
+     \ 'slpconf': ['/etc/slp.conf'],
+     \ 'slpreg': ['/etc/slp.reg'],
+     \ 'slpspi': ['/etc/slp.spi'],
+     \ 'slrnrc': ['.slrnrc'],
+     \ 'slrnsc': ['file.score'],
+     \ 'sm': ['sendmail.cf'],
+     \ 'smarty': ['file.tpl'],
+     \ 'smcl': ['file.hlp', 'file.ihlp', 'file.smcl'],
+     \ 'smith': ['file.smt', 'file.smith'],
+     \ 'sml': ['file.sml'],
+     \ 'snobol4': ['file.sno', 'file.spt'],
+     \ 'spec': ['file.spec'],
+     \ 'spice': ['file.sp', 'file.spice'],
+     \ 'spup': ['file.speedup', 'file.spdata', 'file.spd'],
+     \ 'spyce': ['file.spy', 'file.spi'],
+     \ 'sql': ['file.tyb', 'file.typ', 'file.tyc', 'file.pkb', 'file.pks'],
+     \ 'sqlj': ['file.sqlj'],
+     \ 'sqr': ['file.sqr', 'file.sqi'],
+     \ 'squid': ['squid.conf'],
+     \ 'srec': ['file.s19', 'file.s28', 'file.s37', 'file.mot', 'file.srec'],
+     \ 'sshconfig': ['ssh_config', '/.ssh/config'],
+     \ 'sshdconfig': ['sshd_config'],
+     \ 'st': ['file.st'],
+     \ 'stata': ['file.ado', 'file.do', 'file.imata', 'file.mata'],
+     \ 'stp': ['file.stp'],
+     \ 'sudoers': ['any/etc/sudoers', 'sudoers.tmp'],
+     \ 'svg': ['file.svg'],
+     \ 'svn': ['svn-commitfile.tmp'],
+     \ 'sysctl': ['/etc/sysctl.conf', '/etc/sysctl.d/file.conf'],
+     \ 'systemd': ['any/systemd/file.automount', 'any/systemd/file.mount', 
'any/systemd/file.path', 'any/systemd/file.service', 'any/systemd/file.socket', 
'any/systemd/file.swap', 'any/systemd/file.target', 'any/systemd/file.timer'],
+     \ 'systemverilog': ['file.sv', 'file.svh'],
+     \ 'tags': ['tags'],
+     \ 'tak': ['file.tak'],
+     \ 'taskdata': ['pending.data', 'completed.data', 'undo.data'],
+     \ 'taskedit': ['file.task'],
+     \ 'tcl': ['file.tcl', 'file.tk', 'file.itcl', 'file.itk', 'file.jacl'],
+     \ 'teraterm': ['file.ttl'],
+     \ 'terminfo': ['file.ti'],
+     \ 'tex': ['file.latex', 'file.sty', 'file.dtx', 'file.ltx', 'file.bbl'],
+     \ 'texinfo': ['file.texinfo', 'file.texi', 'file.txi'],
+     \ 'texmf': ['texmf.cnf'],
+     \ 'text': ['file.text', 'README'],
+     \ 'tf': ['file.tf', '.tfrc', 'tfrc'],
+     \ 'tidy': ['.tidyrc', 'tidyrc'],
+     \ 'tilde': ['file.t.html'],
+     \ 'tli': ['file.tli'],
+     \ 'tmux': ['tmuxfile.conf', '.tmuxfile.conf'],
+     \ 'tpp': ['file.tpp'],
+     \ 'treetop': ['file.treetop'],
+     \ 'trustees': ['trustees.conf'],
+     \ 'tsalt': ['file.slt'],
+     \ 'tsscl': ['file.tsscl'],
+     \ 'tssgm': ['file.tssgm'],
+     \ 'tssop': ['file.tssop'],
+     \ 'twig': ['file.twig'],
+     \ 'uc': ['file.uc'],
+     \ 'udevconf': ['/etc/udev/udev.conf'],
+     \ 'udevperm': ['/etc/udev/permissions.d/file.permissions'],
+     \ 'uil': ['file.uit', 'file.uil'],
+     \ 'updatedb': ['/etc/updatedb.conf'],
+     \ 'upstart': ['/usr/share/upstart/file.conf', 
'/usr/share/upstart/file.override', '/etc/init/file.conf', 
'/etc/init/file.override', '/.init/file.conf', '/.init/file.override', 
'/.config/upstart/file.conf', '/.config/upstart/file.override'],
+     \ 'upstreamdat': ['upstream.dat', 'UPSTREAM.DAT', 'upstream.file.dat', 
'UPSTREAM.FILE.DAT', 'file.upstream.dat', 'FILE.UPSTREAM.DAT'],
+     \ 'upstreaminstalllog': ['upstreaminstall.log', 'UPSTREAMINSTALL.LOG', 
'upstreaminstall.file.log', 'UPSTREAMINSTALL.FILE.LOG', 
'file.upstreaminstall.log', 'FILE.UPSTREAMINSTALL.LOG'],
+     \ 'upstreamlog': ['fdrupstream.log', 'upstream.log', 'UPSTREAM.LOG', 
'upstream.file.log', 'UPSTREAM.FILE.LOG', 'file.upstream.log', 
'FILE.UPSTREAM.LOG', 'UPSTREAM-file.log', 'UPSTREAM-FILE.LOG'],
+     \ 'usserverlog': ['usserver.log', 'USSERVER.LOG', 'usserver.file.log', 
'USSERVER.FILE.LOG', 'file.usserver.log', 'FILE.USSERVER.LOG'],
+     \ 'usw2kagtlog': ['usw2kagt.log', 'USW2KAGT.LOG', 'usw2kagt.file.log', 
'USW2KAGT.FILE.LOG', 'file.usw2kagt.log', 'FILE.USW2KAGT.LOG'],
+     \ 'vb': ['file.sba', 'file.vb', 'file.vbs', 'file.dsm', 'file.ctl'],
+     \ 'vera': ['file.vr', 'file.vri', 'file.vrh'],
+     \ 'verilog': ['file.v'],
+     \ 'verilogams': ['file.va', 'file.vams'],
+     \ 'vgrindefs': ['vgrindefs'],
+     \ 'vhdl': ['file.hdl', 'file.vhd', 'file.vhdl', 'file.vbe', 'file.vst'],
+     \ 'vim': ['file.vim', 'file.vba', '.exrc', '_exrc'],
+     \ 'viminfo': ['.viminfo', '_viminfo'],
+     \ 'vmasm': ['file.mar'],
+     \ 'voscm': ['file.cm'],
+     \ 'vrml': ['file.wrl'],
+     \ 'vroom': ['file.vroom'],
+     \ 'webmacro': ['file.wm'],
+     \ 'wget': ['.wgetrc', 'wgetrc'],
+     \ 'winbatch': ['file.wbt'],
+     \ 'wml': ['file.wml'],
+     \ 'wsml': ['file.wsml'],
+     \ 'wvdial': ['wvdial.conf', '.wvdialrc'],
+     \ 'xdefaults': ['.Xdefaults', '.Xpdefaults', '.Xresources', 'xdm-config', 
'file.ad'],
+     \ 'xhtml': ['file.xhtml', 'file.xht'],
+     \ 'xinetd': ['/etc/xinetd.conf'],
+     \ 'xmath': ['file.msc', 'file.msf'],
+     \ 'xml': ['/etc/blkid.tab', '/etc/blkid.tab.old', 'file.xmi', 
'file.csproj', 'file.csproj.user', 'file.ts', 'file.ui', 'file.tpm', 
'/etc/xdg/menus/file.menu', 'fglrxrc', 'file.xlf', 'file.xliff', 'file.xul'],
+     \ 'xmodmap': ['anyXmodmap'],
+     \ 'xf86conf': ['xorg.conf', 'xorg.conf-4'],
+     \ 'xpm2': ['file.xpm2'],
+     \ 'xquery': ['file.xq', 'file.xql', 'file.xqm', 'file.xquery', 
'file.xqy'],
+     \ 'xs': ['file.xs'],
+     \ 'xsd': ['file.xsd'],
+     \ 'xslt': ['file.xsl', 'file.xslt'],
+     \ 'yacc': ['file.yy', 'file.yxx', 'file.y++'],
+     \ 'yaml': ['file.yaml', 'file.yml'],
+     \ 'z8a': ['file.z8a'],
+     \ 'zimbu': ['file.zu'],
+     \ 'zimbutempl': ['file.zut'],
+     \ 'zsh': ['.zprofile', '/etc/zprofile', '.zfbfmarks', 'file.zsh'],
+     \
+     \ 'aap': ['file.aap'],
+     \ 'help': [$VIMRUNTIME . '/doc/help.txt'],
+     \ 'xpm': ['file.xpm'],
+     \ }
+ 
+ func Test_filetype_detection()
+   filetype on
+   for [ft, names] in items(s:filename_checks)
+     for i in range(0, len(names) - 1)
+       new
+       try
+         exe 'edit ' . names[i]
+       catch
+       call assert_report('cannot edit "' . names[i] . '": ' . v:errmsg)
+       endtry
+       call assert_equal(ft, &filetype, 'with file name: ' . names[i])
+       bwipe!
+     endfor
+   endfor
+ endfunc
*** ../vim-8.0.0893/runtime/filetype.vim        2017-06-22 14:46:40.014516178 
+0200
--- runtime/filetype.vim        2017-08-09 21:55:58.643069554 +0200
***************
*** 1,7 ****
  " Vim support file to detect file types
  "
  " Maintainer: Bram Moolenaar <b...@vim.org>
! " Last Change:        2016 Aug 26
  
  " Listen very carefully, I will say this only once
  if exists("did_load_filetypes")
--- 1,7 ----
  " Vim support file to detect file types
  "
  " Maintainer: Bram Moolenaar <b...@vim.org>
! " Last Change:        2017 Aug 09
  
  " Listen very carefully, I will say this only once
  if exists("did_load_filetypes")
***************
*** 291,297 ****
  au BufNewFile,BufRead *.bst                   setf bst
  
  " BIND configuration
! au BufNewFile,BufRead named.conf,rndc.conf    setf named
  
  " BIND zone
  au BufNewFile,BufRead named.root              setf bindzone
--- 291,298 ----
  au BufNewFile,BufRead *.bst                   setf bst
  
  " BIND configuration
! " sudoedit uses namedXXXX.conf
! au BufNewFile,BufRead named*.conf,rndc*.conf  setf named
  
  " BIND zone
  au BufNewFile,BufRead named.root              setf bindzone
***************
*** 634,640 ****
  au BufNewFile,BufRead dictd.conf              setf dictdconf
  
  " Diff files
! au BufNewFile,BufRead *.diff,*.rej,*.patch    setf diff
  
  " Dircolors
  au BufNewFile,BufRead .dir_colors,.dircolors,*/etc/DIR_COLORS setf dircolors
--- 635,647 ----
  au BufNewFile,BufRead dictd.conf              setf dictdconf
  
  " Diff files
! au BufNewFile,BufRead *.diff,*.rej            setf diff
! au BufNewFile,BufRead *.patch
!       \ if getline(1) =~ '^From [0-9a-f]\{40\} Mon Sep 17 00:00:00 2001$' |
!       \   setf gitsendemail |
!       \ else |
!       \   setf diff |
!       \ endif
  
  " Dircolors
  au BufNewFile,BufRead .dir_colors,.dircolors,*/etc/DIR_COLORS setf dircolors
***************
*** 680,687 ****
  " DTS/DSTI (device tree files)
  au BufNewFile,BufRead *.dts,*.dtsi            setf dts
  
! " EDIF (*.edf,*.edif,*.edn,*.edo)
! au BufNewFile,BufRead *.ed\(f\|if\|n\|o\)     setf edif
  
  " Embedix Component Description
  au BufNewFile,BufRead *.ecd                   setf ecd
--- 687,703 ----
  " DTS/DSTI (device tree files)
  au BufNewFile,BufRead *.dts,*.dtsi            setf dts
  
! " EDIF (*.edf,*.edif,*.edn,*.edo) or edn
! au BufNewFile,BufRead *.ed\(f\|if\|o\)                setf edif
! au BufNewFile,BufRead *.edn
!       \ if getline(1) =~ '^\s*(\s*edif\>' |
!       \   setf edif |
!       \ else |
!       \   setf clojure |
!       \ endif
! 
! " EditorConfig (close enough to dosini)
! au BufNewFile,BufRead .editorconfig           setf dosini
  
  " Embedix Component Description
  au BufNewFile,BufRead *.ecd                   setf ecd
***************
*** 794,799 ****
--- 810,816 ----
    au BufNewFile,BufRead $XDG_CONFIG_HOME/git/config   setf gitconfig
  endif
  au BufNewFile,BufRead git-rebase-todo         setf gitrebase
+ au BufRead,BufNewFile .gitsendemail.msg.??????        setf gitsendemail
  au BufNewFile,BufRead .msg.[0-9]*
        \ if getline(1) =~ '^From.*# This line is ignored.$' |
        \   setf gitsendemail |
***************
*** 813,818 ****
--- 830,839 ----
  au BufNewFile,BufRead */.gnupg/options                setf gpg
  au BufNewFile,BufRead */.gnupg/gpg.conf               setf gpg
  au BufNewFile,BufRead */usr/*/gnupg/options.skel setf gpg
+ if !empty($GNUPGHOME)
+   au BufNewFile,BufRead $GNUPGHOME/options    setf gpg
+   au BufNewFile,BufRead $GNUPGHOME/gpg.conf   setf gpg
+ endif
  
  " gnash(1) configuration files
  au BufNewFile,BufRead gnashrc,.gnashrc,gnashpluginrc,.gnashpluginrc setf gnash
***************
*** 862,868 ****
  au BufNewFile,BufRead *.htpp                  setf hastepreproc
  
  " Hercules
! au BufNewFile,BufRead *.vc,*.ev,*.rs,*.sum,*.errsum   setf hercules
  
  " HEX (Intel)
  au BufNewFile,BufRead *.hex,*.h32             setf hex
--- 883,889 ----
  au BufNewFile,BufRead *.htpp                  setf hastepreproc
  
  " Hercules
! au BufNewFile,BufRead *.vc,*.ev,*.sum,*.errsum        setf hercules
  
  " HEX (Intel)
  au BufNewFile,BufRead *.hex,*.h32             setf hex
***************
*** 970,976 ****
  
  " Innovation Data Processing
  au BufRead,BufNewFile upstream.dat\c,upstream.*.dat\c,*.upstream.dat\c        
setf upstreamdat
! au BufRead,BufNewFile upstream.log\c,upstream.*.log\c,*.upstream.log\c        
setf upstreamlog
  au BufRead,BufNewFile 
upstreaminstall.log\c,upstreaminstall.*.log\c,*.upstreaminstall.log\c setf 
upstreaminstalllog
  au BufRead,BufNewFile usserver.log\c,usserver.*.log\c,*.usserver.log\c        
setf usserverlog
  au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c        
setf usw2kagtlog
--- 991,997 ----
  
  " Innovation Data Processing
  au BufRead,BufNewFile upstream.dat\c,upstream.*.dat\c,*.upstream.dat\c        
setf upstreamdat
! au BufRead,BufNewFile 
fdrupstream.log,upstream.log\c,upstream.*.log\c,*.upstream.log\c,UPSTREAM-*.log\c
       setf upstreamlog
  au BufRead,BufNewFile 
upstreaminstall.log\c,upstreaminstall.*.log\c,*.upstreaminstall.log\c setf 
upstreaminstalllog
  au BufRead,BufNewFile usserver.log\c,usserver.*.log\c,*.usserver.log\c        
setf usserverlog
  au BufRead,BufNewFile usw2kagt.log\c,usw2kagt.*.log\c,*.usw2kagt.log\c        
setf usw2kagtlog
***************
*** 1006,1012 ****
  au BufNewFile,BufRead *.jj,*.jjt              setf javacc
  
  " JavaScript, ECMAScript
! au BufNewFile,BufRead *.js,*.javascript,*.es,*.jsx   setf javascript
  
  " Java Server Pages
  au BufNewFile,BufRead *.jsp                   setf jsp
--- 1027,1033 ----
  au BufNewFile,BufRead *.jj,*.jjt              setf javacc
  
  " JavaScript, ECMAScript
! au BufNewFile,BufRead *.js,*.javascript,*.es,*.jsx,*.mjs   setf javascript
  
  " Java Server Pages
  au BufNewFile,BufRead *.jsp                   setf jsp
***************
*** 1170,1183 ****
  " Mason
  au BufNewFile,BufRead *.mason,*.mhtml,*.comp  setf mason
  
! " Matlab or Objective C
  au BufNewFile,BufRead *.m                     call s:FTm()
  
  func! s:FTm()
    let n = 1
!   while n < 10
      let line = getline(n)
!     if line =~ '^\s*\(#\s*\(include\|import\)\>\|@import\>\|/\*\|//\)'
        setf objc
        return
      endif
--- 1191,1211 ----
  " Mason
  au BufNewFile,BufRead *.mason,*.mhtml,*.comp  setf mason
  
! " Mathematica, Matlab, Murphi or Objective C
  au BufNewFile,BufRead *.m                     call s:FTm()
  
  func! s:FTm()
    let n = 1
!   let saw_comment = 0 " Whether we've seen a multiline comment leader.
!   while n < 100
      let line = getline(n)
!     if line =~ '^\s*/\*'
!       " /* ... */ is a comment in Objective C and Murphi, so we can't conclude
!       " it's either of them yet, but track this as a hint in case we don't see
!       " anything more definitive.
!       let saw_comment = 1
!     endif
!     if line =~ '^\s*\(#\s*\(include\|import\)\>\|@import\>\|//\)'
        setf objc
        return
      endif
***************
*** 1189,1199 ****
        setf mma
        return
      endif
      let n = n + 1
    endwhile
!   if exists("g:filetype_m")
      exe "setf " . g:filetype_m
    else
      setf matlab
    endif
  endfunc
--- 1217,1239 ----
        setf mma
        return
      endif
+     if line =~ '^\c\s*\(\(type\|var\)\>\|--\)'
+       setf murphi
+       return
+     endif
      let n = n + 1
    endwhile
! 
!   if saw_comment
!     " We didn't see anything definitive, but this looks like either Objective 
C
!     " or Murphi based on the comment leader. Assume the former as it is more
!     " common.
!     setf objc
!   elseif exists("g:filetype_m")
!     " Use user specified default filetype for .m
      exe "setf " . g:filetype_m
    else
+     " Default is matlab
      setf matlab
    endif
  endfunc
***************
*** 1357,1362 ****
--- 1397,1405 ----
  " Not Quite C
  au BufNewFile,BufRead *.nqc                   setf nqc
  
+ " NSE - Nmap Script Engine - uses Lua syntax
+ au BufNewFile,BufRead *.nse                   setf lua
+ 
  " NSIS
  au BufNewFile,BufRead *.nsi,*.nsh             setf nsis
  
***************
*** 1405,1411 ****
  else
    au BufNewFile,BufRead *.pl                  call s:FTpl()
  endif
! au BufNewFile,BufRead *.plx,*.al              setf perl
  au BufNewFile,BufRead *.p6,*.pm6,*.pl6                setf perl6
  
  func! s:FTpl()
--- 1448,1454 ----
  else
    au BufNewFile,BufRead *.pl                  call s:FTpl()
  endif
! au BufNewFile,BufRead *.plx,*.al,*.psgi               setf perl
  au BufNewFile,BufRead *.p6,*.pm6,*.pl6                setf perl6
  
  func! s:FTpl()
***************
*** 1760,1765 ****
--- 1803,1811 ----
  " RubyGems
  au BufNewFile,BufRead *.gemspec                       setf ruby
  
+ " Rust
+ au BufNewFile,BufRead *.rs                    setf rust
+ 
  " Rackup
  au BufNewFile,BufRead *.ru                    setf ruby
  
***************
*** 1790,1795 ****
--- 1836,1844 ----
  " Scala
  au BufNewFile,BufRead *.scala                 setf scala
  
+ " SBT - Scala Build Tool
+ au BufNewFile,BufRead *.sbt                   setf sbt
+ 
  " Scilab
  au BufNewFile,BufRead *.sci,*.sce             setf scilab
  
***************
*** 2116,2122 ****
  au BufNewFile,BufRead sshd_config             setf sshdconfig
  
  " Stata
! au BufNewFile,BufRead *.ado,*.class,*.do,*.imata,*.mata   setf stata
  
  " SMCL
  au BufNewFile,BufRead *.hlp,*.ihlp,*.smcl     setf smcl
--- 2165,2174 ----
  au BufNewFile,BufRead sshd_config             setf sshdconfig
  
  " Stata
! au BufNewFile,BufRead *.ado,*.do,*.imata,*.mata       setf stata
! " Also *.class, but not when it's a Java bytecode file
! au BufNewFile,BufRead *.class
!       \ if getline(1) !~ "^\xca\xfe\xba\xbe" | setf stata | endif
  
  " SMCL
  au BufNewFile,BufRead *.hlp,*.ihlp,*.smcl     setf smcl
***************
*** 2211,2218 ****
--- 2263,2274 ----
      let format = tolower(matchstr(firstline, '\a\+'))
      let format = substitute(format, 'pdf', '', '')
      if format == 'tex'
+       let format = 'latex'
+     elseif format == 'plaintex'
        let format = 'plain'
      endif
+   elseif expand('%') =~ 'tex/context/.*/.*.tex'
+     let format = 'context'
    else
      " Default value, may be changed later:
      let format = exists("g:tex_flavor") ? g:tex_flavor : 'plain'
***************
*** 2254,2260 ****
  endfunc
  
  " ConTeXt
! au BufNewFile,BufRead tex/context/*/*.tex,*.mkii,*.mkiv   setf context
  
  " Texinfo
  au BufNewFile,BufRead *.texinfo,*.texi,*.txi  setf texinfo
--- 2310,2316 ----
  endfunc
  
  " ConTeXt
! au BufNewFile,BufRead *.mkii,*.mkiv,*.mkvi   setf context
  
  " Texinfo
  au BufNewFile,BufRead *.texinfo,*.texi,*.txi  setf texinfo
***************
*** 2268,2273 ****
--- 2324,2332 ----
  " TF mud client
  au BufNewFile,BufRead *.tf,.tfrc,tfrc         setf tf
  
+ " tmux configuration
+ au BufNewFile,BufRead {.,}tmux*.conf          setf tmux
+ 
  " TPP - Text Presentation Program
  au BufNewFile,BufReadPost *.tpp                       setf tpp
  
***************
*** 2673,2678 ****
--- 2732,2740 ----
  " Nroff macros
  au BufNewFile,BufRead tmac.*                  call s:StarSetf('nroff')
  
+ " OpenBSD hostname.if
+ au BufNewFile,BufRead /etc/hostname.*         call s:StarSetf('config')
+ 
  " Pam conf
  au BufNewFile,BufRead */etc/pam.d/*           call s:StarSetf('pamconf')
  
*** ../vim-8.0.0893/src/version.c       2017-08-08 23:06:40.858032209 +0200
--- src/version.c       2017-08-09 22:01:13.904773934 +0200
***************
*** 771,772 ****
--- 771,774 ----
  {   /* Add new patch number below this line */
+ /**/
+     894,
  /**/

-- 
ARTHUR:  No, hang on!  Just answer the five questions ...
GALAHAD: Three questions ...
ARTHUR:  Three questions ...  And we shall watch ... and pray.
                 "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD

 /// Bram Moolenaar -- b...@moolenaar.net -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui