blob: 41c200612f0443c3687b6e3765f22b034c08a913 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001/* search.c */
Bram Moolenaaref269542016-01-19 13:22:12 +01002int search_regcomp(char_u *pat, int pat_save, int pat_use, int options, regmmatch_T *regmatch);
3char_u *get_search_pat(void);
4char_u *reverse_text(char_u *s);
5void save_re_pat(int idx, char_u *pat, int magic);
6void save_search_patterns(void);
7void restore_search_patterns(void);
Bram Moolenaar2e51d9a2017-10-29 16:40:30 +01008void save_last_search_pattern(void);
9void restore_last_search_pattern(void);
Bram Moolenaaref269542016-01-19 13:22:12 +010010void free_search_patterns(void);
11int ignorecase(char_u *pat);
Bram Moolenaar66e29d72016-08-20 16:57:02 +020012int ignorecase_opt(char_u *pat, int ic_in, int scs);
Bram Moolenaaref269542016-01-19 13:22:12 +010013int pat_has_uppercase(char_u *pat);
14char_u *last_csearch(void);
15int last_csearch_forward(void);
16int last_csearch_until(void);
17void set_last_csearch(int c, char_u *s, int len);
18void set_csearch_direction(int cdir);
19void set_csearch_until(int t_cmd);
20char_u *last_search_pat(void);
21void reset_search_dir(void);
22void set_last_search_pat(char_u *s, int idx, int magic, int setlast);
23void last_pat_prog(regmmatch_T *regmatch);
Bram Moolenaarfbd0b0a2017-06-17 18:44:21 +020024int searchit(win_T *win, buf_T *buf, pos_T *pos, int dir, char_u *pat, long count, int options, int pat_use, linenr_T stop_lnum, proftime_T *tm, int *timed_out);
Bram Moolenaaref269542016-01-19 13:22:12 +010025void set_search_direction(int cdir);
Bram Moolenaarfbd0b0a2017-06-17 18:44:21 +020026int do_search(oparg_T *oap, int dirc, char_u *pat, long count, int options, proftime_T *tm, int *timed_out);
Bram Moolenaaref269542016-01-19 13:22:12 +010027int search_for_exact_line(buf_T *buf, pos_T *pos, int dir, char_u *pat);
28int searchc(cmdarg_T *cap, int t_cmd);
29pos_T *findmatch(oparg_T *oap, int initc);
30pos_T *findmatchlimit(oparg_T *oap, int initc, int flags, int maxtravel);
31void showmatch(int c);
32int findsent(int dir, long count);
33int findpar(int *pincl, int dir, long count, int what, int both);
34int startPS(linenr_T lnum, int para, int both);
35int fwd_word(long count, int bigword, int eol);
36int bck_word(long count, int bigword, int stop);
37int end_word(long count, int bigword, int stop, int empty);
38int bckend_word(long count, int bigword, int eol);
39int current_word(oparg_T *oap, long count, int include, int bigword);
40int current_sent(oparg_T *oap, long count, int include);
41int current_block(oparg_T *oap, long count, int include, int what, int other);
42int current_tagblock(oparg_T *oap, long count_arg, int include);
43int current_par(oparg_T *oap, long count, int include, int type);
44int current_quote(oparg_T *oap, long count, int include, int quotechar);
45int current_search(long count, int forward);
46int linewhite(linenr_T lnum);
47void 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);
48int read_viminfo_search_pattern(vir_T *virp, int force);
49void write_viminfo_search_pattern(FILE *fp);
Bram Moolenaar071d4272004-06-13 20:20:40 +000050/* vim: set ft=c : */