patch 7.4.1560 v7.4.1560
authorBram Moolenaar <Bram@vim.org>
Mon, 14 Mar 2016 22:22:59 +0000 (23:22 +0100)
committerBram Moolenaar <Bram@vim.org>
Mon, 14 Mar 2016 22:22:59 +0000 (23:22 +0100)
Problem:    Dict options with a dash are more difficult to use.
Solution:   Use an underscore, so that dict.err_io can be used.

runtime/doc/channel.txt
src/channel.c
src/structs.h
src/testdir/test_channel.vim
src/version.c

index 36a7c9b68828abe912c7e0eacc1434f82a773e5d..aece37113ef2e63e7555a07f507cc472c4be0486 100644 (file)
@@ -1,4 +1,4 @@
-*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 12
+*channel.txt*      For Vim version 7.4.  Last change: 2016 Mar 14
 
 
                  VIM REFERENCE MANUAL    by Bram Moolenaar
@@ -127,10 +127,10 @@ Use |ch_status()| to see if the channel could be opened.
        "js"   - Use JS (JavaScript) encoding, more efficient than JSON.
        "nl"   - Use messages that end in a NL character
        "raw"  - Use raw messages
-
-"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
+                                               *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.
@@ -138,7 +138,7 @@ Use |ch_status()| to see if the channel could be opened.
                Note: when writing to a file or buffer and when reading from a
                buffer NL mode is used by default.
 
-                                                       *channel-callback*
+                                               *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
                and the received message. Example: >
@@ -153,17 +153,17 @@ Use |ch_status()| to see if the channel could be opened.
                excluding the NL.
                When "mode" is "raw" the "msg" argument is the whole message
                as a string.
-                                                       *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
+                                                       *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
+                                                       *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.
 
-                                                       *close-cb*
-"close-cb"     A function that is called when the channel gets closed, other
+                                                       *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: >
        func MyCloseHandler(channel)
 <                                                      *waittime*
@@ -179,9 +179,9 @@ Use |ch_status()| to see if the channel could be opened.
 "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.
+                                               *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.
@@ -440,7 +440,7 @@ been received and not parsed correctly.
 
 If the command produces a line of output that you want to deal with, specify
 a handler for stdout: >
-    let job = job_start(command, {"out-cb": "MyHandler"})
+    let job = job_start(command, {"out_cb": "MyHandler"})
 The function will be called with the channel and a message. You would define
 it like this: >
     func MyHandler(channel, msg)
@@ -448,10 +448,10 @@ it like this: >
 Without the handler you need to read the output with |ch_read()| or
 |ch_readraw()|.
 
-The handler defined for "out-cb" will not receive stderr.  If you want to
-handle that separately, add an "err-cb" handler: >
-    let job = job_start(command, {"out-cb": "MyHandler",
-           \                     "err-cb": "ErrHandler"})
+The handler defined for "out_cb" will not receive stderr.  If you want to
+handle that separately, add an "err_cb" handler: >
+    let job = job_start(command, {"out_cb": "MyHandler",
+           \                     "err_cb": "ErrHandler"})
 
 If you want to handle both stderr and stdout with one handler use the
 "callback" option: >
@@ -463,7 +463,7 @@ JSON or JS mode you can use ch_evalexpr().
 There are several options you can use, see |job-options|.
 For example, to start a job and write its output in buffer "dummy": >
        let logjob = job_start("tail -f /tmp/log",
-                            \ {'out-io': 'buffer', 'out-name': 'dummy'})
+                            \ {'out_io': 'buffer', 'out_name': 'dummy'})
        sbuf dummy
 
 
@@ -471,16 +471,16 @@ Job input from a buffer ~
 
 To run a job that reads from a buffer: >
        let job = job_start({command},
-           \ {'in-io': 'buffer', 'in-name': 'mybuffer'})
+           \ {'in_io': 'buffer', 'in_name': 'mybuffer'})
 <
                                                        *E915* *E918*
 The buffer is found by name, similar to |bufnr()|. The buffer must exist and
 be loaded when job_start() is called.
 
