chiark / gitweb /
i18n: i18n-diff-auditor: Handle some ( __ etc., without +(
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 1 Oct 2018 00:06:44 +0000 (01:06 +0100)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Mon, 1 Oct 2018 00:07:10 +0000 (01:07 +0100)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
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;