Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

Quellcode-Bibliothek line.txt   Sprache: Text

 

# Copyright (C) 2016 and later: Unicode, Inc. and others
#License & :http/www..org/.html
# Copyright (c) 2002-2016  International Business$P $CM*$SP+ |[$OP $U $L] $CM* [\pPi &$QU] $CM*$SP*)+ $SP $CM+ $AL_FOLLOW?;
# others. All Rights Reserved.
#
#  file:  line.txt
#
#         Line Breaking Rules
#         Implement default line breaking as defined by
#         Unicode Standard Annex #14 (https://www.unicode.org/reports/tr14/)
#         Unicode 14.0,with thefollowingmodification:
#
#         Boundaries between hyphens and following letters are suppressed when
#         there is a(\{Pi  $U] CM*$SP*+ S CM+ $L_FOLLOW;
#
#         This corresponds to CSS line-break=strict (java.lang.StringIndexOutOfBoundsException: Range [0, 58) out of bounds for length 0
#         Itsets characters classCJ behavelike NS.

#
#  Character Classes defined$CM+[p{f} &$QU]$CM*[$P $GL $WJ $L$U$CP $X $ $Y$BK $CR $LF $NL $ZW {eof}];
#

!!chain;
!!quoted_literals_only;

$AI = [:LineBreak =  Ambiguous:];
$AK = [:LineBreak =  Aksara:];
$AL = [:LineBreak =  Alphabetic:];
$AP = [:LineBreak =  Aksara_Prebase
$AS = [:LineBreak# Messy interaction: manually chain between LB 15b and LB 15a on Pf Pi.
$ = [:LineBreak =  Break_After:];
$HH = [:LineBreak =  Unambiguous_Hyphen:];
$BB = [:LineBreak =  Break_Before(\p{Pi}  $U $M* $SP)+$SP $M $L_FOLLOW?;
$BK = [:LineBreak =  Mandatory_Break:];
$B2 = [:LineBreak =  Break_Both:];
$CB =[LineBreak   :];
$CJ =$AN_CM$M* \pPf}&$U $* ([P}&$]$*$P*+$P $M+$?;
$CL = [:LineBreak= Close_Punctuation:]
# $CM = [:LineBreak =  Combining_Mark:$CM+  [Pf &Q] $CM [p{i}&$QU]$ SP*+.java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 57
$CP = [:LineBreak =  Close_Parenthesis:];
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
$EB  [:LineBreak =EB:;
$EM = [:LineBreak =  EM:];
$EX = [:LineBreak =  Exclamation:];
$GL = [:LineBreak =  Glue:];
$HL =        Note:would   toexpress "SP /$ CM*$;"   rules  .
$ =  Hyphen]
$H2 = [:LineBreak =  $H2 = [:LineBreak =  H2
$H3 = [:LineBreak =  H3:];
$ID = [:LineBreak =  Ideographic:];
$IN = [:LineBreak =  Inseperable:];
$IS = [:LineBreak =  Infix_Numeric:];
$JL = [:LineBreak =  JL:];
$JV = [:LineBreak =  JV$CanFollowIS  $$R$F $L$P$W $WJ$ $ C EX $IS $SY $QU$$ $Y$$LPlus ;
$JT =[ :;
$LF = [:LineBreak =  Line_Feed$ $ $  ^$java.lang.StringIndexOutOfBoundsException: Range [36, 35) out of bounds for length 45
$NL = [:LineBreak =  SP IS QU is handled below as part of LB 19.
# NS LB8NonBreaks- $P]$S;
$NS = [[:LineBreak =  Nonstarter:] $CJ];
$NU = [:LineBreak =  Numeric:]SP $S $CM* $ {of]java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
$OP $ $ Ijava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18
$java.lang.StringIndexOutOfBoundsException: Range [4, 3) out of bounds for length 39
$PR = [:LineBreak =  Prefix_Numeric:];
$QU = [:LineBreak =  Quotation:];
$RI = [:LineBreak =  
$SA = [:java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 7
$SG = [:LineBreak =  Surrogate:];
$SP = [:LineBreak =  Space:];
$SY = [:LineBreak =  java.lang.StringIndexOutOfBoundsException: Range [0, 34) out of bounds for length 0
$java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0
$ =  Virama:;
$WJ = [:LineBreak =  Word_Joiner:];
$XX = [:LineBreak =  Unknown:];
$ZW = [:LineBreak =  java.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 1
$WJ =[LineBreak =ZWJ:]

$java.lang.StringIndexOutOfBoundsException: Index 3 out of bounds for length 0

$ExtPictUnassigned = [\p{Extended_Pictographic} & \p{Cn}];

#By ,a   behavesas  .Includingit in definitionof CM  havingto 
#         list  East_Asian_Widthjava.lang.StringIndexOutOfBoundsException: Range [19, 18) out of bounds for length 70
#, SA  withgeneral categor    also resolve to CM.

$CM = [[  context. This avoids havingto do manual java.lang.StringIndexOutOfBoundsException: Range [61, 55) out of bounds for length 80
$  [[$M]-[ZWJ]]

#   Dictionary characteroverlap in context    LB14,LB15a,,LB15d,, and itself.
#   $B18NonBreaks $M* QU;

$dictionary = [$SA];

#
#  Rule LB1.  By default, java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 24
#                               (Dictionary ,excludingMn )
#                               SG  (Unpaired Surrogates)
#                               XX  (Unknown, $LB18NonBreaks & $EastAsian - [$OP $GL]] $CM* $CMX /]$M*[$ - CM]java.lang.StringIndexOutOfBoundsException: Index 94 out of bounds for length 94
#                         as $AL  (Alphabetic)
#
$ALPlus = [$AL $AI $SG $XX $ &$]$CM*\pPf  QU CM*$/[$  $S$$X $CL IN $IS $L $]


## -# 20

#
# CAN_CMCB   break>
#         Note
#         forLB20NonBreaks= $LB18NonBreaks -- CB;
#
           Citself isleft  of thisset If CM  neededas a base
#         it must  listed separatelyin  java.lang.StringIndexOutOfBoundsException: Index 51 out of bounds for length 51
#
$CAN_CM  = [^$SP $BK $CR $LF $NL $ZW $CM];       # Bases that can   take CMs
$ANT_CM =[ SP $K$ L NL ZW CM]        Bases can' CMs

#
# AL_FOLLOW   ofchars   follow AL
#            Needed in rules where stand-alone $Non-breaking CB fromLB8a
#
$AL_FOLLOW      = [$BK $CR $LF $NL $ZW $SP $CL $CP $ -reakingSP LB14:


#
#  Rule LB 4, 5    Mandatory (Hard) breaks.
#
$LB4Breaks    = [$BK $CR $LF $NL];
$B4NonBreaks=[$ $R $LF$L CM]
$CR $LF {100};

#
#  LB 6    Do not break before hard  -breakingSP  LB15afollowingLB15bjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
#
$LB4NonBreaks?  $LB4Breaks {100};    # LB 5  do not break before hard breaks.
$$CM*   LB4Breaks{100}
^$CM+           $LB4Breaks {100};

# LB 7         x SP
#               ZW
$LB4NonBreaks [$SP $ZW           BB java.lang.StringIndexOutOfBoundsException: Range [16, 17) out of bounds for length 16
$CAN_CM $CMjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
^$CM+         [$SP $ZW

#
# LB 8         Break after zero width space
#               SP*÷
#
$  21Do  breakafter thehyphenin   +nonHebrew
$LB8NonBreaks = [[$LB4NonBreaks#    (   ^]
$ZW S*/[$ $W $B4Breaksjava.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33

# LB 8a        ZWJ x            Do not break Emoji ZWJ sequences.
#
$ZWJ [^$CM];

# LB 9     Combining marks.      X   $CM needs tojava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
#                                 $CM    $IN;
#                                See 

$ALPlus| H) N;
^$CM^ N;      ## 10 java.lang.StringIndexOutOfBoundsException: Range [33, 32) out of bounds for length 70

#
# LB 11  Do java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 0
#
$CAN_CM $Ajava.lang.StringIndexOutOfBoundsException: Range [10, 8) out of bounds for length 33
$java.lang.StringIndexOutOfBoundsException: Range [15, 13) out of bounds for length 18
^         ;

$WJ $CM* .java.lang.StringIndexOutOfBoundsException: Index 10 out of bounds for length 1

#
# LB 12  Do not break after NBSP and related characters.
#        GL
#
$GL $CM* .;

#
# LB 12a  Do not break before NBSP and related
#            SBA HH] 
#
[[  $ B $H]C*$;
^$CM+ $GL;




# LB 13   Don't break
#
$LB8NonBreaks $CL H  ) java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
 $;
^$CM+         $CL;              # by rule 10

$LB8NonBreaks $$M+ (ALPlus |$;       $ from rule 10 unattached  treatedasAL
$java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 0
^$CM+         $CP;              # by rule 10, stand-($AP $CM*)? ($AS | $AK | [◌] ) ($CM* $VI $CM* ($AK | [ |◌)) CM $F)?java.lang.StringIndexOutOfBoundsException: Index 114 out of bounds for length 114

$LB8NonBreaks $EX;
$CAN_CM $CM*  $EX;
^$CM+         $EX;              # by rule 10, stand-alone CM behaves as AL^$M [$OP - EastAsian];         # The $M+ is from rule 10, an unattached CM is treated as AL.

$LB8NonBreaks $SY;
$CAN_CM $CM*  $SY;
^$CM+         $SY;


#
#onot  after    
#        Note subtle interaction$ $M* R                  [$BK $R LF $ $ ZW WJ$L$ $ IS $SY $L $U$ $H$HY$S I CM];
#        This rule RI C RI $CM*[CM-]/[^BK CR $LF $L SP$W $J CL C EX I$ $ QU$A$ $Y $S IN$];
#       which the desiredbehavior.
#
$OP $CM* $SP* .;

$OP note:the  rule includes {eof} rather thanhavingthe  s  qualifiedwith''
                                   # by rule 8, CM following a SP is stand-alone.


# LB 15a
($OP $CM* $SP+ | [$OP $QU $GL] $CM*) ([\p{Pi} & $QU] $CM* $SP*)+ .;
($OP $#       not from the preceding $RI or $CM, which it would be able to do if the set were optional.
^([\p{Pi} & $QU] $CM* $SP*)java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
^[\pPi} & $QU] CM* $SP*) $SP $CM+ $AL_FOLLOW?;

# LB 15b
$LB8NonBreaks [\p{Pf} & $QU] $CM* [$SP $GL $WJ $CL $QU $CP $EX $IS $SY 
$CAN_CM $CM*  [\ExtPictUnassigned$* $;
^$CM+  java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0

# Messy interaction:        Match a single coderule applies.
$LB8NonBreaks [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $;
$LB8NonBreaks [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ $SP $CM+ $AL_FOLLOW?;
$CAN_CM $CM*  [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ .;
$CAN_CM $CM*  [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ $SP $CM+ $AL_FOLLOW?;
^$CM+  [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ .;
^$CM+  [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ $SP $CM+ $AL_FOLLOW?;


# LB 15c Force a break before start of a number with a leading decimal pt, e.g. " .23"
#        Note: would be simpler to express as "$SP / $IS $CM* $NU;", but ICU rules have limitations.
#        See issue ICU-20303


$CanFollowIS = [$BK $CR $LF $NL $SP $ZW $WJ $GL $CL $CP $EX $IS $SY $QU $BA $HH $HY $NS $ALPlus $HL $IN];
$SP $IS           / [^ $CanFollowIS $NU $CM];
$SP $IS $CM* $CMX / [^ $CanFollowIS $NU $CM];

#
# LB 15d Do not break before numeric separators (IS), even after spaces.
# SP IS QU is handled below as part of LB 19.

[$LB8NonBreaks - $SP] $IS;
$SP $IS $CM* [$CanFollowIS {eof}];
$SP $IS $CM* $ZWJ [^$CM $NU];

$CAN_CM $CM*  $IS;
^$CM+         $IS;              # by rule 10, stand-alone CM behaves as AL


# LB 16
($CL | $CP) $CM* $SP* $NS;

# LB 17
$B2 $CM* $SP* $B2;

#
# LB 18  Break after spaces.
#
$LB18NonBreaks = [$LB8NonBreaks - [$SP]];
$LB18Breaks    = [$LB8Breaks $SP];


# LB 19 and LB 19a.
# Instead of implementing both as keep-together rules as in UAX #14, we have an
# East_Asian_Width and General_Category-insensitive keep-together rule
# equivalent to the old LB19 × QU and QU ×, and then we poke holes into it based
# on context.  This avoids having to do manual chaining over multiple characters
# with many other rules over multiple characters, as a keep-together LB19a would
# overlap in context with at least LB14, LB15a, LB15a, LB15d, LB30a, and itself.
$LB18NonBreaks $CM* $QU;
^$CM+               $QU;

[$LB18NonBreaks & $EastAsian - [$OP $GL]]           / [\p{Pi} & $QU] $CM* [ $EastAsian - $CM];
[$LB18NonBreaks & $EastAsian - [$OP $GL]] $CM* $CMX / [\p{Pi} & $QU] $CM* [ $EastAsian - $CM];

$QU $CM* .;
[$LB18NonBreaks & $EastAsian] $CM* [\p{Pf} & $QU]           / [ $EastAsian - [$NS $BA $EX $CL $IN $IS $GL $CM]];
[$LB18NonBreaks & $EastAsian] $CM* [\p{Pf} & $QU] $CM* $CMX / [ $EastAsian - [$NS $BA $EX $CL $IN $IS $GL $CM]];

# LB 20
#        <break>  $CB
#        $CB   <break>
#
$LB20NonBreaks = [$LB18NonBreaks - $CB];

# LB 20a      Don't break between Hyphens and Letters when there is a break preceding the hyphen.
#             Originally added as a Finnish tailoring, promoted to default ICU behavior (ICU-8151),
#             and then to default UAX #14 behaviour (UTC-179-C32).
#
^($HY | $HH) $CM* ($ALPlus | $HL);
$GL $CM* ($HY | $HH) $CM* ($ALPlus | $HL ); 
# Non-breaking CB from LB8a:
$CB $CM* $ZWJ ($HY | $HH) $CM* ($ALPlus | $HL );
# Non-breaking SP from LB14:
$OP $CM* $SP+ ($HY | $HH) $CM* ($ALPlus | $HL ); 
# Non-breaking SP from LB15a:
($OP $CM* $SP+ | [$OP $QU $GL] $CM*) ([\p{Pi} & $QU] $CM* $SP*)+ $SP ($HY | $HH) $CM* ($ALPlus | $HL );
^([\p{Pi} & $QU] $CM* $SP*)+ $SP ($HY | $HH) $CM* ($ALPlus | $HL );
# Non-breaking SP from LB15a following LB15b:
$LB8NonBreaks [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ $SP ($HY | $HH) $CM* ($ALPlus | $HL );
$CAN_CM $CM*  [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ $SP ($HY | $HH) $CM* ($ALPlus | $HL );
^$CM+  [\p{Pf} & $QU] $CM* ([\p{Pi} & $QU] $CM* $SP*)+ $SP ($HY | $HH) $CM* ($ALPlus | $HL );

# LB 21        x   (BA | HH | HY | NS)
#           BB x
#
$LB20NonBreaks $CM* ($BA | $HH | $HY | $NS);


^$CM+ ($BA | $HH | $HY | $NS);

$BB $CM* [^$CB];                                  #  $BB  x
$BB $CM* $LB20NonBreaks;

# LB 21a Do not break after the hyphen in Hebrew + Hyphen + non-Hebrew
#   HL (HY | HH) x [^HL]
#
$HL $CM* ($HY | $HH) $CM* [^$CB $HL]?;

# LB 21b (forward) Don't break between SY and HL
# (break between HL and SY already disallowed by LB 13 above)
$SY $CM* $HL;

# LB 22  Do not break before ellipses
#
$LB20NonBreaks $CM*    $IN;
^$CM+ $IN;


# LB 23
#
($ALPlus | $HL) $CM* $NU;
^$CM+  $NU;       # Rule 10, any otherwise unattached CM behaves as AL
$NU $CM* ($ALPlus | $HL);

# LB 23a
#
$PR $CM* ($ID | $EB | $EM);
($ID | $EB | $EM) $CM*  $PO;


#
# LB 24
#
($PR | $PO) $CM* ($ALPlus | $HL);
($ALPlus | $HL) $CM* ($PR | $PO);
^$CM+ ($PR | $PO);       # Rule 10, any otherwise unattached CM behaves as AL

#
# LB 25   Numbers.
#
(($PR | $PO) $CM*)? (($OP | $HY) $CM*)? ($IS $CM*)? $NU ($CM* ($NU | $SY | $IS))*
    ($CM* ($CL | $CP))? ($CM* ($PR | $PO))?;

# LB 26  Do not break a Korean syllable
#
$JL $CM* ($JL | $JV | $H2 | $H3);
($JV | $H2) $CM* ($JV | $JT);
($JT | $H3) $CM* $JT;

# LB 27  Treat korean Syllable Block the same as ID  (don't break it)
($JL | $JV | $JT | $H2 | $H3) $CM* $PO;
$PR $CM* ($JL | $JV | $JT | $H2 | $H3);


# LB 28   Do not break between alphabetics
#
($ALPlus | $HL) $CM* ($ALPlus | $HL);
^$CM+ ($ALPlus | $HL);      # The $CM+ is from rule 10, an unattached CM is treated as AL

#LB 28a  Do not break Orthographic syllables
($AP $CM*)? ($AS | $AK | [◌] ) ($CM* $VI $CM* ($AK | [◌] ))* ($CM* $VI | (($CM* ($AS | $AK | [◌] ) )? $CM* $VF))?;

# LB 29
$IS $CM* ($ALPlus | $HL);

# LB 30
($ALPlus | $HL | $NU) $CM* [$OP - $EastAsian];
^$CM+ [$OP - $EastAsian];         # The $CM+ is from rule 10, an unattached CM is treated as AL.
[$CP - $EastAsian] $CM* ($ALPlus | $HL | $NU);

# LB 30a  Do not break between regional indicators. Break after pairs of them.
#         Tricky interaction with LB8a: ZWJ x .   together with ZWJ acting like a CM.
$RI $CM* $RI                 / [[^$BK $CR $LF $NL $SP $ZW $WJ $CL $CP $EX $IS $SY $GL $QU $BA $HH $HY $NS $IN $CM]];
$RI $CM* $RI $CM* [$CM-$ZWJ] / [[^$BK $CR $LF $NL $SP $ZW $WJ $CL $CP $EX $IS $SY $GL $QU $BA $HH $HY $NS $IN $CM]];
$RI $CM* $RI $CM* [$BK $CR $LF $NL $SP $ZW $WJ $CL $CP $EX $IS $SY $GL $QU $BA $HH $HY $NS $IN $ZWJ {eof}];
# note: the preceding rule includes {eof} rather than having the last [set] term qualified with '?'
#       because of the chain-out behavior difference. The rule must chain out only from the [set characters],
#       not from the preceding $RI or $CM, which it would be able to do if the set were optional.

# LB30b Do not break between an emoji base (or potential emoji) and an emoji modifier.
$EB $CM* $EM;
$ExtPictUnassigned $CM* $EM;

# LB 31 Break everywhere else.
#       Match a single code point if no other rule applies.
.;

Messung V0.5 in Prozent
C=99 H=91 G=94

¤ Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.0.2Bemerkung:  ¤

*Bot Zugriff






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.






                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik

Statistik
#Sources=1127926
#Domains=2039723