diff options
author | Liad Oz <liadozil@gmail.com> | 2022-12-07 19:07:56 +0200 |
---|---|---|
committer | Liad Oz <liadozil@gmail.com> | 2023-01-14 20:11:03 +0200 |
commit | da70c394053e2110aedf5a8ea72cbaba0ccf06d9 (patch) | |
tree | 61442eaa2601dd49b14db9675669028def8b1d8b | |
parent | 8b86cb8f5b26699ead075cb6660c9236dfb5c495 (diff) | |
download | rneovim-da70c394053e2110aedf5a8ea72cbaba0ccf06d9.tar.gz rneovim-da70c394053e2110aedf5a8ea72cbaba0ccf06d9.tar.bz2 rneovim-da70c394053e2110aedf5a8ea72cbaba0ccf06d9.zip |
fix(extmarks): adjust extmarks when inserting prompt prefix
-rw-r--r-- | src/nvim/edit.c | 2 | ||||
-rw-r--r-- | test/functional/api/extmark_spec.lua | 8 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/nvim/edit.c b/src/nvim/edit.c index 36a8674730..b83e732cec 100644 --- a/src/nvim/edit.c +++ b/src/nvim/edit.c @@ -1484,7 +1484,7 @@ static void init_prompt(int cmdchar_todo) } curwin->w_cursor.lnum = curbuf->b_ml.ml_line_count; coladvance(MAXCOL); - changed_bytes(curbuf->b_ml.ml_line_count, 0); + inserted_bytes(curbuf->b_ml.ml_line_count, 0, 0, (colnr_T)strlen(prompt)); } // Insert always starts after the prompt, allow editing text after it. diff --git a/test/functional/api/extmark_spec.lua b/test/functional/api/extmark_spec.lua index 00f5b25b8a..9902826c72 100644 --- a/test/functional/api/extmark_spec.lua +++ b/test/functional/api/extmark_spec.lua @@ -1454,6 +1454,14 @@ describe('API/extmarks', function() }} }, get_extmarks(ns, 0, -1, {details=true})) end) + it('in prompt buffer', function() + feed('dd') + local id = set_extmark(ns, marks[1], 0, 0, {}) + curbufmeths.set_option('buftype', 'prompt') + feed('i<esc>') + eq({{id, 0, 2}}, get_extmarks(ns, 0, -1)) + end) + it('can get details', function() set_extmark(ns, marks[1], 0, 0, { end_col = 0, |