Mercurial > vim
view src/proto/search.pro @ 19534:36ec10251b2b v8.2.0324
patch 8.2.0324: text property not updated correctly when inserting/deleting
Commit: https://github.com/vim/vim/commit/12f20038714928bfecdeee31ed1f927324542034
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Feb 26 22:06:00 2020 +0100
patch 8.2.0324: text property not updated correctly when inserting/deleting
Problem: Text property not updated correctly when inserting/deleting.
Solution: Use the right column when deleting. Make zero-width text
properties respect start_incl and end_incl. (Axel Forsman,
closes #5696, closes #5679)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 26 Feb 2020 22:15:04 +0100 |
parents | 5512aa74cb62 |
children | 6ca6a372fef6 |
line wrap: on
line source
/* search.c */ int search_regcomp(char_u *pat, int pat_save, int pat_use, int options, regmmatch_T *regmatch); char_u *get_search_pat(void); char_u *reverse_text(char_u *s); void save_re_pat(int idx, char_u *pat, int magic); void save_search_patterns(void); void restore_search_patterns(void); void free_search_patterns(void); void save_last_search_pattern(void); void restore_last_search_pattern(void); char_u *last_search_pattern(void); int ignorecase(char_u *pat); int ignorecase_opt(char_u *pat, int ic_in, int scs); int pat_has_uppercase(char_u *pat); char_u *last_csearch(void); int last_csearch_forward(void); int last_csearch_until(void); void set_last_csearch(int c, char_u *s, int len); void set_csearch_direction(int cdir); void set_csearch_until(int t_cmd); char_u *last_search_pat(void); void reset_search_dir(void); void set_last_search_pat(char_u *s, int idx, int magic, int setlast); void last_pat_prog(regmmatch_T *regmatch); int searchit(win_T *win, buf_T *buf, pos_T *pos, pos_T *end_pos, int dir, char_u *pat, long count, int options, int pat_use, searchit_arg_T *extra_arg); void set_search_direction(int cdir); int do_search(oparg_T *oap, int dirc, int search_delim, char_u *pat, long count, int options, searchit_arg_T *sia); int search_for_exact_line(buf_T *buf, pos_T *pos, int dir, char_u *pat); int searchc(cmdarg_T *cap, int t_cmd); pos_T *findmatch(oparg_T *oap, int initc); pos_T *findmatchlimit(oparg_T *oap, int initc, int flags, int maxtravel); void showmatch(int c); int findsent(int dir, long count); int findpar(int *pincl, int dir, long count, int what, int both); int startPS(linenr_T lnum, int para, int both); int fwd_word(long count, int bigword, int eol); int bck_word(long count, int bigword, int stop); int end_word(long count, int bigword, int stop, int empty); int bckend_word(long count, int bigword, int eol); int current_word(oparg_T *oap, long count, int include, int bigword); int current_sent(oparg_T *oap, long count, int include); int current_block(oparg_T *oap, long count, int include, int what, int other); int current_tagblock(oparg_T *oap, long count_arg, int include); int current_par(oparg_T *oap, long count, int include, int type); int current_quote(oparg_T *oap, long count, int include, int quotechar); int current_search(long count, int forward); int linewhite(linenr_T lnum); void find_pattern_in_path(char_u *ptr, int dir, int len, int whole, int skip_comments, int type, long count, int action, linenr_T start_lnum, linenr_T end_lnum); spat_T *get_spat(int idx); int get_spat_last_idx(void); /* vim: set ft=c : */