Neovim::Ext - Perl bindings for neovim
Perl interface to Neovim
Create a new Nvim instance for $session
.
Promote the current process into a perl plugin host for Nvim. It starts the event
loop for $session
, listening for Nvim requests and notifications, and also
registers Nvim commands for loading/unloading perl plugins.
Call a vimscript function.
Set the Nvim current directory.
Close the Nvim session.
Execute a single ex command.
Execute a single ex command and return the output.
Print $msg
as an error message. Does not append a newline and won't be displayed
if a linefeed is not sent.
Print $msg
as an error message. Appends a newline so the buffer is flushed
and displayed.
Evaluate a vimscript expression
Execute lua code.
Push $keys
< to Nvim user input buffer. Options can be a string with the following
character flags:
-
"m"
Remap keys. This is the default.
-
"n"
Do not remap keys.
-
"t" Handle keys as if typed; otherwise they are handled as if coming from a mapping. This matters for undo, opening folds, etc.
Invoke \&cb
for each path in 'runtimepath'.
Push $bytes
to Nvim's low level input buffer. Unliked feedkeys()
this uses the
lowest level input buffer and the call is not deferred.
Return a list reference of paths contained in the 'runtimepath' option.
Gets a list of attached UIs.
Block until a message (request or notification) is available. If any messages were previously enqueued, return the first in the queue. If not, the event loop is run until one is received.
Print $msg
as a normal message. The message is buffered and wont display
until a linefeed is sent.
Send a quit command to Nvim. By default, the quit command is qa!
which will make
Nvim quit without saving anything.
Replace any terminal code strings by byte sequences. The returned sequences are Nvim's
internal representation of keys. The returned sequences can be used as input to
feekeys()
.
Send an API request or notification to Nvim.
Run the event loop to receive requests and notifications from Nvim. This should not be called from a plugin running in the host, which already runs the loop and dispatches events to plugins.
Stop the event loop.
Return the number of display cells $string
occupies.
Subscribe to an Nvim event.
Unsubscribe from an Nvim event.
Jacques Germishuys [email protected]
Copyright 2019 Jacques Germishuys.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.