1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
-- Normal mode tests.
local t = require('test.testutil')
local n = require('test.functional.testnvim')()
local Screen = require('test.functional.ui.screen')
local clear = n.clear
local feed = n.feed
local fn = n.fn
local command = n.command
local eq = t.eq
local api = n.api
describe('Normal mode', function()
before_each(clear)
it('setting &winhighlight or &winblend does not change curswant #27470', function()
fn.setline(1, { 'long long lone line', 'short line' })
feed('ggfi')
local pos = fn.getcurpos()
feed('j')
command('setlocal winblend=10 winhighlight=Visual:Search')
feed('k')
eq(pos, fn.getcurpos())
end)
it('&showcmd does not crash with :startinsert #28419', function()
local screen = Screen.new(60, 17)
fn.jobstart({ n.nvim_prog, '--clean', '--cmd', 'startinsert' }, {
term = true,
env = { VIMRUNTIME = os.getenv('VIMRUNTIME') },
})
screen:expect({
grid = [[
^ |
~ |*13
[No Name] 0,1 All|
-- INSERT -- |
|
]],
attr_ids = {},
})
end)
it('replacing with ZWJ emoji sequences', function()
local screen = Screen.new(30, 8)
api.nvim_buf_set_lines(0, 0, -1, true, { 'abcdefg' })
feed('05rπ§βπΎ') -- ZWJ
screen:expect([[
π§βπΎπ§βπΎπ§βπΎπ§βπΎ^π§βπΎfg |
{1:~ }|*6
|
]])
feed('2rπ³οΈββ§οΈ') -- ZWJ and variant selectors
screen:expect([[
π§βπΎπ§βπΎπ§βπΎπ§βπΎπ³οΈββ§οΈ^π³οΈββ§οΈg |
{1:~ }|*6
|
]])
end)
end)
|