aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--runtime/doc/eval.txt40
-rw-r--r--runtime/doc/msgpack_rpc.txt2
-rw-r--r--runtime/doc/remote.txt8
-rw-r--r--src/nvim/eval.c4
-rw-r--r--src/nvim/msgpack_rpc/server.c8
5 files changed, 32 insertions, 30 deletions
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 3865175a1f..5eb8f62d8b 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1583,7 +1583,9 @@ v:scrollstart String describing the script or function that caused the
hit-enter prompt.
*v:servername* *servername-variable*
-v:servername The resulting registered |x11-clientserver| name if any.
+v:servername Default {Nvim} server address. Equivalent to
+ |$NVIM_LISTEN_ADDRESS| on startup, but may differ if the
+ latter is modified or unset. |serverstop()|
Read-only.
@@ -2366,8 +2368,8 @@ char2nr({expr}[, {utf8}]) *char2nr()*
char2nr("ABC") returns 65
< When {utf8} is omitted or zero, the current 'encoding' is used.
Example for "utf-8": >
- char2nr("á") returns 225
- char2nr("á"[0]) returns 195
+ char2nr("á") returns 225
+ char2nr("á"[0]) returns 195
< With {utf8} set to 1, always treat as utf-8 characters.
A combining character is a separate character.
|nr2char()| does the opposite.
@@ -5374,25 +5376,31 @@ server2client( {clientid}, {string}) *server2client()*
Example: >
:echo server2client(expand("<client>"), "HELLO")
<
-serverlist() *serverlist()*
+serverlist() *serverlist()*
Returns a list of available server names in a list.
When there are no servers an empty string is returned.
Example: >
:echo serverlist()
+< *--serverlist*
+ The Vim command-line option `--serverlist` can be imitated: >
+ nvim --cmd "echo serverlist()" --cmd "q"
+<
+serverstart([{address}]) *serverstart()*
+ Opens a named pipe or TCP socket at {address} for clients to
+ connect to and returns {address}. If no address is given, it
+ is equivalent to: >
+ :call serverstart(tempname())
+< |$NVIM_LISTEN_ADDRESS| is set to {address} if not already set.
+ *--servername*
+ The Vim command-line option `--servername` can be imitated: >
+ nvim --cmd "let g:server_addr = serverstart('foo')"
<
-serverlisten([{address}]) *serverlisten()*
- Opens a Unix or TCP socket at {address} for clients to connect
- to and returns {address}. If no address is given, it is
- equivalent to >
- :call serverlisten(tempname())
-< If |$NVIM_LISTEN_ADDRESS| is not set, it will be set to
- {address}.
-
serverstop({address}) *serverstop()*
- Closes the Unix or TCP socket at {address}. Does nothing if
- {address} is empty, or does not refer to a server. If
- {address} equals |$NVIM_LISTEN_ADDRESS|, the listen address
- will be unset.
+ Closes the pipe or socket at {address}. Does nothing if
+ {address} is empty or invalid.
+ If |$NVIM_LISTEN_ADDRESS| is stopped it is unset.
+ If |v:servername| is stopped it is set to the next available
+ address returned by |serverlist()|.
setbufvar({expr}, {varname}, {val}) *setbufvar()*
Set option or local variable {varname} in buffer {expr} to
diff --git a/runtime/doc/msgpack_rpc.txt b/runtime/doc/msgpack_rpc.txt
index b6142e2234..8304d79c17 100644
--- a/runtime/doc/msgpack_rpc.txt
+++ b/runtime/doc/msgpack_rpc.txt
@@ -81,6 +81,8 @@ There are four ways to open msgpack-rpc streams to nvim:
>
:echo $NVIM_LISTEN_ADDRESS
<
+ See also |v:servername|.
+
4. Through a TCP/IP socket. To make nvim listen on a TCP/IP socket, set the
|$NVIM_LISTEN_ADDRESS| environment variable in a shell before starting:
>
diff --git a/runtime/doc/remote.txt b/runtime/doc/remote.txt
index e84b7fc5e9..81ab72a100 100644
--- a/runtime/doc/remote.txt
+++ b/runtime/doc/remote.txt
@@ -56,11 +56,6 @@ The following command line arguments are available:
*--remote-tab-wait-silent*
--remote-tab-wait-silent Like --remote-wait-silent but open each file
in a new tabpage.
- *--servername*
- --servername {name} Become the server {name}. When used together
- with one of the --remote commands: connect to
- server {name} instead of the default (see
- below).
*--remote-send*
--remote-send {keys} Send {keys} to server and exit. The {keys}
are not mapped. Special key names are
@@ -69,9 +64,6 @@ The following command line arguments are available:
*--remote-expr*
--remote-expr {expr} Evaluate {expr} in server and print the result
on stdout.
- *--serverlist*
- --serverlist Output a list of server names.
-
Examples ~
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 906659a1f3..366afb1496 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -365,7 +365,7 @@ static struct vimvar {
} vimvars[VV_LEN] =
{
/*
- * The order here must match the VV_ defines in vim.h!
+ * The order here must match the VV_ defines in eval.h!
* Initializing a union does not work, leave tv.vval empty to get zero's.
*/
{VV_NAME("count", VAR_NUMBER), VV_COMPAT+VV_RO},
@@ -13356,7 +13356,7 @@ static void f_serverlist(typval_T *argvars, typval_T *rettv)
static void f_serverstart(typval_T *argvars, typval_T *rettv)
{
rettv->v_type = VAR_STRING;
- rettv->vval.v_string = NULL; // Will hold the address of the new server.
+ rettv->vval.v_string = NULL; // Address of the new server
if (check_restricted() || check_secure()) {
return;
diff --git a/src/nvim/msgpack_rpc/server.c b/src/nvim/msgpack_rpc/server.c
index 884a2f8bff..ab1b04d73f 100644
--- a/src/nvim/msgpack_rpc/server.c
+++ b/src/nvim/msgpack_rpc/server.c
@@ -28,13 +28,13 @@ typedef enum {
} ServerType;
typedef struct {
- // The address of a pipe, or string value of a tcp address.
+ // Pipe/socket path, or TCP address string
char addr[ADDRESS_MAX_SIZE];
// Type of the union below
ServerType type;
- // This is either a tcp server or unix socket(named pipe on windows)
+ // TCP server or unix socket (named pipe on Windows)
union {
struct {
uv_tcp_t handle;
@@ -144,7 +144,7 @@ int server_start(const char *endpoint)
size_t addr_len = (size_t)(ip_end - addr);
if (addr_len > sizeof(ip) - 1) {
- // Maximum length of an IP address buffer is 15(eg: 255.255.255.255)
+ // Maximum length of an IPv4 address buffer is 15 (eg: 255.255.255.255)
addr_len = sizeof(ip) - 1;
}
@@ -245,7 +245,7 @@ void server_stop(char *endpoint)
// Trim to `ADDRESS_MAX_SIZE`
xstrlcpy(addr, endpoint, sizeof(addr));
- int i = 0; // The index of the server whose address equals addr.
+ int i = 0; // Index of the server whose address equals addr.
for (; i < servers.ga_len; i++) {
server = ((Server **)servers.ga_data)[i];
if (strcmp(addr, server->addr) == 0) {