Home Explore Blog CI



neovim

3rd chunk of `runtime/doc/if_ruby.txt`
0f659af8504b07ae1819844397121746f0ac83775a8a10220000000100000bdd
 number
<

Module Functions:

							*ruby-message*
VIM::message({msg})
	Displays the message {msg}.

							*ruby-set_option*
VIM::set_option({arg})
	Sets a vim option.  {arg} can be any argument that the ":set" command
	accepts.  Note that this means that no spaces are allowed in the
	argument!  See |:set|.

							*ruby-command*
VIM::command({cmd})
	Executes Ex command {cmd}.

							*ruby-evaluate*
VIM::evaluate({expr})
	Evaluates {expr} using the vim internal expression evaluator (see
	|expression|).  Returns the expression result as a string.
	A |List| is turned into a string by joining the items and inserting
	line breaks.

==============================================================================
3. VIM::Buffer objects					*ruby-buffer*

VIM::Buffer objects represent vim buffers.

Class Methods:

current		Returns the current buffer object.
count		Returns the number of buffers.
self[{n}]	Returns the buffer object for the number {n}.  The first number
		is 0.

Methods:

name		Returns the full name of the buffer.
number		Returns the number of the buffer.
count		Returns the number of lines.
length		Returns the number of lines.
self[{n}]	Returns a line from the buffer. {n} is the line number.
self[{n}] = {str}
		Sets a line in the buffer. {n} is the line number.
delete({n})	Deletes a line from the buffer. {n} is the line number.
append({n}, {str})
		Appends a line after the line {n}.
line		Returns the current line of the buffer if the buffer is
		active.
line = {str}    Sets the current line of the buffer if the buffer is active.
line_number     Returns the number of the current line if the buffer is
		active.

==============================================================================
4. VIM::Window objects					*ruby-window*

VIM::Window objects represent vim windows.

Class Methods:

current		Returns the current window object.
count		Returns the number of windows.
self[{n}]	Returns the window object for the number {n}.  The first number
		is 0.

Methods:

buffer		Returns the buffer displayed in the window.
height		Returns the height of the window.
height = {n}	Sets the window height to {n}.
width		Returns the width of the window.
width = {n}	Sets the window width to {n}.
cursor		Returns a [row, col] array for the cursor position.
		First line number is 1 and first column number is 0.
cursor = [{row}, {col}]
		Sets the cursor position to {row} and {col}.

==============================================================================
5. Global variables					*ruby-globals*

There are two global variables.

$curwin		The current window object.
$curbuf		The current buffer object.

==============================================================================
6. rubyeval() Vim function				*ruby-rubyeval*

To facilitate bi-directional interface, you can use |rubyeval()| function to
evaluate Ruby expressions and pass their values to Vim script.

The Ruby value "true", "false" and "nil" are converted to v:true, v:false and
v:null, respectively.

 vim:tw=78:ts=8:noet:ft=help:norl:

Title: VIM Module: Buffer and Window Objects, Global Variables, and rubyeval() Function
Summary
This section details the `VIM::Buffer` and `VIM::Window` objects in the Ruby interface for Vim. It describes methods to access and manipulate buffers and windows, including getting their properties (name, number, height, width), accessing and modifying lines, and setting cursor positions. It also introduces the global variables `$curwin` and `$curbuf` representing the current window and buffer objects. Finally, it explains the `rubyeval()` function, which allows evaluating Ruby expressions from Vim script and passing the results back to Vim.