[latex3-commits] [git/LaTeX3-latex3-latex3] l3text: Add tests for \text_titlecase_first:n (0ca6a4522)
Joseph Wright
joseph.wright at morningstar2.co.uk
Sat Dec 7 21:11:18 CET 2019
Repository : https://github.com/latex3/latex3
On branch : l3text
Link : https://github.com/latex3/latex3/commit/0ca6a45228f756fbdc5a3c97a1c85335baddf00e
>---------------------------------------------------------------
commit 0ca6a45228f756fbdc5a3c97a1c85335baddf00e
Author: Joseph Wright <joseph.wright at morningstar2.co.uk>
Date: Sat Dec 7 20:11:18 2019 +0000
Add tests for \text_titlecase_first:n
>---------------------------------------------------------------
0ca6a45228f756fbdc5a3c97a1c85335baddf00e
l3kernel/testfiles/m3text002.luatex.tlg | 75 ++++++++++++++++++++++++++-------
l3kernel/testfiles/m3text002.lvt | 43 +++++++++++++++----
l3kernel/testfiles/m3text002.ptex.tlg | 27 +++++++++++-
l3kernel/testfiles/m3text002.tlg | 74 +++++++++++++++++++++++++-------
l3kernel/testfiles/m3text002.uptex.tlg | 75 ++++++++++++++++++++++++++-------
l3kernel/testfiles/m3text002.xetex.tlg | 74 +++++++++++++++++++++++++-------
6 files changed, 294 insertions(+), 74 deletions(-)
diff --git a/l3kernel/testfiles/m3text002.luatex.tlg b/l3kernel/testfiles/m3text002.luatex.tlg
index d9ac41f25..a68c2da57 100644
--- a/l3kernel/testfiles/m3text002.luatex.tlg
+++ b/l3kernel/testfiles/m3text002.luatex.tlg
@@ -7,6 +7,7 @@ TEST 1: Basic case changing
hello world \par with \ERROR &##
HELLO WORLD \par WITH \ERROR &##
Hello world \par with \ERROR &##
+Hello world \par with \ERROR &##
============================================================
============================================================
TEST 2: Case changes in braces
@@ -14,16 +15,25 @@ TEST 2: Case changes in braces
{hello} world \par with \ERROR &##
{HELLO} WORLD \par WITH \ERROR &##
{Hello} world \par with \ERROR &##
+{Hello} world \par with \ERROR &##
============================================================
============================================================
TEST 3: Titlecase basics
============================================================
Hello world
Hello world
+Hello world
+HELLO WORLD
+" Hello world"
" Hello world"
" Hello world"
+" HELLO WORLD"
{H}ello world
{H}ello world
+{H}ello world
+{H}ELLO WORLD
+{}helloworld
+{}helloworld
{}helloworld
{}helloworld
============================================================
@@ -31,35 +41,52 @@ Hello world
TEST 4: Titlecase skipping chars
============================================================
`Hic sunt leones'
+`Hic sunt leones'
``Hic sunt leones''
+``Hic sunt leones''
+([Hic sunt leones])
([Hic sunt leones])
============================================================
============================================================
-TEST 5: Language based case changing but nothing
+TEST 5: Titlecase first
+============================================================
+`Hic sunt leones'
+`Hic SUNT leones'
+`Hic sunt leones'
+`HIC SUNT leones'
+E pluribus unum
+E PLURIBUS UNUM
+============================================================
+============================================================
+TEST 6: Language based case changing but nothing
============================================================
no problems
NO PROBLEMS
No problems
+No problems
no problems
NO PROBLEMS
No problems
+No problems
============================================================
============================================================
-TEST 6: Unicode case changing
+TEST 7: Unicode case changing
============================================================
^^e5^^e9^^ee^^f8ὥдαɛ
^^c5^^c9^^ce^^d8ὭДΑƐ
^^c5^^e9^^ee^^f8ὥдαɛ
+^^c5^^e9^^ee^^f8ὭдαƐ
============================================================
============================================================
-TEST 7: Unicode case changing exceptions
+TEST 8: Unicode case changing exceptions
============================================================
fu^^dfball
FUSSBALL
Fu^^dfball
+Fu^^dfball
============================================================
============================================================
-TEST 8: The final sigma rule
+TEST 9: The final sigma rule
============================================================
ὀδυσσεύς (ὀδυσσεύς) ὀδυσσεύς, ὀδυσσεύς{}
ὀδυσσεύς\noop
@@ -67,18 +94,21 @@ TEST 8: The final sigma rule
ὈΔΥΣΣΕΎΣ\noop
Ὀδυσσεύς (ὀδυσσεύς) ὀδυσσεύς, ὀδυσσεύς{}
ὀδυσσεύς\noop
+ὈΔΥΣΣΕΎΣ (ὈΔΥΣΣΕΎΣ) ὈΔΥΣΣΕΎΣ, ὈΔΥΣΣΕΎΣ{}
+ὈΔΥΣΣΕΎΣ\noop
ὀδυσσεύς
ὈΔΥΣΣΕΎΣ
Ὀδυσσεύς
+ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 9: German-alternative
+TEST 10: German-alternative
============================================================
FUSSBALL
FUẞBALL
============================================================
============================================================
-TEST 10: Greek
+TEST 11: Greek
============================================================
ὈΔΥΣΣΕΎΣ
ΟΔΥΣΣΕΥΣ
@@ -86,7 +116,7 @@ TEST 10: Greek
Ὀδυσσεύς
============================================================
============================================================
-TEST 11: Turkish/Azeri
+TEST 12: Turkish/Azeri
============================================================
ragıp hul^^fbsi ^^f6zdem
ragip hul^^fbsi̇ ^^f6zdem
@@ -98,7 +128,7 @@ Ip hul^^fbsi ^^f6zdem
Ip hul^^fbsi ^^f6zdem
============================================================
============================================================
-TEST 12: Lithuanian
+TEST 13: Lithuanian
============================================================
i̇̀i̇́i̇̃i̇̀i̇́i̇̃j̇̀j̇́j̇̃į̇̀į̇́į̇̃
^^ec^^edĩìíĩj̀j́j̃į̀į́į̃
@@ -110,7 +140,7 @@ Ìi̇̀i̇̃i̇̀i̇́i̇̃j̇̀j̇́j̇̃į̇̀į̇́į̇̃
İ̀i̇̀i̇̃i̇̀i̇́i̇̃j̇̀j̇́j̇̃į̇̀į̇́į̇̃
============================================================
============================================================
-TEST 13: Dutch
+TEST 14: Dutch
============================================================
ijsselmeer
ijsselmeer
@@ -126,58 +156,69 @@ Im
Im
============================================================
============================================================
-TEST 14: Titlecase exceptions
+TEST 15: Titlecase exceptions
============================================================
Ssoo
Dž!
============================================================
============================================================
-TEST 15: Case changing braced arguments
+TEST 16: Case changing braced arguments
============================================================
foo \emph {BAR} {baz}
FOO \emph {BAR} {BAZ}
Foo \emph {BAR} {baz}
+FOO \emph {BAR} {BAZ}
\emph {BAR} {baz}
\emph {BAR} {BAZ}
\emph {BAR} {Baz}
+\emph {BAR} {BAZ}
============================================================
============================================================
-TEST 16: Expanding content
+TEST 17: Expanding content
============================================================
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text \cs_tmp:w
SOME TEXT \cs_tmp:w
Some text \cs_tmp:w
+Some text \cs_tmp:w
\cs_tmp:w sometext
\cs_tmp:w SOMETEXT
\cs_tmp:w Sometext
+\cs_tmp:w Sometext
============================================================
============================================================
-TEST 17: Math-mode escape
+TEST 18: Math-mode escape
============================================================
some text $y = mx + c$
SOME TEXT $y = mx + c$
Some text $y = mx + c$
+Some text $y = mx + c$
$y = mx + c$ text
$y = mx + c$ TEXT
$y = mx + c$ Text
+$y = mx + c$ Text
opps not close token in $y = mx + c
OPPS NOT CLOSE TOKEN IN $y = mx + c
Opps not close token in $y = mx + c
+Opps not close token in $y = mx + c
============================================================
============================================================
-TEST 18: Nesting
+TEST 19: Nesting
============================================================
HELLO
hello
@@ -185,16 +226,18 @@ FUSSBALL
ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 19: Letter-like commands
+TEST 20: Letter-like commands
============================================================
\aa \aa \J \ae \dh \ss \l \o
\AA \AA \J \AE \DH \SS \L \O
\AA \aa \J \ae \dh \ss \l \o
+\AA \aa \J \ae \dh \ss \l \O
============================================================
============================================================
-TEST 20: Accents
+TEST 21: Accents
============================================================
\"{a}\u {e}\H {i}\v {o}\.{u}
\"{A}\u {E}\H {I}\v {O}\.{U}
\"{A}\u {e}\H {i}\v {o}\.{u}
+\"{A}\u {e}\H {i}\v {o}\.{u}
============================================================
diff --git a/l3kernel/testfiles/m3text002.lvt b/l3kernel/testfiles/m3text002.lvt
index db4f1974e..398cde198 100644
--- a/l3kernel/testfiles/m3text002.lvt
+++ b/l3kernel/testfiles/m3text002.lvt
@@ -20,6 +20,8 @@
\text_uppercase:n {#1}
\NEWLINE
\text_titlecase:n {#1}
+ \NEWLINE
+ \text_titlecase_first:n {#1}
}
\cs_set:Npn \test:nn #1#2
{
@@ -28,6 +30,8 @@
\text_uppercase:nn {#1} {#2}
\NEWLINE
\text_titlecase:nn {#1} {#2}
+ \NEWLINE
+ \text_titlecase_first:nn {#1} {#2}
}
\TIMO
@@ -41,33 +45,54 @@
\test:n { {Hello}~world~\par with~\ERROR & # }
}
+\OMIT
+ \cs_set:Npn \testii:n #1
+ {
+ \text_titlecase:n {#1}
+ \NEWLINE
+ \text_titlecase_first:n {#1}
+ }
+\TIMO
+
\TESTEXP { Titlecase~basics }
{
- \text_titlecase:n { hello~world }
+ \testii:n { hello~world }
\NEWLINE
- \text_titlecase:n { HELLO~WORLD }
+ \testii:n { HELLO~WORLD }
\NEWLINE
"\text_titlecase:n { ~hello~world }"
\NEWLINE
+ "\text_titlecase_first:n { ~hello~world }"
+ \NEWLINE
"\text_titlecase:n { ~HELLO~WORLD }"
\NEWLINE
- \text_titlecase:n { {h}ello~world }
+ "\text_titlecase_first:n { ~HELLO~WORLD }"
\NEWLINE
- \text_titlecase:n { {H}ELLO~WORLD }
+ \testii:n { {h}ello~world }
\NEWLINE
- \text_titlecase:n { { } hello world }
+ \testii:n { {H}ELLO~WORLD }
\NEWLINE
- \text_titlecase:n { { \prg_do_nothing: } hello world }
+ \testii:n { { } hello world }
+ \NEWLINE
+ \testii:n { { \prg_do_nothing: } hello world }
}
\TESTEXP { Titlecase~skipping~chars }
{
- \text_titlecase:n { `hic~sunt~leones' }
+ \testii:n { `hic~sunt~leones' }
+ \NEWLINE
+ \testii:n { ``hic~sunt~leones'' }
\NEWLINE
- \text_titlecase:n { ``hic~sunt~leones'' }
+ \testii:n { ([hic~sunt~leones]) }
+ }
+
+\TESTEXP { Titlecase~first }
+ {
+ \testii:n { `hic~SUNT~leones' }
\NEWLINE
- \text_titlecase:n { ([hic~sunt~leones]) }
+ \testii:n { `HIC~SUNT~leones' }
\NEWLINE
+ \testii:n { E~PLURIBUS~UNUM }
}
\TESTEXP { Language~based~case~changing~but~nothing }
diff --git a/l3kernel/testfiles/m3text002.ptex.tlg b/l3kernel/testfiles/m3text002.ptex.tlg
index 19096aa9b..a29c50703 100644
--- a/l3kernel/testfiles/m3text002.ptex.tlg
+++ b/l3kernel/testfiles/m3text002.ptex.tlg
@@ -7,6 +7,7 @@ TEST 1: Basic case changing
hello world \par with \ERROR &##
HELLO WORLD \par WITH \ERROR &##
Hello world \par with \ERROR &##
+Hello world \par with \ERROR &##
============================================================
============================================================
TEST 2: Case changes in braces
@@ -14,16 +15,25 @@ TEST 2: Case changes in braces
{hello} world \par with \ERROR &##
{HELLO} WORLD \par WITH \ERROR &##
{Hello} world \par with \ERROR &##
+{Hello} world \par with \ERROR &##
============================================================
============================================================
TEST 3: Titlecase basics
============================================================
Hello world
Hello world
+Hello world
+HELLO WORLD
" Hello world"
" Hello world"
+" Hello world"
+" HELLO WORLD"
+{H}ello world
{H}ello world
{H}ello world
+{H}ELLO WORLD
+{}helloworld
+{}helloworld
{}helloworld
{}helloworld
============================================================
@@ -31,16 +41,31 @@ Hello world
TEST 4: Titlecase skipping chars
============================================================
`Hic sunt leones'
+`Hic sunt leones'
+``Hic sunt leones''
``Hic sunt leones''
([Hic sunt leones])
+([Hic sunt leones])
+============================================================
+============================================================
+TEST 5: Titlecase first
+============================================================
+`Hic sunt leones'
+`Hic SUNT leones'
+`Hic sunt leones'
+`HIC SUNT leones'
+E pluribus unum
+E PLURIBUS UNUM
============================================================
============================================================
-TEST 5: Language based case changing but nothing
+TEST 6: Language based case changing but nothing
============================================================
no problems
NO PROBLEMS
No problems
+No problems
no problems
NO PROBLEMS
No problems
+No problems
============================================================
diff --git a/l3kernel/testfiles/m3text002.tlg b/l3kernel/testfiles/m3text002.tlg
index 51b7e5f0d..b312e8a7f 100644
--- a/l3kernel/testfiles/m3text002.tlg
+++ b/l3kernel/testfiles/m3text002.tlg
@@ -7,6 +7,7 @@ TEST 1: Basic case changing
hello world \par with \ERROR &##
HELLO WORLD \par WITH \ERROR &##
Hello world \par with \ERROR &##
+Hello world \par with \ERROR &##
============================================================
============================================================
TEST 2: Case changes in braces
@@ -14,16 +15,25 @@ TEST 2: Case changes in braces
{hello} world \par with \ERROR &##
{HELLO} WORLD \par WITH \ERROR &##
{Hello} world \par with \ERROR &##
+{Hello} world \par with \ERROR &##
============================================================
============================================================
TEST 3: Titlecase basics
============================================================
Hello world
Hello world
+Hello world
+HELLO WORLD
+" Hello world"
" Hello world"
" Hello world"
+" HELLO WORLD"
{H}ello world
{H}ello world
+{H}ello world
+{H}ELLO WORLD
+{}helloworld
+{}helloworld
{}helloworld
{}helloworld
============================================================
@@ -31,51 +41,70 @@ Hello world
TEST 4: Titlecase skipping chars
============================================================
`Hic sunt leones'
+`Hic sunt leones'
``Hic sunt leones''
+``Hic sunt leones''
+([Hic sunt leones])
([Hic sunt leones])
============================================================
============================================================
-TEST 5: Language based case changing but nothing
+TEST 5: Titlecase first
+============================================================
+`Hic sunt leones'
+`Hic SUNT leones'
+`Hic sunt leones'
+`HIC SUNT leones'
+E pluribus unum
+E PLURIBUS UNUM
+============================================================
+============================================================
+TEST 6: Language based case changing but nothing
============================================================
no problems
NO PROBLEMS
No problems
+No problems
no problems
NO PROBLEMS
No problems
+No problems
============================================================
============================================================
-TEST 6: Unicode case changing
+TEST 7: Unicode case changing
============================================================
^^c3^^a5^^c3^^a9^^c3^^ae^^c3^^b8^^e1^^bd^^ad^^d0^^b4^^ce^^b1^^c6^^90
^^c3^^85^^c3^^89^^c3^^8e^^c3^^98^^e1^^bd^^ad^^d0^^b4^^ce^^b1^^c6^^90
^^c3^^85^^c3^^a9^^c3^^ae^^c3^^b8^^e1^^bd^^ad^^d0^^b4^^ce^^b1^^c6^^90
+^^c3^^85^^c3^^a9^^c3^^ae^^c3^^b8^^e1^^bd^^ad^^d0^^b4^^ce^^b1^^c6^^90
============================================================
============================================================
-TEST 7: Unicode case changing exceptions
+TEST 8: Unicode case changing exceptions
============================================================
fu^^c3^^9fball
FUSSBALL
Fu^^c3^^9fball
+Fu^^c3^^9fball
============================================================
============================================================
-TEST 8: The final sigma rule
+TEST 9: The final sigma rule
============================================================
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3 (^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3) ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3, ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3{} ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3\noop
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3 (^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3) ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3, ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3{} ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3\noop
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3 (^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3) ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3, ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3{} ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3\noop
+^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3 (^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3) ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3, ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3{} ^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3\noop
+^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
============================================================
============================================================
-TEST 9: German-alternative
+TEST 10: German-alternative
============================================================
FUSSBALL
FUSSBALL
============================================================
============================================================
-TEST 10: Greek
+TEST 11: Greek
============================================================
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
@@ -83,7 +112,7 @@ TEST 10: Greek
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
============================================================
============================================================
-TEST 11: Turkish/Azeri
+TEST 12: Turkish/Azeri
============================================================
rag^^c4^^b1p hul^^c3^^bbsi ^^c3^^b6zdem
ragip hul^^c3^^bbs^^c4^^b0 ^^c3^^b6zdem
@@ -95,7 +124,7 @@ Rag^^c4^^b1p hul^^c3^^bbsi ^^c3^^b6zdem
^^c4^^b1p hul^^c3^^bbsi ^^c3^^b6zdem
============================================================
============================================================
-TEST 12: Lithuanian
+TEST 13: Lithuanian
============================================================
^^c3^^ac^^c3^^ad^^c4^^a9
^^c3^^ac^^c3^^ad^^c4^^a9
@@ -103,7 +132,7 @@ TEST 12: Lithuanian
^^c3^^8c^^c3^^ad^^c4^^a9
============================================================
============================================================
-TEST 13: Dutch
+TEST 14: Dutch
============================================================
ijsselmeer
ijsselmeer
@@ -119,58 +148,69 @@ Im
Im
============================================================
============================================================
-TEST 14: Titlecase exceptions
+TEST 15: Titlecase exceptions
============================================================
Ssoo
^^c7^^85!
============================================================
============================================================
-TEST 15: Case changing braced arguments
+TEST 16: Case changing braced arguments
============================================================
foo \emph {BAR} {baz}
FOO \emph {BAR} {BAZ}
Foo \emph {BAR} {baz}
+FOO \emph {BAR} {BAZ}
\emph {BAR} {baz}
\emph {BAR} {BAZ}
\emph {BAR} {Baz}
+\emph {BAR} {BAZ}
============================================================
============================================================
-TEST 16: Expanding content
+TEST 17: Expanding content
============================================================
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text \cs_tmp:w
SOME TEXT \cs_tmp:w
Some text \cs_tmp:w
+Some text \cs_tmp:w
\cs_tmp:w sometext
\cs_tmp:w SOMETEXT
\cs_tmp:w Sometext
+\cs_tmp:w Sometext
============================================================
============================================================
-TEST 17: Math-mode escape
+TEST 18: Math-mode escape
============================================================
some text $y = mx + c$
SOME TEXT $y = mx + c$
Some text $y = mx + c$
+Some text $y = mx + c$
$y = mx + c$ text
$y = mx + c$ TEXT
$y = mx + c$ Text
+$y = mx + c$ Text
opps not close token in $y = mx + c
OPPS NOT CLOSE TOKEN IN $y = mx + c
Opps not close token in $y = mx + c
+Opps not close token in $y = mx + c
============================================================
============================================================
-TEST 18: Nesting
+TEST 19: Nesting
============================================================
HELLO
hello
@@ -178,16 +218,18 @@ FUSSBALL
^^e1^^bd^^88^^ce^^94^^ce^^a5^^ce^^a3^^ce^^a3^^ce^^95^^ce^^8e^^ce^^a3
============================================================
============================================================
-TEST 19: Letter-like commands
+TEST 20: Letter-like commands
============================================================
\aa \aa \J \ae \dh \ss \l \o
\AA \AA \J \AE \DH \SS \L \O
\AA \aa \J \ae \dh \ss \l \o
+\AA \aa \J \ae \dh \ss \l \O
============================================================
============================================================
-TEST 20: Accents
+TEST 21: Accents
============================================================
\"{a}\u {e}\H {i}\v {o}\.{u}
\"{A}\u {E}\H {I}\v {O}\.{U}
\"{A}\u {e}\H {i}\v {o}\.{u}
+\"{A}\u {e}\H {i}\v {o}\.{u}
============================================================
diff --git a/l3kernel/testfiles/m3text002.uptex.tlg b/l3kernel/testfiles/m3text002.uptex.tlg
index 99d9b4a90..6a268d674 100644
--- a/l3kernel/testfiles/m3text002.uptex.tlg
+++ b/l3kernel/testfiles/m3text002.uptex.tlg
@@ -7,6 +7,7 @@ TEST 1: Basic case changing
hello world \par with \ERROR &##
HELLO WORLD \par WITH \ERROR &##
Hello world \par with \ERROR &##
+Hello world \par with \ERROR &##
============================================================
============================================================
TEST 2: Case changes in braces
@@ -14,16 +15,25 @@ TEST 2: Case changes in braces
{hello} world \par with \ERROR &##
{HELLO} WORLD \par WITH \ERROR &##
{Hello} world \par with \ERROR &##
+{Hello} world \par with \ERROR &##
============================================================
============================================================
TEST 3: Titlecase basics
============================================================
Hello world
Hello world
+Hello world
+HELLO WORLD
+" Hello world"
" Hello world"
" Hello world"
+" HELLO WORLD"
{H}ello world
{H}ello world
+{H}ello world
+{H}ELLO WORLD
+{}helloworld
+{}helloworld
{}helloworld
{}helloworld
============================================================
@@ -31,35 +41,52 @@ Hello world
TEST 4: Titlecase skipping chars
============================================================
`Hic sunt leones'
+`Hic sunt leones'
``Hic sunt leones''
+``Hic sunt leones''
+([Hic sunt leones])
([Hic sunt leones])
============================================================
============================================================
-TEST 5: Language based case changing but nothing
+TEST 5: Titlecase first
+============================================================
+`Hic sunt leones'
+`Hic SUNT leones'
+`Hic sunt leones'
+`HIC SUNT leones'
+E pluribus unum
+E PLURIBUS UNUM
+============================================================
+============================================================
+TEST 6: Language based case changing but nothing
============================================================
no problems
NO PROBLEMS
No problems
+No problems
no problems
NO PROBLEMS
No problems
+No problems
============================================================
============================================================
-TEST 6: Unicode case changing
+TEST 7: Unicode case changing
============================================================
^^e5^^e9^^ee^^f8ὭдαƐ
^^c5^^c9^^ce^^d8ὭдαƐ
^^c5^^e9^^ee^^f8ὭдαƐ
+^^c5^^e9^^ee^^f8ὭдαƐ
============================================================
============================================================
-TEST 7: Unicode case changing exceptions
+TEST 8: Unicode case changing exceptions
============================================================
fu^^dfball
FUSSBALL
Fu^^dfball
+Fu^^dfball
============================================================
============================================================
-TEST 8: The final sigma rule
+TEST 9: The final sigma rule
============================================================
ὈΔΥΣΣΕΎΣ (ὈΔΥΣΣΕΎΣ) ὈΔΥΣΣΕΎΣ, ὈΔΥΣΣΕΎΣ{}
ὈΔΥΣΣΕΎΣ\noop
@@ -67,18 +94,21 @@ TEST 8: The final sigma rule
ὈΔΥΣΣΕΎΣ\noop
ὈΔΥΣΣΕΎΣ (ὈΔΥΣΣΕΎΣ) ὈΔΥΣΣΕΎΣ, ὈΔΥΣΣΕΎΣ{}
ὈΔΥΣΣΕΎΣ\noop
+ὈΔΥΣΣΕΎΣ (ὈΔΥΣΣΕΎΣ) ὈΔΥΣΣΕΎΣ, ὈΔΥΣΣΕΎΣ{}
+ὈΔΥΣΣΕΎΣ\noop
+ὈΔΥΣΣΕΎΣ
ὈΔΥΣΣΕΎΣ
ὈΔΥΣΣΕΎΣ
ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 9: German-alternative
+TEST 10: German-alternative
============================================================
FUSSBALL
FUSSBALL
============================================================
============================================================
-TEST 10: Greek
+TEST 11: Greek
============================================================
ὈΔΥΣΣΕΎΣ
ὈΔΥΣΣΕΎΣ
@@ -86,7 +116,7 @@ TEST 10: Greek
ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 11: Turkish/Azeri
+TEST 12: Turkish/Azeri
============================================================
ragıp hul^^fbsi ^^f6zdem
ragip hul^^fbsİ ^^f6zdem
@@ -98,7 +128,7 @@ Ragıp hul^^fbsi ^^f6zdem
ıp hul^^fbsi ^^f6zdem
============================================================
============================================================
-TEST 12: Lithuanian
+TEST 13: Lithuanian
============================================================
^^ec^^edĩ
^^ec^^edĩ
@@ -106,7 +136,7 @@ TEST 12: Lithuanian
^^cc^^edĩ
============================================================
============================================================
-TEST 13: Dutch
+TEST 14: Dutch
============================================================
ijsselmeer
ijsselmeer
@@ -122,58 +152,69 @@ Im
Im
============================================================
============================================================
-TEST 14: Titlecase exceptions
+TEST 15: Titlecase exceptions
============================================================
Ssoo
Dž!
============================================================
============================================================
-TEST 15: Case changing braced arguments
+TEST 16: Case changing braced arguments
============================================================
foo \emph {BAR} {baz}
FOO \emph {BAR} {BAZ}
Foo \emph {BAR} {baz}
+FOO \emph {BAR} {BAZ}
\emph {BAR} {baz}
\emph {BAR} {BAZ}
\emph {BAR} {Baz}
+\emph {BAR} {BAZ}
============================================================
============================================================
-TEST 16: Expanding content
+TEST 17: Expanding content
============================================================
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text \cs_tmp:w
SOME TEXT \cs_tmp:w
Some text \cs_tmp:w
+Some text \cs_tmp:w
\cs_tmp:w sometext
\cs_tmp:w SOMETEXT
\cs_tmp:w Sometext
+\cs_tmp:w Sometext
============================================================
============================================================
-TEST 17: Math-mode escape
+TEST 18: Math-mode escape
============================================================
some text $y = mx + c$
SOME TEXT $y = mx + c$
Some text $y = mx + c$
+Some text $y = mx + c$
$y = mx + c$ text
$y = mx + c$ TEXT
$y = mx + c$ Text
+$y = mx + c$ Text
opps not close token in $y = mx + c
OPPS NOT CLOSE TOKEN IN $y = mx + c
Opps not close token in $y = mx + c
+Opps not close token in $y = mx + c
============================================================
============================================================
-TEST 18: Nesting
+TEST 19: Nesting
============================================================
HELLO
hello
@@ -181,16 +222,18 @@ FUSSBALL
ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 19: Letter-like commands
+TEST 20: Letter-like commands
============================================================
\aa \aa \J \ae \dh \ss \l \o
\AA \AA \J \AE \DH \SS \L \O
\AA \aa \J \ae \dh \ss \l \o
+\AA \aa \J \ae \dh \ss \l \O
============================================================
============================================================
-TEST 20: Accents
+TEST 21: Accents
============================================================
\"{a}\u {e}\H {i}\v {o}\.{u}
\"{A}\u {E}\H {I}\v {O}\.{U}
\"{A}\u {e}\H {i}\v {o}\.{u}
+\"{A}\u {e}\H {i}\v {o}\.{u}
============================================================
diff --git a/l3kernel/testfiles/m3text002.xetex.tlg b/l3kernel/testfiles/m3text002.xetex.tlg
index f84a9adbf..742aa2309 100644
--- a/l3kernel/testfiles/m3text002.xetex.tlg
+++ b/l3kernel/testfiles/m3text002.xetex.tlg
@@ -7,6 +7,7 @@ TEST 1: Basic case changing
hello world \par with \ERROR &##
HELLO WORLD \par WITH \ERROR &##
Hello world \par with \ERROR &##
+Hello world \par with \ERROR &##
============================================================
============================================================
TEST 2: Case changes in braces
@@ -14,16 +15,25 @@ TEST 2: Case changes in braces
{hello} world \par with \ERROR &##
{HELLO} WORLD \par WITH \ERROR &##
{Hello} world \par with \ERROR &##
+{Hello} world \par with \ERROR &##
============================================================
============================================================
TEST 3: Titlecase basics
============================================================
Hello world
Hello world
+Hello world
+HELLO WORLD
+" Hello world"
" Hello world"
" Hello world"
+" HELLO WORLD"
{H}ello world
{H}ello world
+{H}ello world
+{H}ELLO WORLD
+{}helloworld
+{}helloworld
{}helloworld
{}helloworld
============================================================
@@ -31,51 +41,70 @@ Hello world
TEST 4: Titlecase skipping chars
============================================================
`Hic sunt leones'
+`Hic sunt leones'
``Hic sunt leones''
+``Hic sunt leones''
+([Hic sunt leones])
([Hic sunt leones])
============================================================
============================================================
-TEST 5: Language based case changing but nothing
+TEST 5: Titlecase first
+============================================================
+`Hic sunt leones'
+`Hic SUNT leones'
+`Hic sunt leones'
+`HIC SUNT leones'
+E pluribus unum
+E PLURIBUS UNUM
+============================================================
+============================================================
+TEST 6: Language based case changing but nothing
============================================================
no problems
NO PROBLEMS
No problems
+No problems
no problems
NO PROBLEMS
No problems
+No problems
============================================================
============================================================
-TEST 6: Unicode case changing
+TEST 7: Unicode case changing
============================================================
^^e5^^e9^^ee^^f8ὥдαɛ
^^c5^^c9^^ce^^d8ὭДΑƐ
^^c5^^e9^^ee^^f8ὥдαɛ
+^^c5^^e9^^ee^^f8ὭдαƐ
============================================================
============================================================
-TEST 7: Unicode case changing exceptions
+TEST 8: Unicode case changing exceptions
============================================================
fu^^dfball
FUSSBALL
Fu^^dfball
+Fu^^dfball
============================================================
============================================================
-TEST 8: The final sigma rule
+TEST 9: The final sigma rule
============================================================
ὀδυσσεύς (ὀδυσσεύς) ὀδυσσεύς, ὀδυσσεύς{} ὀδυσσεύς\noop
ὈΔΥΣΣΕΎΣ (ὈΔΥΣΣΕΎΣ) ὈΔΥΣΣΕΎΣ, ὈΔΥΣΣΕΎΣ{} ὈΔΥΣΣΕΎΣ\noop
Ὀδυσσεύς (ὀδυσσεύς) ὀδυσσεύς, ὀδυσσεύς{} ὀδυσσεύς\noop
+ὈΔΥΣΣΕΎΣ (ὈΔΥΣΣΕΎΣ) ὈΔΥΣΣΕΎΣ, ὈΔΥΣΣΕΎΣ{} ὈΔΥΣΣΕΎΣ\noop
ὀδυσσεύς
ὈΔΥΣΣΕΎΣ
Ὀδυσσεύς
+ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 9: German-alternative
+TEST 10: German-alternative
============================================================
FUSSBALL
FUẞBALL
============================================================
============================================================
-TEST 10: Greek
+TEST 11: Greek
============================================================
ὈΔΥΣΣΕΎΣ
ΟΔΥΣΣΕΥΣ
@@ -83,7 +112,7 @@ TEST 10: Greek
Ὀδυσσεύς
============================================================
============================================================
-TEST 11: Turkish/Azeri
+TEST 12: Turkish/Azeri
============================================================
ragıp hul^^fbsi ^^f6zdem
ragip hul^^fbsi̇ ^^f6zdem
@@ -95,7 +124,7 @@ Ip hul^^fbsi ^^f6zdem
Ip hul^^fbsi ^^f6zdem
============================================================
============================================================
-TEST 12: Lithuanian
+TEST 13: Lithuanian
============================================================
i̇̀i̇́i̇̃i̇̀i̇́i̇̃j̇̀j̇́j̇̃į̇̀į̇́į̇̃
^^ec^^edĩìíĩj̀j́j̃į̀į́į̃
@@ -107,7 +136,7 @@ Ìi̇̀i̇̃i̇̀i̇́i̇̃j̇̀j̇́j̇̃į̇̀į̇́į̇̃
İ̀i̇̀i̇̃i̇̀i̇́i̇̃j̇̀j̇́j̇̃į̇̀į̇́į̇̃
============================================================
============================================================
-TEST 13: Dutch
+TEST 14: Dutch
============================================================
ijsselmeer
ijsselmeer
@@ -123,58 +152,69 @@ Im
Im
============================================================
============================================================
-TEST 14: Titlecase exceptions
+TEST 15: Titlecase exceptions
============================================================
Ssoo
Dž!
============================================================
============================================================
-TEST 15: Case changing braced arguments
+TEST 16: Case changing braced arguments
============================================================
foo \emph {BAR} {baz}
FOO \emph {BAR} {BAZ}
Foo \emph {BAR} {baz}
+FOO \emph {BAR} {BAZ}
\emph {BAR} {baz}
\emph {BAR} {BAZ}
\emph {BAR} {Baz}
+\emph {BAR} {BAZ}
============================================================
============================================================
-TEST 16: Expanding content
+TEST 17: Expanding content
============================================================
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text hello
SOME TEXT HELLO
Some text hello
+Some text Hello
hello sometext
HELLO SOMETEXT
Hello sometext
+Hello sometext
some text \cs_tmp:w
SOME TEXT \cs_tmp:w
Some text \cs_tmp:w
+Some text \cs_tmp:w
\cs_tmp:w sometext
\cs_tmp:w SOMETEXT
\cs_tmp:w Sometext
+\cs_tmp:w Sometext
============================================================
============================================================
-TEST 17: Math-mode escape
+TEST 18: Math-mode escape
============================================================
some text $y = mx + c$
SOME TEXT $y = mx + c$
Some text $y = mx + c$
+Some text $y = mx + c$
$y = mx + c$ text
$y = mx + c$ TEXT
$y = mx + c$ Text
+$y = mx + c$ Text
opps not close token in $y = mx + c
OPPS NOT CLOSE TOKEN IN $y = mx + c
Opps not close token in $y = mx + c
+Opps not close token in $y = mx + c
============================================================
============================================================
-TEST 18: Nesting
+TEST 19: Nesting
============================================================
HELLO
hello
@@ -182,16 +222,18 @@ FUSSBALL
ὈΔΥΣΣΕΎΣ
============================================================
============================================================
-TEST 19: Letter-like commands
+TEST 20: Letter-like commands
============================================================
\aa \aa \J \ae \dh \ss \l \o
\AA \AA \J \AE \DH \SS \L \O
\AA \aa \J \ae \dh \ss \l \o
+\AA \aa \J \ae \dh \ss \l \O
============================================================
============================================================
-TEST 20: Accents
+TEST 21: Accents
============================================================
\"{a}\u {e}\H {i}\v {o}\.{u}
\"{A}\u {E}\H {I}\v {O}\.{U}
\"{A}\u {e}\H {i}\v {o}\.{u}
+\"{A}\u {e}\H {i}\v {o}\.{u}
============================================================
More information about the latex3-commits
mailing list