mirror of
https://github.com/neovim/neovim.git
synced 2025-10-17 15:21:47 +00:00
fix(ui): update title in more cases (#31508)
This commit is contained in:
@@ -37,6 +37,63 @@ describe('title', function()
|
||||
end)
|
||||
end)
|
||||
|
||||
it('is updated in Insert mode', function()
|
||||
api.nvim_set_option_value('title', true, {})
|
||||
screen:expect(function()
|
||||
eq('[No Name] - Nvim', screen.title)
|
||||
end)
|
||||
feed('ifoo')
|
||||
screen:expect(function()
|
||||
eq('[No Name] + - Nvim', screen.title)
|
||||
end)
|
||||
feed('<Esc>')
|
||||
api.nvim_set_option_value('titlestring', '%m %f (%{mode(1)}) | nvim', {})
|
||||
screen:expect(function()
|
||||
eq('[+] [No Name] (n) | nvim', screen.title)
|
||||
end)
|
||||
feed('i')
|
||||
screen:expect(function()
|
||||
eq('[+] [No Name] (i) | nvim', screen.title)
|
||||
end)
|
||||
feed('<Esc>')
|
||||
screen:expect(function()
|
||||
eq('[+] [No Name] (n) | nvim', screen.title)
|
||||
end)
|
||||
end)
|
||||
|
||||
it('is updated in Cmdline mode', function()
|
||||
api.nvim_set_option_value('title', true, {})
|
||||
api.nvim_set_option_value('titlestring', '%f (%{mode(1)}) | nvim', {})
|
||||
screen:expect(function()
|
||||
eq('[No Name] (n) | nvim', screen.title)
|
||||
end)
|
||||
feed(':')
|
||||
screen:expect(function()
|
||||
eq('[No Name] (c) | nvim', screen.title)
|
||||
end)
|
||||
feed('<Esc>')
|
||||
screen:expect(function()
|
||||
eq('[No Name] (n) | nvim', screen.title)
|
||||
end)
|
||||
end)
|
||||
|
||||
it('is updated in Terminal mode', function()
|
||||
api.nvim_set_option_value('title', true, {})
|
||||
api.nvim_set_option_value('titlestring', '(%{mode(1)}) | nvim', {})
|
||||
fn.termopen({ n.testprg('shell-test'), 'INTERACT' })
|
||||
screen:expect(function()
|
||||
eq('(nt) | nvim', screen.title)
|
||||
end)
|
||||
feed('i')
|
||||
screen:expect(function()
|
||||
eq('(t) | nvim', screen.title)
|
||||
end)
|
||||
feed([[<C-\><C-N>]])
|
||||
screen:expect(function()
|
||||
eq('(nt) | nvim', screen.title)
|
||||
end)
|
||||
end)
|
||||
|
||||
describe('is not changed by', function()
|
||||
local file1 = is_os('win') and 'C:\\mydir\\myfile1' or '/mydir/myfile1'
|
||||
local file2 = is_os('win') and 'C:\\mydir\\myfile2' or '/mydir/myfile2'
|
||||
|
Reference in New Issue
Block a user