You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Since version 4.3.0, some macro triggers which worked in version 4.2.3 do not work any more. It seems that triggers with a look-ahead expression (?<=...) containing one of the quantifiers ? * + or a | sign (non-escaped) do not work at all. On top of that, ? * + in outside look-ahead expressions are now non-greedy.
Besides that, the look-ahead group (?<=...) is no longer captured, i.e. it cannot be referenced by triggerMatches[...] in the trigger script, and hence the index of all other captured groups is 1 lower than it used to be. (This might be on purpose since it is consistent with the behaviour in the Search/Replace dialogue.)
Note: Due to this bug, I never used versions 4.3.0, 4.3.1, 4.4.0, and 4.4.1 and thus do not know if the exact behaviour changed after version 4.3.0. The above text describes the behaviour in version 4.4.0.
Expected behavior
The regular expressions
(?<=a+)b
(?<=a*)b
(?<=a|aa)b
(?<=a?)b
all activate a trigger when "ab" is typed.
a?b replaces "ab" by the trigger contents.
a*b replaces "ab" by the trigger contents.
a+b replaces "aab" by the trigger contents.
Actual behavior
The regular expressions
(?<=a+)b
(?<=a*)b
(?<=a|aa)b
(?<=a?)b
seem to never activate a trigger at all any more.
a?b still activates the macro when "b" is typed, but when "ab" is typed, only "b" is matched and replaced.
a*b still activates the macro when "b" is typed, but when "ab" is typed, only "b" is matched and replaced.
a+b still activates the macro when "ab" is typed, but when "aab" is typed, only "ab" is matched and replaced.
ca+b still works, matching arbitrarily many "a"s
(c|a)b still works, too.
How to reproduce
The issue is completely reproducible on my system and does not depend on the actual letters or expressions used.
The text was updated successfully, but these errors were encountered:
Environment
Description
Since version 4.3.0, some macro triggers which worked in version 4.2.3 do not work any more. It seems that triggers with a look-ahead expression (?<=...) containing one of the quantifiers ? * + or a | sign (non-escaped) do not work at all. On top of that, ? * + in outside look-ahead expressions are now non-greedy.
Besides that, the look-ahead group (?<=...) is no longer captured, i.e. it cannot be referenced by triggerMatches[...] in the trigger script, and hence the index of all other captured groups is 1 lower than it used to be. (This might be on purpose since it is consistent with the behaviour in the Search/Replace dialogue.)
Note: Due to this bug, I never used versions 4.3.0, 4.3.1, 4.4.0, and 4.4.1 and thus do not know if the exact behaviour changed after version 4.3.0. The above text describes the behaviour in version 4.4.0.
Expected behavior
The regular expressions
(?<=a+)b
(?<=a*)b
(?<=a|aa)b
(?<=a?)b
all activate a trigger when "ab" is typed.
a?b replaces "ab" by the trigger contents.
a*b replaces "ab" by the trigger contents.
a+b replaces "aab" by the trigger contents.
Actual behavior
The regular expressions
(?<=a+)b
(?<=a*)b
(?<=a|aa)b
(?<=a?)b
seem to never activate a trigger at all any more.
a?b still activates the macro when "b" is typed, but when "ab" is typed, only "b" is matched and replaced.
a*b still activates the macro when "b" is typed, but when "ab" is typed, only "b" is matched and replaced.
a+b still activates the macro when "ab" is typed, but when "aab" is typed, only "ab" is matched and replaced.
ca+b still works, matching arbitrarily many "a"s
(c|a)b still works, too.
How to reproduce
The issue is completely reproducible on my system and does not depend on the actual letters or expressions used.
The text was updated successfully, but these errors were encountered: