123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- *remote.txt* Nvim
- VIM REFERENCE MANUAL by Bram Moolenaar
- Vim client-server communication *client-server*
- Type |gO| to see the table of contents.
- ==============================================================================
- 1. Common functionality *clientserver*
- Nvim's |RPC| functionality allows clients to programmatically control Nvim. Nvim
- itself takes command-line arguments that cause it to become a client to another
- Nvim running as a server. These arguments match those provided by Vim's
- clientserver option.
- The following command line arguments are available:
- argument meaning ~
- --remote [+{cmd}] {file} ... *--remote*
- Open the file list in a remote Vim. When
- there is no Vim server, execute locally.
- Vim allows one init command: +{cmd}.
- This must be an Ex command that can be
- followed by "|". It's not yet supported by
- Nvim.
- The rest of the command line is taken as the
- file list. Thus any non-file arguments must
- come before this.
- You cannot edit stdin this way |--|.
- The remote Vim is raised. If you don't want
- this use >
- nvim --remote-send "<C-\><C-N>:n filename<CR>"
- <
- --remote-silent [+{cmd}] {file} ... *--remote-silent*
- As above, but don't complain if there is no
- server and the file is edited locally.
- *--remote-tab*
- --remote-tab Like --remote but open each file in a new
- tabpage.
- *--remote-tab-silent*
- --remote-tab-silent Like --remote-silent but open each file in a
- new tabpage.
- *--remote-send*
- --remote-send {keys} Send {keys} to server and exit. The {keys}
- are not mapped. Special key names are
- recognized, e.g., "<CR>" results in a CR
- character.
- *--remote-expr*
- --remote-expr {expr} Evaluate {expr} in server and print the result
- on stdout.
- *--server*
- --server {addr} Connect to the named pipe or socket at the
- given address for executing remote commands.
- See |--listen| for specifying an address when
- starting a server.
- Examples ~
- Start an Nvim server listening on a named pipe at '~/.cache/nvim/server.pipe': >
- nvim --listen ~/.cache/nvim/server.pipe
- Edit "file.txt" in an Nvim server listening at '~/.cache/nvim/server.pipe': >
- nvim --server ~/.cache/nvim/server.pipe --remote file.txt
- This doesn't work, all arguments after --remote will be used as file names: >
- nvim --remote --server ~/.cache/nvim/server.pipe file.txt
- Tell the remote server to write all files and exit: >
- nvim --server ~/.cache/nvim/server.pipe --remote-send '<C-\><C-N>:wqa<CR>'
- REMOTE EDITING
- The --remote argument will cause a |:drop| command to be constructed from the
- rest of the command line and sent as described above.
- Note that the --remote and --remote-wait arguments will consume the rest of
- the command line. I.e. all remaining arguments will be regarded as filenames.
- You can not put options there!
- ==============================================================================
- 2. Missing functionality *E5600* *clientserver-missing*
- Vim supports additional functionality in clientserver that's not yet
- implemented in Nvim. In particular, none of the "wait" variants are supported
- yet. The following command line arguments are not yet available:
- argument meaning ~
- --remote-wait [+{cmd}] {file} ... *--remote-wait*
- Not yet supported by Nvim.
- As --remote, but wait for files to complete
- (unload) in remote Vim.
- --remote-wait-silent [+{cmd}] {file} ... *--remote-wait-silent*
- Not yet supported by Nvim.
- As --remote-wait, but don't complain if there
- is no server.
- *--remote-tab-wait*
- --remote-tab-wait Not yet supported by Nvim.
- Like --remote-wait but open each file in a new
- tabpage.
- *--remote-tab-wait-silent*
- --remote-tab-wait-silent Not yet supported by Nvim.
- Like --remote-wait-silent but open each file
- in a new tabpage.
- *--servername*
- --servername {name} Not yet supported by Nvim.
- Become the server {name}. When used together
- with one of the --remote commands: connect to
- server {name} instead of the default (see
- below). The name used will be uppercase.
- *--serverlist*
- --serverlist Not yet supported by Nvim.
- Output a list of server names.
- SERVER NAME *client-server-name*
- By default Vim will try to register the name under which it was invoked (gvim,
- egvim ...). This can be overridden with the --servername argument. Nvim
- either listens on a named pipe or a socket and does not yet support this
- --servername functionality.
- vim:tw=78:sw=4:ts=8:noet:ft=help:norl:
|