Mercurial > vim
comparison src/proto/memline.pro @ 20581:e529690f27bc v8.2.0844
patch 8.2.0844: text properties crossing lines not handled correctly
Commit: https://github.com/vim/vim/commit/a9d4b84d97fb74061eeb42c1433e111fb58825dc
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat May 30 14:46:52 2020 +0200
patch 8.2.0844: text properties crossing lines not handled correctly
Problem: Text properties crossing lines not handled correctly.
Solution: When saving for undo include an extra line when needed and do not
adjust properties when undoing. (Axel Forsman, closes #5875)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 30 May 2020 15:00:03 +0200 |
parents | a961efb326e5 |
children | d571231175b4 |
comparison
equal
deleted
inserted
replaced
20580:213a1f6ae87d | 20581:e529690f27bc |
---|---|
20 char_u *ml_get_curline(void); | 20 char_u *ml_get_curline(void); |
21 char_u *ml_get_cursor(void); | 21 char_u *ml_get_cursor(void); |
22 char_u *ml_get_buf(buf_T *buf, linenr_T lnum, int will_change); | 22 char_u *ml_get_buf(buf_T *buf, linenr_T lnum, int will_change); |
23 int ml_line_alloced(void); | 23 int ml_line_alloced(void); |
24 int ml_append(linenr_T lnum, char_u *line, colnr_T len, int newfile); | 24 int ml_append(linenr_T lnum, char_u *line, colnr_T len, int newfile); |
25 int ml_append_flags(linenr_T lnum, char_u *line, colnr_T len, int flags); | |
25 int ml_append_buf(buf_T *buf, linenr_T lnum, char_u *line, colnr_T len, int newfile); | 26 int ml_append_buf(buf_T *buf, linenr_T lnum, char_u *line, colnr_T len, int newfile); |
26 int ml_replace(linenr_T lnum, char_u *line, int copy); | 27 int ml_replace(linenr_T lnum, char_u *line, int copy); |
27 int ml_replace_len(linenr_T lnum, char_u *line_arg, colnr_T len_arg, int has_props, int copy); | 28 int ml_replace_len(linenr_T lnum, char_u *line_arg, colnr_T len_arg, int has_props, int copy); |
28 int ml_delete(linenr_T lnum, int message); | 29 int ml_delete(linenr_T lnum, int message); |
30 int ml_delete_flags(linenr_T lnum, int flags); | |
29 void ml_setmarked(linenr_T lnum); | 31 void ml_setmarked(linenr_T lnum); |
30 linenr_T ml_firstmarked(void); | 32 linenr_T ml_firstmarked(void); |
31 void ml_clearmarked(void); | 33 void ml_clearmarked(void); |
32 int resolve_symlink(char_u *fname, char_u *buf); | 34 int resolve_symlink(char_u *fname, char_u *buf); |
33 char_u *makeswapname(char_u *fname, char_u *ffname, buf_T *buf, char_u *dir_name); | 35 char_u *makeswapname(char_u *fname, char_u *ffname, buf_T *buf, char_u *dir_name); |