mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
api/buffer: Add nvim_buf_get_changedtick method
This commit is contained in:
parent
9752a333c3
commit
0eab7ac4b9
@ -411,10 +411,13 @@ end:
|
||||
|
||||
/// Gets a buffer-scoped (b:) variable.
|
||||
///
|
||||
/// @param buffer Buffer handle
|
||||
/// @param name Variable name
|
||||
/// @param[out] err Error details, if any
|
||||
/// @return Variable value
|
||||
/// @note Use nvim_buf_get_changedtick() for “variable” `b:changedtick`.
|
||||
/// This method only gets variables from b: dictionary.
|
||||
///
|
||||
/// @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)
|
||||
{
|
||||
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);
|
||||
}
|
||||
|
||||
/// 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
|
||||
///
|
||||
/// @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 curbuf, curwin, eq = helpers.curbuf, helpers.curwin, helpers.eq
|
||||
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
|
||||
|
||||
describe('api/buf', function()
|
||||
@ -249,6 +251,17 @@ describe('api/buf', function()
|
||||
eq(1, funcs.exists('b:lua'))
|
||||
curbufmeths.del_var('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)
|
||||
|
||||
it('buffer_set_var returns the old value', function()
|
||||
|
Loading…
Reference in New Issue
Block a user