chiark / gitweb /
i18n: i18n-diff-auditor: Handle some ( __ etc., without +(
[dgit.git] / i18n-diff-auditor
index ce2034f600c64edc6716422f1058e12ca001946e..a32b554d90c53ca70d3dbffd513362e94bdc6e2d 100755 (executable)
@@ -217,7 +217,15 @@ sub analyse_chunk_core () {
            and $ys[0]{E} eq '('
            and is_trans($ys[1])) {
            $next_y->(); # (
-           $next_y->(); # __ f_
+           $next_y->(); # __ f_ i_
+           @y_expect_suffix = ')';
+       } elsif ($y->{E} eq '('
+           and @ys > 2
+           and is_trans($ys[0])
+           and @analysed_y
+           and (grep { $_ eq $analysed_y[-1] } (qw( => [ { ? : . ),
+                                                '(', ',') )) {
+           $next_y->(); # __ f_ i_
            @y_expect_suffix = ')';
        }
        my $string_changed;