]> granicus.if.org Git - vim/commitdiff
Updated runtime files.
authorBram Moolenaar <Bram@vim.org>
Sat, 26 Mar 2016 22:01:59 +0000 (23:01 +0100)
committerBram Moolenaar <Bram@vim.org>
Sat, 26 Mar 2016 22:01:59 +0000 (23:01 +0100)
runtime/doc/autocmd.txt
runtime/doc/channel.txt
runtime/doc/eval.txt
runtime/doc/helphelp.txt
runtime/doc/options.txt
runtime/doc/repeat.txt
runtime/doc/starting.txt
runtime/doc/tags
runtime/doc/todo.txt
runtime/doc/usr_05.txt

index 5d502f12368107c95ff3c59192dff329922d5ed6..dea70a362f0509fe7bf49238d4a57673fc3706ff 100644 (file)
@@ -1,4 +1,4 @@
-*autocmd.txt*   For Vim version 7.4.  Last change: 2015 Dec 05
+*autocmd.txt*   For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
index df7ec9f35277b0cb8d16d35395fead9024f72c4d..7d684fbc0cd594d950c755bdf42f023d8a496f26 100644 (file)
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 15
+*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -120,24 +120,13 @@ Use |ch_status()| to see if the channel could be opened.
 
 {address} has the form "hostname:port".  E.g., "localhost:8765".
 
-{options} is a dictionary with optional entries:
+{options} is a dictionary with optional entries:       *channel-open-options*
 
 "mode" can be:                                         *channel-mode*
        "json" - Use JSON, see below; most convenient way. Default.
        "js"   - Use JS (JavaScript) encoding, more efficient than JSON.
        "nl"   - Use messages that end in a NL character
        "raw"  - Use raw messages
-                                               *in_mode* *out_mode* *err_mode*
-"in_mode"      mode specifically for stdin, only when using pipes
-"out_mode"     mode specifically for stdout, only when using pipes
-"err_mode"     mode specifically for stderr, only when using pipes
-               Note: when setting "mode" the part specific mode is
-               overwritten.  Therefore set "mode" first and the part specific
-               mode later.
-
-               Note: when writing to a file or buffer and when reading from a
-               buffer NL mode is used by default.
-
                                                *channel-callback* *E921*
 "callback"     A function that is called when a message is received that is
                not handled otherwise.  It gets two arguments: the channel
@@ -155,16 +144,8 @@ Use |ch_status()| to see if the channel could be opened.
                as a string.
 
                For all callbacks: Use |function()| to bind it to arguments
-               and/or a dictionary.
-                                                       *out_cb*
-"out_cb"       A function like "callback" but used for stdout.  Only for when
-               the channel uses pipes.  When "out_cb" wasn't set the channel
-               callback is used.
-                                                       *err_cb*
-"err_cb"       A function like "callback" but used for stderr.  Only for when
-               the channel uses pipes.  When "err_cb" wasn't set the channel
-               callback is used.
-
+               and/or a Dictionary.  Or use the form "dict.function" to bind
+               the Dictionary.
                                                        *close_cb*
 "close_cb"     A function that is called when the channel gets closed, other
                than by calling ch_close().  It should be defined like this: >
@@ -178,16 +159,10 @@ Use |ch_status()| to see if the channel could be opened.
                actually uses a 1 msec timeout, that is required on many
                systems.  Use a larger value for a remote server, e.g.  10
                msec at least.
-
+                                                       *channel-timeout*
 "timeout"      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.
-               Note: when setting "timeout" the part specific mode is
-               overwritten.  Therefore set "timeout" first and the part
-               specific mode later.
 
 When "mode" is "json" or "js" the "callback" is optional.  When omitted it is
 only possible to receive a message after sending one.
@@ -215,6 +190,13 @@ pipes are used (stdin/stdout/stderr) they are all closed.  This might not be
 what you want!  Stopping the job with job_stop() might be better.
 All readahead is discarded, callbacks will no longer be invoked.
 
+Note that a channel is closed in three stages:
+  - The I/O ends, log message: "Closing channel". There can still be queued
+    messages to read or callbacks to invoke.
+  - The readahead is cleared, log message: "Clearing channel".  Some variables
+    may still reference the channel.
+  - The channel is freed, log message: "Freeing channel".
+
 When the channel can't be opened you will get an error message.  There is a
 difference between MS-Windows and Unix: On Unix when the port doesn't exist
 ch_open() fails quickly.  On MS-Windows "waittime" applies.
