mirror of
https://github.com/neovim/neovim.git
synced 2025-09-20 18:28:19 +00:00
api/buffer: Add nvim_buf_get_changedtick method
This commit is contained in:
@@ -411,10 +411,13 @@ end:
|
|||||||
|
|
||||||
/// Gets a buffer-scoped (b:) variable.
|
/// Gets a buffer-scoped (b:) variable.
|
||||||
///
|
///
|
||||||
/// @param buffer Buffer handle
|
/// @note Use nvim_buf_get_changedtick() for “variable” `b:changedtick`.
|
||||||
/// @param name Variable name
|
/// This method only gets variables from b: dictionary.
|
||||||
/// @param[out] err Error details, if any
|
///
|
||||||
/// @return Variable value
|
/// @param buffer The buffer handle
|
||||||
|
/// @param name The variable name
|
||||||
|
/// @param[out] err Details of an error that may have occurred
|
||||||
|
/// @return The variable value
|
||||||
Object nvim_buf_get_var(Buffer buffer, String name, Error *err)
|
Object nvim_buf_get_var(Buffer buffer, String name, Error *err)
|
||||||
{
|
{
|
||||||
buf_T *buf = find_buffer_by_handle(buffer, err);
|
buf_T *buf = find_buffer_by_handle(buffer, err);
|
||||||
@@ -426,6 +429,22 @@ Object nvim_buf_get_var(Buffer buffer, String name, Error *err)
|
|||||||
return dict_get_value(buf->b_vars, name, err);
|
return dict_get_value(buf->b_vars, name, err);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Gets a changed tick of a buffer
|
||||||
|
///
|
||||||
|
/// @param[in] buffer The buffer handle.
|
||||||
|
///
|
||||||
|
/// @return `b:changedtick` value.
|
||||||
|
Integer nvim_buf_get_changedtick(Buffer buffer, Error *err)
|
||||||
|
{
|
||||||
|
const buf_T *const buf = find_buffer_by_handle(buffer, err);
|
||||||
|
|
||||||
|
if (!buf) {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return buf->b_changedtick;
|
||||||
|
}
|
||||||
|
|
||||||
/// Sets a buffer-scoped (b:) variable
|
/// Sets a buffer-scoped (b:) variable
|
||||||
///
|
///
|
||||||
/// @param buffer Buffer handle
|
/// @param buffer Buffer handle
|
||||||
|
@@ -2,7 +2,9 @@ local helpers = require('test.functional.helpers')(after_each)
|
|||||||
local clear, nvim, buffer = helpers.clear, helpers.nvim, helpers.buffer
|
local clear, nvim, buffer = helpers.clear, helpers.nvim, helpers.buffer
|
||||||
local curbuf, curwin, eq = helpers.curbuf, helpers.curwin, helpers.eq
|
local curbuf, curwin, eq = helpers.curbuf, helpers.curwin, helpers.eq
|
||||||
local curbufmeths, ok = helpers.curbufmeths, helpers.ok
|
local curbufmeths, ok = helpers.curbufmeths, helpers.ok
|
||||||
local funcs, request = helpers.funcs, helpers.request
|
local funcs = helpers.funcs
|
||||||
|
local request = helpers.request
|
||||||
|
local neq = helpers.neq
|
||||||
local NIL = helpers.NIL
|
local NIL = helpers.NIL
|
||||||
|
|
||||||
describe('api/buf', function()
|
describe('api/buf', function()
|
||||||
@@ -249,6 +251,17 @@ describe('api/buf', function()
|
|||||||
eq(1, funcs.exists('b:lua'))
|
eq(1, funcs.exists('b:lua'))
|
||||||
curbufmeths.del_var('lua')
|
curbufmeths.del_var('lua')
|
||||||
eq(0, funcs.exists('b:lua'))
|
eq(0, funcs.exists('b:lua'))
|
||||||
|
curbuf('set_var', 'changedtick', true)
|
||||||
|
eq(true, curbuf('get_var', 'changedtick'))
|
||||||
|
neq(true, nvim('eval', 'b:changedtick'))
|
||||||
|
end)
|
||||||
|
end)
|
||||||
|
|
||||||
|
describe('get_changedtick', function()
|
||||||
|
it('works', function()
|
||||||
|
eq(2, curbufmeths.get_changedtick())
|
||||||
|
curbufmeths.set_lines(0, 1, false, {'abc\0', '\0def', 'ghi'})
|
||||||
|
eq(3, curbufmeths.get_changedtick())
|
||||||
end)
|
end)
|
||||||
|
|
||||||
it('buffer_set_var returns the old value', function()
|
it('buffer_set_var returns the old value', function()
|
||||||
|
Reference in New Issue
Block a user