[prev in list] [next in list] [prev in thread] [next in thread]
List: busybox
Subject: Re: [PATCH 1/2] vi: use basic regular expressions for search
From: Christophe Leroy <christophe.leroy () csgroup ! eu>
Date: 2021-06-28 12:39:00
Message-ID: b317282b-9d0f-ce3e-623f-34bdfaea82aa () csgroup ! eu
[Download RAW message or body]
Le 28/06/2021 à 14:24, Andrey Dobrovolsky a écrit :
> From b3b8fc90d095a4cfec5ad7448105ba3a815fb51e Mon Sep 17 00:00:00 2001
> From: Ron Yorston <rmy@pobox.com>
> Date: Fri, 25 Jun 2021 08:24:25 +0100
> Subject: [PATCH 1/2] vi: use basic regular expressions for search
Usually people send the patches to themself to tune their delivery scripts, not to the list.
>
> Both traditional vi and vim use basic regular expressions for
> search. Also, they don't allow matches to extend across line
> endings. Thus with the file:
>
> 123
> 234
>
> the search '/2.*4$' should find the second '2', not the first.
>
> Make BusyBox vi do the same.
>
> Whether or not VI_REGEX_SEARCH is enabled:
>
> function old new delta
> ------------------------------------------------------------------------------
> (add/remove: 0/0 grow/shrink: 0/0 up/down: 0/0) Total: 0 bytes
>
> Signed-off-by: Andrey Dobrovolsky <andrey.dobrovolsky.odessa@gmail.com>
> Signed-off-by: Ron Yorston <rmy@pobox.com>
> ---
> editors/vi.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/editors/vi.c b/editors/vi.c
> index f0bbc9518..959362b25 100644
> --- a/editors/vi.c
> +++ b/editors/vi.c
> @@ -2378,9 +2378,9 @@ static char *char_search(char *p, const char *pat, int dir_and_range)
> char *q;
> int i, size, range, start;
>
> - re_syntax_options = RE_SYNTAX_POSIX_EXTENDED;
> + re_syntax_options = RE_SYNTAX_POSIX_BASIC & (~RE_DOT_NEWLINE);
> if (ignorecase)
> - re_syntax_options = RE_SYNTAX_POSIX_EXTENDED | RE_ICASE;
> + re_syntax_options |= RE_ICASE;
>
> memset(&preg, 0, sizeof(preg));
> err = re_compile_pattern(pat, strlen(pat), &preg);
>
>
> _______________________________________________
> busybox mailing list
> busybox@busybox.net
> http://lists.busybox.net/mailman/listinfo/busybox
>
_______________________________________________
busybox mailing list
busybox@busybox.net
http://lists.busybox.net/mailman/listinfo/busybox
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic