# HG changeset patch # User Christian Brabandt # Date 1500840906 -7200 # Node ID 21f3930dfe6e47de7c64a0943737ed209f6dfac6 # Parent dad9608e17af17d6ef5f4d8e659d64b6a808006f Documentation updates. commit https://github.com/vim/vim/commit/b6e0ec6b71c45284d94f51728dbc33e5d3428ff4 Author: Bram Moolenaar Date: Sun Jul 23 22:12:20 2017 +0200 Documentation updates. diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt --- a/runtime/doc/channel.txt +++ b/runtime/doc/channel.txt @@ -1,4 +1,4 @@ -*channel.txt* For Vim version 8.0. Last change: 2017 Jun 11 +*channel.txt* For Vim version 8.0. Last change: 2017 Jul 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -611,7 +611,7 @@ See |job_setoptions()| and |ch_setoption "close_cb": handler Callback for when the channel is closed. Same as "close_cb" on |ch_open()|, see |close_cb|. *job-drop* -"drop" Specifies when to drop messages. Same as "drop" on +"drop": when Specifies when to drop messages. Same as "drop" on |ch_open()|, see |channel-drop|. For "auto" the exit_cb is not considered. *job-exit_cb* @@ -624,12 +624,12 @@ See |job_setoptions()| and |ch_setoption Note that data can be buffered, callbacks may still be called after the process ends. *job-timeout* -"timeout" The time to wait for a request when blocking, E.g. +"timeout": time The time to wait for a request when blocking, E.g. when using ch_evalexpr(). In milliseconds. The default is 2000 (2 seconds). *out_timeout* *err_timeout* -"out_timeout" Timeout for stdout. Only when using pipes. -"err_timeout" Timeout for stderr. Only when using pipes. +"out_timeout": time Timeout for stdout. Only when using pipes. +"err_timeout": time Timeout for stderr. Only when using pipes. Note: when setting "timeout" the part specific mode is overwritten. Therefore set "timeout" first and the part specific mode later. @@ -641,8 +641,9 @@ See |job_setoptions()| and |ch_setoption The default is "term". *job-term* -"term": "open" Start a terminal and connect the job - stdin/stdout/stderr to it. +"term": "open" Start a terminal in a new window and connect the job + stdin/stdout/stderr to it. Similar to using + `:terminal`. NOTE: Not implemented yet! "channel": {channel} Use an existing channel instead of creating a new one. @@ -652,6 +653,11 @@ See |job_setoptions()| and |ch_setoption cause I/O errors. Existing callbacks and other settings remain. +"pty": 1 Use a pty (pseudo-tty) instead of a pipe when + possible. This is most useful in combination with a + terminal window, see |terminal|. + {only on Unix and Unix-like systems} + *job-in_io* *in_top* *in_bot* *in_name* *in_buf* "in_io": "null" disconnect stdin (read from /dev/null) "in_io": "pipe" stdin is connected to the channel (default) diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 8.0. Last change: 2017 Jul 15 +*eval.txt* For Vim version 8.0. Last change: 2017 Jul 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2179,7 +2179,7 @@ index({list}, {expr} [, {start} [, {ic}] Number index in {list} where {expr} appears input({prompt} [, {text} [, {completion}]]) String get input from the user -inputdialog({prompt} [, {text} [, {completion}]]]) +inputdialog({prompt} [, {text} [, {completion}]]) String like input() but in a GUI dialog inputlist({textlist}) Number let the user pick from a choice list inputrestore() Number restore typeahead diff --git a/runtime/doc/gui.txt b/runtime/doc/gui.txt --- a/runtime/doc/gui.txt +++ b/runtime/doc/gui.txt @@ -1,4 +1,4 @@ -*gui.txt* For Vim version 8.0. Last change: 2014 Mar 08 +*gui.txt* For Vim version 8.0. Last change: 2017 Jul 15 VIM REFERENCE MANUAL by Bram Moolenaar @@ -79,7 +79,8 @@ When the GUI starts up initializations a and DOS/Win32 "_gvimrc" is tried first. NOTE: All but the first one are not carried out if Vim was started with -"-u NONE" and no "-U" argument was given, or when started with "-U NONE". +"-u NONE" or "-u DEFAULTS" and no "-U" argument was given, or when started +with "-U NONE". All this happens AFTER the normal Vim initializations, like reading your .vimrc file. See |initialization|. diff --git a/runtime/doc/index.txt b/runtime/doc/index.txt --- a/runtime/doc/index.txt +++ b/runtime/doc/index.txt @@ -1,4 +1,4 @@ -*index.txt* For Vim version 8.0. Last change: 2017 Jul 15 +*index.txt* For Vim version 8.0. Last change: 2017 Jul 16 VIM REFERENCE MANUAL by Bram Moolenaar @@ -530,6 +530,7 @@ tag command action in Normal mode ~ |CTRL-W_CTRL-_| CTRL-W CTRL-_ same as "CTRL-W _" |CTRL-W_+| CTRL-W + increase current window height N lines |CTRL-W_-| CTRL-W - decrease current window height N lines +|CTRL-W_:| CTRL-W : same as |:|, edit a command line |CTRL-W_<| CTRL-W < decrease current window width N columns |CTRL-W_=| CTRL-W = make all windows the same height & width |CTRL-W_>| CTRL-W > increase current window width N columns diff --git a/runtime/doc/intro.txt b/runtime/doc/intro.txt --- a/runtime/doc/intro.txt +++ b/runtime/doc/intro.txt @@ -1,4 +1,4 @@ -*intro.txt* For Vim version 8.0. Last change: 2016 Sep 24 +*intro.txt* For Vim version 8.0. Last change: 2017 Jul 17 VIM REFERENCE MANUAL by Bram Moolenaar @@ -143,9 +143,14 @@ 2. Open issue on GitHub: https://github. Please be brief; all the time that is spent on answering mail is subtracted from the time that is spent on improving Vim! Always give a reproducible -example and try to find out which settings or other things influence the -appearance of the bug. Try different machines, if possible. Send me patches -if you can! +example and try to find out which settings or other things trigger the bug. + +Preferably start Vim with: > + vim --clean -u reproduce.vim +Where reproduce.vim is a script that reproduces the problem. Try different +machines, if relevant (is this an MS-Windows specific bug perhaps?). + +Send me patches if you can! It will help to include information about the version of Vim you are using and your setup. You can get the information with this command: > diff --git a/runtime/doc/tags b/runtime/doc/tags --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -1064,6 +1064,8 @@ 'termbidi' options.txt /*'termbidi'* 'termencoding' options.txt /*'termencoding'* 'termguicolors' options.txt /*'termguicolors'* +'termkey' options.txt /*'termkey'* +'termsize' options.txt /*'termsize'* 'terse' options.txt /*'terse'* 'textauto' options.txt /*'textauto'* 'textmode' options.txt /*'textmode'* @@ -1079,8 +1081,10 @@ 'titlelen' options.txt /*'titlelen'* 'titleold' options.txt /*'titleold'* 'titlestring' options.txt /*'titlestring'* +'tk' options.txt /*'tk'* 'tl' options.txt /*'tl'* 'tm' options.txt /*'tm'* +'tms' options.txt /*'tms'* 'to' options.txt /*'to'* 'toolbar' options.txt /*'toolbar'* 'toolbariconsize' options.txt /*'toolbariconsize'* @@ -1124,7 +1128,9 @@ 'vi' options.txt /*'vi'* 'viewdir' options.txt /*'viewdir'* 'viewoptions' options.txt /*'viewoptions'* +'vif' options.txt /*'vif'* 'viminfo' options.txt /*'viminfo'* +'viminfofile' options.txt /*'viminfofile'* 'virtualedit' options.txt /*'virtualedit'* 'visualbell' options.txt /*'visualbell'* 'vop' options.txt /*'vop'* @@ -1344,6 +1350,7 @@ -+rv gui_x11.txt /*-+rv* -- starting.txt /*--* --- starting.txt /*---* +--clean starting.txt /*--clean* --cmd starting.txt /*--cmd* --echo-wid starting.txt /*--echo-wid* --help starting.txt /*--help* @@ -3528,6 +3535,7 @@ CTRL-V-alternative gui_w32.txt /*CTRL-V- CTRL-W index.txt /*CTRL-W* CTRL-W_+ windows.txt /*CTRL-W_+* CTRL-W_- windows.txt /*CTRL-W_-* +CTRL-W_: windows.txt /*CTRL-W_:* CTRL-W_< windows.txt /*CTRL-W_<* CTRL-W_ windows.txt /*CTRL-W_* CTRL-W_ quickfix.txt /*CTRL-W_* diff --git a/runtime/doc/term.txt b/runtime/doc/term.txt --- a/runtime/doc/term.txt +++ b/runtime/doc/term.txt @@ -1,4 +1,4 @@ -*term.txt* For Vim version 8.0. Last change: 2017 Apr 11 +*term.txt* For Vim version 8.0. Last change: 2017 Jul 21 VIM REFERENCE MANUAL by Bram Moolenaar @@ -315,7 +315,7 @@ Added by Vim (there are no standard code t_IE set icon text end *t_IE* *'t_IE'* t_WP set window position (Y, X) in pixels *t_WP* *'t_WP'* t_GP get window position (Y, X) in pixels *t_GP* *'t_GP'* - t_WS set window size (height, width) in characters *t_WS* *'t_WS'* + t_WS set window size (height, width in cells) *t_WS* *'t_WS'* t_SI start insert mode (bar cursor shape) *t_SI* *'t_SI'* t_SR start replace mode (underline cursor shape) *t_SR* *'t_SR'* t_EI end insert or replace mode (block cursor shape) *t_EI* *'t_EI'* diff --git a/runtime/doc/terminal.txt b/runtime/doc/terminal.txt --- a/runtime/doc/terminal.txt +++ b/runtime/doc/terminal.txt @@ -1,4 +1,4 @@ -*terminal.txt* For Vim version 8.0. Last change: 2017 Jul 15 +*terminal.txt* For Vim version 8.0. Last change: 2017 Jul 19 VIM REFERENCE MANUAL by Bram Moolenaar @@ -9,6 +9,10 @@ Terminal window support *terminal* WARNING: THIS IS ONLY PARTLY IMPLEMENTED, ANYTHING CAN STILL CHANGE +The terminal feature is optional, use this to check if your Vim has it: > + echo has('terminal') +If the result is "1" you have it. + 1. Basic use |terminal-use| 2. Remote testing |terminal-testing| @@ -34,6 +38,7 @@ the job. This uses a pty when possible. Navigate between windows with CTRL-W commands (and mouse). E.g. CTRL-W CTRL-W moves focus to the next window. +Use "CTRL-W :" to edit an Ex command. See option 'termkey' for specifying the key that precedes a Vim command. Default is CTRL-W. @@ -62,6 +67,10 @@ Syntax ~ buffer. If there are unsaved changes this fails, use ! to force, as usual. +When the buffer associated with the terminal is wiped out the job is killed, +similar to calling `job_stop(job, "kill")` + + Resizing ~ The size of the terminal can be in one of three modes: @@ -83,6 +92,19 @@ The |term_getsize()| function can be use terminal. |term_setsize()| can be used only when in the first or second mode, not when 'termsize' is "rowsXcols". + +Unix ~ + +On Unix a pty is used to make it possible to run all kinds of commands. You +can even run Vim in the terminal! That's used for debugging, see below. + + +MS-Windows ~ + +On MS-Windows a hidden console is used to run the command in. This should +work well for all kind of commands. Obviously, they must be commands that run +in a terminal, not open their own window. + ============================================================================== 2. Remote testing *terminal-testing* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 8.0. Last change: 2017 Jul 15 +*todo.txt* For Vim version 8.0. Last change: 2017 Jul 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -35,31 +35,20 @@ entered there will not be repeated below *known-bugs* -------------------- Known bugs and current work ----------------------- -When redrawing for the channel buffer, command line completion is cleared. - (Ramel Eshed, 2017 May 4) -When a timer triggers the command completion disappears. (Dominique Pelle, -2017 Jun 13, #1768) -Caused by 8.0.0592. -Check if anything was output? Don't redraw when scrolled. (#1820) -When redrawing the command line a pending CTRL-R shows ", which is removed. - -No maintainer for German translations. No maintainer for Vietnamese translations. No maintainer for Simplified Chinese translations. Terminal emulator window: - Lots of stuff to implement, see src/terminal.c -- Windows implementation (WiP): https://github.com/mattn/vim/tree/terminal - Using winpty ? -- Running a shell command from the GUI still has limitations. Look into how - the terminal emulator of the Vim shell project can help: +- Running a shell command from the GUI still has limitations. Look into how + the terminal emulator of the Vim shell project can help: http://vimshell.wana.at -- Add debugger interface. Implementation for gdb by Xavier de Gaye. - Should work like an IDE. Try to keep it generic. Now found here: +- Add debugger interface. Implementation for gdb by Xavier de Gaye. Should + work like an IDE. Try to keep it generic. Now found here: http://clewn.sf.net. -- Look into the idevim plugin/script. -- Related wishes for NetBeans commands: +- Look into the idevim plugin/script. +- Related wishes for NetBeans commands: - make it possible to have 'defineAnnoType' also handle terminal colors. - send 'balloonText' events for the cursor position (using CursorHold ?) in terminal mode. @@ -136,8 +125,8 @@ Regexp problems: Another one: echom matchstr(" sdfsfsf\n sfdsdfsdf",'[^\n]*') (2017 May 15, #1252) -Patch to update b:changedtick in the quickfix window. (Yegappan Lakshmanan, -2017 Jul 13) +Patch for quickfix: parse lines for any quickfix list. (Yegappan Lakshmanan, +2017 Jul 20) With foldmethod=syntax and nofoldenable comment highlighting isn't removed. (Marcin Szewczyk, 2017 Apr 26) @@ -151,10 +140,6 @@ Error in emsg with buggy script. (Domini Better detection of strace file. (Steven Fernandez, 2017 Jul 12, #1837) -To reproduce problems "vim -u NONE -N" is often used, but this still uses -'viminfo'. Add "-I" to not use 'viminfo'? -Or use "vim -B" for "bug reproduction"? - Bug with conceal mode: 3rd element returned by synconcealed() differs for every call. (Dominique Pelle, 2017 Jun 18) @@ -162,18 +147,31 @@ Add options_default() / options_restore( defaults for a plugin. Comments from Zyx, 2017 May 10. Perhaps use a vimcontext / endvimcontext command block. -Patch to trigger OptionSet when entering diff mode. (Christian Brabandt, 2017 -Jul 7) - Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28) Still happens (2017 Jul 9) Memory leak in test_arabic. +Include Haiku port? (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24) +It can replace the BeOS code, which is likely not used anymore. +Now on github: #1856. Is not up-to-date. + Refactored HTML indent file. (Michael Lee, #1821) Using uninitialzed value in test_crypt. +All functions are global, which makes functions like get() and len() awkward. +For the future use the ~get() and ~len() syntax, e.g.: + mylist~get(idx) + mydict~get(idx) + mystring~len() +Alternatives for ~: + ^ list^get() could also be used + . list.get() already means concatenate + $ list$get() harder to read + @ list@get() harder to read + -> list->get() two characters, used for lambda + X11: Putting more than about 262040 characters of text on the clipboard and pasting it in another Vim doesn't work. (Dominique Pelle, 2008 Aug 21-23) clip_x11_request_selection_cb() is called with zero value and length. @@ -187,6 +185,10 @@ Problem with three-piece comment. (Micha When checking if a bufref is valid, also check the buffer number, to catch the case of :bwipe followed by :new. +Patch to skip writing a temp file for diffing if the buffer is equal to the +existing file. (Akria Sheng, 2017 Jul 22) +Could also skip writing lines that are the same. + Files for Latvian language. (Vitolins, 2017 May 3, #1675) MS-Windows: Opening same file in a second gvim hangs. (Sven Bruggemann, 2017 @@ -1057,9 +1059,6 @@ For the path use a hash instead of dir%d Patch to add ":undorecover", get as much text out of the undo file as possible. (Christian Brabandt, 2014 Mar 12, update Aug 22) -Include Haiku port? (Adrien Destugues, Siarzhuk Zharski, 2013 Oct 24) -It can replace the BeOS code, which is likely not used anymore. - Updated spec ftplugin. (Matěj Cepl, 2013 Oct 16) Patch to right-align signs. (James Kolb (email james), 2013 Sep 23) diff --git a/runtime/doc/usr_03.txt b/runtime/doc/usr_03.txt --- a/runtime/doc/usr_03.txt +++ b/runtime/doc/usr_03.txt @@ -1,4 +1,4 @@ -*usr_03.txt* For Vim version 8.0. Last change: 2016 Jan 05 +*usr_03.txt* For Vim version 8.0. Last change: 2017 Jul 21 VIM USER MANUAL - by Bram Moolenaar @@ -352,7 +352,7 @@ The "?" command works like "/" but searc ?word The "N" command repeats the last search the opposite direction. Thus using -"N" after a "/" command search backwards, using "N" after "?" searches +"N" after a "/" command searches backwards, using "N" after "?" searches forward. @@ -512,7 +512,7 @@ only if it is at the beginning of a line The $ character matches the end of a line. Therefore, "was$" matches the word was only if it is at the end of a line. -Let's mark the places where "the" matches in this example line with "x"s: +Let's mark the places where "/the" matches in this example line with "x"s: the solder holding one of the chips melted and the ~ xxx xxx xxx diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt --- a/runtime/doc/usr_41.txt +++ b/runtime/doc/usr_41.txt @@ -1,4 +1,4 @@ -*usr_41.txt* For Vim version 8.0. Last change: 2017 Mar 28 +*usr_41.txt* For Vim version 8.0. Last change: 2017 Jul 19 VIM USER MANUAL - by Bram Moolenaar diff --git a/runtime/doc/windows.txt b/runtime/doc/windows.txt --- a/runtime/doc/windows.txt +++ b/runtime/doc/windows.txt @@ -1,4 +1,4 @@ -*windows.txt* For Vim version 8.0. Last change: 2016 Dec 01 +*windows.txt* For Vim version 8.0. Last change: 2017 Jul 23 VIM REFERENCE MANUAL by Bram Moolenaar @@ -222,6 +222,11 @@ CTRL-W ^ Does ":split #", split window i When a count is given, it becomes ":split #N", split window and edit buffer N. + *CTRL-W_:* +CTRL-W : Does the same as typing |:| : edit a command line. Useful in a + terminal window, where all Vim commands must be preceded with + CTRL-W or 'termkey'. + Note that the 'splitbelow' and 'splitright' options influence where a new window will appear. @@ -1272,6 +1277,9 @@ help Contains a help file. Will only b and can't be changed. The 'buflisted' option will be reset for a help buffer. +terminal A terminal window buffer, see |terminal|. The contents cannot + be read or changed until the job ends. + directory Displays directory contents. Can be used by a file explorer plugin. The buffer is created with these settings: > :setlocal buftype=nowrite