Check got_int in msg_multiline_attr

Fixes quitting the pager using `q`.

Fixes https://github.com/neovim/neovim/issues/10923.
This commit is contained in:
Daniel Hahler
2019-09-03 11:57:14 +02:00
parent 6434a0bf99
commit e867ac3e52
2 changed files with 41 additions and 1 deletions

View File

@@ -227,7 +227,7 @@ void msg_multiline_attr(const char *s, int attr)
{
const char *next_spec = s;
while (next_spec != NULL) {
while (next_spec != NULL && !got_int) {
next_spec = strpbrk(s, "\t\n\r");
if (next_spec != NULL) {

View File

@@ -951,6 +951,46 @@ local function screen_tests(linegrid)
|
]])
end)
describe('more prompt', function()
it('can be quit', function()
command("set more")
feed(':echon join(map(range(0, &lines*2), "v:val"), "\\n")<cr>')
screen:expect{grid=[[
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
{7:-- More --}^ |
]]}
feed('q')
screen:expect{grid=[[
^ |
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
{0:~ }|
|
]]}
end)
end)
end
describe("Screen (char-based)", function()