summaryrefslogtreecommitdiff
path: root/runtime/doc
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2016-02-07 23:02:56 +0100
committerBram Moolenaar <Bram@vim.org>2016-02-07 23:02:56 +0100
commitcbebd4879cc78e670d79b2c57dc33d7b911c962a (patch)
treedfb98d947f8dc2678d26f3170e02212d89f3276e /runtime/doc
parentee5aeae22b8029fdb5ae97bb6ed8114a81e34c22 (diff)
downloadvim-git-cbebd4879cc78e670d79b2c57dc33d7b911c962a.tar.gz
Updated runtime files.
Diffstat (limited to 'runtime/doc')
-rw-r--r--runtime/doc/channel.txt9
-rw-r--r--runtime/doc/eval.txt12
-rw-r--r--runtime/doc/tags12
-rw-r--r--runtime/doc/todo.txt48
4 files changed, 57 insertions, 24 deletions
diff --git a/runtime/doc/channel.txt b/runtime/doc/channel.txt
index bc9e64144..236875051 100644
--- a/runtime/doc/channel.txt
+++ b/runtime/doc/channel.txt
@@ -117,7 +117,9 @@ Once done with the channel, disconnect it like this: >
Currently up to 10 channels can be in use at the same time. *E897*
-When the channel can't be opened you will get an error message.
+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.
*E898* *E899* *E900* *E901* *E902*
If there is an error reading or writing a channel it will be closed.
@@ -169,6 +171,9 @@ channel does not have a handler the message is dropped.
On read error or ch_close() the string "DETACH" is sent, if still possible.
The channel will then be inactive.
+It is also possible to use ch_sendraw() on a JSON or JS channel. The caller
+is then completely responsible for correct encoding and decoding.
+
==============================================================================
4. Vim commands *channel-commands*
@@ -266,6 +271,8 @@ asynchronously: >
This {string} can also be JSON, use |jsonencode()| to create it and
|jsondecode()| to handle a received JSON message.
+It is not possible to use |ch_sendexpr()| on a raw channel.
+
==============================================================================
6. Job control *job-control*
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 1f009cc7b..8ebe3ad04 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -2703,10 +2703,12 @@ ch_open({address} [, {argdict}]) *ch_open()*
{only available when compiled with the |+channel| feature}
ch_sendexpr({handle}, {expr} [, {callback}]) *ch_sendexpr()*
- Send {expr} over JSON channel {handle}. See |channel-use|.
+ Send {expr} over channel {handle}. The {expr} is encoded
+ according to the type of channel. The function cannot be used
+ with a raw channel. See |channel-use|. *E912*
When {callback} is given returns immediately. Without
- {callback} waits for a JSON response and returns the decoded
+ {callback} waits for a response and returns the decoded
expression. When there is an error or timeout returns an
empty string.
@@ -2718,8 +2720,10 @@ ch_sendexpr({handle}, {expr} [, {callback}]) *ch_sendexpr()*
{only available when compiled with the |+channel| feature}
ch_sendraw({handle}, {string} [, {callback}]) *ch_sendraw()*
- Send {string} over raw channel {handle}. See |channel-raw|.
- Works like |ch_sendexpr()|, but does not decode the response.
+ Send {string} over channel {handle}.
+ Works like |ch_sendexpr()|, but does not encode the request or
+ decode the response. The caller is responsible for the
+ correct contents. See |channel-use|.
{only available when compiled with the |+channel| feature}
diff --git a/runtime/doc/tags b/runtime/doc/tags
index d547cfd7e..66b0aa673 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4435,7 +4435,14 @@ E902 channel.txt /*E902*
E903 channel.txt /*E903*
E904 channel.txt /*E904*
E905 channel.txt /*E905*
+E906 channel.txt /*E906*
+E907 eval.txt /*E907*
+E908 eval.txt /*E908*
+E909 eval.txt /*E909*
E91 options.txt /*E91*
+E910 eval.txt /*E910*
+E911 eval.txt /*E911*
+E912 eval.txt /*E912*
E92 message.txt /*E92*
E93 windows.txt /*E93*
E94 windows.txt /*E94*
@@ -6811,8 +6818,13 @@ java.vim syntax.txt /*java.vim*
javascript-cinoptions indent.txt /*javascript-cinoptions*
javascript-indenting indent.txt /*javascript-indenting*
job-control channel.txt /*job-control*
+job_start() eval.txt /*job_start()*
+job_status() eval.txt /*job_status()*
+job_stop() eval.txt /*job_stop()*
join() eval.txt /*join()*
jsbterm-mouse options.txt /*jsbterm-mouse*
+jsdecode() eval.txt /*jsdecode()*
+jsencode() eval.txt /*jsencode()*
jsondecode() eval.txt /*jsondecode()*
jsonencode() eval.txt /*jsonencode()*
jtags tagsrch.txt /*jtags*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index d5164307b..a6faab3f3 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.4. Last change: 2016 Feb 04
+*todo.txt* For Vim version 7.4. Last change: 2016 Feb 07
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -81,32 +81,36 @@ Regexp problems:
Patch by Christian, 2016 Jan 29.
+channel:
-- use a timeout for connect()
- Patch from Yasuhiro Matsumoto, Feb 2
- Change connect() second argument to a dict with items:
- mode
- timeout
- callback
+- implement job control:
+ job argument: redirect stdin/stdout
+ job argument: killonexit
+ let job = job_maystart('command', {address}, {options})
- When receiving malformed json starting with a quote it doesn't get
discarded.
+- add ch_status(): Whether channel is open. Perhaps also mode, timeout.
+ When channel closes invoke channel callback.
- add ch_setcallback()
- add ch_settimeout()
- cleanup on exit? in mch_getout() and getout().
-- Add more contents to channel.txt
+- Add a test for the channel callback.
- implement debug log
-- implement job control:
- let job = job_start('command', {options})
- call job_stop(job)
- let job = job_maystart('command', {address}, {options})
- options:
- - keep running when Vim exits
-- add remark undo sync, is there a way to force it?
-- Add a test with a server that can send canned responses.
+- Add timestamp to queued messages and callbacks with ID, remove after a
+ minute.
+- add remark about undo sync, is there a way to force it?
- Add more testing in json_test.c
- make sure errors lead to a useful error msg. ["ex","foobar"]
-- set timeout for channel.
-- implement check for ID in response.
- json: implement UTF-16 surrogate pair.
+- Need way to uniquely identify a window, no matter how windows are
+ rearranged. Same for tab pages.
+ getwinid() ID of current winow
+ getwinid({nr}) ID of window {nr}
+ getwinid({nr}, {tab}) ID of window {nr} in tab page {tab}
+ getwinnr({id}) window nr of {id} or -1 if not open
+ gettabnr({id}) tab page nr of {id} or -1 if not open
+ gotowin({id})
+ Make it so that the window ID can be used where currently a window nr is used
+- For connection to server, a "keep open" flag would be useful. Retry
+ connecting in the main loop with zero timeout.
Patch on #608: (Ken Takata)
https://bitbucket.org/k_takata/vim-ktakata-mq/src/479934b94fd56b064c9e4bd8737585c5df69d56a/fix-gvimext-loadlibrary.patch?fileviewer=file-view-default
@@ -217,6 +221,8 @@ Patch to fix display of listchars on the cursorline. (Nayuri Aohime, 2013)
Update suggested by Yasuhiro Matsumoto, 2014 Nov 25:
https://gist.github.com/presuku/d3d6b230b9b6dcfc0477
+Patch to add TagNotFound autocommand. (Anton Lindqvist, 2016 Feb 3)
+
Illegal memory access, requires ASAN to see. (Dominique Pelle, 2015 Jul 28)
Gvim: when both Tab and CTRL-I are mapped, use CTRL-I not for Tab.
@@ -265,6 +271,9 @@ Can we cache the syntax attributes, so that updates for 'relativenumber' and
Build with Python on Mac does not always use the right library.
(Kazunobu Kuriyama, 2015 Mar 28)
+Patch to add GTK 3 support. (Kazunobu Kuriyama, 2016 Feb 6)
+Does not fully work yet.
+
Need a Vim equivalent of Python's None and a way to test for it.
Use v:none. var == v:none
@@ -621,6 +630,7 @@ 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)
@@ -2607,7 +2617,7 @@ GUI:
Need better separation of Vim core and GUI code.
8 When fontset support is enabled, setting 'guifont' to a single font
doesn't work.
-8 Menu priority for sub-menus for: Amiga, BeOS.
+8 Menu priority for sub-menus for: Amiga.
8 When translating menus ignore the part after the Tab, the shortcut. So
that the same menu item with a different shortcut (e.g., for the Mac) are
still translated.