From eef5aea9a76cd4fd63ed1c6fe4569426fcc638b7 Mon Sep 17 00:00:00 2001 From: John Benediktsson Date: Fri, 24 Aug 2012 14:57:26 -0700 Subject: [PATCH] unicode.breaks: better version of previous patch. --- basis/unicode/breaks/breaks.factor | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/basis/unicode/breaks/breaks.factor b/basis/unicode/breaks/breaks.factor index 914e3f2f86..69ba8641ec 100644 --- a/basis/unicode/breaks/breaks.factor +++ b/basis/unicode/breaks/breaks.factor @@ -246,12 +246,17 @@ word-table set-global new-class (format/extended?) [ old-class dup ${ wCR wLF wNewline } member? ] [ new-class old-class over word-table-nth - [ str i ] dip word-break? + [ str i 1 - ] dip word-break? ] if ; PRIVATE> -: first-word ( str -- i ) + : first-word ( str -- i ) + [ [ length ] [ first word-break-prop ] bi ] keep + 1 swap dup '[ _ word-break-next ] find-index-from + drop nip swap or ; + +: first-word2 ( str -- i ) [ unclip-slice word-break-prop over ] keep '[ _ word-break-next ] find-index drop nip swap length or 1 + ;