-By default this reads the whole buffer.  This can be changed with the "in-top"
-and "in-bot" options.
+By default this reads the whole buffer.  This can be changed with the "in_top"
+and "in_bot" options.
 
-A special mode is when "in-top" is set to zero and "in-bot" is not set: Every
+A special mode is when "in_top" is set to zero and "in_bot" is not set: Every
 time a line is added to the buffer, the last-but-one line will be send to the
 job stdin.  This allows for editing the last line and sending it when pressing
 Enter.
@@ -490,7 +490,7 @@ Enter.
 
 To start another process without creating a channel: >
     let job = job_start(command,
-       \ {"in-io": "null", "out-io": "null", "err-io": "null"})
+       \ {"in_io": "null", "out_io": "null", "err_io": "null"})
 
 This starts {command} in the background, Vim does not wait for it to finish.
 
@@ -524,17 +524,17 @@ See |job_setoptions()| and |ch_setoptions()|.
                                                *job-callback*
 "callback": handler    Callback for something to read on any part of the
                        channel.
-                                               *job-out-cb*
-"out-cb": handler      Callback for when there is something to read on
+                                               *job-out_cb*
+"out_cb": handler      Callback for when there is something to read on
                        stdout.
-                                               *job-err-cb*
-"err-cb": handler      Callback for when there is something to read on
+                                               *job-err_cb*
+"err_cb": handler      Callback for when there is something to read on
                        stderr.
-                                               *job-close-cb*
-"close-cb": handler    Callback for when the channel is closed.  Same as
-                       "close-cb" on ch_open().
-                                               *job-exit-cb*
-"exit-cb": handler     Callback for when the job ends.  The arguments are the
+                                               *job-close_cb*
+"close_cb": handler    Callback for when the channel is closed.  Same as
+                       "close_cb" on ch_open().
+                                               *job-exit_cb*
+"exit_cb": handler     Callback for when the job ends.  The arguments are the
                        job and the exit status.
                        Vim checks about every 10 seconds for jobs that ended.
                        The callback can also be triggered by calling
@@ -557,37 +557,37 @@ See |job_setoptions()| and |ch_setoptions()|.
                        cause I/O errors.
                        Existing callbacks and other settings remain.
 
-                               *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)
-"in-io": "file"                stdin reads from a file
-"in-io": "buffer"      stdin reads from a buffer
-"in-top": number       when using "buffer": first line to send (default: 1)
-"in-bot": number       when using "buffer": last line to send (default: last)
-"in-name": "/path/file"        the name of the file or buffer to read from
-"in-buf": number       the number of the buffer to read from
-
-                               *job-out-io* *out-name* *out-buf*
-"out-io": "null"       disconnect stdout (goes to /dev/null)
-"out-io": "pipe"       stdout is connected to the channel (default)
-"out-io": "file"       stdout writes to a file
-"out-io": "buffer"     stdout appends to a buffer
-"out-name": "/path/file" the name of the file or buffer to write to
-"out-buf": number      the number of the buffer to write to
-
-                               *job-err-io* *err-name* *err-buf*
-"err-io": "out"                stderr messages to go to stdout
-"err-io": "null"       disconnect stderr  (goes to /dev/null)
-"err-io": "pipe"       stderr is connected to the channel (default)
-"err-io": "file"       stderr writes to a file
-"err-io": "buffer"     stderr appends to a buffer
-"err-name": "/path/file" the name of the file or buffer to write to
-"err-buf": number      the number of the buffer to write to
+                               *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)
+"in_io": "file"                stdin reads from a file
+"in_io": "buffer"      stdin reads from a buffer
+"in_top": number       when using "buffer": first line to send (default: 1)
+"in_bot": number       when using "buffer": last line to send (default: last)
+"in_name": "/path/file"        the name of the file or buffer to read from
+"in_buf": number       the number of the buffer to read from
+
+                               *job-out_io* *out_name* *out_buf*
+"out_io": "null"       disconnect stdout (goes to /dev/null)
+"out_io": "pipe"       stdout is connected to the channel (default)
+"out_io": "file"       stdout writes to a file
+"out_io": "buffer"     stdout appends to a buffer
+"out_name": "/path/file" the name of the file or buffer to write to
+"out_buf": number      the number of the buffer to write to
+
+                               *job-err_io* *err_name* *err_buf*
+"err_io": "out"                stderr messages to go to stdout
+"err_io": "null"       disconnect stderr  (goes to /dev/null)
+"err_io": "pipe"       stderr is connected to the channel (default)
+"err_io": "file"       stderr writes to a file
+"err_io": "buffer"     stderr appends to a buffer
+"err_name": "/path/file" the name of the file or buffer to write to
+"err_buf": number      the number of the buffer to write to
 
 
 Writing to a buffer ~
 
-When the out-io or err-io mode is "buffer" and there is a callback, the text
+When the out_io or err_io mode is "buffer" and there is a callback, the text
 is appended to the buffer before invoking the callback.
 
 When a buffer is used both for input and output, the output lines are put
@@ -614,7 +614,7 @@ Undo is synced for every added line.
 
 
 Writing to a file ~
-
+                                                       *E920*
 The file is created with permissions 600 (read-write for the user, not
 accessible for others).  Use |setfperm()| to change this.
 
index 81823bc064c16bdb2afe19abc72e3d676b582cf8..e66be182f7691685e73c5b0a7bc63f3f296237e3 100644 (file)
@@ -3148,7 +3148,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                if (handle_mode(item, opt, &opt->jo_mode, JO_MODE) == FAIL)
                    return FAIL;
            }
-           else if (STRCMP(hi->hi_key, "in-mode") == 0)
+           else if (STRCMP(hi->hi_key, "in_mode") == 0)
            {
                if (!(supported & JO_IN_MODE))
                    break;
@@ -3156,7 +3156,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                                                                      == FAIL)
                    return FAIL;
            }
-           else if (STRCMP(hi->hi_key, "out-mode") == 0)
+           else if (STRCMP(hi->hi_key, "out_mode") == 0)
            {
                if (!(supported & JO_OUT_MODE))
                    break;
@@ -3164,7 +3164,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                                                                      == FAIL)
                    return FAIL;
            }
-           else if (STRCMP(hi->hi_key, "err-mode") == 0)
+           else if (STRCMP(hi->hi_key, "err_mode") == 0)
            {
                if (!(supported & JO_ERR_MODE))
                    break;
@@ -3172,18 +3172,18 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                                                                      == FAIL)
                    return FAIL;
            }
-           else if (STRCMP(hi->hi_key, "in-io") == 0
-                   || STRCMP(hi->hi_key, "out-io") == 0
-                   || STRCMP(hi->hi_key, "err-io") == 0)
+           else if (STRCMP(hi->hi_key, "in_io") == 0
+                   || STRCMP(hi->hi_key, "out_io") == 0
+                   || STRCMP(hi->hi_key, "err_io") == 0)
            {
                if (!(supported & JO_OUT_IO))
                    break;
                if (handle_io(item, part_from_char(*hi->hi_key), opt) == FAIL)
                    return FAIL;
            }
-           else if (STRCMP(hi->hi_key, "in-name") == 0
-                   || STRCMP(hi->hi_key, "out-name") == 0
-                   || STRCMP(hi->hi_key, "err-name") == 0)
+           else if (STRCMP(hi->hi_key, "in_name") == 0
+                   || STRCMP(hi->hi_key, "out_name") == 0
+                   || STRCMP(hi->hi_key, "err_name") == 0)
            {
                part = part_from_char(*hi->hi_key);
 
@@ -3193,9 +3193,9 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                opt->jo_io_name[part] =
                       get_tv_string_buf_chk(item, opt->jo_io_name_buf[part]);
            }
-           else if (STRCMP(hi->hi_key, "in-buf") == 0
-                   || STRCMP(hi->hi_key, "out-buf") == 0
-                   || STRCMP(hi->hi_key, "err-buf") == 0)
+           else if (STRCMP(hi->hi_key, "in_buf") == 0
+                   || STRCMP(hi->hi_key, "out_buf") == 0
+                   || STRCMP(hi->hi_key, "err_buf") == 0)
            {
                part = part_from_char(*hi->hi_key);
 
@@ -3214,8 +3214,8 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                    return FAIL;
                }
            }
