Mercurial > vim
comparison src/indent.c @ 30257:45788c16b3a5 v9.0.0464
patch 9.0.0464: with virtual text "above" indenting doesn't work well
Commit: https://github.com/vim/vim/commit/702bd6c7c61073c0907fd7608911aebee4acd337
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Sep 14 16:09:57 2022 +0100
patch 9.0.0464: with virtual text "above" indenting doesn't work well
Problem: With virtual text "above" indenting doesn't work well.
Solution: Ignore text properties while adjusting indent. (issue https://github.com/vim/vim/issues/11084)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 14 Sep 2022 17:15:06 +0200 |
parents | 1100c9c3fd2a |
children | 33a3f63785db |
comparison
equal
deleted
inserted
replaced
30256:15bee6545058 | 30257:45788c16b3a5 |
---|---|
1287 } | 1287 } |
1288 | 1288 |
1289 // for the following tricks we don't want list mode | 1289 // for the following tricks we don't want list mode |
1290 save_p_list = curwin->w_p_list; | 1290 save_p_list = curwin->w_p_list; |
1291 curwin->w_p_list = FALSE; | 1291 curwin->w_p_list = FALSE; |
1292 #ifdef FEAT_PROP_POPUP | |
1293 ignore_text_props = TRUE; | |
1294 #endif | |
1292 vc = getvcol_nolist(&curwin->w_cursor); | 1295 vc = getvcol_nolist(&curwin->w_cursor); |
1293 vcol = vc; | 1296 vcol = vc; |
1294 | 1297 |
1295 // For Replace mode we need to fix the replace stack later, which is only | 1298 // For Replace mode we need to fix the replace stack later, which is only |
1296 // possible when the cursor is in the indent. Remember the number of | 1299 // possible when the cursor is in the indent. Remember the number of |
1438 replaced = NUL; | 1441 replaced = NUL; |
1439 } | 1442 } |
1440 ++start_col; | 1443 ++start_col; |
1441 } | 1444 } |
1442 } | 1445 } |
1446 #ifdef FEAT_PROP_POPUP | |
1447 ignore_text_props = FALSE; | |
1448 #endif | |
1443 | 1449 |
1444 // For MODE_VREPLACE state, we also have to fix the replace stack. In this | 1450 // For MODE_VREPLACE state, we also have to fix the replace stack. In this |
1445 // case it is always possible because we backspace over the whole line and | 1451 // case it is always possible because we backspace over the whole line and |
1446 // then put it back again the way we wanted it. | 1452 // then put it back again the way we wanted it. |
1447 if (State & VREPLACE_FLAG) | 1453 if (State & VREPLACE_FLAG) |