Mercurial > vim
annotate src/proto/register.pro @ 34671:df52075b12cd v9.1.0217
patch 9.1.0217: regexp: verymagic cannot match before/after a mark
Commit: https://github.com/vim/vim/commit/46fa3c7e271eb2abb05a0d9e6dbc9c36c2b2da02
Author: Julio B <julio.bacel@gmail.com>
Date: Thu Mar 28 10:23:37 2024 +0100
patch 9.1.0217: regexp: verymagic cannot match before/after a mark
Problem: regexp: verymagic cannot match before/after a mark
Solution: Correctly check for the very magic check (Julio B)
Fix regexp parser for \v%>'m and \v%<'m
Currently \v%'m works fine, but it is unable to match before or after
the position of mark m.
closes: #14309
Signed-off-by: Julio B <julio.bacel@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 28 Mar 2024 10:30:04 +0100 |
parents | b1440083f0da |
children |
rev | line source |
---|---|
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
1 /* register.c */ |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
2 yankreg_T *get_y_regs(void); |
19774
00a1b89256ea
patch 8.2.0443: clipboard code is spread out
Bram Moolenaar <Bram@vim.org>
parents:
18164
diff
changeset
|
3 yankreg_T *get_y_register(int reg); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
4 yankreg_T *get_y_current(void); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
5 yankreg_T *get_y_previous(void); |
19774
00a1b89256ea
patch 8.2.0443: clipboard code is spread out
Bram Moolenaar <Bram@vim.org>
parents:
18164
diff
changeset
|
6 void set_y_current(yankreg_T *yreg); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
7 void set_y_previous(yankreg_T *yreg); |
25808
b1440083f0da
patch 8.2.3439: deleted lines go to wrong yank register
Bram Moolenaar <Bram@vim.org>
parents:
22732
diff
changeset
|
8 void reset_y_append(void); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
9 int get_expr_register(void); |
22732
4c21a3a47707
patch 8.2.1914: Vim9: cannot put line break in expression for '=' register
Bram Moolenaar <Bram@vim.org>
parents:
22176
diff
changeset
|
10 void set_expr_line(char_u *new_line, exarg_T *eap); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
11 char_u *get_expr_line(void); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
12 int valid_yank_reg(int regname, int writing); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
13 int get_yank_register(int regname, int writing); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
14 void *get_register(int name, int copy); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
15 void put_register(int name, void *reg); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
16 void free_register(void *reg); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
17 int yank_register_mline(int regname); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
18 int do_record(int c); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
19 int get_execreg_lastc(void); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
20 void set_execreg_lastc(int lastc); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
21 int do_execreg(int regname, int colon, int addcr, int silent); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
22 int insert_reg(int regname, int literally_arg); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
23 int get_spec_reg(int regname, char_u **argp, int *allocated, int errmsg); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
24 int cmdline_paste_reg(int regname, int literally_arg, int remcr); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
25 void shift_delete_registers(void); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
26 void yank_do_autocmd(oparg_T *oap, yankreg_T *reg); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
27 void init_yank(void); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
28 void clear_registers(void); |
19774
00a1b89256ea
patch 8.2.0443: clipboard code is spread out
Bram Moolenaar <Bram@vim.org>
parents:
18164
diff
changeset
|
29 void free_yank_all(void); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
30 int op_yank(oparg_T *oap, int deleting, int mess); |
22176
6941d3205be9
patch 8.2.1637: Vim9: :put ={expr} does not work inside :def function
Bram Moolenaar <Bram@vim.org>
parents:
20743
diff
changeset
|
31 void do_put(int regname, char_u *expr_result, int dir, long count, int flags); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
32 int get_register_name(int num); |
20743
a672feb8fc4f
patch 8.2.0924: cannot save and restore a register properly
Bram Moolenaar <Bram@vim.org>
parents:
19774
diff
changeset
|
33 int get_unname_register(void); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
34 void ex_display(exarg_T *eap); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
35 void dnd_yank_drag_data(char_u *str, long len); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
36 char_u get_reg_type(int regname, long *reglen); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
37 char_u *get_reg_contents(int regname, int flags); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
38 void write_reg_contents(int name, char_u *str, int maxlen, int must_append); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
39 void write_reg_contents_lst(int name, char_u **strings, int maxlen, int must_append, int yank_type, long block_len); |
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
40 void write_reg_contents_ex(int name, char_u *str, int maxlen, int must_append, int yank_type, long block_len); |
19774
00a1b89256ea
patch 8.2.0443: clipboard code is spread out
Bram Moolenaar <Bram@vim.org>
parents:
18164
diff
changeset
|
41 void str_to_reg(yankreg_T *y_ptr, int yank_type, char_u *str, long len, long blocklen, int str_list); |
18164
f57481564f2c
patch 8.1.2077: the ops.c file is too big
Bram Moolenaar <Bram@vim.org>
parents:
diff
changeset
|
42 /* vim: set ft=c : */ |