diff --git a/icu4c/source/data/brkitr/line_th.txt b/icu4c/source/data/brkitr/line_th.txt index 168ed268af..c64d503756 100644 --- a/icu4c/source/data/brkitr/line_th.txt +++ b/icu4c/source/data/brkitr/line_th.txt @@ -376,8 +376,12 @@ $Openings $GluedWord $Closings $paiyannoi / # # Reverse Rules. # -# Back up to a hard break. -# TODO: make smarter reverse rules for better efficiency +# Back up to a hard break or a space that will cause a boundary. +# Not all spaces cause line breaks. $SpaceGlue represents a sequence +# containing a space that may inhibit a break from occuring. # -! . . [^$BK | $CR | $LF]* (. | $LF $CR); -! .*; +$SpaceGlue = ([$ZW $CL $IS $NS $OP] ($Extend* $SP)) | (($Extend* $SP)+ $OP); +$ClumpingChars = [^$SP $BK $CR $LF]; + +!. . $ClumpingChars* ($SpaceGlue $ClumpingChars*)* (. | $LF $CR); +