diff options
| author | ygrek <root@ygrek.org> | 2024-10-05 22:20:55 -0400 |
|---|---|---|
| committer | ygrek <root@ygrek.org> | 2025-01-03 15:07:36 -0500 |
| commit | 23025f561ee4f2bc2b3018e6feb9d1f7fdc2aba3 (patch) | |
| tree | dc338c7021edb7e59c80d5cb883db279ab8bb3b0 /rc/tools | |
| parent | 54084900624493033cb24640d864c109cdac40a7 (diff) | |
rc make: support multiline error pattern
Diffstat (limited to 'rc/tools')
| -rw-r--r-- | rc/tools/make.kak | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/rc/tools/make.kak b/rc/tools/make.kak index 7de2051d..9bc71c2e 100644 --- a/rc/tools/make.kak +++ b/rc/tools/make.kak @@ -62,8 +62,9 @@ define-command -hidden make-jump %{ set-option buffer jump_current_line %val{cursor_line} set-register a "%reg{1}/%reg{2}" "%reg{3}" "%reg{4}" "%reg{5}" } catch %{ - set-register / %opt{make_error_pattern} - execute-keys <a-h><a-l> s<ret>l + # check if error pattern matches exactly at the start of the current line, possibly spanning more lines + set-register / "\A%opt{make_error_pattern}" + execute-keys ghGe s<ret>l set-option buffer jump_current_line %val{cursor_line} set-register a "%reg{1}" "%reg{2}" "%reg{3}" "%reg{4}" } @@ -73,11 +74,12 @@ define-command -hidden make-jump %{ } define-command -hidden make-select-next %{ set-register / %opt{make_error_pattern} - execute-keys "%opt{jump_current_line}ggl" "/<ret>" + # go to the current line end, search and go to the start of selection + execute-keys "%opt{jump_current_line}ggl" "/<ret><a-;>;" } define-command -hidden make-select-previous %{ set-register / %opt{make_error_pattern} - execute-keys "%opt{jump_current_line}g" "<a-/><ret>" + execute-keys "%opt{jump_current_line}g" "<a-/><ret><a-;>;" } define-command make-next-error -docstring %{alias for "jump-next *make*"} %{ |
