Skip to content
Permalink
Browse files

Merge remote-tracking branch 'vim/master'

  • Loading branch information...
ychin committed Oct 26, 2019
2 parents e0f0d5c + dfded98 commit 491433d93b8d898c2115f2ddc90dc7ca35cf21c0
Showing with 10,428 additions and 1,521 deletions.
  1. +4 −4 READMEdir/README_os390.txt
  2. +94 −27 runtime/autoload/xmlformat.vim
  3. +10 −1 runtime/doc/autocmd.txt
  4. +7 −3 runtime/doc/change.txt
  5. +6 −6 runtime/doc/eval.txt
  6. +6 −2 runtime/doc/helphelp.txt
  7. +1 −1 runtime/doc/map.txt
  8. +1 −1 runtime/doc/message.txt
  9. +13 −12 runtime/doc/options.txt
  10. +4 −4 runtime/doc/popup.txt
  11. +2 −2 runtime/doc/quickfix.txt
  12. +20 −0 runtime/doc/syntax.txt
  13. +7 −0 runtime/doc/tags
  14. +1 −1 runtime/doc/terminal.txt
  15. +7 −8 runtime/doc/textprop.txt
  16. +14 −33 runtime/doc/todo.txt
  17. +4 −2 runtime/doc/various.txt
  18. +4 −1 runtime/doc/windows.txt
  19. +1 −1 runtime/filetype.vim
  20. +19 −0 runtime/ftplugin/meson.vim
  21. +4 −1 runtime/gvim.desktop
  22. +180 −0 runtime/indent/meson.vim
  23. +3 −3 runtime/indent/sh.vim
  24. +2 −2 runtime/indent/typescript.vim
  25. +5 −5 runtime/indent/xml.vim
  26. +3 −0 runtime/lang/menu_tr.latin1.vim
  27. +3 −0 runtime/lang/menu_tr.utf-8.vim
  28. +332 −0 runtime/lang/menu_tr_tr.latin1.vim
  29. +331 −0 runtime/lang/menu_tr_tr.utf-8.vim
  30. +9 −1 runtime/pack/dist/opt/matchit/autoload/matchit.vim
  31. +6 −2 runtime/pack/dist/opt/matchit/doc/matchit.txt
  32. +8 −8 runtime/pack/dist/opt/matchit/plugin/matchit.vim
  33. +90 −0 runtime/syntax/dart.vim
  34. +7 −6 runtime/syntax/dtd.vim
  35. +165 −0 runtime/syntax/meson.vim
  36. +20 −16 runtime/syntax/xml.vim
  37. +7 −4 runtime/syntax/zsh.vim
  38. +502 −502 runtime/tutor/tutor.tr.iso9
  39. +31 −31 runtime/tutor/tutor.zh.big5
  40. +1 −1 runtime/tutor/tutor.zh.utf-8
  41. +1 −1 runtime/tutor/tutor.zh_tw.utf-8
  42. +4 −1 runtime/vim.desktop
  43. +1 −1 src/INSTALLvms.txt
  44. +1 −1 src/Makefile
  45. +3 −0 src/auto/configure
  46. +1 −0 src/autocmd.c
  47. +15 −10 src/change.c
  48. +1 −0 src/config.mk.in
  49. +2 −0 src/configure.ac
  50. +7 −6 src/drawline.c
  51. +6 −1 src/drawscreen.c
  52. +10 −4 src/ex_cmds.c
  53. +2 −0 src/ex_getln.c
  54. +10 −2 src/getchar.c
  55. +1 −1 src/globals.h
  56. +2 −0 src/gui_w32.c
  57. +36 −0 src/if_python3.c
  58. +8 −15 src/main.c
  59. +4 −1 src/memline.c
  60. +22 −22 src/netbeans.c
  61. +6 −0 src/os_amiga.c
  62. +15 −5 src/os_unix.c
  63. +4 −0 src/po/Make_all.mak
  64. +386 −382 src/po/de.po
  65. +0 −1 src/po/gvim.desktop.in
  66. +7,272 −0 src/po/tr.po
  67. +0 −1 src/po/vim.desktop.in
  68. +22 −11 src/popupwin.c
  69. +1 −0 src/proto/os_amiga.pro
  70. +8 −2 src/quickfix.c
  71. +56 −33 src/register.c
  72. +2 −0 src/scriptfile.c
  73. +79 −93 src/search.c
  74. +157 −157 src/sign.c
  75. +17 −18 src/structs.h
  76. +10 −17 src/term.c
  77. +3 −1 src/terminal.c
  78. +1 −1 src/testdir/dumps/Test_Xcursorline_13.dump
  79. +1 −1 src/testdir/dumps/Test_Xcursorline_14.dump
  80. +1 −1 src/testdir/dumps/Test_Xcursorline_15.dump
  81. +1 −1 src/testdir/dumps/Test_Xcursorline_16.dump
  82. +1 −1 src/testdir/dumps/Test_Xcursorline_17.dump
  83. +1 −1 src/testdir/dumps/Test_Xcursorline_18.dump
  84. +10 −10 src/testdir/dumps/Test_popupwin_corners.dump
  85. +5 −0 src/testdir/dumps/Test_winline_rnu.dump
  86. +23 −0 src/testdir/test_display.vim
  87. +27 −0 src/testdir/test_filter_cmd.vim
  88. +26 −0 src/testdir/test_gn.vim
  89. +7 −2 src/testdir/test_listener.vim
  90. +11 −3 src/testdir/test_popupwin.vim
  91. +91 −1 src/testdir/test_quickfix.vim
  92. +14 −14 src/testdir/test_registers.vim
  93. +17 −0 src/testdir/test_terminal.vim
  94. +28 −0 src/testdir/test_textprop.vim
  95. +1 −7 src/textprop.c
  96. +52 −0 src/version.c
  97. +1 −0 src/vim.h
@@ -11,8 +11,8 @@ Getting the source to z/OS:

First get the source code in one big tar file and ftp it a binary to z/OS. If
the tar file is initially compressed with gzip (tar.gz) or bzip2 (tar.bz2)
uncompress it on your PC, as this tools are (most likely) not available on the
mainframe.
uncompress it on your PC, as these tools are (most likely) not available on
the mainframe.

To reduce the size of the tar file you might compress it into a zip file. On
z/OS Unix you might have the command "jar" from java to uncompress a zip. Use:
@@ -82,8 +82,8 @@ WARNING: This instruction was not tested with Vim 7.4 or later.

There are two ways for building VIM with X11 support. The first way is simple
and results in a big executable (~13 Mb), the second needs a few additional
steps and results in a much smaller executable (~4.5 Mb). This examples assume
you want Motif.
steps and results in a much smaller executable (~4.5 Mb). These examples
assume you want Motif.

The easy way:
$ export CC=cc
@@ -1,6 +1,6 @@
" Vim plugin for formatting XML
" Last Change: Thu, 07 Dec 2018
" Version: 0.1
" Last Change: 2019 Oct 24
" Version: 0.2
" Author: Christian Brabandt <cb@256bit.org>
" Repository: https://github.com/chrisbra/vim-xml-ftplugin
" License: VIM License
@@ -22,44 +22,73 @@ func! xmlformat#Format()
" do not fall back to internal formatting
return 0
endif
let count_orig = v:count
let sw = shiftwidth()
let prev = prevnonblank(v:lnum-1)
let s:indent = indent(prev)/sw
let result = []
let lastitem = prev ? getline(prev) : ''
let is_xml_decl = 0
" split on `<`, but don't split on very first opening <
for item in split(join(getline(v:lnum, (v:lnum + v:count - 1))), '.\@<=[>]\zs')
if s:EndTag(item)
let s:indent = s:DecreaseIndent()
call add(result, s:Indent(item))
elseif s:EmptyTag(lastitem)
call add(result, s:Indent(item))
elseif s:StartTag(lastitem) && s:IsTag(item)
let s:indent += 1
call add(result, s:Indent(item))
else
if !s:IsTag(item)
" Simply split on '<'
let t=split(item, '.<\@=\zs')
let s:indent+=1
call add(result, s:Indent(t[0]))
let s:indent = s:DecreaseIndent()
call add(result, s:Indent(t[1]))
else
" go through every line, but don't join all content together and join it
" back. We might lose empty lines
let list = getline(v:lnum, (v:lnum + count_orig - 1))
let current = 0
for line in list
" Keep empty input lines?
if empty(line)
call add(result, '')
continue
elseif line !~# '<[/]\?[^>]*>'
let nextmatch = match(list, '<[/]\?[^>]*>', current)
let line .= join(list[(current + 1):(nextmatch-1)], "\n")
call remove(list, current+1, nextmatch-1)
endif
" split on `>`, but don't split on very first opening <
" this means, items can be like ['<tag>', 'tag content</tag>']
for item in split(line, '.\@<=[>]\zs')
if s:EndTag(item)
let s:indent = s:DecreaseIndent()
call add(result, s:Indent(item))
elseif s:EmptyTag(lastitem)
call add(result, s:Indent(item))
elseif s:StartTag(lastitem) && s:IsTag(item)
let s:indent += 1
call add(result, s:Indent(item))
else
if !s:IsTag(item)
" Simply split on '<', if there is one,
" but reformat according to &textwidth
let t=split(item, '.<\@=\zs')
" t should only contain 2 items, but just be safe here
if s:IsTag(lastitem)
let s:indent+=1
endif
let result+=s:FormatContent([t[0]])
if s:EndTag(t[1])
let s:indent = s:DecreaseIndent()
endif
"for y in t[1:]
let result+=s:FormatContent(t[1:])
"endfor
else
call add(result, s:Indent(item))
endif
endif
endif
let lastitem = item
endfor
let lastitem = item
endfor
let current += 1
endfor