-           else if (STRCMP(hi->hi_key, "in-top") == 0
-                   || STRCMP(hi->hi_key, "in-bot") == 0)
+           else if (STRCMP(hi->hi_key, "in_top") == 0
+                   || STRCMP(hi->hi_key, "in_bot") == 0)
            {
                linenr_T *lp;
 
@@ -3262,7 +3262,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                    return FAIL;
                }
            }
-           else if (STRCMP(hi->hi_key, "out-cb") == 0)
+           else if (STRCMP(hi->hi_key, "out_cb") == 0)
            {
                if (!(supported & JO_OUT_CALLBACK))
                    break;
@@ -3270,11 +3270,11 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                opt->jo_out_cb = get_callback(item, &opt->jo_out_partial);
                if (opt->jo_out_cb == NULL)
                {
-                   EMSG2(_(e_invarg2), "out-cb");
+                   EMSG2(_(e_invarg2), "out_cb");
                    return FAIL;
                }
            }
-           else if (STRCMP(hi->hi_key, "err-cb") == 0)
+           else if (STRCMP(hi->hi_key, "err_cb") == 0)
            {
                if (!(supported & JO_ERR_CALLBACK))
                    break;
@@ -3282,11 +3282,11 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                opt->jo_err_cb = get_callback(item, &opt->jo_err_partial);
                if (opt->jo_err_cb == NULL)
                {
-                   EMSG2(_(e_invarg2), "err-cb");
+                   EMSG2(_(e_invarg2), "err_cb");
                    return FAIL;
                }
            }
-           else if (STRCMP(hi->hi_key, "close-cb") == 0)
+           else if (STRCMP(hi->hi_key, "close_cb") == 0)
            {
                if (!(supported & JO_CLOSE_CALLBACK))
                    break;
@@ -3294,7 +3294,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                opt->jo_close_cb = get_callback(item, &opt->jo_close_partial);
                if (opt->jo_close_cb == NULL)
                {
-                   EMSG2(_(e_invarg2), "close-cb");
+                   EMSG2(_(e_invarg2), "close_cb");
                    return FAIL;
                }
            }
@@ -3312,14 +3312,14 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                opt->jo_set |= JO_TIMEOUT;
                opt->jo_timeout = get_tv_number(item);
            }
-           else if (STRCMP(hi->hi_key, "out-timeout") == 0)
+           else if (STRCMP(hi->hi_key, "out_timeout") == 0)
            {
                if (!(supported & JO_OUT_TIMEOUT))
                    break;
                opt->jo_set |= JO_OUT_TIMEOUT;
                opt->jo_out_timeout = get_tv_number(item);
            }
-           else if (STRCMP(hi->hi_key, "err-timeout") == 0)
+           else if (STRCMP(hi->hi_key, "err_timeout") == 0)
            {
                if (!(supported & JO_ERR_TIMEOUT))
                    break;
@@ -3360,7 +3360,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                    return FAIL;
                }
            }
-           else if (STRCMP(hi->hi_key, "exit-cb") == 0)
+           else if (STRCMP(hi->hi_key, "exit_cb") == 0)
            {
                if (!(supported & JO_EXIT_CB))
                    break;
@@ -3375,7 +3375,7 @@ get_job_options(typval_T *tv, jobopt_T *opt, int supported)
                                                       item, opt->jo_ecb_buf);
                if (opt->jo_exit_cb == NULL)
                {
-                   EMSG2(_(e_invarg2), "exit-cb");
+                   EMSG2(_(e_invarg2), "exit_cb");
                    return FAIL;
                }
            }
@@ -3546,7 +3546,7 @@ job_stop_on_exit()
 }
 
 /*
- * Called once in a while: check if any jobs with an "exit-cb" have ended.
+ * Called once in a while: check if any jobs with an "exit_cb" have ended.
  */
     void
 job_check_ended(void)
@@ -3609,7 +3609,7 @@ job_start(typval_T *argvars)
                && (!(opt.jo_set & (JO_OUT_NAME << (part - PART_OUT)))
                    || *opt.jo_io_name[part] == NUL))
        {
-           EMSG(_("E920: -io file requires -name to be set"));
+           EMSG(_("E920: _io file requires _name to be set"));
            return job;
        }
 
