Updated runtime files.

This commit is contained in:
Bram Moolenaar
2010-11-16 20:34:40 +01:00
parent 644d37b84d
commit 166af9bb6f
25 changed files with 692 additions and 210 deletions

View File

@ -1,6 +1,6 @@
" Vim autoload file for the tohtml plugin. " Vim autoload file for the tohtml plugin.
" Maintainer: Ben Fritz <fritzophrenic@gmail.com> " Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2010 Aug 12 " Last Change: 2010 Oct 07
" "
" Additional contributors: " Additional contributors:
" "
@ -13,10 +13,284 @@
let s:cpo_sav = &cpo let s:cpo_sav = &cpo
set cpo-=C set cpo-=C
func! tohtml#Convert2HTML(line1, line2) " Automatically find charsets from all encodings supported natively by Vim. With
" the 8bit- and 2byte- prefixes, Vim can actually support more encodings than
" this. Let the user specify these however since they won't be supported on
" every system. TODO: how? g:html_charsets and g:html_encodings?
"
" Note, not all of Vim's supported encodings have a charset to use.
"
" Names in this list are from:
" http://www.iana.org/assignments/character-sets
" g:tohtml#encoding_to_charset: {{{
let g:tohtml#encoding_to_charset = {
\ 'latin1' : 'ISO-8859-1',
\ 'iso-8859-2' : 'ISO-8859-2',
\ 'iso-8859-3' : 'ISO-8859-3',
\ 'iso-8859-4' : 'ISO-8859-4',
\ 'iso-8859-5' : 'ISO-8859-5',
\ 'iso-8859-6' : 'ISO-8859-6',
\ 'iso-8859-7' : 'ISO-8859-7',
\ 'iso-8859-8' : 'ISO-8859-8',
\ 'iso-8859-9' : 'ISO-8859-9',
\ 'iso-8859-10' : '',
\ 'iso-8859-13' : 'ISO-8859-13',
\ 'iso-8859-14' : '',
\ 'iso-8859-15' : 'ISO-8859-15',
\ 'koi8-r' : 'KOI8-R',
\ 'koi8-u' : 'KOI8-U',
\ 'macroman' : 'macintosh',
\ 'cp437' : '',
\ 'cp775' : '',
\ 'cp850' : '',
\ 'cp852' : '',
\ 'cp855' : '',
\ 'cp857' : '',
\ 'cp860' : '',
\ 'cp861' : '',
\ 'cp862' : '',
\ 'cp863' : '',
\ 'cp865' : '',
\ 'cp866' : 'IBM866',
\ 'cp869' : '',
\ 'cp874' : '',
\ 'cp1250' : 'windows-1250',
\ 'cp1251' : 'windows-1251',
\ 'cp1253' : 'windows-1253',
\ 'cp1254' : 'windows-1254',
\ 'cp1255' : 'windows-1255',
\ 'cp1256' : 'windows-1256',
\ 'cp1257' : 'windows-1257',
\ 'cp1258' : 'windows-1258',
\ 'euc-jp' : 'EUC-JP',
\ 'sjis' : 'Shift_JIS',
\ 'cp932' : 'Shift_JIS',
\ 'cp949' : '',
\ 'euc-kr' : 'EUC-KR',
\ 'cp936' : 'GBK',
\ 'euc-cn' : 'GB2312',
\ 'big5' : 'Big5',
\ 'cp950' : 'Big5',
\ 'utf-8' : 'UTF-8',
\ 'ucs-2' : 'UTF-8',
\ 'ucs-2le' : 'UTF-8',
\ 'utf-16' : 'UTF-8',
\ 'utf-16le' : 'UTF-8',
\ 'ucs-4' : 'UTF-8',
\ 'ucs-4le' : 'UTF-8',
\ }
lockvar g:tohtml#encoding_to_charset
" Notes:
" 1. All UCS/UTF are converted to UTF-8 because it is much better supported
" 2. Any blank spaces are there because Vim supports it but at least one major
" web browser does not according to http://wiki.whatwg.org/wiki/Web_Encodings.
" }}}
" Only automatically find encodings supported natively by Vim, let the user
" specify the encoding if it's not natively supported. This function is only
" used when the user specifies the charset, they better know what they are
" doing!
"
" Names in this list are from:
" http://www.iana.org/assignments/character-sets
" g:tohtml#charset_to_encoding: {{{
let g:tohtml#charset_to_encoding = {
\ 'iso_8859-1:1987' : 'latin1',
\ 'iso-ir-100' : 'latin1',
\ 'iso_8859-1' : 'latin1',
\ 'iso-8859-1' : 'latin1',
\ 'latin1' : 'latin1',
\ 'l1' : 'latin1',
\ 'ibm819' : 'latin1',
\ 'cp819' : 'latin1',
\ 'csisolatin1' : 'latin1',
\ 'iso_8859-2:1987' : 'iso-8859-2',
\ 'iso-ir-101' : 'iso-8859-2',
\ 'iso_8859-2' : 'iso-8859-2',
\ 'iso-8859-2' : 'iso-8859-2',
\ 'latin2' : 'iso-8859-2',
\ 'l2' : 'iso-8859-2',
\ 'csisolatin2' : 'iso-8859-2',
\ 'iso_8859-3:1988' : 'iso-8859-3',
\ 'iso-ir-109' : 'iso-8859-3',
\ 'iso_8859-3' : 'iso-8859-3',
\ 'iso-8859-3' : 'iso-8859-3',
\ 'latin3' : 'iso-8859-3',
\ 'l3' : 'iso-8859-3',
\ 'csisolatin3' : 'iso-8859-3',
\ 'iso_8859-4:1988' : 'iso-8859-4',
\ 'iso-ir-110' : 'iso-8859-4',
\ 'iso_8859-4' : 'iso-8859-4',
\ 'iso-8859-4' : 'iso-8859-4',
\ 'latin4' : 'iso-8859-4',
\ 'l4' : 'iso-8859-4',
\ 'csisolatin4' : 'iso-8859-4',
\ 'iso_8859-5:1988' : 'iso-8859-5',
\ 'iso-ir-144' : 'iso-8859-5',
\ 'iso_8859-5' : 'iso-8859-5',
\ 'iso-8859-5' : 'iso-8859-5',
\ 'cyrillic' : 'iso-8859-5',
\ 'csisolatincyrillic' : 'iso-8859-5',
\ 'iso_8859-6:1987' : 'iso-8859-6',
\ 'iso-ir-127' : 'iso-8859-6',
\ 'iso_8859-6' : 'iso-8859-6',
\ 'iso-8859-6' : 'iso-8859-6',
\ 'ecma-114' : 'iso-8859-6',
\ 'asmo-708' : 'iso-8859-6',
\ 'arabic' : 'iso-8859-6',
\ 'csisolatinarabic' : 'iso-8859-6',
\ 'iso_8859-7:1987' : 'iso-8859-7',
\ 'iso-ir-126' : 'iso-8859-7',
\ 'iso_8859-7' : 'iso-8859-7',
\ 'iso-8859-7' : 'iso-8859-7',
\ 'elot_928' : 'iso-8859-7',
\ 'ecma-118' : 'iso-8859-7',
\ 'greek' : 'iso-8859-7',
\ 'greek8' : 'iso-8859-7',
\ 'csisolatingreek' : 'iso-8859-7',
\ 'iso_8859-8:1988' : 'iso-8859-8',
\ 'iso-ir-138' : 'iso-8859-8',
\ 'iso_8859-8' : 'iso-8859-8',
\ 'iso-8859-8' : 'iso-8859-8',
\ 'hebrew' : 'iso-8859-8',
\ 'csisolatinhebrew' : 'iso-8859-8',
\ 'iso_8859-9:1989' : 'iso-8859-9',
\ 'iso-ir-148' : 'iso-8859-9',
\ 'iso_8859-9' : 'iso-8859-9',
\ 'iso-8859-9' : 'iso-8859-9',
\ 'latin5' : 'iso-8859-9',
\ 'l5' : 'iso-8859-9',
\ 'csisolatin5' : 'iso-8859-9',
\ 'iso-8859-10' : 'iso-8859-10',
\ 'iso-ir-157' : 'iso-8859-10',
\ 'l6' : 'iso-8859-10',
\ 'iso_8859-10:1992' : 'iso-8859-10',
\ 'csisolatin6' : 'iso-8859-10',
\ 'latin6' : 'iso-8859-10',
\ 'iso-8859-13' : 'iso-8859-13',
\ 'iso-8859-14' : 'iso-8859-14',
\ 'iso-ir-199' : 'iso-8859-14',
\ 'iso_8859-14:1998' : 'iso-8859-14',
\ 'iso_8859-14' : 'iso-8859-14',
\ 'latin8' : 'iso-8859-14',
\ 'iso-celtic' : 'iso-8859-14',
\ 'l8' : 'iso-8859-14',
\ 'iso-8859-15' : 'iso-8859-15',
\ 'iso_8859-15' : 'iso-8859-15',
\ 'latin-9' : 'iso-8859-15',
\ 'koi8-r' : 'koi8-r',
\ 'cskoi8r' : 'koi8-r',
\ 'koi8-u' : 'koi8-u',
\ 'macintosh' : 'macroman',
\ 'mac' : 'macroman',
\ 'csmacintosh' : 'macroman',
\ 'ibm437' : 'cp437',
\ 'cp437' : 'cp437',
\ '437' : 'cp437',
\ 'cspc8codepage437' : 'cp437',
\ 'ibm775' : 'cp775',
\ 'cp775' : 'cp775',
\ 'cspc775baltic' : 'cp775',
\ 'ibm850' : 'cp850',
\ 'cp850' : 'cp850',
\ '850' : 'cp850',
\ 'cspc850multilingual' : 'cp850',
\ 'ibm852' : 'cp852',
\ 'cp852' : 'cp852',
\ '852' : 'cp852',
\ 'cspcp852' : 'cp852',
\ 'ibm855' : 'cp855',
\ 'cp855' : 'cp855',
\ '855' : 'cp855',
\ 'csibm855' : 'cp855',
\ 'ibm857' : 'cp857',
\ 'cp857' : 'cp857',
\ '857' : 'cp857',
\ 'csibm857' : 'cp857',
\ 'ibm860' : 'cp860',
\ 'cp860' : 'cp860',
\ '860' : 'cp860',
\ 'csibm860' : 'cp860',
\ 'ibm861' : 'cp861',
\ 'cp861' : 'cp861',
\ '861' : 'cp861',
\ 'cp-is' : 'cp861',
\ 'csibm861' : 'cp861',
\ 'ibm862' : 'cp862',
\ 'cp862' : 'cp862',
\ '862' : 'cp862',
\ 'cspc862latinhebrew' : 'cp862',
\ 'ibm863' : 'cp863',
\ 'cp863' : 'cp863',
\ '863' : 'cp863',
\ 'csibm863' : 'cp863',
\ 'ibm865' : 'cp865',
\ 'cp865' : 'cp865',
\ '865' : 'cp865',
\ 'csibm865' : 'cp865',
\ 'ibm866' : 'cp866',
\ 'cp866' : 'cp866',
\ '866' : 'cp866',
\ 'csibm866' : 'cp866',
\ 'ibm869' : 'cp869',
\ 'cp869' : 'cp869',
\ '869' : 'cp869',
\ 'cp-gr' : 'cp869',
\ 'csibm869' : 'cp869',
\ 'windows-1250' : 'cp1250',
\ 'windows-1251' : 'cp1251',
\ 'windows-1253' : 'cp1253',
\ 'windows-1254' : 'cp1254',
\ 'windows-1255' : 'cp1255',
\ 'windows-1256' : 'cp1256',
\ 'windows-1257' : 'cp1257',
\ 'windows-1258' : 'cp1258',
\ 'extended_unix_code_packed_format_for_japanese' : 'euc-jp',
\ 'cseucpkdfmtjapanese' : 'euc-jp',
\ 'euc-jp' : 'euc-jp',
\ 'shift_jis' : 'sjis',
\ 'ms_kanji' : 'sjis',
\ 'sjis' : 'sjis',
\ 'csshiftjis' : 'sjis',
\ 'ibm-thai' : 'cp874',
\ 'csibmthai' : 'cp874',
\ 'ks_c_5601-1987' : 'cp949',
\ 'iso-ir-149' : 'cp949',
\ 'ks_c_5601-1989' : 'cp949',
\ 'ksc_5601' : 'cp949',
\ 'korean' : 'cp949',
\ 'csksc56011987' : 'cp949',
\ 'euc-kr' : 'euc-kr',
\ 'cseuckr' : 'euc-kr',
\ 'gbk' : 'cp936',
\ 'cp936' : 'cp936',
\ 'ms936' : 'cp936',
\ 'windows-936' : 'cp936',
\ 'gb_2312-80' : 'euc-cn',
\ 'iso-ir-58' : 'euc-cn',
\ 'chinese' : 'euc-cn',
\ 'csiso58gb231280' : 'euc-cn',
\ 'big5' : 'big5',
\ 'csbig5' : 'big5',
\ 'utf-8' : 'utf-8',
\ 'iso-10646-ucs-2' : 'ucs-2',
\ 'csunicode' : 'ucs-2',
\ 'utf-16' : 'utf-16',
\ 'utf-16be' : 'utf-16',
\ 'utf-16le' : 'utf-16le',
\ 'utf-32' : 'ucs-4',
\ 'utf-32be' : 'ucs-4',
\ 'utf-32le' : 'ucs-4le',
\ 'iso-10646-ucs-4' : 'ucs-4',
\ 'csucs4' : 'ucs-4'
\ }
lockvar g:tohtml#charset_to_encoding
"}}}
func! tohtml#Convert2HTML(line1, line2) "{{{
let s:settings = tohtml#GetUserSettings() let s:settings = tohtml#GetUserSettings()
if !&diff || s:settings.diff_one_file if !&diff || s:settings.diff_one_file "{{{
if a:line2 >= a:line1 if a:line2 >= a:line1
let g:html_start_line = a:line1 let g:html_start_line = a:line1
let g:html_end_line = a:line2 let g:html_end_line = a:line2
@ -24,31 +298,50 @@ func! tohtml#Convert2HTML(line1, line2)
let g:html_start_line = a:line2 let g:html_start_line = a:line2
let g:html_end_line = a:line1 let g:html_end_line = a:line1
endif endif
runtime syntax/2html.vim runtime syntax/2html.vim "}}}
else else "{{{
let win_list = [] let win_list = []
let buf_list = [] let buf_list = []
windo | if &diff | call add(win_list, winbufnr(0)) | endif windo | if &diff | call add(win_list, winbufnr(0)) | endif
let s:settings.whole_filler = 1 let s:settings.whole_filler = 1
let g:html_diff_win_num = 0 let g:html_diff_win_num = 0
for window in win_list for window in win_list
" switch to the next buffer to convert
exe ":" . bufwinnr(window) . "wincmd w" exe ":" . bufwinnr(window) . "wincmd w"
" figure out whether current charset and encoding will work, if not
" default to UTF-8
if !exists('g:html_use_encoding') &&
\ (&l:fileencoding!='' && &l:fileencoding!=s:settings.vim_encoding ||
\ &l:fileencoding=='' && &encoding!=s:settings.vim_encoding)
echohl WarningMsg
echomsg "TOhtml: mismatched file encodings in Diff buffers, using UTF-8"
echohl None
let s:settings.vim_encoding = 'utf-8'
let s:settings.encoding = 'UTF-8'
endif
" set up for diff-mode conversion
let g:html_start_line = 1 let g:html_start_line = 1
let g:html_end_line = line('$') let g:html_end_line = line('$')
let g:html_diff_win_num += 1 let g:html_diff_win_num += 1
" convert this file
runtime syntax/2html.vim runtime syntax/2html.vim
" remember the HTML buffer for later combination
call add(buf_list, bufnr('%')) call add(buf_list, bufnr('%'))
endfor endfor
unlet g:html_diff_win_num unlet g:html_diff_win_num
call tohtml#Diff2HTML(win_list, buf_list) call tohtml#Diff2HTML(win_list, buf_list)
endif endif "}}}
unlet g:html_start_line unlet g:html_start_line
unlet g:html_end_line unlet g:html_end_line
unlet s:settings unlet s:settings
endfunc endfunc "}}}
func! tohtml#Diff2HTML(win_list, buf_list) func! tohtml#Diff2HTML(win_list, buf_list) "{{{
let xml_line = "" let xml_line = ""
let tag_close = '>' let tag_close = '>'
@ -87,7 +380,7 @@ func! tohtml#Diff2HTML(win_list, buf_list)
call add(html, '<head>') call add(html, '<head>')
" include encoding as close to the top as possible, but only if not already " include encoding as close to the top as possible, but only if not already
" contained in XML information (to avoid haggling over content type) " contained in XML information
if s:settings.encoding != "" && !s:settings.use_xhtml if s:settings.encoding != "" && !s:settings.use_xhtml
call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close) call add(html, "<meta http-equiv=\"content-type\" content=\"text/html; charset=" . s:settings.encoding . '"' . tag_close)
endif endif
@ -133,7 +426,8 @@ func! tohtml#Diff2HTML(win_list, buf_list)
let s:body_end_line = getline('.') let s:body_end_line = getline('.')
endif endif
" Grab the style information. Some of this will be duplicated... " Grab the style information. Some of this will be duplicated so only insert
" it if it's not already there. {{{
1 1
let style_start = search('^<style type="text/css">') let style_start = search('^<style type="text/css">')
1 1
@ -151,8 +445,10 @@ func! tohtml#Diff2HTML(win_list, buf_list)
let insert_index += 1 let insert_index += 1
endif endif
endfor endfor
endif endif " }}}
" everything new will get added before the diff styles so diff highlight
" properly overrides normal highlight
if diff_style_start != 0 if diff_style_start != 0
let insert_index = diff_style_start let insert_index = diff_style_start
endif endif
@ -203,6 +499,20 @@ func! tohtml#Diff2HTML(win_list, buf_list)
" just in case some user autocmd creates content in the new buffer, make sure " just in case some user autocmd creates content in the new buffer, make sure
" it is empty before proceeding " it is empty before proceeding
%d %d
" set the fileencoding to match the charset we'll be using
let &l:fileencoding=s:settings.vim_encoding
" According to http://www.w3.org/TR/html4/charset.html#doc-char-set, the byte
" order mark is highly recommend on the web when using multibyte encodings. But,
" it is not a good idea to include it on UTF-8 files. Otherwise, let Vim
" determine when it is actually inserted.
if s:settings.vim_encoding == 'utf-8'
setlocal nobomb
else
setlocal bomb
endif
call append(0, html) call append(0, html)
if len(style) > 0 if len(style) > 0
@ -210,7 +520,7 @@ func! tohtml#Diff2HTML(win_list, buf_list)
let style_start = search('^</head>')-1 let style_start = search('^</head>')-1
" Insert javascript to toggle matching folds open and closed in all windows, " Insert javascript to toggle matching folds open and closed in all windows,
" if dynamic folding is active. " if dynamic folding is active. {{{
if s:settings.dynamic_folds if s:settings.dynamic_folds
call append(style_start, [ call append(style_start, [
\ "<script type='text/javascript'>", \ "<script type='text/javascript'>",
@ -234,13 +544,13 @@ func! tohtml#Diff2HTML(win_list, buf_list)
\ s:settings.use_xhtml ? '//]]>' : " -->", \ s:settings.use_xhtml ? '//]]>' : " -->",
\ "</script>" \ "</script>"
\ ]) \ ])
endif endif "}}}
" Insert styles from all the generated html documents and additional styles " Insert styles from all the generated html documents and additional styles
" for the table-based layout of the side-by-side diff. The diff should take " for the table-based layout of the side-by-side diff. The diff should take
" up the full browser window (but not more), and be static in size, " up the full browser window (but not more), and be static in size,
" horizontally scrollable when the lines are too long. Otherwise, the diff " horizontally scrollable when the lines are too long. Otherwise, the diff
" is pretty useless for really long lines. " is pretty useless for really long lines. {{{
if s:settings.use_css if s:settings.use_css
call append(style_start, call append(style_start,
\ ['<style type="text/css">']+ \ ['<style type="text/css">']+
@ -252,28 +562,28 @@ func! tohtml#Diff2HTML(win_list, buf_list)
\ 'td div { overflow: auto; }', \ 'td div { overflow: auto; }',
\ s:settings.use_xhtml ? '' : '-->', \ s:settings.use_xhtml ? '' : '-->',
\ '</style>' \ '</style>'
\ ]) \])
endif endif "}}}
endif endif
let &paste = s:old_paste let &paste = s:old_paste
let &magic = s:old_magic let &magic = s:old_magic
endfunc endfunc "}}}
" Gets a single user option and sets it in the passed-in Dict, or gives it the " Gets a single user option and sets it in the passed-in Dict, or gives it the
" default value if the option doesn't actually exist. " default value if the option doesn't actually exist.
func! tohtml#GetOption(settings, option, default) func! tohtml#GetOption(settings, option, default) "{{{
if exists('g:html_'.a:option) if exists('g:html_'.a:option)
let a:settings[a:option] = g:html_{a:option} let a:settings[a:option] = g:html_{a:option}
else else
let a:settings[a:option] = a:default let a:settings[a:option] = a:default
endif endif
endfunc endfunc "}}}
" returns a Dict containing the values of all user options for 2html, including " returns a Dict containing the values of all user options for 2html, including
" default values for those not given an explicit value by the user. Discards the " default values for those not given an explicit value by the user. Discards the
" html_ prefix of the option for nicer looking code. " html_ prefix of the option for nicer looking code.
func! tohtml#GetUserSettings() func! tohtml#GetUserSettings() "{{{
if exists('s:settings') if exists('s:settings')
" just restore the known options if we've already retrieved them " just restore the known options if we've already retrieved them
return s:settings return s:settings
@ -289,7 +599,7 @@ func! tohtml#GetUserSettings()
let g:html_use_xhtml = g:use_xhtml let g:html_use_xhtml = g:use_xhtml
endif endif
" get current option settings with appropriate defaults " get current option settings with appropriate defaults {{{
call tohtml#GetOption(user_settings, 'no_progress', !has("statusline") ) call tohtml#GetOption(user_settings, 'no_progress', !has("statusline") )
call tohtml#GetOption(user_settings, 'diff_one_file', 0 ) call tohtml#GetOption(user_settings, 'diff_one_file', 0 )
call tohtml#GetOption(user_settings, 'number_lines', &number ) call tohtml#GetOption(user_settings, 'number_lines', &number )
@ -302,8 +612,9 @@ func! tohtml#GetUserSettings()
call tohtml#GetOption(user_settings, 'no_pre', 0 ) call tohtml#GetOption(user_settings, 'no_pre', 0 )
call tohtml#GetOption(user_settings, 'whole_filler', 0 ) call tohtml#GetOption(user_settings, 'whole_filler', 0 )
call tohtml#GetOption(user_settings, 'use_xhtml', 0 ) call tohtml#GetOption(user_settings, 'use_xhtml', 0 )
" }}}
" override those settings that need it " override those settings that need it {{{
" hover opening implies dynamic folding " hover opening implies dynamic folding
if user_settings.hover_unfold if user_settings.hover_unfold
@ -330,49 +641,91 @@ func! tohtml#GetUserSettings()
" aren't allowed inside a <pre> block " aren't allowed inside a <pre> block
if !user_settings.use_css if !user_settings.use_css
let user_settings.no_pre = 1 let user_settings.no_pre = 1
endif endif "}}}
" Figure out proper MIME charset from the 'encoding' option. if exists("g:html_use_encoding") "{{{
if exists("g:html_use_encoding") " user specified the desired MIME charset, figure out proper
" 'fileencoding' from it or warn the user if we cannot
let user_settings.encoding = g:html_use_encoding let user_settings.encoding = g:html_use_encoding
let user_settings.vim_encoding = tohtml#EncodingFromCharset(g:html_use_encoding)
if user_settings.vim_encoding == ''
echohl WarningMsg
echomsg "TOhtml: file encoding for"
\ g:html_use_encoding
\ "unknown, please set 'fileencoding'"
echohl None
endif
else else
let vim_encoding = &encoding " Figure out proper MIME charset from 'fileencoding' if possible
if vim_encoding =~ '^8bit\|^2byte' if &l:fileencoding != ''
let vim_encoding = substitute(vim_encoding, '^8bit-\|^2byte-', '', '') let user_settings.vim_encoding = &l:fileencoding
call tohtml#CharsetFromEncoding(user_settings)
endif endif
if vim_encoding == 'latin1'
let user_settings.encoding = 'iso-8859-1' " else from 'encoding' if possible
elseif vim_encoding =~ "^cp12" if &l:fileencoding == '' || user_settings.encoding == ''
let user_settings.encoding = substitute(vim_encoding, 'cp', 'windows-', '') let user_settings.vim_encoding = &encoding
elseif vim_encoding == 'sjis' || vim_encoding == 'cp932' call tohtml#CharsetFromEncoding(user_settings)
let user_settings.encoding = 'Shift_JIS' endif
elseif vim_encoding == 'big5' || vim_encoding == 'cp950'
let user_settings.encoding = "Big5" " else default to UTF-8 and warn user
elseif vim_encoding == 'euc-cn' if user_settings.encoding == ''
let user_settings.encoding = 'GB_2312-80' let user_settings.vim_encoding = 'utf-8'
elseif vim_encoding == 'euc-tw'
let user_settings.encoding = ""
elseif vim_encoding =~ '^euc\|^iso\|^koi'
let user_settings.encoding = substitute(vim_encoding, '.*', '\U\0', '')
elseif vim_encoding == 'cp949'
let user_settings.encoding = 'KS_C_5601-1987'
elseif vim_encoding == 'cp936'
let user_settings.encoding = 'GBK'
elseif vim_encoding =~ '^ucs\|^utf'
let user_settings.encoding = 'UTF-8' let user_settings.encoding = 'UTF-8'
else echohl WarningMsg
let user_settings.encoding = "" echomsg "TOhtml: couldn't determine MIME charset, using UTF-8"
echohl None
endif endif
endif endif "}}}
" TODO: font " TODO: font
return user_settings return user_settings
endif endif
endfunc endfunc "}}}
" get the proper HTML charset name from a Vim encoding option.
function! tohtml#CharsetFromEncoding(settings) "{{{
let l:vim_encoding = a:settings.vim_encoding
if exists('g:html_charset_override') && has_key(g:html_charset_override, l:vim_encoding)
let a:settings.encoding = g:html_charset_override[l:vim_encoding]
else
if l:vim_encoding =~ '^8bit\|^2byte'
" 8bit- and 2byte- prefixes are to indicate encodings available on the
" system that Vim will convert with iconv(), look up just the encoding name,
" not Vim's prefix.
let l:vim_encoding = substitute(l:vim_encoding, '^8bit-\|^2byte-', '', '')
endif
if has_key(g:tohtml#encoding_to_charset, l:vim_encoding)
let a:settings.encoding = g:tohtml#encoding_to_charset[l:vim_encoding]
else
let a:settings.encoding = ""
endif
endif
if a:settings.encoding != ""
let l:vim_encoding = tohtml#EncodingFromCharset(a:settings.encoding)
if l:vim_encoding != ""
" if the Vim encoding to HTML encoding conversion is set up (by default or
" by the user) to convert to a different encoding, we need to also change
" the Vim encoding of the new buffer
let a:settings.vim_encoding = l:vim_encoding
endif
endif
endfun "}}}
" Get the proper Vim encoding option setting from an HTML charset name.
function! tohtml#EncodingFromCharset(encoding) "{{{
if exists('g:html_encoding_override') && has_key(g:html_encoding_override, a:encoding)
return g:html_encoding_override[a:encoding]
elseif has_key(g:tohtml#charset_to_encoding, tolower(a:encoding))
return g:tohtml#charset_to_encoding[tolower(a:encoding)]
else
return ""
endif
endfun "}}}
let &cpo = s:cpo_sav let &cpo = s:cpo_sav
unlet s:cpo_sav unlet s:cpo_sav
" Make sure any patches will probably use consistent indent " Make sure any patches will probably use consistent indent
" vim: ts=8 sw=2 sts=2 noet " vim: ts=8 sw=2 sts=2 noet fdm=marker

View File

@ -1,4 +1,4 @@
*arabic.txt* For Vim version 7.3. Last change: 2005 Mar 29 *arabic.txt* For Vim version 7.3. Last change: 2010 Nov 13
VIM REFERENCE MANUAL by Nadim Shaikli VIM REFERENCE MANUAL by Nadim Shaikli
@ -146,7 +146,7 @@ o Enable Arabic settings [short-cut]
:set arabic :set arabic
< <
The two above noted possible invocations are the preferred manner The two above noted possible invocations are the preferred manner
in which users are instructed to proceed. Baring an enabled 'termbidi' in which users are instructed to proceed. Barring an enabled 'termbidi'
setting, both command options: setting, both command options:
1. set the appropriate keymap 1. set the appropriate keymap

View File

@ -1,4 +1,4 @@
*diff.txt* For Vim version 7.3. Last change: 2010 Sep 30 *diff.txt* For Vim version 7.3. Last change: 2010 Nov 03
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -373,8 +373,8 @@ get an error message. Possible causes:
If it's not clear what the problem is set the 'verbose' option to one or more If it's not clear what the problem is set the 'verbose' option to one or more
to see more messages. to see more messages.
The self-installing Vim includes a diff program. If you don't have it you The self-installing Vim for MS-Windows includes a diff program. If you don't
might want to download a diff.exe. For example from have it you might want to download a diff.exe. For example from
http://jlb.twu.net/code/unixkit.php. http://jlb.twu.net/code/unixkit.php.

View File

@ -1,4 +1,4 @@
*eval.txt* For Vim version 7.3. Last change: 2010 Oct 27 *eval.txt* For Vim version 7.3. Last change: 2010 Nov 13
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -4017,7 +4017,7 @@ maparg({name}[, {mode} [, {abbr} [, {dict}]]]) *maparg()*
characters will be used: characters will be used:
" " Normal, Visual and Operator-pending " " Normal, Visual and Operator-pending
"!" Insert and Commandline mode "!" Insert and Commandline mode
(|mapmpde-ic|) (|mapmode-ic|)
"sid" The script local ID, used for <sid> mappings "sid" The script local ID, used for <sid> mappings
(|<SID>|). (|<SID>|).

View File

@ -1,4 +1,4 @@
*gui.txt* For Vim version 7.3. Last change: 2010 May 14 *gui.txt* For Vim version 7.3. Last change: 2010 Nov 03
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -156,26 +156,26 @@ configure which ones appear with the 'guioptions' option.
The interface looks like this (with ":set guioptions=mlrb"): The interface looks like this (with ":set guioptions=mlrb"):
+------------------------------+ +------------------------------+ `
| File Edit Help | <- Menu bar (m) | File Edit Help | <- Menu bar (m) `
+-+--------------------------+-+ +-+--------------------------+-+ `
|^| |^| |^| |^| `
|#| Text area. |#| |#| Text area. |#| `
| | | | | | | | `
|v|__________________________|v| |v|__________________________|v| `
Normal status line -> |-+ File.c 5,2 +-| Normal status line -> |-+ File.c 5,2 +-| `
between Vim windows |^|""""""""""""""""""""""""""|^| between Vim windows |^|""""""""""""""""""""""""""|^| `
| | | | | | | | `
| | Another file buffer. | | | | Another file buffer. | | `
| | | | | | | | `
|#| |#| |#| |#| `
Left scrollbar (l) -> |#| |#| <- Right Left scrollbar (l) -> |#| |#| <- Right `
|#| |#| scrollbar (r) |#| |#| scrollbar (r) `
| | | | | | | | `
|v| |v| |v| |v| `
+-+--------------------------+-+ +-+--------------------------+-+ `
| |< #### >| | <- Bottom | |< #### >| | <- Bottom `
+-+--------------------------+-+ scrollbar (b) +-+--------------------------+-+ scrollbar (b) `
Any of the scrollbar or menu components may be turned off by not putting the Any of the scrollbar or menu components may be turned off by not putting the
appropriate letter in the 'guioptions' string. The bottom scrollbar is appropriate letter in the 'guioptions' string. The bottom scrollbar is

View File

@ -1,4 +1,4 @@
*insert.txt* For Vim version 7.3. Last change: 2010 Oct 27 *insert.txt* For Vim version 7.3. Last change: 2010 Nov 10
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -1037,6 +1037,8 @@ items:
items that only differ in case are added items that only differ in case are added
dup when non-zero this match will be added even when an dup when non-zero this match will be added even when an
item with the same word is already present. item with the same word is already present.
empty when non-zero this match will be added even when it is
an empty string
All of these except 'icase' must be a string. If an item does not meet these All of these except 'icase' must be a string. If an item does not meet these
requirements then an error message is given and further items in the list are requirements then an error message is given and further items in the list are
@ -1064,9 +1066,9 @@ match to the total list. These matches should then not appear in the returned
list! Call |complete_check()| now and then to allow the user to press a key list! Call |complete_check()| now and then to allow the user to press a key
while still searching for matches. Stop searching when it returns non-zero. while still searching for matches. Stop searching when it returns non-zero.
The function is allowed to move the cursor, it is restored afterwards. This *E839* *E840*
option cannot be set from a |modeline| or in the |sandbox|, for security The function is allowed to move the cursor, it is restored afterwards.
reasons. The function is not allowed to move to another window or delete text.
An example that completes the names of the months: > An example that completes the names of the months: >
fun! CompleteMonths(findstart, base) fun! CompleteMonths(findstart, base)

View File

@ -1,4 +1,4 @@
*intro.txt* For Vim version 7.3. Last change: 2010 Sep 29 *intro.txt* For Vim version 7.3. Last change: 2010 Nov 03
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -703,7 +703,7 @@ Lines longer than the window width will wrap, unless the 'wrap' option is off
(see below). The 'linebreak' option can be set to wrap at a blank character. (see below). The 'linebreak' option can be set to wrap at a blank character.
If the window has room after the last line of the buffer, Vim will show '~' in If the window has room after the last line of the buffer, Vim will show '~' in
the first column of the last lines in the window, like this: > the first column of the last lines in the window, like this:
+-----------------------+ +-----------------------+
|some line | |some line |
@ -715,7 +715,7 @@ the first column of the last lines in the window, like this: >
Thus the '~' lines indicate that the end of the buffer was reached. Thus the '~' lines indicate that the end of the buffer was reached.
If the last line in a window doesn't fit, Vim will indicate this with a '@' in If the last line in a window doesn't fit, Vim will indicate this with a '@' in
the first column of the last lines in the window, like this: > the first column of the last lines in the window, like this:
+-----------------------+ +-----------------------+
|first line | |first line |

View File

@ -1,4 +1,4 @@
*map.txt* For Vim version 7.3. Last change: 2010 Sep 29 *map.txt* For Vim version 7.3. Last change: 2010 Nov 10
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -1093,16 +1093,20 @@ is executed, it is transformed into a normal Ex command and then executed.
For starters: See section |40.2| in the user manual. For starters: See section |40.2| in the user manual.
*E183* *user-cmd-ambiguous* *E183* *E841* *user-cmd-ambiguous*
All user defined commands must start with an uppercase letter, to avoid All user defined commands must start with an uppercase letter, to avoid
confusion with builtin commands. (There are a few builtin commands, notably confusion with builtin commands. Exceptions are these builtin commands:
:Next, :Print and :X, which do start with an uppercase letter. The builtin :Next
will always take precedence in these cases). The other characters of the user :X
command can be uppercase letters, lowercase letters or digits. When using They cannot be used for a user defined command. ":Print" is also an existing
digits, note that other commands that take a numeric argument may become command, but it is deprecated and can be overruled.
ambiguous. For example, the command ":Cc2" could be the user command ":Cc2"
without an argument, or the command ":Cc" with argument "2". It is advised to The other characters of the user command can be uppercase letters, lowercase
put a space between the command name and the argument to avoid these problems. letters or digits. When using digits, note that other commands that take a
numeric argument may become ambiguous. For example, the command ":Cc2" could
be the user command ":Cc2" without an argument, or the command ":Cc" with
argument "2". It is advised to put a space between the command name and the
argument to avoid these problems.
When using a user-defined command, the command can be abbreviated. However, if When using a user-defined command, the command can be abbreviated. However, if
an abbreviation is not unique, an error will be issued. Furthermore, a an abbreviation is not unique, an error will be issued. Furthermore, a

View File

@ -1,4 +1,4 @@
*options.txt* For Vim version 7.3. Last change: 2010 Oct 23 *options.txt* For Vim version 7.3. Last change: 2010 Nov 16
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -1699,7 +1699,8 @@ A jump table for the options with a short description can be found at |Q_op|.
with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U| with CTRL-X CTRL-U. |i_CTRL-X_CTRL-U|
See |complete-functions| for an explanation of how the function is See |complete-functions| for an explanation of how the function is
invoked and what it should return. invoked and what it should return.
This option cannot be set from a |modeline| or in the |sandbox|, for
security reasons.
*'completeopt'* *'cot'* *'completeopt'* *'cot'*
'completeopt' 'cot' string (default: "menu,preview") 'completeopt' 'cot' string (default: "menu,preview")
@ -2843,6 +2844,7 @@ A jump table for the options with a short description can be found at |Q_op|.
"dos" is not present or no <CR><NL> is found in the file. "dos" is not present or no <CR><NL> is found in the file.
Except: if "unix" was chosen, but there is a <CR> before Except: if "unix" was chosen, but there is a <CR> before
the first <NL>, and there appear to be more <CR>s than <NL>s in the first <NL>, and there appear to be more <CR>s than <NL>s in
the first few lines, "mac" is used.
4. If 'fileformat' is still not set, the first name from 4. If 'fileformat' is still not set, the first name from
'fileformats' is used. 'fileformats' is used.
When reading a file into an existing buffer, the same is done, but When reading a file into an existing buffer, the same is done, but
@ -6230,8 +6232,9 @@ A jump table for the options with a short description can be found at |Q_op|.
Do smart autoindenting when starting a new line. Works for C-like Do smart autoindenting when starting a new line. Works for C-like
programs, but can also be used for other languages. 'cindent' does programs, but can also be used for other languages. 'cindent' does
something like this, works better in most cases, but is more strict, something like this, works better in most cases, but is more strict,
see |C-indenting|. When 'cindent' is on, setting 'si' has no effect. see |C-indenting|. When 'cindent' is on or 'smartindent' is set,
'indentexpr' is a more advanced alternative. setting 'si' has no effect. 'indentexpr' is a more advanced
alternative.
Normally 'autoindent' should also be on when using 'smartindent'. Normally 'autoindent' should also be on when using 'smartindent'.
An indent is automatically inserted: An indent is automatically inserted:
- After a line ending in '{'. - After a line ending in '{'.
@ -7533,8 +7536,7 @@ A jump table for the options with a short description can be found at |Q_op|.
with an uppercase letter, and don't contain a lowercase with an uppercase letter, and don't contain a lowercase
letter. Thus "KEEPTHIS and "K_L_M" are stored, but "KeepThis" letter. Thus "KEEPTHIS and "K_L_M" are stored, but "KeepThis"
and "_K_L_M" are not. Nested List and Dict items may not be and "_K_L_M" are not. Nested List and Dict items may not be
read back correctly, you end up with a string representation read back correctly, you end up with an empty item.
instead.
" Maximum number of lines saved for each register. Old name of " Maximum number of lines saved for each register. Old name of
the '<' item, with the disadvantage that you need to put a the '<' item, with the disadvantage that you need to put a
backslash before the ", otherwise it will be recognized as the backslash before the ", otherwise it will be recognized as the

View File

@ -1,4 +1,4 @@
*pi_tar.txt* For Vim version 7.3. Last change: 2010 Aug 09 *pi_tar.txt* For Vim version 7.3. Last change: 2010 Nov 03
+====================+ +====================+
| Tar File Interface | | Tar File Interface |
@ -60,11 +60,11 @@ Copyright 2005-2010: The GPL (gnu public license) applies to *tar-copyright*
<.vimrc> file. <.vimrc> file.
Default Default
Variable Value Explanation Variable Value Explanation
*g:tar_browseoptions* "Ptf" used to get a list of contents *g:tar_browseoptions* "Ptf" used to get a list of contents
*g:tar_readoptions* "OPxf" used to extract a file from a tarball *g:tar_readoptions* "OPxf" used to extract a file from a tarball
*g:tar_cmd* "tar" the name of the tar program *g:tar_cmd* "tar" the name of the tar program
*g:tar_nomax* 0 if true, file window will not be maximized *g:tar_nomax* 0 if true, file window will not be maximized
*g:tar_secure* undef if exists: *g:tar_secure* undef if exists:
"--"s will be used to prevent unwanted "--"s will be used to prevent unwanted
option expansion in tar commands. option expansion in tar commands.
Please be sure that your tar command Please be sure that your tar command
@ -76,7 +76,7 @@ Copyright 2005-2010: The GPL (gnu public license) applies to *tar-copyright*
"-" "-"
Not all tar's support the "--" which is why Not all tar's support the "--" which is why
it isn't default. it isn't default.
*g:tar_writeoptions* "uf" used to update/replace a file *g:tar_writeoptions* "uf" used to update/replace a file
============================================================================== ==============================================================================

View File

@ -1,4 +1,4 @@
*quotes.txt* For Vim version 7.3. Last change: 2006 Apr 24 *quotes.txt* For Vim version 7.3. Last change: 2010 Nov 03
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -260,15 +260,16 @@ Eccettuato, Italy)
In summary: In summary:
__ ___ _ _ _ ___ _____ __ ___ _ _ _ ___ _____ `
\ \ / (_)_ __ ___ (_)___ | | | |/ _ \_ _| \ \ / (_)_ __ ___ (_)___ | | | |/ _ \_ _| `
\ \ / /| | '_ ` _ \ | / __| | |_| | | | || | \ \ / /| | '_ ` _ \ | / __| | |_| | | | || | `
\ V / | | | | | | | | \__ \ | _ | |_| || | \ V / | | | | | | | | \__ \ | _ | |_| || | `
\_/ |_|_| |_| |_| |_|___/ |_| |_|\___/ |_| \_/ |_|_| |_| |_| |_|___/ |_| |_|\___/ |_| `
____ _____ _ _ _____ _____ _ _ ____ _____ _ _ _____ _____ _ _ `
/ ___|_ _| | | | ___| ___| | | / ___|_ _| | | | ___| ___| | | `
\___ \ | | | | | | |_ | |_ | | | \___ \ | | | | | | |_ | |_ | | | `
___) || | | |_| | _| | _| |_|_| ___) || | | |_| | _| | _| |_|_| `
|____/ |_| \___/|_| |_| (_|_) (Tony Nugent, Australia) |____/ |_| \___/|_| |_| (_|_) (Tony Nugent, Australia) `
vim:tw=78:ts=8:ft=help:norl: vim:tw=78:ts=8:ft=help:norl:

View File

@ -1,4 +1,4 @@
*syntax.txt* For Vim version 7.3. Last change: 2010 Sep 23 *syntax.txt* For Vim version 7.3. Last change: 2010 Oct 7
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -390,10 +390,10 @@ Or use the ":TOhtml" user command. It is defined in a standard plugin.
:10,40TOhtml :10,40TOhtml
Warning: This is slow! The script must process every character of every line. Warning: This can be slow! The script must process every character of every
Because it is so slow, by default a progress bar is displayed in the line. Because it can take a long time, by default a progress bar is displayed
statusline for each step that usually takes a long time. If you don't like in the statusline for each major step in the conversion process. If you don't
seeing this progress bar, you can disable it and get a very minor speed like seeing this progress bar, you can disable it and get a very minor speed
improvement with: > improvement with: >
let g:html_no_progress = 1 let g:html_no_progress = 1
@ -475,40 +475,69 @@ risk of making some things look a bit different, use: >
This will use <br> at the end of each line and use "&nbsp;" for repeated This will use <br> at the end of each line and use "&nbsp;" for repeated
spaces. spaces.
The current value of 'encoding' is used to specify the charset of the HTML For diff mode on a single file (with g:html_diff_one_file) a sequence of more
file. This only works for those values of 'encoding' that have an equivalent than 3 filler lines is displayed as three lines with the middle line
HTML charset name. To overrule this set g:html_use_encoding to the name of mentioning the total number of inserted lines. If you prefer to see all the
the charset to be used: > inserted lines as with the side-by-side diff, use: >
:let g:html_use_encoding = "foobar"
To omit the line that specifies the charset, set g:html_use_encoding to an
empty string: >
:let g:html_use_encoding = ""
To go back to the automatic mechanism, delete the g:html_use_encoding
variable: >
:unlet g:html_use_encoding
<
For diff mode a sequence of more than 3 filler lines is displayed as three
lines with the middle line mentioning the total number of inserted lines. If
you prefer to see all the inserted lines use: >
:let g:html_whole_filler = 1 :let g:html_whole_filler = 1
And to go back to displaying up to three lines again: > And to go back to displaying up to three lines again: >
:unlet g:html_whole_filler :unlet g:html_whole_filler
< <
TOhtml uses the current value of 'fileencoding' if set, or 'encoding' if not,
to determine the charset and 'fileencoding' of the HTML file. In general, this
works for the encodings mentioned specifically by name in |encoding-names|, but
TOhtml will only automatically use those encodings which are widely supported.
However, you can override this to support specific encodings that may not be
automatically detected by default.
To overrule all automatic charset detection, set g:html_use_encoding to the
name of the charset to be used. TOhtml will try to determine the appropriate
'fileencoding' setting from the charset, but you may need to set it manually
if TOhtml cannot determine the encoding. It is recommended to set this
variable to something widely supported, like UTF-8, for anything you will be
hosting on a webserver: >
:let g:html_use_encoding = "UTF-8"
You can also use this option to omit the line that specifies the charset
entirely, by setting g:html_use_encoding to an empty string: >
:let g:html_use_encoding = ""
To go back to the automatic mechanism, delete the g:html_use_encoding
variable: >
:unlet g:html_use_encoding
If you specify a charset with g:html_use_encoding for which TOhtml cannot
automatically detect the corresponding 'fileencoding' setting, you can use
g:html_encoding_override to allow TOhtml to detect the correct encoding.
This is a dictionary of charset-encoding pairs that will replace existing
pairs automatically detected by TOhtml, or supplement with new pairs. For
example, to allow TOhtml to detect the HTML charset "windows-1252" properly as
the encoding "8bit-cp1252", use: >
:let g:html_encoding_override = {'windows-1252': '8bit-cp1252'}
<
The g:html_charset_override is similar, it allows TOhtml to detect the HTML
charset for any 'fileencoding' or 'encoding' which is not detected
automatically. You can also use it to override specific existing
encoding-charset pairs. For example, TOhtml will by default use UTF-8 for all
Unicode/UCS encodings. To use UTF-16 and UTF-32 instead, use: >
:let g:html_charset_override = {'ucs-4': 'UTF-32', 'utf-16': 'UTF-16'}
Note that documents encoded in either UTF-32 or UTF-16 have known
compatibility problems with at least one major browser.
*convert-to-XML* *convert-to-XHTML* *convert-to-XML* *convert-to-XHTML*
An alternative is to have the script generate XHTML (XML compliant HTML). To If you do not like plain HTML, an alternative is to have the script generate
do this set the "html_use_xhtml" variable: > XHTML (XML compliant HTML). To do this set the "html_use_xhtml" variable: >
:let g:html_use_xhtml = 1 :let g:html_use_xhtml = 1
Any of these options can be enabled or disabled by setting them explicitly to Any of the on/off options listed above can be enabled or disabled by setting
the desired value, or restored to their default by removing the variable using them explicitly to the desired value, or restored to their default by removing
|:unlet|. the variable using |:unlet|.
Remarks: Remarks:
- This only works in a version with GUI support. If the GUI is not actually
running (possible for X11) it still works, but not very well (the colors
may be wrong).
- Some truly ancient browsers may not show the background colors. - Some truly ancient browsers may not show the background colors.
- From most browsers you can also print the file (in color)! - From most browsers you can also print the file (in color)!
- This version of TOhtml may work with older versions of Vim, but some
features such as conceal support will not function, and the colors may be
incorrect for an old Vim without GUI support compiled in.
Here is an example how to run the script over all .c and .h files from a Here is an example how to run the script over all .c and .h files from a
Unix shell: > Unix shell: >

View File

@ -4216,7 +4216,9 @@ E835 options.txt /*E835*
E836 if_pyth.txt /*E836* E836 if_pyth.txt /*E836*
E837 if_pyth.txt /*E837* E837 if_pyth.txt /*E837*
E838 netbeans.txt /*E838* E838 netbeans.txt /*E838*
E839 insert.txt /*E839*
E84 windows.txt /*E84* E84 windows.txt /*E84*
E840 insert.txt /*E840*
E85 options.txt /*E85* E85 options.txt /*E85*
E86 windows.txt /*E86* E86 windows.txt /*E86*
E87 windows.txt /*E87* E87 windows.txt /*E87*

View File

@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.3. Last change: 2010 Oct 27 *todo.txt* For Vim version 7.3. Last change: 2010 Nov 16
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -30,7 +30,11 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs* *known-bugs*
-------------------- Known bugs and current work ----------------------- -------------------- Known bugs and current work -----------------------
Segfault with command line abbreviation. (Randy Morris, 2010 Oct 25) Crash when using vimgrep with an ftp file. (Christian Brabandt, 2010 Nov 5)
Crash with dragn-n-drop of file combined with netrw (Marius Gedminas, 2008 Jun
11) I can't reproduce it. It's probably caused by a handle_drop() call
in combination with autocommands that invoke a ":redraw" command.
Another valgrind output Jun 30.
'cursorline' is displayed too short when there are concealed characters and 'cursorline' is displayed too short when there are concealed characters and
'list' is set, 'listchars' at default value. (Dennis Preiser, 2010 Aug 15) 'list' is set, 'listchars' at default value. (Dennis Preiser, 2010 Aug 15)
@ -38,6 +42,10 @@ Segfault with command line abbreviation. (Randy Morris, 2010 Oct 25)
Conceal: using Tab for cchar causes problems. Should reject it. (ZyX, 2010 Conceal: using Tab for cchar causes problems. Should reject it. (ZyX, 2010
Aug 25) Aug 25)
Problems with building after 7.3.050, -as-needed does not work for gcc 4.4.1?
(Charles Campbell, 2010 Nov 7) Or is the problem that we should use -ltinfo,
because nothing is used from ncurses?
Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2, Syntax region with 'concealends' and a 'cchar' value, 'conceallevel' set to 2,
only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug only one of the two ends gets the cchar displayed. (Brett Stahlman, 2010 Aug
21, Ben Fritz, 2010 Sep 14) 21, Ben Fritz, 2010 Sep 14)
@ -56,53 +64,42 @@ Using ":break" or something else that stops executing commands inside a
":finally" does not rethrow a previously uncaught exception. (ZyX, 2010 Oct ":finally" does not rethrow a previously uncaught exception. (ZyX, 2010 Oct
15) 15)
Patch for 2html to support 'fileencoding'. (Benjamin Fritz, 2010 Sep 10)
Beta testing finished now?
Three patches for undo persistence. (Christian Brabandt, 2010 Sep 4)
Patch to adjust mzscheme to support racket. (Sergey Khorev, 2010 Oct 24)
string() can't parse back "inf" and "nan". Fix documentation or fix code? string() can't parse back "inf" and "nan". Fix documentation or fix code?
(ZyX, 2010 Aug 23) (ZyX, 2010 Aug 23)
Patch to use "--as-needed" instead of the link.sh functionality. (Kirill A.
Shutemov, 2010 Aug 25)
ml_get error for using :copen in a custom complete function. (Xavier
Deguillard, 2010 Oct 19) Other way to reproduce it by Lech Lorens, Oct 20.
Patch from Lech: Oct 20. More problems from Lech, Oct 21.
Patch to fix complete(). (Kikuchan, 2010 Oct 15)
maparg() does not show the <script> flag. How to restore the script ID? maparg() does not show the <script> flag. How to restore the script ID?
Ruby: Patch to load Gem module. Why is this needed? (Yasuhiro Matsumoto, 2010 Patch to fix \%V item in regexp. (Christian Brabandt, 2010 Nov 8)
Oct 6) Not quite right.
":command Print echo 'print'" works, but ":Print" doesn't. Builtin Print
should be overruled. (Aaron Thoma)
Patch by Christian Brabandt, 2010 Sep 5.
Comparing recursive structure loops forever. (ZyX, 2010 Aug 22, info from John
Beckett Aug 23)
Patch from Christian Brabandt, 2010 Oct 2
":drop" does not respect 'autochdir'. (Peter Odding, 2010 Jul 24)
Patch from Benjamin Fritz, 2010 Oct 13.
Highlighting stops working after changing it many times. Script to reproduce Highlighting stops working after changing it many times. Script to reproduce
it: Pablo Contreras, 2010 Oct 12 Windows XP and 7. Font is never freed? it: Pablo Contreras, 2010 Oct 12 Windows XP and 7. Font is never freed?
When 'cursorcolumn' is set locally to a window, ":new" opens a window with the
same highlighting but 'cursorcolumn' is empty. (Tyru, 2010 Nov 15)
GTK: drawing a double-width combining character over single-width characters GTK: drawing a double-width combining character over single-width characters
doesn't look right. (Dominique Pelle, 2010 Aug 8) doesn't look right. (Dominique Pelle, 2010 Aug 8)
GTK: patch to fix hitting Enter in a dialog. (Britton Kerin, 2010 Nov 11)
GTK: tear-off menu does not work. (Kurt Sonnenmoser, 2010 Oct 25) GTK: tear-off menu does not work. (Kurt Sonnenmoser, 2010 Oct 25)
":find" completion does not escape space in directory name. (Isz, 2010 Nov 2)
Win32: When using Chinese tear-off menu doesn't work. (Weasley, 2010 Oct 31)
Patch by Alex Jakushev, 2010 Nov 2.
Using control characters in 'statusline' doesn't work well. (ZyX, 2010 Nov 1)
Patch by Caio Ariede, 2010 Nov 3
Using ":call" inside "if 0" does not see that a function returns a Dict and Using ":call" inside "if 0" does not see that a function returns a Dict and
gives error for "." as string concatenation. (Yasuhiro Matsumoto, 2010 Oct 20) gives error for "." as string concatenation. (Yasuhiro Matsumoto, 2010 Oct 20)
Patch: Oct 20. Patch: Oct 20.
Patch to move check for emsg_not_now() up to avoid statusline not being
updated. (James Vega, 2010 Nov 4)
Copy/paste between Vim and Google chrome doesn't work well for multi-byte Copy/paste between Vim and Google chrome doesn't work well for multi-byte
characters. (Ben Haskell, 2010 Sep 17) characters. (Ben Haskell, 2010 Sep 17)
When putting text in the cut buffer (when exiting) and conversion doesn't work When putting text in the cut buffer (when exiting) and conversion doesn't work
@ -121,8 +118,9 @@ the system encoding (usually utf-8).
Problem producing tags file when hebrew.frx is present. It has a BOM. Problem producing tags file when hebrew.frx is present. It has a BOM.
Results in E670. (Tony Mechelynck, 2010 May 2) Results in E670. (Tony Mechelynck, 2010 May 2)
Patch for dynamic loading Ruby on Unix. (Jon, 2010 Aug 23) Patch to support sorting on floating point number.
Included, but also need a change to configure.
Ruby: ":ruby print $buffer.number" returns zero.
setpos() does not restore cursor position after :normal. (Tyru, 2010 Aug 11) setpos() does not restore cursor position after :normal. (Tyru, 2010 Aug 11)
@ -138,6 +136,9 @@ and that it's documented.
With "tw=55 fo+=a" typing space before ) doesn't work well. (Scott Mcdermott, With "tw=55 fo+=a" typing space before ) doesn't work well. (Scott Mcdermott,
2010 Oct 24) 2010 Oct 24)
Patch to add random number generator. (Hong Xu, 2010 Nov 8, update Nov 10)
Alternative from Christian Brabandt. (2010 Sep 19)
Messages in message.txt are highlighted as examples. Messages in message.txt are highlighted as examples.
When using cp850 the NBSP (0xff) is not drawn correctly. (Brett Stahlman, 2010 When using cp850 the NBSP (0xff) is not drawn correctly. (Brett Stahlman, 2010
@ -166,17 +167,33 @@ Echo starts in the wrong column:
while 1 | let s = input('A') | echo 'R' | endw while 1 | let s = input('A') | echo 'R' | endw
(Boyko Bantchev, 2010 Aug 9) (Boyko Bantchev, 2010 Aug 9)
Patch for GVimExt to show an icon. (Dominik Riebeling, 2010 Nov 7)
Patch: Let rare word highlighting overrule good word highlighting. Patch: Let rare word highlighting overrule good word highlighting.
(Jakson A. Aquino, 2010 Jul 30) (Jakson A. Aquino, 2010 Jul 30)
Patch to make more characters work in dialogs. (Yankwei Jia, 2010 Aug 4) Patch to make more characters work in dialogs. (Yankwei Jia, 2010 Aug 4)
Patch for VisVim, pass file name to VimOpenFile. (Jiri Sedlak, 2010 Nov 12)
When 'lines' is 25 and 'scrolloff' is 12, "j" scrolls zero or two lines When 'lines' is 25 and 'scrolloff' is 12, "j" scrolls zero or two lines
instead of one. (Constantin Pan, 2010 Sep 10) instead of one. (Constantin Pan, 2010 Sep 10)
Writing nested List and Dict in viminfo gives error message and can't be read
back. (Yukihiro Nakadaira, 2010 Nov 13)
Dos uninstal may delete vim.bat from the wrong directory (e.g., when someone
makes his own wrapper). Add a magic string with the version number to the
.bat file and check for it in the uninstaller. E.g.
# uninstall key: vim7.3*
Problem with cursor in the wrong column. (SungHyun Nam, 2010 Mar 11) Problem with cursor in the wrong column. (SungHyun Nam, 2010 Mar 11)
Additional info by Dominique Pelle. (also on 2010 Apr 10) Additional info by Dominique Pelle. (also on 2010 Apr 10)
CreateFile and CreateFileW are used without sharing, filewritable() fails when
the file was already open (e.g. script is being sourced). Add FILE_SHARE_READ|
FILE_SHARE_WRITE in mch_access()? (Phillippe Vaucher, 2010 Nov 2)
Is ~/bin (literally) in $PATH supposed to work? (Paul, 2010 March 29) Is ~/bin (literally) in $PATH supposed to work? (Paul, 2010 March 29)
Looks like only bash can do it. (Yakov Lerner) Looks like only bash can do it. (Yakov Lerner)
@ -217,6 +234,9 @@ like it has ":keepjumps" before it.
Coverity: ask someone to create new user: Dominique. Coverity: ask someone to create new user: Dominique.
Check if there are new reported defects: http://scan.coverity.com/rung2.html Check if there are new reported defects: http://scan.coverity.com/rung2.html
Patch to support :undo absolute jump to file save number. (Christian Brabandt,
2010 Nov 5)
When setting 'undofile' while the file is already loaded, but unchanged, try When setting 'undofile' while the file is already loaded, but unchanged, try
to read the undo file. Requires computing a checksum of the text. (Andy to read the undo file. Requires computing a checksum of the text. (Andy
Wokula) Wokula)
@ -266,6 +286,9 @@ Invalid read error in Farsi mode. (Dominique Pelle, 2009 Aug 2)
For running gvim on an USB stick: avoid the OLE registration. Use a command For running gvim on an USB stick: avoid the OLE registration. Use a command
line argument -noregister. line argument -noregister.
When using an expression in 'statusline' leading white space sometimes goes
missing (but not always). (ZyX, 2010 Nov 1)
When a mapping exists both for insert mode and lang-insert mode, the last one When a mapping exists both for insert mode and lang-insert mode, the last one
doesn't work. (Tyru, 2010 May 6) Or is this intended? doesn't work. (Tyru, 2010 May 6) Or is this intended?
@ -437,6 +460,11 @@ correct. Don't use it in the swap file.
Completion for ":buf" doesn't work properly on Win32 when 'shellslash' is off. Completion for ":buf" doesn't work properly on Win32 when 'shellslash' is off.
(Henrik Ohman, 2009, Jan 29) (Henrik Ohman, 2009, Jan 29)
shellescape() depends on 'shellshash' for quoting. That doesn't work when
'shellslash' is set but using cmd.exe. (Ben Fritz)
Use a different option or let it depend on whether 'shell' looks like a
unix-like shell?
Allow patches to add something to version.c, like with an official patch, so Allow patches to add something to version.c, like with an official patch, so
that :version output shows which patches have been applied. that :version output shows which patches have been applied.
@ -486,11 +514,6 @@ Having "Syntax" in 'eventignore' for :bufdo may cause problems, e.g. for
option only for when jumping to another buffer, not when the command argument option only for when jumping to another buffer, not when the command argument
is executed. is executed.
Crash with dragn-n-drop of file combined with netrw (Marius Gedminas, 2008 Jun
11) I can't reproduce it. It's probably caused by a handle_drop() call
in combination with autocommands that invoke a ":redraw" command.
Another valgrind output Jun 30.
":pedit %" with a BufReadPre autocommand causes the cursor to move to the ":pedit %" with a BufReadPre autocommand causes the cursor to move to the
first line. (Ingo Karkat, 2008 Jul 1) Ian Kelling is working on this. first line. (Ingo Karkat, 2008 Jul 1) Ian Kelling is working on this.
@ -903,6 +926,8 @@ if_ruby.c.
Patch to dynamically load Python on Solaris. (Danek Duvall, 2009 Feb 16) Patch to dynamically load Python on Solaris. (Danek Duvall, 2009 Feb 16)
Needs more work. Needs more work.
Python3 interface doesn't handle utf-8 correctly? (Nov 2010, lilydjwg)
The need_fileinfo flag is messy. Instead make the message right away and put The need_fileinfo flag is messy. Instead make the message right away and put
it in keep_msg? it in keep_msg?
@ -1564,6 +1589,8 @@ Athena and Motif:
Athena GUI: Athena GUI:
9 The first event for any button in the menu or toolbar appears to get lost.
The second click on a menu does work.
9 When dragging the scrollbar thumb very fast, focus is only obtained in 9 When dragging the scrollbar thumb very fast, focus is only obtained in
the scrollbar itself. And the thumb is no longer updated when moving the scrollbar itself. And the thumb is no longer updated when moving
through files. through files.
@ -4379,6 +4406,8 @@ Debug mode:
Various improvements: Various improvements:
9 Python: be able to define a Python function that can be called directly
from Vim script. Requires converting the arguments and return value.
8 ":sign unplace * file={filename}" should work. Also: ":sign unplace * 8 ":sign unplace * file={filename}" should work. Also: ":sign unplace *
buffer={bufnr}". So one can remove all signs for one file/buffer. buffer={bufnr}". So one can remove all signs for one file/buffer.
7 Add plugins for formatting? Should be able to make a choice depending on 7 Add plugins for formatting? Should be able to make a choice depending on

View File

@ -1,4 +1,4 @@
*usr_01.txt* For Vim version 7.3. Last change: 2008 May 07 *usr_01.txt* For Vim version 7.3. Last change: 2010 Nov 03
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar
@ -40,13 +40,20 @@ the commands and options used for it. Use these two commands:
Press CTRL-] to jump to a subject under the cursor. Press CTRL-] to jump to a subject under the cursor.
Press CTRL-O to jump back (repeat to go further back). Press CTRL-O to jump back (repeat to go further back).
Many links are in vertical bars, like this: |bars|. An option name, like Many links are in vertical bars, like this: |bars|. The bars themselves may
'number', a command in double quotes like ":write" and any other word can also be hidden or invisible, see below. An option name, like 'number', a command
be used as a link. Try it out: Move the cursor to CTRL-] and press CTRL-] in double quotes like ":write" and any other word can also be used as a link.
on it. Try it out: Move the cursor to CTRL-] and press CTRL-] on it.
Other subjects can be found with the ":help" command, see |help.txt|. Other subjects can be found with the ":help" command, see |help.txt|.
The bars and stars are usually hidden with the |conceal| feature. They also
use |hl-Ignore|, using the same color for the text as the background. You can
make them visible with: >
:set conceallevel=0
:hi link HelpBar Normal
:hi link HelpStar Normal
============================================================================== ==============================================================================
*01.2* Vim installed *01.2* Vim installed

View File

@ -1,4 +1,4 @@
*usr_41.txt* For Vim version 7.3. Last change: 2010 Jul 20 *usr_41.txt* For Vim version 7.3. Last change: 2010 Oct 31
VIM USER MANUAL - by Bram Moolenaar VIM USER MANUAL - by Bram Moolenaar
@ -793,6 +793,7 @@ Syntax and highlighting: *syntax-functions* *highlighting-functions*
synID() get syntax ID at a specific position synID() get syntax ID at a specific position
synIDattr() get a specific attribute of a syntax ID synIDattr() get a specific attribute of a syntax ID
synIDtrans() get translated syntax ID synIDtrans() get translated syntax ID
synstack() get list of syntax IDs at a specific position
diff_hlID() get highlight ID for diff mode at a position diff_hlID() get highlight ID for diff mode at a position
matchadd() define a pattern to highlight (a "match") matchadd() define a pattern to highlight (a "match")
matcharg() get info about |:match| arguments matcharg() get info about |:match| arguments

View File

@ -1,4 +1,4 @@
*various.txt* For Vim version 7.3. Last change: 2010 Sep 23 *various.txt* For Vim version 7.3. Last change: 2010 Nov 10
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -101,6 +101,7 @@ g8 Print the hex values of the bytes used in the
:[range]P[rint] [count] [flags] :[range]P[rint] [count] [flags]
Just as ":print". Was apparently added to Vi for Just as ":print". Was apparently added to Vi for
people that keep the shift key pressed too long... people that keep the shift key pressed too long...
Note: A user command can overrule this command.
See |ex-flags| for [flags]. See |ex-flags| for [flags].
*:l* *:list* *:l* *:list*

View File

@ -1,4 +1,4 @@
*version7.txt* For Vim version 7.3. Last change: 2010 Oct 20 *version7.txt* For Vim version 7.3. Last change: 2010 Nov 03
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -1673,7 +1673,7 @@ The GTK font dialog uses a font size zero when the font name doesn't include a
size. Use a default size of 10. size. Use a default size of 10.
This example in the documentation didn't work: This example in the documentation didn't work:
:e `=foo . ".c" ` :e `=foo . ".c"`
Skip over the expression in `=expr` when looking for comments, |, % and #. Skip over the expression in `=expr` when looking for comments, |, % and #.
When ":helpgrep" doesn't find anything there is no error message. When ":helpgrep" doesn't find anything there is no error message.

View File

@ -214,7 +214,7 @@ EOF
} }
# main # main
usage() if $#ARGV < 2; usage() if $#ARGV < 1;
print "Processing tags...\n"; print "Processing tags...\n";
readTagFile( $ARGV[ 0 ] ); readTagFile( $ARGV[ 0 ] );

View File

@ -1,23 +1,60 @@
" Vim plugin for converting a syntax highlighted file to HTML. " Vim plugin for converting a syntax highlighted file to HTML.
" Maintainer: Ben Fritz <fritzophrenic@gmail.com> " Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2010 Aug 12 " Last Change: 2010 Oct 28
" "
" The core of the code is in $VIMRUNTIME/autoload/tohtml.vim and " The core of the code is in $VIMRUNTIME/autoload/tohtml.vim and
" $VIMRUNTIME/syntax/2html.vim " $VIMRUNTIME/syntax/2html.vim
" "
" TODO: " TODO:
" * Patch to leave tab characters in when noexpandtab set (Andy Spencer)
" * Make folds show up when using a range and dynamic folding
" * Remove fold column when there are no folds and using dynamic folding
" * Restore open/closed folds and cursor position after processing each file " * Restore open/closed folds and cursor position after processing each file
" with option not to restore for speed increase " with option not to restore for speed increase
" * Add extra meta info (generation time, etc.) " * Add extra meta info (generation time, etc.)
" * Tidy up so we can use strict doctype more? " * Tidy up so we can use strict doctype in even more situations?
" * Implementation detail: add threshold for writing the lines to the html " * Implementation detail: add threshold for writing the lines to the html
" buffer before we're done (5000 or so lines should do it) " buffer before we're done (5000 or so lines should do it)
" * TODO comments for code cleanup scattered throughout " * TODO comments for code cleanup scattered throughout
"
"
" Changelog:
" 7.3_v7 (this version): see betas released on vim_dev below:
" 7.3_v7b3: Fixed bug, convert Unicode to UTF-8 all the way.
" 7.3_v7b2: Remove automatic detection of encodings that are not
" supported by all major browsers according to
" http://wiki.whatwg.org/wiki/Web_Encodings and convert
" to UTF-8 for all Unicode encodings. Make HTML
" encoding to Vim encoding detection be
" case-insensitive for built-in pairs.
" 7.3_v7b1: Remove use of setwinvar() function which cannot be
" called in restricted mode (Andy Spencer). Use
" 'fencoding' instead of 'encoding' to determine by
" charset, and make sure the 'fenc' of the generated
" file matches its indicated charset. Add charsets for
" all of Vim's natively supported encodings.
" 7.3_v6 (0d3f0e3d289b): Really fix bug with 'nowrapscan', 'magic' and other
" user settings interfering with diff mode generation,
" trailing whitespace (e.g. line number column) when
" using html_no_pre, and bugs when using
" html_hover_unfold.
" 7.3_v5 ( unreleased ): Fix bug with 'nowrapscan' and also with out-of-sync
" folds in diff mode when first line was folded.
" 7.3_v4 (7e008c174cc3): Bugfixes, especially for xhtml markup, and diff mode.
" 7.3_v3 (a29075150aee): Refactor option handling and make html_use_css
" default to true when not set to anything. Use strict
" doctypes where possible. Rename use_xhtml option to
" html_use_xhtml for consistency. Use .xhtml extension
" when using this option. Add meta tag for settings.
" 7.3_v2 (80229a724a11): Fix syntax highlighting in diff mode to use both the
" diff colors and the normal syntax colors
" 7.3_v1 (e7751177126b): Add conceal support and meta tags in output
" Pre-v1 baseline: Mercurial changeset 3c9324c0800e
if exists('g:loaded_2html_plugin') if exists('g:loaded_2html_plugin')
finish finish
endif endif
let g:loaded_2html_plugin = 'vim7.3_v6' let g:loaded_2html_plugin = 'vim7.3_v7'
" Define the :TOhtml command when: " Define the :TOhtml command when:
" - 'compatible' is not set " - 'compatible' is not set

View File

@ -1,6 +1,6 @@
" Vim syntax support file " Vim syntax support file
" Maintainer: Ben Fritz <fritzophrenic@gmail.com> " Maintainer: Ben Fritz <fritzophrenic@gmail.com>
" Last Change: 2010 Aug 12 " Last Change: 2010 Sep 04
" "
" Additional contributors: " Additional contributors:
" "
@ -265,6 +265,19 @@ set paste
let s:old_magic = &magic let s:old_magic = &magic
set magic set magic
" set the fileencoding to match the charset we'll be using
let &l:fileencoding=s:settings.vim_encoding
" According to http://www.w3.org/TR/html4/charset.html#doc-char-set, the byte
" order mark is highly recommend on the web when using multibyte encodings. But,
" it is not a good idea to include it on UTF-8 files. Otherwise, let Vim
" determine when it is actually inserted.
if s:settings.vim_encoding == 'utf-8'
setlocal nobomb
else
setlocal bomb
endif
let s:lines = [] let s:lines = []
if s:settings.use_xhtml if s:settings.use_xhtml
@ -1071,14 +1084,14 @@ let &magic = s:old_magic
let @/ = s:old_search let @/ = s:old_search
let &more = s:old_more let &more = s:old_more
exe s:orgwin . "wincmd w" exe s:orgwin . "wincmd w"
let &l:stl = s:origwin_stl
let &l:et = s:old_et let &l:et = s:old_et
let &l:scrollbind = s:old_bind let &l:scrollbind = s:old_bind
exe s:newwin . "wincmd w" exe s:newwin . "wincmd w"
let &l:stl = s:newwin_stl
exec 'resize' s:old_winheight exec 'resize' s:old_winheight
let &l:winfixheight = s:old_winfixheight let &l:winfixheight = s:old_winfixheight
call setwinvar(s:orgwin,'&stl', s:origwin_stl)
call setwinvar(s:newwin,'&stl', s:newwin_stl)
let &ls=s:ls let &ls=s:ls
" Save a little bit of memory (worth doing?) " Save a little bit of memory (worth doing?)

View File

@ -1,7 +1,7 @@
" Vim syntax file " Vim syntax file
" Language: Vim help file " Language: Vim help file
" Maintainer: Bram Moolenaar (Bram@vim.org) " Maintainer: Bram Moolenaar (Bram@vim.org)
" Last Change: 2009 May 18 " Last Change: 2010 Nov 03
" Quit when a (custom) syntax file was already loaded " Quit when a (custom) syntax file was already loaded
if exists("b:current_syntax") if exists("b:current_syntax")
@ -30,6 +30,7 @@ syn match helpVim "VIM REFERENCE.*"
syn match helpOption "'[a-z]\{2,\}'" syn match helpOption "'[a-z]\{2,\}'"
syn match helpOption "'t_..'" syn match helpOption "'t_..'"
syn match helpHeader "\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore syn match helpHeader "\s*\zs.\{-}\ze\s\=\~$" nextgroup=helpIgnore
syn match helpGraphic ".* \ze`$" nextgroup=helpIgnore
syn match helpIgnore "." contained conceal syn match helpIgnore "." contained conceal
syn keyword helpNote note Note NOTE note: Note: NOTE: Notes Notes: syn keyword helpNote note Note NOTE note: Note: NOTE: Notes Notes:
syn match helpSpecial "\<N\>" syn match helpSpecial "\<N\>"

View File

@ -1,8 +1,8 @@
" Vim syntax file " Vim syntax file
" This is a GENERATED FILE. Please always refer to source file at the URI below. " This is a GENERATED FILE. Please always refer to source file at the URI below.
" Language: XF86Config (XFree86 configuration file) " Language: XF86Config (XFree86 configuration file)
" Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz> " Former Maintainer: David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>
" Last Change: 2005 Jul 12 " Last Change: 2010 Nov 01
" URL: http://trific.ath.cx/Ftp/vim/syntax/xf86conf.vim " URL: http://trific.ath.cx/Ftp/vim/syntax/xf86conf.vim
" Required Vim Version: 6.0 " Required Vim Version: 6.0
" "
@ -63,7 +63,7 @@ syn match xf86confModeLineValue "\"[^\"]\+\"\(\_s\+[0-9.]\+\)\{9}" nextgroup=xf8
" Sections and subsections " Sections and subsections
if b:xf86conf_xfree86_version >= 4 if b:xf86conf_xfree86_version >= 4
syn region xf86confSection matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"\(Files\|Server[_ ]*Flags\|Input[_ ]*Device\|Device\|Video[_ ]*Adaptor\|Server[_ ]*Layout\|DRI\|Extensions\|Vendor\|Keyboard\|Pointer\)\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confComment,xf86confOption,xf86confKeyword,xf86confSectionError syn region xf86confSection matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"\(Files\|Server[_ ]*Flags\|Input[_ ]*Device\|Device\|Video[_ ]*Adaptor\|Server[_ ]*Layout\|DRI\|Extensions\|Vendor\|Keyboard\|Pointer\|InputClass\)\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confComment,xf86confOption,xf86confKeyword,xf86confSectionError
syn region xf86confSectionModule matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"Module\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confSubsectionAny,xf86confComment,xf86confOption,xf86confKeyword syn region xf86confSectionModule matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"Module\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confSubsectionAny,xf86confComment,xf86confOption,xf86confKeyword
syn region xf86confSectionMonitor matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"Monitor\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confSubsectionMode,xf86confModeLine,xf86confComment,xf86confOption,xf86confKeyword syn region xf86confSectionMonitor matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"Monitor\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confSubsectionMode,xf86confModeLine,xf86confComment,xf86confOption,xf86confKeyword
syn region xf86confSectionModes matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"Modes\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confSubsectionMode,xf86confModeLine,xf86confComment syn region xf86confSectionModes matchgroup=xf86confSectionDelim start="^\s*Section\s\+\"Modes\"" end="^\s*EndSection\>" skip="#.*$\|\"[^\"]*\"" contains=xf86confSubsectionMode,xf86confModeLine,xf86confComment
@ -165,7 +165,7 @@ syn match xf86confSync "\(\s\+[+-][CHV]_*Sync\)\+" contained
" Synchronization " Synchronization
if b:xf86conf_xfree86_version >= 4 if b:xf86conf_xfree86_version >= 4
syn sync match xf86confSyncSection grouphere xf86confSection "^\s*Section\s\+\"\(Files\|Server[_ ]*Flags\|Input[_ ]*Device\|Device\|Video[_ ]*Adaptor\|Server[_ ]*Layout\|DRI\|Extensions\|Vendor\|Keyboard\|Pointer\)\"" syn sync match xf86confSyncSection grouphere xf86confSection "^\s*Section\s\+\"\(Files\|Server[_ ]*Flags\|Input[_ ]*Device\|Device\|Video[_ ]*Adaptor\|Server[_ ]*Layout\|DRI\|Extensions\|Vendor\|Keyboard\|Pointer\|InputClass\)\""
syn sync match xf86confSyncSectionModule grouphere xf86confSectionModule "^\s*Section\s\+\"Module\"" syn sync match xf86confSyncSectionModule grouphere xf86confSectionModule "^\s*Section\s\+\"Module\""
syn sync match xf86confSyncSectionModes groupthere xf86confSectionModes "^\s*Section\s\+\"Modes\"" syn sync match xf86confSyncSectionModes groupthere xf86confSectionModes "^\s*Section\s\+\"Modes\""
else else

View File

@ -6142,7 +6142,7 @@ msgid "E485: Can't read file %s"
msgstr "E485: %s 파일을 읽을 수 없습니다" msgstr "E485: %s 파일을 읽을 수 없습니다"
msgid "E37: No write since last change (add ! to override)" msgid "E37: No write since last change (add ! to override)"
msgstr "E37: 마지막으로 고친 뒤 저장되지 않았습니다 (덮어쓰려면 ! 더하기)" msgstr "E37: 마지막으로 고친 뒤 저장되지 않았습니다 (무시하려면 ! 더하기)"
msgid "E38: Null argument" msgid "E38: Null argument"
msgstr "E38: 널 인자" msgstr "E38: 널 인자"

View File

@ -6142,7 +6142,7 @@ msgid "E485: Can't read file %s"
msgstr "E485: %s <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>" msgstr "E485: %s <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD>ϴ<EFBFBD>"
msgid "E37: No write since last change (add ! to override)" msgid "E37: No write since last change (add ! to override)"
msgstr "E37: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ģ <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʾҽ<CABE><D2BD>ϴ<EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ! <20><><EFBFBD>ϱ<EFBFBD>)" msgstr "E37: <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><>ģ <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʾҽ<CABE><D2BD>ϴ<EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><EFBFBD><EFBFBD> ! <20><><EFBFBD>ϱ<EFBFBD>)"
msgid "E38: Null argument" msgid "E38: Null argument"
msgstr "E38: <20><> <20><><EFBFBD><EFBFBD>" msgstr "E38: <20><> <20><><EFBFBD><EFBFBD>"