if !empty(result)
exe v:lnum. ",". (v:lnum + v:count - 1). 'd'
if !empty(result)
let lastprevline = getline(v:lnum + count_orig)
let delete_lastline = v:lnum + count_orig - 1 == line('$')
exe v:lnum. ",". (v:lnum + count_orig - 1). 'd'
call append(v:lnum - 1, result)
" Might need to remove the last line, if it became empty because of the
" append() call
let last = v:lnum + len(result)
if getline(last) is ''
" do not use empty(), it returns true for `empty(0)`
if getline(last) is '' && lastprevline is '' && delete_lastline
exe last. 'd'
endif
endif
@@ -88,6 +117,7 @@ func! s:StartTag(tag)
let is_comment = s:IsComment(a:tag)
return a:tag =~? '^\s*<[^/?]' && !is_comment
endfunc
" Check if tag is a Comment start {{{1
func! s:IsComment(tag)
return a:tag =~? '<!--'
endfunc
@@ -108,6 +138,43 @@ endfunc
func! s:EmptyTag(tag)
return a:tag =~ '/>\s*$'
endfunc
" Format input line according to textwidth {{{1
func! s:FormatContent(list)
let result=[]
let limit = 80
if &textwidth > 0
let limit = &textwidth
endif
let column=0
let idx = -1
let add_indent = 0
let cnt = 0
for item in a:list
for word in split(item, '\s\+\S\+\zs')
let column += strdisplaywidth(word, column)
if match(word, "^\\s*\n\\+\\s*$") > -1
call add(result, '')
let idx += 1
let column = 0
let add_indent = 1
elseif column > limit || cnt == 0
let add = s:Indent(s:Trim(word))
call add(result, add)
let column = strdisplaywidth(add)
let idx += 1
else
if add_indent
let result[idx] = s:Indent(s:Trim(word))
else
let result[idx] .= ' '. s:Trim(word)
endif
let add_indent = 0
endif
let cnt += 1
endfor
endfor
return result
endfunc
" Restoration And Modelines: {{{1
let &cpo= s:keepcpo
unlet s:keepcpo
@@ -268,7 +268,6 @@ Name triggered by ~
|BufCreate| just after adding a buffer to the buffer list
|BufDelete| before deleting a buffer from the buffer list
|BufWipeout| before completely deleting a buffer
|TerminalOpen| after a terminal buffer was created