@@ -3626,7 +3626,7 @@ job_start(typval_T *argvars)
        }
        else if (!(opt.jo_set & JO_IN_NAME))
        {
-           EMSG(_("E915: in-io buffer requires in-buf or in-name to be set"));
+           EMSG(_("E915: in_io buffer requires in_buf or in_name to be set"));
        }
        else
            buf = buflist_find_by_name(opt.jo_io_name[PART_IN], FALSE);
@@ -3837,7 +3837,7 @@ job_info(job_T *job, dict_T *dict)
     dict_add_nr_str(dict, "process", nr, NULL);
 
     dict_add_nr_str(dict, "exitval", job->jv_exitval, NULL);
-    dict_add_nr_str(dict, "exit-cb", 0L, job->jv_exit_cb);
+    dict_add_nr_str(dict, "exit_cb", 0L, job->jv_exit_cb);
     dict_add_nr_str(dict, "stoponexit", 0L, job->jv_stoponexit);
 }
 
index 04360e29133984e6b8094ffb81c5fedbd9f302e9..ab707d8c3f721574feb3135e6d076af5fc05b798 100644 (file)
@@ -1414,18 +1414,18 @@ struct channel_S {
 #define JO_PART                    0x1000      /* "part" */
 #define JO_ID              0x2000      /* "id" */
 #define JO_STOPONEXIT      0x4000      /* "stoponexit" */
-#define JO_EXIT_CB         0x8000      /* "exit-cb" */
-#define JO_OUT_IO          0x10000     /* "out-io" */
-#define JO_ERR_IO          0x20000     /* "err-io" (JO_OUT_IO << 1) */
-#define JO_IN_IO           0x40000     /* "in-io" (JO_OUT_IO << 2) */
-#define JO_OUT_NAME        0x80000     /* "out-name" */
-#define JO_ERR_NAME        0x100000    /* "err-name" (JO_OUT_NAME << 1) */
-#define JO_IN_NAME         0x200000    /* "in-name" (JO_OUT_NAME << 2) */
-#define JO_IN_TOP          0x400000    /* "in-top" */
-#define JO_IN_BOT          0x800000    /* "in-bot" */
-#define JO_OUT_BUF         0x1000000   /* "out-buf" */
-#define JO_ERR_BUF         0x2000000   /* "err-buf" (JO_OUT_BUF << 1) */
-#define JO_IN_BUF          0x4000000   /* "in-buf" (JO_OUT_BUF << 2) */
+#define JO_EXIT_CB         0x8000      /* "exit_cb" */
+#define JO_OUT_IO          0x10000     /* "out_io" */
+#define JO_ERR_IO          0x20000     /* "err_io" (JO_OUT_IO << 1) */
+#define JO_IN_IO           0x40000     /* "in_io" (JO_OUT_IO << 2) */
+#define JO_OUT_NAME        0x80000     /* "out_name" */
+#define JO_ERR_NAME        0x100000    /* "err_name" (JO_OUT_NAME << 1) */
+#define JO_IN_NAME         0x200000    /* "in_name" (JO_OUT_NAME << 2) */
+#define JO_IN_TOP          0x400000    /* "in_top" */
+#define JO_IN_BOT          0x800000    /* "in_bot" */
+#define JO_OUT_BUF         0x1000000   /* "out_buf" */
+#define JO_ERR_BUF         0x2000000   /* "err_buf" (JO_OUT_BUF << 1) */
+#define JO_IN_BUF          0x4000000   /* "in_buf" (JO_OUT_BUF << 2) */
 #define JO_CHANNEL         0x8000000   /* "channel" */
 #define JO_ALL             0xfffffff
 
index c50c1df42c2a68dda0a05354eace28339fe2ae74..6d38bffcec0e70e2455dc9a22a8443ec39b7ac70 100644 (file)
@@ -519,7 +519,7 @@ func Test_nl_err_to_out_pipe()
   endif
   call ch_logfile('Xlog')
   call ch_log('Test_nl_err_to_out_pipe()')
-  let job = job_start(s:python . " test_channel_pipe.py", {'err-io': 'out'})
+  let job = job_start(s:python . " test_channel_pipe.py", {'err_io': 'out'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -566,7 +566,7 @@ func Test_nl_read_file()
   call ch_log('Test_nl_read_file()')
   call writefile(['echo something', 'echoerr wrong', 'double this'], 'Xinput')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'in-io': 'file', 'in-name': 'Xinput'})
+       \ {'in_io': 'file', 'in_name': 'Xinput'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -586,7 +586,7 @@ func Test_nl_write_out_file()
   endif
   call ch_log('Test_nl_write_out_file()')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'out-io': 'file', 'out-name': 'Xoutput'})