@@ -326,6 +308,9 @@ completion or error.  You could use functions in an |autoload| script:
 
 You can also use "call |feedkeys()|" to insert any key sequence.
 
+When there is an error a message is written to the channel log, if it exists,
+and v:errmsg is set to the error.
+
 
 Command "normal" ~
 
@@ -428,6 +413,23 @@ To read all output from a RAW channel that is available: >
 To read the error output: >
        let output = ch_readraw(channel, {"part": "err"})
 
+ch_read() and ch_readraw() use the channel timeout.  When there is nothing to
+read within that time an empty string is returned.  To specify a different
+timeout in msec use the "timeout" option:
+       {"timeout": 123} ~
+To read from the error output use the "part" option:
+       {"part": "err"} ~
+To read a message with a specific ID, on a JS or JSON channel:
+       {"id": 99} ~
+When no ID is specified or the ID is -1, the first message is returned. This
+overrules any callback waiting for this message.
+
+For a RAW channel this returns whatever is available, since Vim does not know
+where a message ends.
+For a NL channel this returns one message.
+For a JS or JSON channel this returns one decoded message.
+This includes any sequence number.
+
 ==============================================================================
 8. Starting a job with a channel                       *job-start* *job*
 
@@ -524,15 +526,31 @@ job_setoptions(job, {options}).  Many options can be used with the channel
 related to the job, using ch_setoptions(channel, {options}).
 See |job_setoptions()| and |ch_setoptions()|.
 
+                                               *in_mode* *out_mode* *err_mode*
+"in_mode"              mode specifically for stdin, only when using pipes
+"out_mode"             mode specifically for stdout, only when using pipes
+"err_mode"             mode specifically for stderr, only when using pipes
+                       See |channel-mode| for the values.
+
+                       Note: when setting "mode" the part specific mode is
+                       overwritten.  Therefore set "mode" first and the part
+                       specific mode later.
+
+                       Note: when writing to a file or buffer and when
+                       reading from a buffer NL mode is used by default.
+
                                                *job-callback*
 "callback": handler    Callback for something to read on any part of the
                        channel.
-                                               *job-out_cb*
+                                               *job-out_cb* *out_cb*
 "out_cb": handler      Callback for when there is something to read on
-                       stdout.
-                                               *job-err_cb*
+                       stdout.  Only for when the channel uses pipes.  When
+                       "out_cb" wasn't set the channel callback is used.
+
+                                               *job-err_cb* *err_cb*
 "err_cb": handler      Callback for when there is something to read on
-                       stderr.
+                       stderr.  Only for when the channel uses pipes.  When
+                       "err_cb" wasn't set the channel callback is used.
                                                *job-close_cb*
 "close_cb": handler    Callback for when the channel is closed.  Same as
                        "close_cb" on ch_open().
@@ -542,6 +560,17 @@ See |job_setoptions()| and |ch_setoptions()|.
                        Vim checks about every 10 seconds for jobs that ended.
                        The callback can also be triggered by calling
                        |job_status()|.
+                                                       *job-timeout*
+"timeout"              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.
+                       Note: when setting "timeout" the part specific mode is
+                       overwritten.  Therefore set "timeout" first and the
+                       part specific mode later.
+
                                                *job-stoponexit*
 "stoponexit": {signal} Send {signal} to the job when Vim exits.  See
                        |job_stop()| for possible values.
index e1744812580c78fca3470a2ac12b2482df53abba..c2e9a7160a044584a40669c193019ffa5aba1827 100644 (file)
@@ -1,4 +1,4 @@
-*eval.txt*     For Vim version 7.4.  Last change: 2016 Mar 20
+*eval.txt*     For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -2716,13 +2716,6 @@ ch_close({handle})                                               *ch_close()*
                Close {handle}.  See |channel-close|.
                {handle} can be Channel or a Job that has a Channel.
 
-               Note that a channel is closed in three stages:
-                 - The I/O ends, log message: "Closing channel". There can
-                   still be queued messages to read or callbacks to invoke.
-                 - The readahead is cleared, log message: "Clearing channel".
-                   Some variables may still reference the channel.
-                 - The channel is freed, log message: "Freeing channel".
-
                {only available when compiled with the |+channel| feature}
 
 ch_evalexpr({handle}, {expr} [, {options}])                    *ch_evalexpr()*
@@ -2732,7 +2725,8 @@ ch_evalexpr({handle}, {expr} [, {options}])                       *ch_evalexpr()*
                {handle} can be Channel or a Job that has a Channel.
                                                                *E917*
                {options} must be a Dictionary.  It must not have a "callback"
-               entry.  It can have a "timeout" entry.
+               entry.  It can have a "timeout" entry to specify the timeout
+               for this specific request.
 
                ch_evalexpr() waits for a response and returns the decoded
                expression.  When there is an error or timeout it returns an
@@ -2816,65 +2810,34 @@ ch_logfile({fname} [, {mode}])                                  *ch_logfile()*
 
 ch_open({address} [, {options}])                               *ch_open()*
                Open a channel to {address}.  See |channel|.
-               Returns a Channel.  Use |ch_status()| to check for
-               failure.
+               Returns a Channel.  Use |ch_status()| to check for failure.
 
                {address} has the form "hostname:port", e.g.,
                "localhost:8765".
 
-               If {options} is given it must be a |Dictionary|.  The optional
-               items are:
-                       mode        "raw", "js" or "json".
-                                   Default "json".
-                       callback    function to call for requests with a zero
-                                   sequence number.  See |channel-callback|.
-                                   Default: none.
-                       waittime    Specify connect timeout as milliseconds.
-                                   Negative means forever.
-                                   Default: 0 (don't wait)
-                       timeout     Specify response read timeout value in
-                                   milliseconds. 
-                                   Default: 2000.
+               If {options} is given it must be a |Dictionary|.
+               See |channel-open-options|.
+
                {only available when compiled with the |+channel| feature}
 
 ch_read({handle} [, {options}])                                        *ch_read()*
                Read from {handle} and return the received message.
                {handle} can be Channel or a Job that has a Channel.
-
-               This uses the channel timeout.  When there is nothing to read
-               within that time an empty string is returned.  To specify a
-               different timeout in msec use the "timeout" option:
-                       {"timeout": 123} ~
-               To read from the error output use the "part" option:
-                       {"part": "err"} ~
-               To read a message with a specific ID, on a JS or JSON channel:
-                       {"id": 99} ~
-               When no ID is specified or the ID is -1, the first message is
-               returned. This overrules any callback waiting for this
-               message.
-
-               For a RAW channel this returns whatever is available, since
-               Vim does not know where a message ends.
-               For a NL channel this returns one message.
-               For a JS or JSON channel this returns one decoded message.
-               This includes any sequence number.
+               See |channel-more|.
+               {only available when compiled with the |+channel| feature}
 
 ch_readraw({handle} [, {options}])                     *ch_readraw()*
                Like ch_read() but for a JS and JSON channel does not decode
-               the message.
+               the message.  See |channel-more|.
+               {only available when compiled with the |+channel| feature}
 
 ch_sendexpr({handle}, {expr} [, {options}])                    *ch_sendexpr()*
                Send {expr} over {handle}.  The {expr} is encoded
                according to the type of channel.  The function cannot be used
-               with a raw channel.  See |channel-use|. *E912*
+               with a raw channel.
+               See |channel-use|.                              *E912*
                {handle} can be Channel or a Job that has a Channel.
 
-               {options} must be a Dictionary.  The "callback" item is a
-               Funcref or the name of a function it is invoked when the
-               response is received.  See |channel-callback|.
-               Without "callback" the channel handler is invoked, otherwise
-               any received message is dropped.
-
                {only available when compiled with the |+channel| feature}
 
 ch_sendraw({handle}, {string} [, {options}])           *ch_sendraw()*
@@ -6675,13 +6638,17 @@ string({expr})  Return {expr} converted to a String.  If {expr} is a Number,
                Float, String or a composition of them, then the result can be
                parsed back with |eval()|.
                        {expr} type     result ~
-                       String          'string'
+                       String          'string' (single quotes are doubled)
                        Number          123
                        Float           123.123456 or 1.123456e8
                        Funcref         function('name')
                        List            [item, item]
                        Dictionary      {key: value, key: value}
-               Note that in String values the ' character is doubled.
+
+               When a List or Dictionary has a recursive reference it is
+               replaced by "[...]" or "{...}".  Using eval() on the result
+               will then fail.
+
                Also see |strtrans()|.
 
                                                        *strlen()*
@@ -7665,6 +7632,7 @@ unix                      Unix version of Vim.
 user_commands          User-defined commands.
 vertsplit              Compiled with vertically split windows |:vsplit|.
 vim_starting           True while initial source'ing takes place. |startup|
+                       *vim_starting*
 viminfo                        Compiled with viminfo support.
 virtualedit            Compiled with 'virtualedit' option.
 visual                 Compiled with Visual mode.
index 4835f1f2be6a4859e51ac08b06d30d87703bd9cf..3a9ec6875ce40db85d487c571b0643cd65ee1a50 100644 (file)
@@ -1,4 +1,4 @@
-*helphelp.txt* For Vim version 7.4.  Last change: 2016 Mar 12
+*helphelp.txt* For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -208,9 +208,11 @@ command: >
                        sorted.
                        When there are duplicates an error message is given.
                        An existing tags file is silently overwritten.
+
                        The optional "++t" argument forces adding the
                        "help-tags" tag.  This is also done when the {dir} is
                        equal to $VIMRUNTIME/doc.
+
                        To rebuild the help tags in the runtime directory
                        (requires write permission there): >
                                :helptags $VIMRUNTIME/doc
index 35cef9de6e3273846e3820b28a05a63e368e0a48..f71c4ad2dcd426158a8f810ae02a175703a88471 100644 (file)
@@ -1,4 +1,4 @@
-*options.txt*  For Vim version 7.4.  Last change: 2016 Mar 19
+*options.txt*  For Vim version 7.4.  Last change: 2016 Mar 24
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -2292,6 +2292,8 @@ A jump table for the options with a short description can be found at |Q_op|.
                        different.  The whole undo file is encrypted, not just
                        the pieces of text.
 
+       You should use "blowfish2", also to re-encrypt older files.
+
        When reading an encrypted file 'cryptmethod' will be set automatically
        to the detected method of the file being read.  Thus if you write it
        without changing 'cryptmethod' the same method will be used.
@@ -3030,8 +3032,8 @@ A jump table for the options with a short description can be found at |Q_op|.
          file only, the option is not changed.
        When 'binary' is set, the value of 'fileformats' is not used.
 
-       Note that when Vim starts up with an empty buffer this option is not
-       used.  Set 'fileformat' in your .vimrc instead.
+       When Vim starts up with an empty buffer the first item is used.  You
+       can overrule this by setting 'fileformat' in your .vimrc.
 
        For systems with a Dos-like <EOL> (<CR><NL>), when reading files that
        are ":source"ed and for vimrc files, automatic <EOL> detection may be
@@ -5115,6 +5117,7 @@ A jump table for the options with a short description can be found at |Q_op|.
           written.  A ":set nomodified" command also resets the original
           values to the current values and the 'modified' option will be
           reset.
+          Similarly for 'eol' and 'bomb'.
        This option is not set when a change is made to the buffer as the
        result of a BufNewFile, BufRead/BufReadPost, BufWritePost,
        FileAppendPost or VimLeave autocommand event.  See |gzip-example| for
index c8624a2666db6a74fa97f06e3c1d6879a8873b86..df94a74128fa1a65d5f2f8ecafe20b152b180dd7 100644 (file)
@@ -1,4 +1,4 @@
-*repeat.txt*    For Vim version 7.4.  Last change: 2016 Mar 15
+*repeat.txt*    For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -8,13 +8,14 @@ Repeating commands, Vim scripts and debugging                 *repeating*
 
 Chapter 26 of the user manual introduces repeating |usr_26.txt|.
 
-1. Single repeats      |single-repeat|
-2. Multiple repeats    |multi-repeat|
-3. Complex repeats     |complex-repeat|
-4. Using Vim scripts   |using-scripts|
-5. Using Vim packages  |packages|
-6. Debugging scripts   |debug-scripts|
-7. Profiling           |profiling|
+1. Single repeats              |single-repeat|
+2. Multiple repeats            |multi-repeat|
+3. Complex repeats             |complex-repeat|
+4. Using Vim scripts           |using-scripts|
+5. Using Vim packages          |packages|
+6. Creating Vim packages       |package-create|
+7. Debugging scripts           |debug-scripts|
+8. Profiling                   |profiling|
 
 ==============================================================================
 1. Single repeats                                      *single-repeat*
@@ -481,7 +482,7 @@ find the syntax/some.vim file, because its directory is in 'runtimepath'.
 
 Vim will also load ftdetect files, if there are any.
 
-Note that the files under "pack/foo/opt" or not loaded automatically, only the
+Note that the files under "pack/foo/opt" are not loaded automatically, only the
 ones under "pack/foo/start".  See |pack-add| below for how the "opt" directory
 is used.
 
@@ -516,14 +517,90 @@ To load an optional plugin from a pack use the `:packadd` command: >
 This searches for "pack/*/opt/foodebug" in 'packpath' and will find
 ~/.vim/pack/foo/opt/foodebug/plugin/debugger.vim and source it.
 
-This could be done inside always.vim, if some conditions are met.  Or you
-could add this command to your |.vimrc|.
+This could be done if some conditions are met.  For example, depending on
+whether Vim supports a feature or a dependency is missing.
+
+You can also load an optional plugin at startup, by putting this command in
+your |.vimrc|: >
+       :packadd! foodebug
+The extra "!" is so that the plugin isn't loaded with Vim was started with
+|--noplugin|.
 
 It is perfectly normal for a package to only have files in the "opt"
 directory.  You then need to load each plugin when you want to use it.
 
+
+Where to put what ~
+
+Since color schemes, loaded with `:colorscheme`, are found below
+"pack/*/start" and "pack/*/opt", you could put them anywhere.  We recommend
+you put them below "pack/*/opt", for example
+".vim/pack/mycolors/opt/dark/colors/very_dark.vim".
+
+Filetype plugins should go under "pack/*/start", so that they are always
+found.  Unless you have more than one plugin for a file type and want to
+select which one to load with `:packadd`.  E.g. depending on the compiler
+version: >
+       if foo_compiler_version > 34
+         packadd foo_new
+       else
+         packadd foo_old
+       endif
+
+The "after" directory is most likely not useful in a package.  It's not
+disallowed though.
+
+==============================================================================
+6. Creating Vim packages                               *package-create*
+
+This assumes you write one or more plugins that you distribute as a package.
+
+If you have two unrelated plugins you would use two packages, so that Vim
+users can chose what they include or not.  Or you can decide to use one
+package with optional plugins, and tell the user to add the ones he wants with
+`:packadd`.
+
+Decide how you want to distribute the package.  You can create an archive or
+you could use a repository.  An archive can be used by more users, but is a
+bit harder to update to a new version.  A repository can usually be kept
+up-to-date easily, but it requires a program like "git" to be available.
+You can do both, github can automatically create an archive for a release.
+
+Your directory layout would be like this:
+   start/foobar/plugin/foo.vim         " always loaded, defines commands
+   start/foobar/plugin/bar.vim         " always loaded, defines commands
+   start/foobar/autoload/foo.vim       " loaded when foo command used
+   start/foobar/doc/foo.txt            " help for foo.vim
+   start/foobar/doc/tags               " help tags
+   opt/fooextra/plugin/extra.vim       " optional plugin, defines commands
+   opt/fooextra/autoload/extra.vim     " loaded when extra command used
+   opt/fooextra/doc/extra.txt                  " help for extra.vim
+   opt/fooextra/doc/tags               " help tags
+
+This allows for the user to do: >
+       mkdir ~/.vim/pack/myfoobar
+       cd ~/.vim/pack/myfoobar
+       git clone https://github.com/you/foobar.git
+
+Here "myfoobar" is a name that the user can choose, the only condition is that
+it differs from other packages.
+
+In your documentation you explain what the plugins do, and tell the user how
+to load the optional plugin: >
+       :packadd! fooextra
+
+You could add this packadd command in one of your plugins, to be executed when
+the optional plugin is needed.
+
+Run the `:helptags` command to generate the doc/tags file.  Including this
+generated file in the package means that the user can drop the package in his
+pack directory and the help command works right away.  Don't forget to re-run
+the command after changing the plugin help: >
+       :helptags path/start/foobar/doc
+       :helptags path/opt/fooextra/doc
+
 ==============================================================================
-6. Debugging scripts                                   *debug-scripts*
+7. Debugging scripts                                   *debug-scripts*
 
 Besides the obvious messages that you can add to your scripts to find out what
 they are doing, Vim offers a debug mode.  This allows you to step through a
@@ -748,7 +825,7 @@ OBSCURE
                user, don't use typeahead for debug commands.
 
 ==============================================================================
-7. Profiling                                           *profile* *profiling*
+8. Profiling                                           *profile* *profiling*
 
 Profiling means that Vim measures the time that is spent on executing
 functions and/or scripts.  The |+profile| feature is required for this.
index 4b32a50cd4ca9d1c745cf0cc0d8173ef2ec2fe48..d2c44b90b7f873caecd9cc38dcc01c9d983b0110 100644 (file)
@@ -1,4 +1,4 @@
-*starting.txt*  For Vim version 7.4.  Last change: 2016 Mar 05
+*starting.txt*  For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -866,8 +866,8 @@ accordingly.  Vim proceeds in this order:
        use "--cmd 'set noloadplugins'" |--cmd|.
 
        Plugin packs are loaded.  These are plugins, as above, but found in
-       'packpath' directories.  Every plugin directory found is added in
-       'runtimepath'.  See |packages|.
+       'packpath' "start" directories.  Every plugin directory found is added
+       in 'runtimepath'.  See |packages|.
 
 5. Set 'shellpipe' and 'shellredir'
        The 'shellpipe' and 'shellredir' options are set according to the
@@ -905,8 +905,9 @@ accordingly.  Vim proceeds in this order:
 12. Execute startup commands
        If a "-t" flag was given to Vim, the tag is jumped to.
        The commands given with the |-c| and |+cmd| arguments are executed.
-       The starting flag is reset, has("vim_starting") will now return zero.
        If the 'insertmode' option is set, Insert mode is entered.
+       The starting flag is reset, has("vim_starting") will now return zero.
+       The |v:vim_did_enter| variable is set to 1.
        The |VimEnter| autocommands are executed.
 
 Some hints on using initializations:
index e275ef0659eea5c3405ad92f76077f89dcae5c83..1840ff6eba9d1d3cc4d06b973d51526e4a5e6d19 100644 (file)
@@ -1637,6 +1637,7 @@ $VIM_POSIX        vi_diff.txt     /*$VIM_POSIX*
 05.5   usr_05.txt      /*05.5*
 05.6   usr_05.txt      /*05.6*
 05.7   usr_05.txt      /*05.7*
+05.8   usr_05.txt      /*05.8*
 06.1   usr_06.txt      /*06.1*
 06.2   usr_06.txt      /*06.2*
 06.3   usr_06.txt      /*06.3*
@@ -4453,6 +4454,8 @@ E921      channel.txt     /*E921*
 E922   eval.txt        /*E922*
 E923   eval.txt        /*E923*
 E924   quickfix.txt    /*E924*
+E925   quickfix.txt    /*E925*
+E926   quickfix.txt    /*E926*
 E93    windows.txt     /*E93*
 E94    windows.txt     /*E94*
 E95    message.txt     /*E95*
@@ -4886,6 +4889,7 @@ add-filetype-plugin       usr_05.txt      /*add-filetype-plugin*
 add-global-plugin      usr_05.txt      /*add-global-plugin*
 add-local-help usr_05.txt      /*add-local-help*
 add-option-flags       options.txt     /*add-option-flags*
+add-package    usr_05.txt      /*add-package*
 add-plugin     usr_05.txt      /*add-plugin*
 added-5.1      version5.txt    /*added-5.1*
 added-5.2      version5.txt    /*added-5.2*
@@ -5222,7 +5226,9 @@ channel-demo      channel.txt     /*channel-demo*
 channel-mode   channel.txt     /*channel-mode*
 channel-more   channel.txt     /*channel-more*
 channel-open   channel.txt     /*channel-open*
+channel-open-options   channel.txt     /*channel-open-options*
 channel-raw    channel.txt     /*channel-raw*
+channel-timeout        channel.txt     /*channel-timeout*
 channel-use    channel.txt     /*channel-use*
 channel.txt    channel.txt     /*channel.txt*
 char-variable  eval.txt        /*char-variable*
@@ -6872,6 +6878,7 @@ job-start-if-needed       channel.txt     /*job-start-if-needed*
 job-start-nochannel    channel.txt     /*job-start-nochannel*
 job-stoponexit channel.txt     /*job-stoponexit*
 job-term       channel.txt     /*job-term*
+job-timeout    channel.txt     /*job-timeout*
 job_getchannel()       eval.txt        /*job_getchannel()*
 job_info()     eval.txt        /*job_info()*
 job_setoptions()       eval.txt        /*job_setoptions()*
@@ -7600,6 +7607,7 @@ out_name  channel.txt     /*out_name*
 out_timeout    channel.txt     /*out_timeout*
 p      change.txt      /*p*
 pack-add       repeat.txt      /*pack-add*
+package-create repeat.txt      /*package-create*
 packages       repeat.txt      /*packages*
 page-down      intro.txt       /*page-down*
 page-up        intro.txt       /*page-up*
@@ -8767,6 +8775,7 @@ v:true    eval.txt        /*v:true*
 v:val  eval.txt        /*v:val*
 v:var  eval.txt        /*v:var*
 v:version      eval.txt        /*v:version*
+v:vim_did_enter        eval.txt        /*v:vim_did_enter*
 v:warningmsg   eval.txt        /*v:warningmsg*
 v:windowid     eval.txt        /*v:windowid*
 v_!    change.txt      /*v_!*
@@ -8940,6 +8949,8 @@ vim-variable      eval.txt        /*vim-variable*
 vim.vim        syntax.txt      /*vim.vim*
 vim7   version7.txt    /*vim7*
 vim:   options.txt     /*vim:*
+vim_did_enter-variable eval.txt        /*vim_did_enter-variable*
+vim_starting   eval.txt        /*vim_starting*
 vimball        pi_vimball.txt  /*vimball*
 vimball-contents       pi_vimball.txt  /*vimball-contents*
 vimball-extract        pi_vimball.txt  /*vimball-extract*
index 15bc65cc5067aa106ac8b6e4ae41a3fc4521d202..00ba71f8248a6c4ad2015ece4c48ecaa960f8bb4 100644 (file)
@@ -1,4 +1,4 @@
-*todo.txt*      For Vim version 7.4.  Last change: 2016 Mar 20
+*todo.txt*      For Vim version 7.4.  Last change: 2016 Mar 26
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -34,22 +34,18 @@ not be repeated below, unless there is extra information.
                                                        *known-bugs*
 -------------------- Known bugs and current work -----------------------
 
+assert_matches('pattern', value)
+
 +channel:
-- add test for out-cb and err-cb.
-- Move more details from eval.txt to channel.txt.  Add tags in eval.txt.
 - When decoding json, don't read all the typeahead at once, use the reader
   properly.
 - When a message in the queue but there is no callback, drop it after a while?
   Add timestamp to queued messages and callbacks with ID, remove after a
   minute.  Option to set the droptime.
-- Add more ch_log calls, basically at every branch, before every callback, etc.
 - Add remark about undo sync, is there a way to force it?
 - When starting a job, have an option to open the server socket, so we know
   the port, and pass it to the command with --socket-fd {nr}. (Olaf Dabrunz,
   Feb 9)  How to do this on MS-Windows?
-- Add more unit-testing in json_test.c
-- Add a test where ["eval","getline(123)"] gets a line with special
-  characters (NUL, 0x80, etc.).  Check that it isn't garbled.
 - Make sure errors lead to a useful error msg. ["ex","foobar"]
 - For connection to server, a "keep open" flag would be useful.  Retry
   connecting in the main loop with zero timeout.
@@ -57,7 +53,11 @@ Later
 - job_start(): run job in a newly opened terminal.
     With xterm could use -S{pty}.
 
-Packages: how about "after" directory?
+Partial:
+- Maybe we also need VAR_PARTIAL support in if_mzsch.
+
+Packages:
+- make package for editexisting, others?
 
 Make it so that the window ID can be used where currently a window nr is used
 
@@ -70,6 +70,9 @@ Why does this:        echo "a" . 1.1
 result in:     a11
 Should recognize float (so long as it's not ".1.1").
 
+Patch to make tag jump work on function({expr}). (Hirohito Higashi, 2016 Mar
+25)
+
 Allow for an empty dictionary key?
 
 Patch to improve I/O for Perl. (Damien, 2016 Jan 9, update Jan 22 2nd one)
@@ -119,6 +122,10 @@ Regexp problems:
   matches the empty string. (Dominique Pelle, 2015 Oct 2, Nov 24)
 - Search for \\~ causes error E874.
 
+Using freed memory in quickfix code. (Dominique, 2016 Mar 21)
+
+Patch 7.4.1401 caused autochdir not to work on startup. (Rob Hoelz, #704)
+
 Patch to fix that folds close with autocomplete.  #643
 Christian Brabandt, 2016 Feb 18.
 
@@ -137,6 +144,7 @@ Patch to put undo options together in undo window.
 Patch to have better check for {action} argument of setqflist().
 Nikolai Pavlov, Feb 25, #661.  Can be even more strict.
 Also see patch from Hirohito Higash, Feb 25.
+Updated patch, 2016 Mar 25.
 
 Patch to update the GTK icon cache when installing. (Kazunobu Kuriyama, 2016
 Feb 3)
@@ -147,12 +155,18 @@ Cannot delete a file with square brackets with delete(). (#696)
 
 Patch to add 'topbot' to 'belloff' option. (Coot, 2016 Mar 18, #695)
 
+Patch to make matchit work better, respect 'matchpairs'. (Ken Takata, 2016 Mar
+25)
+
 We can use '. to go to the last change in the current buffer, but how about
 the last change in any buffer?  Can we use ', (, is next to .)?
 
 Patch for Python: #622. (Roland Puntaier, 2016 Feb 2)
 What does it change?
 
+It's possible to add ",," to 'wildignore', an empty entry.  Causes problems.
+Reject the value? #710.
+
 Win32: patch to use 64 bit stat() if possible. (Ken Takata, 2014 May 12)
 More tests May 14. Update May 29.  Update Aug 10.
 Now part of large file patches. (Ken Takata, 2016 Feb 1)
@@ -202,6 +216,10 @@ Patch to make "%:h:h" return "." instead of the full path.
 
 Remove SPACE_IN_FILENAME ? What could possibly go wrong?
 
+Patch to change GUI behavior: instead of changing the window size change the
+lines/columns when menu/toolbar/etc. is added/removed. (Ychin, 2016 Mar 20,
+#703)
+
 Installation of .desktop files does not work everywhere.
 It's now fixed, but the target directory probably isn't right.
 Add configure check?
@@ -220,6 +238,8 @@ Patch to avoid redrawing tabline when the popup menu is visible.
 
 Patch to add {skip} argument to search(). (Christian Brabandt, 2016 Feb 24)
 
+Add value "smart" to 'tagcase': ignore case when tag is all lower case.
+
 7   Add a watchpoint in the debug mode: An expression that breaks execution
     when evaluating to non-zero.  Add the "watchadd expr" command, stop when
     the value of the expression changes.  ":watchdel" deletes an item,
@@ -247,6 +267,8 @@ https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
 Patch to make the behavior of "w" more straightforward, but not Vi compatible.
 With a 'cpo' flag.  (Christian Brabandt, 2016 Feb 8)
 
+Patch to add optionproperties(). (Anton Lindqvist, 2016 Mar 26)
+
 Patch to add TagNotFound autocommand. (Anton Lindqvist, 2016 Feb 3)
 
 Patch to add Error autocommand. (Anton Lindqvist, 2016 Feb 17)
@@ -298,7 +320,7 @@ Value returned by virtcol() changes depending on how lines wrap.  This is
 inconsistent with the documentation.
 
 Patch to add filtering of the quickfix list. (Yegappan Lakshmanan, 2016 Mar
-13, last version)
+13, last version)  Update Mar 21.
 
 Can we cache the syntax attributes, so that updates for 'relativenumber' and
 'cursorline'/'cursorcolumn' are a lot faster?
index b36f91f50bf3eea80fcec9fcae86cc2fc6d0afb7..126edc57d2c0cc30ec43d38790845774dcc44cd0 100644 (file)
@@ -275,10 +275,9 @@ matching HTML tags, if/else/endif in Vim scripts, etc.  Very useful, although
 it's not backwards compatible (that's why it is not enabled by default).
 
 To start using the matchit plugin, add one line to your vimrc file: >
-       packadd matchit
+       packadd! matchit
 
-That's all!  You can also type the command to try it out.  Now you can find
-help about this plugin: >
+That's all!  After restarting Vim you can find help about this plugin: >
        :help matchit
 
 This works, because when `:packadd` loaded the plugin it also added the