summaryrefslogtreecommitdiffstats
path: root/src/change.c
AgeCommit message (Collapse)Author
2024-04-02patch 9.1.0258: half-page scrolling broke backward compatibilityv9.1.0258Luuk van Baal
Problem: Support for 'smoothscroll' in (half-)page scrolling broke backward compatibility and can be made to work better. (after v9.1.215) Solution: Restore the previous cursor and end-of-buffer behavior for half-page scrolling and improve 'smoothscroll' support. (Luuk van Baal) fixes: #14338 closes: #14377 Signed-off-by: Luuk van Baal <luukvbaal@gmail.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-11patch 9.1.0168: too many STRLEN() callsv9.1.0168John Marriott
Problem: too many STRLEN() calls Solution: Make use of ml_get_len() calls instead (John Marriott) closes: #14123 Signed-off-by: John Marriott <basilisk@internode.on.net> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-10patch 9.1.0163: Calling STRLEN() to compute ml_line_textlen when not neededv9.1.0163zeertzjq
Problem: Calling STRLEN() to compute ml_line_textlen when not needed. Solution: Use 0 when STRLEN() will be required and call STRLEN() later. (zeertzjq) closes: #14155 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-03-05patch 9.1.0151: ml_get_buf_len() does not consider text propertiesv9.1.0151Christian Brabandt
Problem: ml_get_buf_len() does not consider text properties (zeertzj) Solution: Store text length excluding text properties length in addition in the memline related #14123 closes: #14133 Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-02-12patch 9.1.0100: Redrawing can be improved with undo and 'spell'v9.1.0100zeertzjq
Problem: When undoing with 'spell', redrawWinline() is called after changed_lines(), while later win_update() sets redraw type to UPD_NOT_VALID, even though w_redraw_top and w_redraw_bot are still valid. Solution: Only set redraw type to UPD_NOT_VALID when inserting/deleting lines after parts of window has pending redraw, i.e., when changed_lines() is called after redrawWinline(). (zeertzjq) closes: #14019 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2024-02-08patch 9.1.0082: Redrawing can be improved when deleting lines with 'cursorline'v9.1.0082zeertzjq
Problem: Redrawing can be improved when deleting lines with 'cursorline'. Solution: Use smarter invalidation and adjustment. Remove unnecessary UPD_VALID as it is already set at the top of the loop. Make the test for #4862 fail without the fix. (zeertzjq) closes: #13986 Signed-off-by: zeertzjq <zeertzjq@outlook.com> Signed-off-by: Christian Brabandt <cb@256bit.org>
2023-05-13patch 9.0.1551: position of marker for 'smoothscroll' not computed correctlyv9.0.1551Luuk van Baal
Problem: Position of marker for 'smoothscroll' not computed correctly. Solution: Take 'list' and other options into account. (Luuk van Baal, closes #12393)
2023-05-11patch 9.0.1543: display errors when making topline shorterv9.0.1543Luuk van Baal
Problem: Display errors when making topline shorter and 'smoothscroll' is set. Solution: Reset w_skipcol when the topline becomes shorter than its current value. (Luuk van Baal, closes #12367)
2023-02-04patch 9.0.1279: display shows lines scrolled down erroneouslyv9.0.1279Bram Moolenaar
Problem: Display shows lines scrolled down erroneously. (Yishai Lerner) Solution: Do not change "wl_lnum" at index zero. (closes #11938)
2023-01-17patch 9.0.1213: adding a line below the last one does not expand foldv9.0.1213Brandon Simmons
Problem: Adding a line below the last one does not expand fold. Solution: Do not skip mark_adjust() when adding lines below the last one. (Brandon Simmons, closes #11832, closes #10698)
2022-12-02patch 9.0.0990: callback name argument is changed by setqflist()v9.0.0990Bram Moolenaar
Problem: Callback name argument is changed by setqflist(). Solution: Use the expanded function name for the callback, do not store it in the argument. (closes #11653)
2022-11-02patch 9.0.0828: various typosv9.0.0828dundargoc
Problem: Various typos. Solution: Correct typos. (closes #11432)
2022-10-29patch 9.0.0819v9.0.0819Bram Moolenaar
2022-10-16patch 9.0.0777: code is indented too muchv9.0.0777Yegappan Lakshmanan
Problem: Code is indented too much. Solution: Use an early return. (Yegappan Lakshmanan, closes #11386)
2022-10-15patch 9.0.0761: cannot use 'indentexpr' for Lisp indentingv9.0.0761Bram Moolenaar
Problem: Cannot use 'indentexpr' for Lisp indenting. Solution: Add the 'lispoptions' option.
2022-10-15patch 9.0.0754: 'indentexpr' overrules lisp indenting in one situationv9.0.0754Bram Moolenaar
Problem: 'indentexpr' overrules lisp indenting in one situation. Solution: Add "else" to keep the lisp indent. (issue #11327)
2022-10-05patch 9.0.0664: bad redrawing with spell checking, using "C" and "$" in 'cpo'v9.0.0664Bram Moolenaar
Problem: Bad redrawing with spell checking, using "C" and "$" in 'cpo'. Solution: Do not redraw the next line when "$" is in 'cpo'. (closes #11285)
2022-09-27patch 9.0.0608: with spelling, deleting a full stop does not update next linev9.0.0608Bram Moolenaar
Problem: With spell checking, deleting a full stop at the end of a line does not update SpellCap at the start of the next line. Solution: Update the next line when characters have been deleted. Also when using undo.
2022-09-14patch 9.0.0466: virtual text wrong after adding line break after linev9.0.0466Bram Moolenaar
Problem: Virtual text wrong after adding line break after line. Solution: Pass an "eol" flag to where text properties are adjusted. (closes #11131)
2022-09-02patch 9.0.0361: removing a listener may result in a memory leakv9.0.0361Yegappan Lakshmanan
Problem: Removing a listener may result in a memory leak and remove subsequent listerns. Solution: Init the "prev" pointer only once. (Yegappan Lakshmanan, closes #11039)
2022-08-25patch 9.0.0263: too many #ifdefsv9.0.0263Bram Moolenaar
Problem: Too many #ifdefs. Solution: Make some functions always available.
2022-08-22patch 9.0.0245: mechanism to prevent recursive screen updating is incompletev9.0.0245Bram Moolenaar
Problem: Mechanism to prevent recursive screen updating is incomplete. Solution: Add "redraw_not_allowed" and set it in build_stl_str_hl(). (issue #10952)
2022-08-14patch 9.0.0206: redraw flags are not named specificallyv9.0.0206Bram Moolenaar
Problem: Redraw flags are not named specifically. Solution: Prefix "UPD_" to the flags, for UPDate_screen().
2022-08-12patch 9.0.0194: cursor displayed in wrong position after removing text propv9.0.0194Bram Moolenaar
Problem: Cursor displayed in wrong position after removing text prop. (Ben Jackson) Solution: Invalidate the cursor position. (closes #10898)
2022-08-08patch 9.0.0170: various minor code formatting issuesv9.0.0170Bram Moolenaar
Problem: Various minor code formatting issues. Solution: Improve code formatting.
2022-07-23patch 9.0.0063: too many type casts for dict_get functionsv9.0.0063Bram Moolenaar
Problem: Too many type casts for dict_get functions. Solution: Change the key argument from "char_u *" to "char *".
2022-06-30patch 9.0.0013: reproducing memory access errors can be difficultv9.0.0013Bram Moolenaar
Problem: Reproducing memory access errors can be difficult. Solution: When testing, copy each line to allocated memory, so that valgrind can detect accessing memory before and/or after it. Fix uncovered problems.
2022-05-31patch 8.2.5047: CurSearch highlight is often wrongv8.2.5047Bram Moolenaar
Problem: CurSearch highlight is often wrong. Solution: Remember the last highlighted position and redraw when needed.
2022-05-27patch 8.2.5029: "textlock" is always zerov8.2.5029zeertzjq
Problem: "textlock" is always zero. Solution: Remove "textlock" and rename "textwinlock" to "textlock". (closes #10489)
2022-05-23patch 8.2.5008: when 'formatoptions' contains "/" wrongly wrapping commentv8.2.5008Bram Moolenaar
Problem: When 'formatoptions' contains "/" wrongly wrapping a long trailing comment. Solution: Pass the OPENLINE_FORMAT flag.
2022-05-21patch 8.2.4993: smart/C/lisp indenting is optionalv8.2.4993Bram Moolenaar
Problem: smart/C/lisp indenting is optional, which makes the code more complex, while it only reduces the executable size a bit. Solution: Graduate FEAT_CINDENT, FEAT_SMARTINDENT and FEAT_LISP.
2022-05-21patch 8.2.4988: textprop in wrong position when replacing multi-byte charsv8.2.4988LemonBoy
Problem: Textprop in wrong position when replacing multi-byte chars. Solution: Adjust textprop position. (closes #10461)
2022-05-16patch 8.2.4969: changing text in Visual mode may cause invalid memory accessv8.2.4969Bram Moolenaar
Problem: Changing text in Visual mode may cause invalid memory access. Solution: Check the Visual position after making a change.
2022-05-14patch 8.2.4955: text property in wrong position after auto-indentv8.2.4955LemonBoy
Problem: Text property in wrong position after auto-indent. Solution: Adjust text property columns. (closes #10422, closes #7719)
2022-05-14patch 8.2.4951: smart indenting done when not enabledv8.2.4951Bram Moolenaar
Problem: Smart indenting done when not enabled. Solution: Check option values before setting can_si. (closes #10420)
2022-05-12patch 8.2.4944: text properties are wrong after "cc"v8.2.4944LemonBoy
Problem: Text properties are wrong after "cc". (Axel Forsman) Solution: Pass the deleted byte count to inserted_bytes(). (closes #10412, closes #7737, closes #5763)
2022-05-07patch 8.2.4911: the mode #defines are not clearly namedv8.2.4911Bram Moolenaar
Problem: The mode #defines are not clearly named. Solution: Prepend MODE_. Renumber them to put the mapped modes first.
2022-05-07patch 8.2.4907: some users do not want a line comment always insertedv8.2.4907Bram Moolenaar
Problem: Some users do not want a line comment always inserted. Solution: Add the '/' flag to 'formatoptions' to not repeat the comment leader after a statement when using "o".
2022-04-11patch 8.2.4737: // in JavaScript string recognized as commentv8.2.4737Bram Moolenaar
Problem: // in JavaScript string recognized as comment. Solution: Only check for linecomment if 'cindent' is set. (closes #10151)
2022-04-07patch 8.2.4707: redrawing could be a bit more efficientv8.2.4707zeertzjq
Problem: Redrawing could be a bit more efficient. Solution: Optimize redrawing. (closes #10105)
2022-03-29patch 8.2.4644: redrawing too often when 'relativenumber' is setv8.2.4644Lewis Russell
Problem: Redrawing too often when 'relativenumber' is set. Solution: Only redraw when the cursor line changed. (Lewis Russell, closes #10040)
2022-02-16patch 8.2.4405: compiler warning for unused variable without +foldingv8.2.4405Bram Moolenaar
Problem: Compiler warning for unused variable without the +folding feature. (Tony Mechelynck) Solution: Add #ifdef.
2022-02-16patch 8.2.4403: ml_get error with nested folds and deleting linesv8.2.4403Bram Moolenaar
Problem: ml_get error with nested folds and deleting lines. Solution: Correct the last line number before calling hasFoldingWin().
2022-02-14patch 8.2.4379: an empty change is reported to a listenerv8.2.4379Bram Moolenaar
Problem: An empty change is reported to a listener. Solution: Do not report an empty change. (closes #9768) Remove unused return value.
2022-02-03patch 8.2.4288: preprocessor indents are inconsistentv8.2.4288K.Takata
Problem: Preprocessor indents are inconsistent. Solution: Fix preprocessor indents. (Ken Takata, closes #9691)
2022-01-01patch 8.2.3977: error messages are spread outv8.2.3977Bram Moolenaar
Problem: Error messages are spread out. Solution: Move more error messages to errors.h.
2021-12-29patch 8.2.3934: repeating line comment is undesired for "O" commandv8.2.3934Bram Moolenaar
Problem: Repeating line comment is undesired for "O" command. Solution: Do not copy line comment leader for "O". (closes #9426)
2021-12-13patch 8.2.3795: too many #ifdefsv8.2.3795Bram Moolenaar
Problem: Too many #ifdefs. Solution: Graduate the jumplist feature.
2021-12-12patch 8.2.3791: build error with +cindent but without +smartindentv8.2.3791Bram Moolenaar
Problem: Build error with +cindent but without +smartindent. Solution: Move declaration of "do_cindent". (John Marriott)
2021-12-12patch 8.2.3787: no proper formatting of a C line comment after a statementv8.2.3787Bram Moolenaar
Problem: No proper formatting of a C line comment after a statement. Solution: Find the start of the line comment, insert the comment leader and indent the comment properly.