+       \ {'out_io': 'file', 'out_name': 'Xoutput'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -607,7 +607,7 @@ func Test_nl_write_err_file()
   endif
   call ch_log('Test_nl_write_err_file()')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'err-io': 'file', 'err-name': 'Xoutput'})
+       \ {'err_io': 'file', 'err_name': 'Xoutput'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -628,7 +628,7 @@ func Test_nl_write_both_file()
   endif
   call ch_log('Test_nl_write_both_file()')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'out-io': 'file', 'out-name': 'Xoutput', 'err-io': 'out'})
+       \ {'out_io': 'file', 'out_name': 'Xoutput', 'err_io': 'out'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -649,13 +649,13 @@ func Run_test_pipe_to_buffer(use_name)
     return
   endif
   call ch_log('Test_pipe_to_buffer()')
-  let options = {'out-io': 'buffer'}
+  let options = {'out_io': 'buffer'}
   if a:use_name
-    let options['out-name'] = 'pipe-output'
+    let options['out_name'] = 'pipe-output'
     let firstline = 'Reading from channel output...'
   else
     sp pipe-output
-    let options['out-buf'] = bufnr('%')
+    let options['out_buf'] = bufnr('%')
     quit
     let firstline = ''
   endif
@@ -689,13 +689,13 @@ func Run_test_pipe_err_to_buffer(use_name)
     return
   endif
   call ch_log('Test_pipe_err_to_buffer()')
-  let options = {'err-io': 'buffer'}
+  let options = {'err_io': 'buffer'}
   if a:use_name
-    let options['err-name'] = 'pipe-err'
+    let options['err_name'] = 'pipe-err'
     let firstline = 'Reading from channel error...'
   else
     sp pipe-err
-    let options['err-buf'] = bufnr('%')
+    let options['err_buf'] = bufnr('%')
     quit
     let firstline = ''
   endif
@@ -730,7 +730,7 @@ func Test_pipe_both_to_buffer()
   endif
   call ch_log('Test_pipe_both_to_buffer()')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'out-io': 'buffer', 'out-name': 'pipe-err', 'err-io': 'out'})
+       \ {'out_io': 'buffer', 'out_name': 'pipe-err', 'err_io': 'out'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -756,11 +756,11 @@ func Run_test_pipe_from_buffer(use_name)
 
   sp pipe-input
   call setline(1, ['echo one', 'echo two', 'echo three'])
-  let options = {'in-io': 'buffer'}
+  let options = {'in_io': 'buffer'}
   if a:use_name
-    let options['in-name'] = 'pipe-input'
+    let options['in_name'] = 'pipe-input'
   else
-    let options['in-buf'] = bufnr('%')
+    let options['in_buf'] = bufnr('%')
   endif
 
   let job = job_start(s:python . " test_channel_pipe.py", options)
@@ -790,7 +790,7 @@ func Test_pipe_to_nameless_buffer()
   endif
   call ch_log('Test_pipe_to_nameless_buffer()')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'out-io': 'buffer'})
+       \ {'out_io': 'buffer'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -811,7 +811,7 @@ func Test_pipe_to_buffer_json()
   endif
   call ch_log('Test_pipe_to_buffer_json()')
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'out-io': 'buffer', 'out-mode': 'json'})
+       \ {'out_io': 'buffer', 'out_mode': 'json'})
   call assert_equal("run", job_status(job))
   try
     let handle = job_getchannel(job)
