diff options
| author | Christian Hesse <mail@eworm.de> | 2017-01-16 22:25:32 +0100 |
|---|---|---|
| committer | Christian Hesse <mail@eworm.de> | 2025-12-09 17:28:35 +0100 |
| commit | 82865164562201d6a21b25c32273e75b65e2c7a2 (patch) | |
| tree | 5e32432ef7520ad29100ebd99364c349866b7315 /vis-motions.c | |
| parent | 560fa2bcaf2debdb5f12555efd5aa30c3b32467b (diff) | |
| download | vis-82865164562201d6a21b25c32273e75b65e2c7a2.tar.gz vis-82865164562201d6a21b25c32273e75b65e2c7a2.tar.xz | |
show "pattern not found: foo" on search without result
Diffstat (limited to 'vis-motions.c')
| -rw-r--r-- | vis-motions.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/vis-motions.c b/vis-motions.c index 5957c7b..d864dd5 100644 --- a/vis-motions.c +++ b/vis-motions.c @@ -46,11 +46,16 @@ static size_t search_word_backward(Vis *vis, Text *txt, size_t pos) { } static size_t search_common(Vis *vis, Text *txt, size_t pos, bool backward) { - Regex *regex = vis_regex(vis, NULL); - if (regex) - pos = backward ? + const char *pattern = register_get(vis, &vis->registers[VIS_REG_SEARCH], NULL); + Regex *regex = vis_regex(vis, pattern); + if (regex) { + size_t newpos = backward ? text_search_backward(txt, pos, regex) : text_search_forward(txt, pos, regex); + if (newpos == pos) + vis_info_show(vis, "Pattern not found: `%s'", pattern); + pos = newpos; + } text_regex_free(regex); return pos; } |