|BufFilePre| before changing the name of the current buffer
|BufFilePost| after changing the name of the current buffer
@@ -304,6 +303,10 @@ Name triggered by ~
|VimLeavePre| before exiting Vim, before writing the viminfo file
|VimLeave| before exiting Vim, after writing the viminfo file

Terminal
|TerminalOpen| after a terminal buffer was created
|TerminalWinOpen| after a terminal buffer was created in a new window

Various
|FileChangedShell| Vim notices that a file changed since editing started
|FileChangedShellPost| After handling a file changed since editing started
@@ -1088,6 +1091,12 @@ TerminalOpen Just after a terminal buffer was created, with
`:terminal` or |term_start()|. This event is
triggered even if the buffer is created
without a window, with the ++hidden option.
*TerminalWinOpen*
TerminalWinOpen Just after a terminal buffer was created, with
`:terminal` or |term_start()|. This event is
triggered only if the buffer is created
with a window. Can be used to set window
local options for the terminal window.
*TermResponse*
TermResponse After the response to |t_RV| is received from
the terminal. The value of |v:termresponse|
@@ -999,9 +999,13 @@ inside of strings can change! Also see 'softtabstop' option. >
delete and yank) ({.%#:} only work with put).

*:reg* *:registers*
:reg[isters] Display the contents of all numbered and named
registers. If a register is written to for |:redir|
it will not be listed.
:reg[isters] Display the type and contents of all numbered and
named registers. If a register is written to for
|:redir| it will not be listed.
Type can be one of:
"c" for |characterwise| text
"l" for |linewise| text
"b" for |blockwise-visual| text


:reg[isters] {arg} Display the contents of the numbered and named
@@ -1,4 +1,4 @@
*eval.txt* For Vim version 8.1. Last change: 2019 Oct 13
*eval.txt* For Vim version 8.1. Last change: 2019 Oct 26


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -4254,8 +4254,8 @@ expandcmd({expr}) *expandcmd()*
Expand special items in {expr} like what is done for an Ex
command such as `:edit`. This expands special keywords, like
with |expand()|, and environment variables, anywhere in
{expr}. Returns the expanded string.
Example: >
{expr}. "~user" and "~/path" are only expanded at the start.
Returns the expanded string. Example: >
:echo expandcmd('make %<.o')

< Can also be used as a |method|: >
@@ -6504,8 +6504,8 @@ listener_add({callback} [, {buf}]) *listener_add()*
a:bufnr the buffer that was changed
a:start first changed line number
a:end first line number below the change
a:added total number of lines added, negative if lines
were deleted
a:added number of lines added, negative if lines were
deleted
a:changes a List of items with details about the changes

Example: >
@@ -7518,7 +7518,7 @@ pum_getpos() *pum_getpos()*
row top screen row (0 first row)
col leftmost screen column (0 first col)
size total nr of items
scrollbar |TRUE| if visible
scrollbar |TRUE| if scrollbar is visible

The values are the same as in |v:event| during
|CompleteChanged|.
@@ -1,4 +1,4 @@
*helphelp.txt* For Vim version 8.1. Last change: 2019 May 04
*helphelp.txt* For Vim version 8.1. Last change: 2019 Oct 18


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -102,7 +102,11 @@ Help on help files *helphelp*
current file. See |help-translated|.

*:helpc* *:helpclose*
:helpc[lose] Close one help window, if there is one.
:helpc[lose] Close one help window, if there is one.
Vim will try to restore the window layout (including
cursor position) to the same layout it was before
opening the help window initially. This might cause
triggering several autocommands.

*:helpg* *:helpgrep*
:helpg[rep] {pattern}[@xx]
@@ -1,4 +1,4 @@
*map.txt* For Vim version 8.1. Last change: 2019 Jun 02
*map.txt* For Vim version 8.1. Last change: 2019 Oct 20


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1,4 +1,4 @@
*message.txt* For Vim version 8.1. Last change: 2019 Aug 23
*message.txt* For Vim version 8.1. Last change: 2019 Oct 19


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1,4 +1,4 @@
*options.txt* For Vim version 8.1. Last change: 2019 Oct 20
*options.txt* For Vim version 8.1. Last change: 2019 Oct 26


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -6646,10 +6646,10 @@ A jump table for the options with a short description can be found at |Q_op|.
For Unix the default it "| tee". The stdout of the compiler is saved
in a file and echoed to the screen. If the 'shell' option is "csh" or
"tcsh" after initializations, the default becomes "|& tee". If the
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh" or "bash" the
default becomes "2>&1| tee". This means that stderr is also included.
Before using the 'shell' option a path is removed, thus "/bin/sh" uses
"sh".
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh", "zsh-beta",
"bash" or "fish" the default becomes "2>&1| tee". This means that
stderr is also included. Before using the 'shell' option a path is
removed, thus "/bin/sh" uses "sh".
The initialization of this option is done after reading the ".vimrc"
and the other initializations, so that when the 'shell' option is set
there, the 'shellpipe' option changes automatically, unless it was
@@ -6689,13 +6689,14 @@ A jump table for the options with a short description can be found at |Q_op|.
The name of the temporary file can be represented by "%s" if necessary
(the file name is appended automatically if no %s appears in the value
of this option).
The default is ">". For Unix, if the 'shell' option is "csh", "tcsh"
or "zsh" during initializations, the default becomes ">&". If the
'shell' option is "sh", "ksh" or "bash" the default becomes
">%s 2>&1". This means that stderr is also included.
For Win32, the Unix checks are done and additionally "cmd" is checked
for, which makes the default ">%s 2>&1". Also, the same names with
".exe" appended are checked for.
The default is ">". For Unix, if the 'shell' option is "csh" or
"tcsh" during initializations, the default becomes ">&". If the
'shell' option is "sh", "ksh", "mksh", "pdksh", "zsh",
"zsh-beta","bash" or "fish", the default becomes ">%s 2>&1". This
means that stderr is also included. For Win32, the Unix checks are
done and additionally "cmd" is checked for, which makes the default
">%s 2>&1". Also, the same names with ".exe" appended are checked
for.
The initialization of this option is done after reading the ".vimrc"
and the other initializations, so that when the 'shell' option is set
there, the 'shellredir' option changes automatically unless it was
@@ -1,4 +1,4 @@
*popup.txt* For Vim version 8.1. Last change: 2019 Sep 25
*popup.txt* For Vim version 8.1. Last change: 2019 Oct 20


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -305,16 +305,16 @@ popup_findinfo() *popup_findinfo()*
Get the |window-ID| for the popup info window, as it used by
the popup menu. See |complete-popup|. The info popup is
hidden when not used, it can be deleted with |popup_clear()|
and |popup_close()|.
Return zero if there is none.
and |popup_close()|. Use |popup_show()| to reposition it to
the item in the popup menu.
Returns zero if there is none.


popup_findpreview() *popup_findpreview()*
Get the |window-ID| for the popup preview window.
Return zero if there is none.



popup_getoptions({id}) *popup_getoptions()*
Return the {options} for popup {id} in a Dict.
A zero value means the option was not set. For "zindex" the
@@ -1,4 +1,4 @@
*quickfix.txt* For Vim version 8.1. Last change: 2019 Aug 06
*quickfix.txt* For Vim version 8.1. Last change: 2019 Oct 22


VIM REFERENCE MANUAL by Bram Moolenaar
@@ -486,7 +486,7 @@ EXECUTE A COMMAND IN ALL THE BUFFERS IN QUICKFIX OR LOCATION LIST:
etc.
< When the current file can't be |abandon|ed and the [!]
is not present, the command fails.
When an error is detected execution stops.
When going to the next entry fails execution stops.
The last buffer (or where an error occurred) becomes
the current buffer.
{cmd} can contain '|' to concatenate several commands.

0 comments on commit 491433d

Please sign in to comment.
You can’t perform that action at this time.