@@ -849,8 +849,8 @@ func Test_pipe_io_two_buffers()
   set buftype=nofile
 
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'in-io': 'buffer', 'in-name': 'pipe-input', 'in-top': 0,
-       \  'out-io': 'buffer', 'out-name': 'pipe-output'})
+       \ {'in_io': 'buffer', 'in_name': 'pipe-input', 'in_top': 0,
+       \  'out_io': 'buffer', 'out_name': 'pipe-output'})
   call assert_equal("run", job_status(job))
   try
     exe "normal Gaecho hello\<CR>"
@@ -884,8 +884,8 @@ func Test_pipe_io_one_buffer()
   set buftype=nofile
 
   let job = job_start(s:python . " test_channel_pipe.py",
-       \ {'in-io': 'buffer', 'in-name': 'pipe-io', 'in-top': 0,
-       \  'out-io': 'buffer', 'out-name': 'pipe-io'})
+       \ {'in_io': 'buffer', 'in_name': 'pipe-io', 'in_top': 0,
+       \  'out_io': 'buffer', 'out_name': 'pipe-io'})
   call assert_equal("run", job_status(job))
   try
     exe "normal Goecho hello\<CR>"
@@ -912,7 +912,7 @@ func Test_pipe_null()
   " We cannot check that no I/O works, we only check that the job starts
   " properly.
   let job = job_start(s:python . " test_channel_pipe.py something",
-       \ {'in-io': 'null'})
+       \ {'in_io': 'null'})
   call assert_equal("run", job_status(job))
   try
     call assert_equal('something', ch_read(job))
@@ -921,7 +921,7 @@ func Test_pipe_null()
   endtry
 
   let job = job_start(s:python . " test_channel_pipe.py err-out",
-       \ {'out-io': 'null'})
+       \ {'out_io': 'null'})
   call assert_equal("run", job_status(job))
   try
     call assert_equal('err-out', ch_read(job, {"part": "err"}))
@@ -930,7 +930,7 @@ func Test_pipe_null()
   endtry
 
   let job = job_start(s:python . " test_channel_pipe.py something",
-       \ {'err-io': 'null'})
+       \ {'err_io': 'null'})
   call assert_equal("run", job_status(job))
   try
     call assert_equal('something', ch_read(job))
@@ -939,12 +939,12 @@ func Test_pipe_null()
   endtry
 
   let job = job_start(s:python . " test_channel_pipe.py something",
-       \ {'out-io': 'null', 'err-io': 'out'})
+       \ {'out_io': 'null', 'err_io': 'out'})
   call assert_equal("run", job_status(job))
   call job_stop(job)
 
   let job = job_start(s:python . " test_channel_pipe.py something",
-       \ {'in-io': 'null', 'out-io': 'null', 'err-io': 'null'})
+       \ {'in_io': 'null', 'out_io': 'null', 'err_io': 'null'})
   call assert_equal("run", job_status(job))
   call assert_equal('channel fail', string(job_getchannel(job)))
   call assert_equal('fail', ch_status(job))
@@ -1082,9 +1082,9 @@ function MyExitCb(job, status)
 endfunc
 
 function s:test_exit_callback(port)
-  call job_setoptions(s:job, {'exit-cb': 'MyExitCb'})
+  call job_setoptions(s:job, {'exit_cb': 'MyExitCb'})
   let s:exit_job = s:job
-  call assert_equal('MyExitCb', job_info(s:job)['exit-cb'])
+  call assert_equal('MyExitCb', job_info(s:job)['exit_cb'])
 endfunc
 
 func Test_exit_callback()
@@ -1121,7 +1121,7 @@ function s:test_close_callback(port)
     call assert_false(1, "Can't open channel")
     return
   endif
-  call ch_setoptions(handle, {'close-cb': 'MyCloseCb'})
+  call ch_setoptions(handle, {'close_cb': 'MyCloseCb'})
 
   call assert_equal('', ch_evalexpr(handle, 'close me'))
   call s:waitFor('"closed" == s:ch_close_ret')
index eb42b32792a616453b96b126a0a98d85d66d4492..52e2b802cd0f302aeda0c4508167a5391fa3e68a 100644 (file)
@@ -743,6 +743,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    1560,
 /**/
     1559,
 /**/