Mercurial > vim
changeset 16024:7fd3a9eaeedb v8.1.1017
patch 8.1.1017: off-by-one error in filetype detection
commit https://github.com/vim/vim/commit/493fbe4abee660d30b4f2aef87b754b0a720213c
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Mar 17 17:16:12 2019 +0100
patch 8.1.1017: off-by-one error in filetype detection
Problem: Off-by-one error in filetype detection.
Solution: Also check the last line of the file.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 17 Mar 2019 17:30:14 +0100 |
parents | dc766e1b0c95 |
children | 1aed002ab9bc |
files | runtime/autoload/dist/ft.vim src/version.c |
diffstat | 2 files changed, 8 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -197,7 +197,7 @@ func dist#ft#FTe() exe 'setf ' . g:filetype_euphoria else let n = 1 - while n < 100 && n < line("$") + while n < 100 && n <= line("$") if getline(n) =~ "^\\s*\\(<'\\|'>\\)\\s*$" setf specman return @@ -211,7 +211,7 @@ endfunc " Distinguish between HTML, XHTML and Django func dist#ft#FThtml() let n = 1 - while n < 10 && n < line("$") + while n < 10 && n <= line("$") if getline(n) =~ '\<DTD\s\+XHTML\s' setf xhtml return @@ -222,13 +222,13 @@ func dist#ft#FThtml() endif let n = n + 1 endwhile - setf html + setf FALLBACK html endfunc " Distinguish between standard IDL and MS-IDL func dist#ft#FTidl() let n = 1 - while n < 50 && n < line("$") + while n < 50 && n <= line("$") if getline(n) =~ '^\s*import\s\+"\(unknwn\|objidl\)\.idl"' setf msidl return @@ -699,7 +699,7 @@ endfunc func dist#ft#FTxml() let n = 1 - while n < 100 && n < line("$") + while n < 100 && n <= line("$") let line = getline(n) " DocBook 4 or DocBook 5. let is_docbook4 = line =~ '<!DOCTYPE.*DocBook' @@ -725,7 +725,7 @@ endfunc func dist#ft#FTy() let n = 1 - while n < 100 && n < line("$") + while n < 100 && n <= line("$") let line = getline(n) if line =~ '^\s*%' setf yacc