summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3experimental
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2014-06-17 22:32:09 +0000
committerKarl Berry <karl@freefriends.org>2014-06-17 22:32:09 +0000
commit3c2f50b92407533aabaef1823006032eedd6ef90 (patch)
treeeb67245dd952c951b95c485a5eb66f9539ac83df /Master/texmf-dist/tex/latex/l3experimental
parent4aa0b8110f2fdb3044d8b26d54e12cbb49a9a3dc (diff)
l3
git-svn-id: svn://tug.org/texlive/trunk@34268 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3experimental')
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3flag.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty233
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty201
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty3
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty4
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty2
-rw-r--r--Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-build.sty2
8 files changed, 249 insertions, 200 deletions
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3flag.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3flag.sty
index a7249a188cb..242a465ed60 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3flag.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3flag.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3flag.dtx 3039 2011-12-08 09:22:35Z bruno $
+\GetIdInfo$Id: l3flag.dtx 4745 2014-05-06 10:41:27Z joseph $
{L3 Experimental flags}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty
index 3d1224dfd80..ec8dc8bce52 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex-trace.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3regex.dtx 4623 2013-12-14 13:53:40Z bruno $
+\GetIdInfo$Id: l3regex.dtx 5067 2014-06-06 16:51:35Z bruno $
{L3 Experimental regular expressions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -268,7 +268,7 @@
}
\cs_new_protected:Npn \__regex_escape_use:nnnn #1#2#3#4
{
- \trace_push:nnn { regex } { 1 } { @@_escape_use:nnnn }
+ \trace_push:nnn { regex } { 1 } { __regex_escape_use:nnnn }
\__tl_build:Nw \l__regex_internal_a_tl
\cs_set_nopar:Npn \__regex_escape_unescaped:N ##1 { #1 }
\cs_set_nopar:Npn \__regex_escape_escaped:N ##1 { #2 }
@@ -282,7 +282,7 @@
}
\__tl_build_one:o \l__regex_internal_b_tl
\__tl_build_end:
- \trace_pop:nnn { regex } { 1 } { @@_escape_use:nnnn }
+ \trace_pop:nnn { regex } { 1 } { __regex_escape_use:nnnn }
\l__regex_internal_a_tl
}
\cs_new:Npn \__regex_escape_loop:N #1
@@ -365,12 +365,12 @@
\if_charcode:w \c_space_token #1
\exp_after:wN \__regex_escape_x_test:N
\else:
- \exp_after:wN \__regex_escape_x_test_two:N
+ \exp_after:wN \__regex_escape_x_testii:N
\exp_after:wN #1
\fi:
}
}
-\cs_new:Npn \__regex_escape_x_test_two:N #1
+\cs_new:Npn \__regex_escape_x_testii:N #1
{
\if_charcode:w \c_left_brace_str #1
\exp_after:wN \__regex_escape_x_loop:N
@@ -391,25 +391,32 @@
}
\cs_new:Npn \__regex_escape_x_loop:N #1
{
- \__str_hexadecimal_use:NTF #1
- { \__regex_escape_x_loop:N }
+ \str_if_eq_x:nnTF {#1} { break }
+ { ; \__regex_escape_x_loop_error:n { } {#1} }
{
- \token_if_eq_charcode:NNTF \c_space_token #1
+ \__str_hexadecimal_use:NTF #1
{ \__regex_escape_x_loop:N }
{
- ;
- \exp_after:wN \token_if_eq_charcode:NNTF \c_right_brace_str #1
- { \__regex_escape_loop:N }
+ \token_if_eq_charcode:NNTF \c_space_token #1
+ { \__regex_escape_x_loop:N }
{
- \if_false: { \fi: }
- \__tl_build_one:o \l__regex_internal_b_tl
- \__msg_kernel_error:nn { regex } { x-missing-rbrace } {#1}
- \tl_set:Nx \l__regex_internal_b_tl
- { \if_false: } \fi: \__regex_escape_loop:N #1
+ ;
+ \exp_after:wN
+ \token_if_eq_charcode:NNTF \c_right_brace_str #1
+ { \__regex_escape_loop:N }
+ { \__regex_escape_x_loop_error:n {#1} }
}
}
}
}
+\cs_new:Npn \__regex_escape_x_loop_error:n #1
+ {
+ \if_false: { \fi: }
+ \__tl_build_one:o \l__regex_internal_b_tl
+ \__msg_kernel_error:nnx { regex } { x-missing-rbrace } {#1}
+ \tl_set:Nx \l__regex_internal_b_tl
+ { \if_false: } \fi: \__regex_escape_loop:N #1
+ }
\prg_new_conditional:Npnn \__regex_char_if_special:N #1 { TF }
{
\if_int_compare:w `#1 < \c_ninety_one
@@ -614,6 +621,8 @@
{ #1 }
\prg_do_nothing: \prg_do_nothing:
\prg_do_nothing: \prg_do_nothing:
+ \int_compare:nNnT \l__regex_mode_int = \c_two
+ { \__msg_kernel_error:nn { regex } { c-trailing } }
\int_compare:nNnT \l__regex_mode_int < \c_zero
{
\__msg_kernel_error:nn { regex } { c-missing-rbrace }
@@ -1067,7 +1076,7 @@
{ __regex_compile_special_group_\token_to_str:N #4 :w }
{
\__msg_kernel_warning:nnx { regex } { special-group-unknown }
- { (? \token_to_str:N #4 }
+ { (? #4 }
\__regex_compile_group_begin:N \__regex_group:nnnN
\__regex_compile_raw:N ? #3 #4
}
@@ -1456,7 +1465,7 @@
}
\cs_new_protected:Npn \__regex_build:N #1
{
- \trace_push:nnn { regex } { 1 } { @@_build }
+ \trace_push:nnn { regex } { 1 } { __regex_build }
\int_set:Nn \tex_escapechar:D { 92 }
\int_zero:N \l__regex_capturing_group_int
\int_set_eq:NN \l__regex_max_state_int \l__regex_min_state_int
@@ -1467,12 +1476,12 @@
\__regex_group:nnnN {#1} { 1 } { 0 } \c_false_bool
\__regex_toks_put_right:Nn \l__regex_right_state_int
{ \__regex_action_success: }
- \@@_trace_states:n { 2 }
- \trace_pop:nnn { regex } { 1 } { @@_build }
+ \__regex_trace_states:n { 2 }
+ \trace_pop:nnn { regex } { 1 } { __regex_build }
}
\cs_new_protected:Npn \__regex_build_for_cs:n #1
{
- \trace_push:nnn { regex } { 1 } { @@_build_for_cs }
+ \trace_push:nnn { regex } { 1 } { __regex_build_for_cs }
\int_set_eq:NN \l__regex_max_state_int \l__regex_min_state_int
\__regex_build_new_state:
\__regex_build_new_state:
@@ -1485,8 +1494,8 @@
\exp_after:wN \__regex_action_success:
\fi:
}
- \@@_trace_states:n { 2 }
- \trace_pop:nnn { regex } { 1 } { @@_build_for_cs }
+ \__regex_trace_states:n { 2 }
+ \trace_pop:nnn { regex } { 1 } { __regex_build_for_cs }
}
\cs_new_protected_nopar:Npn \__regex_push_lr_states:
{
@@ -1602,7 +1611,7 @@
}
\cs_new_protected:Npn \__regex_group_aux:nnnnN #1#2#3#4#5
{
- \trace_push:nnn { regex } { 1 } { @@_group }
+ \trace_push:nnn { regex } { 1 } { __regex_group }
\if_int_compare:w #3 = \c_zero
\__regex_build_new_state:
\__regex_build_transition_right:nNn \__regex_action_free_group:n
@@ -1617,7 +1626,7 @@
\or: \__regex_group_repeat:nnN {#1} {#3} #5
\else: \__regex_group_repeat:nnnN {#1} {#3} {#4} #5
\fi:
- \trace_pop:nnn { regex } { 1 } { @@_group }
+ \trace_pop:nnn { regex } { 1 } { __regex_group }
}
\cs_new_protected:Npn \__regex_group:nnnN #1
{
@@ -1653,7 +1662,7 @@
}
\cs_new_protected:Npn \__regex_branch:n #1
{
- \trace_push:nnn { regex } { 1 } { @@_branch }
+ \trace_push:nnn { regex } { 1 } { __regex_branch }
\__regex_build_new_state:
\seq_get:NN \l__regex_left_state_seq \l__regex_internal_a_tl
\int_set:Nn \l__regex_left_state_int \l__regex_internal_a_tl
@@ -1663,7 +1672,7 @@
\seq_get:NN \l__regex_right_state_seq \l__regex_internal_a_tl
\__regex_build_transition_right:nNn \__regex_action_free:n
\l__regex_right_state_int \l__regex_internal_a_tl
- \trace_pop:nnn { regex } { 1 } { @@_branch }
+ \trace_pop:nnn { regex } { 1 } { __regex_branch }
}
\cs_new_protected:Npn \__regex_group_repeat:nn #1#2
{
@@ -1842,7 +1851,7 @@
\bool_new:N \l__regex_match_success_bool
\cs_new_protected:Npn \__regex_match:n #1
{
- \trace_push:nnx { regex } { 1 } { @@_match }
+ \trace_push:nnx { regex } { 1 } { __regex_match }
\trace:nnx { regex } { 1 } { analyzing~query~token~list }
\int_zero:N \l__regex_balance_int
\int_set:Nn \l__regex_current_pos_int { \c_two * \l__regex_max_state_int }
@@ -1864,7 +1873,7 @@
{ \c_two * \l__regex_max_state_int }
\bool_set_false:N \l__regex_empty_success_bool
\__regex_match_once:
- \trace_pop:nnx { regex } { 1 } { @@_match }
+ \trace_pop:nnx { regex } { 1 } { __regex_match }
}
\cs_new_protected_nopar:Npn \__regex_match_once:
{
@@ -2083,7 +2092,7 @@
}
\cs_new_protected:Npn \__regex_replacement:n #1
{
- \trace_push:nnn { regex } { 1 } { @@_replacement:n }
+ \trace_push:nnn { regex } { 1 } { __regex_replacement:n }
\__tl_build:Nw \l__regex_internal_a_tl
\int_zero:N \l__regex_balance_int
\tl_clear:N \l__regex_balance_tl
@@ -2110,7 +2119,7 @@
}
\__tl_build_end:
\exp_args:No \__regex_replacement_aux:n \l__regex_internal_a_tl
- \trace_pop:nnn { regex } { 1 } { @@_replacement:n }
+ \trace_pop:nnn { regex } { 1 } { __regex_replacement:n }
}
\cs_new_protected:Npn \__regex_replacement_aux:n #1
{
@@ -2589,47 +2598,48 @@
}
}
\__msg_kernel_new:nnnn { regex } { trailing-backslash }
- { Trailing~escape~character~\iow_char:N\\. }
+ { Trailing~escape~character~`\iow_char:N\\'. }
{
A~regular~expression~or~its~replacement~text~ends~with~
- the~escape~character~\iow_char:N\\.~It~will~be~ignored.
+ the~escape~character~`\iow_char:N\\'.~It~will~be~ignored.
}
\__msg_kernel_new:nnnn { regex } { x-missing-rbrace }
- { Missing~closing~brace~in~\iow_char:N\\x~hexadecimal~sequence. }
+ { Missing~closing~brace~in~`\iow_char:N\\x'~hexadecimal~sequence. }
{
You~wrote~something~like~
- `\iow_char:N\\x\{\int_to_hexadecimal:n{#1}'.~
+ `\iow_char:N\\x\{...#1'.~
The~closing~brace~is~missing.
}
\__msg_kernel_new:nnnn { regex } { x-overflow }
- { Character~code~'#1'~too~large~in~\iow_char:N\\x~hexadecimal~sequence. }
+ { Character~code~`#1'~too~large~in~`\iow_char:N\\x'~hexadecimal~sequence. }
{
You~wrote~something~like~
`\iow_char:N\\x\{\int_to_hexadecimal:n{#1}\}'.~
- The~character~code~'#1'~is~larger~than~\int_use:N \c_max_char_int.
+ The~character~code~#1~is~larger~than~
+ the~maximum~value~\int_use:N \c_max_char_int.
}
\__msg_kernel_new:nnnn { regex } { invalid-quantifier }
- { Braced~quantifier~'#1'~may~not~be~followed~by~'#2'. }
+ { Braced~quantifier~`#1'~may~not~be~followed~by~`#2'. }
{
- The~character~'#2'~is~invalid~in~the~braced~quantifier~'#1'.~
- The~only~valid~quantifiers~are~'*',~'?',~'+',~'{<int>}',~
- '{<min>,}'~and~'{<min>,<max>}',~followed~or~not~by~'?'.
+ The~character~`#2'~is~invalid~in~the~braced~quantifier~`#1'.~
+ The~only~valid~quantifiers~are~`*',~`?',~`+',~`{<int>}',~
+ `{<min>,}'~and~`{<min>,<max>}',~optionally~followed~by~`?'.
}
\__msg_kernel_new:nnnn { regex } { missing-rbrack }
{ Missing~right~bracket~inserted~in~regular~expression. }
{
LaTeX~was~given~a~regular~expression~where~a~character~class~
- was~started~with~'[',~but~the~matching~']'~is~missing.
+ was~started~with~`[',~but~the~matching~`]'~is~missing.
}
\__msg_kernel_new:nnnn { regex } { missing-rparen }
{
- Missing~right~parenthes\int_compare:nTF{#1=1}{i}{e}s~
+ Missing~right~
+ \int_compare:nTF { #1 = 1 } { parenthesis } { parentheses } ~
inserted~in~regular~expression.
}
{
- LaTeX~was~given~a~regular~expression~with~\int_eval:n{#1}~
- more~left~parenthes\int_compare:nTF{#1=1}{i}{e}s~than~right~
- parenthes\int_compare:nTF{#1=1}{i}{e}s.
+ LaTeX~was~given~a~regular~expression~with~\int_eval:n {#1} ~
+ more~left~parentheses~than~right~parentheses.
}
\__msg_kernel_new:nnnn { regex } { extra-rparen }
{ Extra~right~parenthesis~ignored~in~regular~expression. }
@@ -2639,7 +2649,7 @@
}
\__msg_kernel_new:nnnn { regex } { bad-escape }
{
- Invalid~escape~\c_backslash_str #1~
+ Invalid~escape~`\iow_char:N\\#1'~
\__regex_if_in_cs:TF { within~a~control~sequence. }
{
\__regex_if_in_class:TF
@@ -2648,96 +2658,102 @@
}
}
{
- The~escape~sequence~\iow_char:N\\#1~may~not~appear~
+ The~escape~sequence~`\iow_char:N\\#1'~may~not~appear~
\__regex_if_in_cs:TF
{
within~a~control~sequence~test~introduced~by~
- \iow_char:N\\c\iow_char:N\{.
+ `\iow_char:N\\c\iow_char:N\{'.
}
{
\__regex_if_in_class:TF
{ within~a~character~class~ }
- { following~a~category~test~such~as~\iow_char:N\\cL~ }
+ { following~a~category~test~such~as~`\iow_char:N\\cL'~ }
because~it~does~not~match~exactly~one~character.
}
}
\__msg_kernel_new:nnnn { regex } { range-missing-end }
- { Invalid~end-point~for~range~'#1-#2'~in~character~class. }
+ { Invalid~end-point~for~range~`#1-#2'~in~character~class. }
{
- The~end-point~'#2'~of~the~range~'#1-#2'~may~not~serve~as~an~
+ The~end-point~`#2'~of~the~range~`#1-#2'~may~not~serve~as~an~
end-point~for~a~range:~alphanumeric~characters~should~not~be~
escaped,~and~non-alphanumeric~characters~should~be~escaped.
}
\__msg_kernel_new:nnnn { regex } { range-backwards }
- { Range~[#1-#2]~out~of~order~in~character~class. }
+ { Range~`[#1-#2]'~out~of~order~in~character~class. }
{
- In~ranges~of~characters~[x-y]~appearing~in~character~classes,~
+ In~ranges~of~characters~`[x-y]'~appearing~in~character~classes,~
the~first~character~code~must~not~be~larger~than~the~second.~
- Here,~#1~has~character~code~\int_eval:n {`#1},~while~#2~has~
- character~code~\int_eval:n {`#2}.
+ Here,~`#1'~has~character~code~\int_eval:n {`#1},~while~
+ `#2'~has~character~code~\int_eval:n {`#2}.
}
\__msg_kernel_new:nnnn { regex } { c-bad-mode }
- { Invalid~nested~\iow_char:N\\c~escape~in~regular~expression. }
+ { Invalid~nested~`\iow_char:N\\c'~escape~in~regular~expression. }
{
- The~\iow_char:N\\c~escape~cannot~be~used~within~
- a~control~sequence~test~'\iow_char:N\\c{...}'.~
- To~combine~several~category~tests,~use~'\iow_char:N\\c[...]'.
+ The~`\iow_char:N\\c'~escape~cannot~be~used~within~
+ a~control~sequence~test~`\iow_char:N\\c{...}'.~
+ To~combine~several~category~tests,~use~`\iow_char:N\\c[...]'.
}
\__msg_kernel_new:nnnn { regex } { c-missing-rbrace }
- { Missing~right~brace~inserted~for~\iow_char:N\\c~escape. }
+ { Missing~right~brace~inserted~for~`\iow_char:N\\c'~escape. }
{
LaTeX~was~given~a~regular~expression~where~a~
- '\iow_char:N\\c\iow_char:N\{...'~construction~was~not~ended~
- with~a~closing~brace~'\iow_char:N\}'.
+ `\iow_char:N\\c\iow_char:N\{...'~construction~was~not~ended~
+ with~a~closing~brace~`\iow_char:N\}'.
}
\__msg_kernel_new:nnnn { regex } { c-missing-rbrack }
- { Missing~right~bracket~inserted~for~\iow_char:N\\c~escape. }
+ { Missing~right~bracket~inserted~for~`\iow_char:N\\c'~escape. }
{
- A~construction~'\iow_char:N\\c[...'~appears~in~a~
- regular~expression,~but~the~closing~']'~is~not~present.
+ A~construction~`\iow_char:N\\c[...'~appears~in~a~
+ regular~expression,~but~the~closing~`]'~is~not~present.
}
\__msg_kernel_new:nnnn { regex } { c-missing-category }
- { Invalid~character~'#1'~following~\iow_char:N\\c~escape. }
+ { Invalid~character~`#1'~following~`\iow_char:N\\c'~escape. }
{
- In~regular~expressions,~the~\iow_char:N\\c~escape~sequence~
+ In~regular~expressions,~the~`\iow_char:N\\c'~escape~sequence~
may~only~be~followed~by~a~left~brace,~a~left~bracket,~or~a~
capital~letter~representing~a~character~category,~namely~
- one~of~ABCDELMOPSTU.
+ one~of~`ABCDELMOPSTU'.
+ }
+\__msg_kernel_new:nnnn { regex } { c-trailing }
+ { Trailing~category~code~escape~`\iow_char:N\\c'... }
+ {
+ A~regular~expression~ends~with~`\iow_char:N\\c'~followed~
+ by~a~letter.~It~will~be~ignored.
}
\__msg_kernel_new:nnnn { regex } { u-missing-lbrace }
- { Missing~left~brace~following~\iow_char:N\\u~escape. }
+ { Missing~left~brace~following~`\iow_char:N\\u'~escape. }
{
- The~\iow_char:N\\u~escape~sequence~must~be~followed~by~
+ The~`\iow_char:N\\u'~escape~sequence~must~be~followed~by~
a~brace~group~with~the~name~of~the~variable~to~use.
}
\__msg_kernel_new:nnnn { regex } { u-missing-rbrace }
- { Missing~right~brace~inserted~for~\iow_char:N\\u~escape. }
+ { Missing~right~brace~inserted~for~`\iow_char:N\\u'~escape. }
{
LaTeX~
\str_if_eq_x:nnTF { } {#2}
{ reached~the~end~of~the~string~ }
- { encountered~an~escaped~alphanumeric~character '\iow_char:N\\#2'~ }
- when~parsing~the~argument~of~an~'\iow_char:N\\u\iow_char:N\{...\}'~escape.
+ { encountered~an~escaped~alphanumeric~character `\iow_char:N\\#2'~ }
+ when~parsing~the~argument~of~an~`\iow_char:N\\u\iow_char:N\{...\}'~escape.
}
\__msg_kernel_new:nnnn { regex } { posix-unsupported }
- { POSIX~collating~element~'[#1 ~ #1]'~not~supported. }
+ { POSIX~collating~element~`[#1 ~ #1]'~not~supported. }
{
- The~[.foo.]~and~[=bar=]~syntaxes~have~a~special~meaning~in~POSIX~
- regular~expressions.~This~is~not~supported~by~LaTeX.~Maybe~you~
- forgot~to~escape~a~left~bracket~in~a~character~class?
+ The~`[.foo.]'~and~`[=bar=]'~syntaxes~have~a~special~meaning~
+ in~POSIX~regular~expressions.~This~is~not~supported~by~LaTeX.~
+ Maybe~you~forgot~to~escape~a~left~bracket~in~a~character~class?
}
\__msg_kernel_new:nnnn { regex } { posix-unknown }
- { POSIX~class~[:#1:]~unknown. }
+ { POSIX~class~`[:#1:]'~unknown. }
{
- [:#1:]~is~not~among~the~known~POSIX~classes~
- [:alnum:],~[:alpha:],~[:ascii:],~[:blank:],~
- [:cntrl:],~[:digit:],~[:graph:],~[:lower:],~
- [:print:],~[:punct:],~[:space:],~[:upper:],~
- [:word:],~and~[:xdigit:].
+ `[:#1:]'~is~not~among~the~known~POSIX~classes~
+ `[:alnum:]',~`[:alpha:]',~`[:ascii:]',~`[:blank:]',~
+ `[:cntrl:]',~`[:digit:]',~`[:graph:]',~`[:lower:]',~
+ `[:print:]',~`[:punct:]',~`[:space:]',~`[:upper:]',~
+ `[:word:]',~and~`[:xdigit:]'.
}
\__msg_kernel_new:nnnn { regex } { posix-missing-close }
- { Missing~closing~':]'~for~POSIX~class. }
- { The~POSIX~syntax~'#1'~must~be~followed~by~':]',~not~'#2'. }
+ { Missing~closing~`:]'~for~POSIX~class. }
+ { The~POSIX~syntax~`#1'~must~be~followed~by~`:]',~not~`#2'. }
\__msg_kernel_new:nnnn { regex } { result-unbalanced }
{ Missing~brace~inserted~when~#1. }
{
@@ -2749,55 +2765,64 @@
\__msg_kernel_new:nnnn { regex } { unknown-option }
{ Unknown~option~`#1'~for~regular~expressions. }
{
- The~only~available~option~is~'case-insensitive',~toggled~by~
- '(?i)'~and~'(?-i)'.
+ The~only~available~option~is~`case-insensitive',~toggled~by~
+ `(?i)'~and~`(?-i)'.
+ }
+\__msg_kernel_new:nnnn { regex } { special-group-unknown }
+ { Unknown~special~group~`#1~...'~in~a~regular~expression. }
+ {
+ The~only~valid~constructions~starting~with~`(?'~are~
+ `(?:~...~)',~`(?|~...~)',~`(?i)',~and~`(?-i)'.
}
\__msg_kernel_new:nnnn { regex } { replacement-c }
- { Misused~\iow_char:N\\c~command~in~a~replacement~text. }
+ { Misused~`\iow_char:N\\c'~command~in~a~replacement~text. }
{
- In~a~replacement~text,~the~\iow_char:N\\c~escape~sequence~
- can~be~followed~by~one~of~the~letters~ABCDELMOPSTU~
- or~a~brace~group,~not~by~'#1'.
+ In~a~replacement~text,~the~`\iow_char:N\\c'~escape~sequence~
+ can~be~followed~by~one~of~the~letters~`ABCDELMOPSTU'~
+ or~a~brace~group,~not~by~`#1'.
}
\__msg_kernel_new:nnnn { regex } { replacement-u }
- { Misused~\iow_char:N\\u~command~in~a~replacement~text. }
+ { Misused~`\iow_char:N\\u'~command~in~a~replacement~text. }
{
- In~a~replacement~text,~the~\iow_char:N\\u~escape~sequence~
+ In~a~replacement~text,~the~`\iow_char:N\\u'~escape~sequence~
must~be~~followed~by~a~brace~group~holding~the~name~of~the~
variable~to~use.
}
\__msg_kernel_new:nnnn { regex } { replacement-g }
- { Missing~brace~for~the~\iow_char:N\\g~construction~in~a~replacement~text. }
+ {
+ Missing~brace~for~the~`\iow_char:N\\g'~construction~
+ in~a~replacement~text.
+ }
{
In~the~replacement~text~for~a~regular~expression~search,~
- submatches~are~represented~either~as~\iow_char:N \\g{dd..d},~
- or~\\d,~where~`d'~are~single~digits.~Here,~a~brace~is~missing.
+ submatches~are~represented~either~as~`\iow_char:N \\g{dd..d}',~
+ or~`\\d',~where~`d'~are~single~digits.~Here,~a~brace~is~missing.
}
\__msg_kernel_new:nnnn { regex } { replacement-catcode-end }
{
- Missing~character~for~the~\iow_char:N\\c<category><character>~
+ Missing~character~for~the~`\iow_char:N\\c<category><character>'~
construction~in~a~replacement~text.
}
{
- In~a~replacement~text,~the~\iow_char:N\\c~escape~sequence~
- can~be~followed~by~one~of~the~letters~ABCDELMOPSTU~representing~
+ In~a~replacement~text,~the~`\iow_char:N\\c'~escape~sequence~
+ can~be~followed~by~one~of~the~letters~`ABCDELMOPSTU'~representing~
the~character~category.~Then,~a~character~must~follow.~LaTeX~
reached~the~end~of~the~replacement~when~looking~for~that.
}
\__msg_kernel_new:nnnn { regex } { replacement-null-space }
{ TeX~cannot~build~a~space~token~with~character~code~0. }
{
- You~asked~for~a~character~token~with~category~'space',~
+ You~asked~for~a~character~token~with~category~space,~
and~character~code~0,~for~instance~through~
- '\iow_char:N\\cS\iow_char:N\\x00'.~
+ `\iow_char:N\\cS\iow_char:N\\x00'.~
This~specific~case~is~impossible~and~will~be~replaced~
by~a~normal~space.
}
\__msg_kernel_new:nnnn { regex } { replacement-missing-rbrace }
{ Missing~right~brace~inserted~in~replacement~text. }
{
- There~were~\int_use:N \l__regex_replacement_csnames_int \
- missing~right~braces.
+ There~ \int_compare:nTF { #1 = 1 } { was } { were } ~ #1~
+ missing~right~\int_compare:nTF { #1 = 1 } { brace } { braces } .
}
\cs_new:Npn \__regex_msg_repeated:nnN #1#2#3
{
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty
index 12774db5615..55bd0e1464c 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3regex.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3regex.dtx 4623 2013-12-14 13:53:40Z bruno $
+\GetIdInfo$Id: l3regex.dtx 5067 2014-06-06 16:51:35Z bruno $
{L3 Experimental regular expressions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -363,12 +363,12 @@
\if_charcode:w \c_space_token #1
\exp_after:wN \__regex_escape_x_test:N
\else:
- \exp_after:wN \__regex_escape_x_test_two:N
+ \exp_after:wN \__regex_escape_x_testii:N
\exp_after:wN #1
\fi:
}
}
-\cs_new:Npn \__regex_escape_x_test_two:N #1
+\cs_new:Npn \__regex_escape_x_testii:N #1
{
\if_charcode:w \c_left_brace_str #1
\exp_after:wN \__regex_escape_x_loop:N
@@ -389,25 +389,32 @@
}
\cs_new:Npn \__regex_escape_x_loop:N #1
{
- \__str_hexadecimal_use:NTF #1
- { \__regex_escape_x_loop:N }
+ \str_if_eq_x:nnTF {#1} { break }
+ { ; \__regex_escape_x_loop_error:n { } {#1} }
{
- \token_if_eq_charcode:NNTF \c_space_token #1
+ \__str_hexadecimal_use:NTF #1
{ \__regex_escape_x_loop:N }
{
- ;
- \exp_after:wN \token_if_eq_charcode:NNTF \c_right_brace_str #1
- { \__regex_escape_loop:N }
+ \token_if_eq_charcode:NNTF \c_space_token #1
+ { \__regex_escape_x_loop:N }
{
- \if_false: { \fi: }
- \__tl_build_one:o \l__regex_internal_b_tl
- \__msg_kernel_error:nn { regex } { x-missing-rbrace } {#1}
- \tl_set:Nx \l__regex_internal_b_tl
- { \if_false: } \fi: \__regex_escape_loop:N #1
+ ;
+ \exp_after:wN
+ \token_if_eq_charcode:NNTF \c_right_brace_str #1
+ { \__regex_escape_loop:N }
+ { \__regex_escape_x_loop_error:n {#1} }
}
}
}
}
+\cs_new:Npn \__regex_escape_x_loop_error:n #1
+ {
+ \if_false: { \fi: }
+ \__tl_build_one:o \l__regex_internal_b_tl
+ \__msg_kernel_error:nnx { regex } { x-missing-rbrace } {#1}
+ \tl_set:Nx \l__regex_internal_b_tl
+ { \if_false: } \fi: \__regex_escape_loop:N #1
+ }
\prg_new_conditional:Npnn \__regex_char_if_special:N #1 { TF }
{
\if_int_compare:w `#1 < \c_ninety_one
@@ -612,6 +619,8 @@
{ #1 }
\prg_do_nothing: \prg_do_nothing:
\prg_do_nothing: \prg_do_nothing:
+ \int_compare:nNnT \l__regex_mode_int = \c_two
+ { \__msg_kernel_error:nn { regex } { c-trailing } }
\int_compare:nNnT \l__regex_mode_int < \c_zero
{
\__msg_kernel_error:nn { regex } { c-missing-rbrace }
@@ -1065,7 +1074,7 @@
{ __regex_compile_special_group_\token_to_str:N #4 :w }
{
\__msg_kernel_warning:nnx { regex } { special-group-unknown }
- { (? \token_to_str:N #4 }
+ { (? #4 }
\__regex_compile_group_begin:N \__regex_group:nnnN
\__regex_compile_raw:N ? #3 #4
}
@@ -2562,47 +2571,48 @@
}
}
\__msg_kernel_new:nnnn { regex } { trailing-backslash }
- { Trailing~escape~character~\iow_char:N\\. }
+ { Trailing~escape~character~`\iow_char:N\\'. }
{
A~regular~expression~or~its~replacement~text~ends~with~
- the~escape~character~\iow_char:N\\.~It~will~be~ignored.
+ the~escape~character~`\iow_char:N\\'.~It~will~be~ignored.
}
\__msg_kernel_new:nnnn { regex } { x-missing-rbrace }
- { Missing~closing~brace~in~\iow_char:N\\x~hexadecimal~sequence. }
+ { Missing~closing~brace~in~`\iow_char:N\\x'~hexadecimal~sequence. }
{
You~wrote~something~like~
- `\iow_char:N\\x\{\int_to_hexadecimal:n{#1}'.~
+ `\iow_char:N\\x\{...#1'.~
The~closing~brace~is~missing.
}
\__msg_kernel_new:nnnn { regex } { x-overflow }
- { Character~code~'#1'~too~large~in~\iow_char:N\\x~hexadecimal~sequence. }
+ { Character~code~`#1'~too~large~in~`\iow_char:N\\x'~hexadecimal~sequence. }
{
You~wrote~something~like~
`\iow_char:N\\x\{\int_to_hexadecimal:n{#1}\}'.~
- The~character~code~'#1'~is~larger~than~\int_use:N \c_max_char_int.
+ The~character~code~#1~is~larger~than~
+ the~maximum~value~\int_use:N \c_max_char_int.
}
\__msg_kernel_new:nnnn { regex } { invalid-quantifier }
- { Braced~quantifier~'#1'~may~not~be~followed~by~'#2'. }
+ { Braced~quantifier~`#1'~may~not~be~followed~by~`#2'. }
{
- The~character~'#2'~is~invalid~in~the~braced~quantifier~'#1'.~
- The~only~valid~quantifiers~are~'*',~'?',~'+',~'{<int>}',~
- '{<min>,}'~and~'{<min>,<max>}',~followed~or~not~by~'?'.
+ The~character~`#2'~is~invalid~in~the~braced~quantifier~`#1'.~
+ The~only~valid~quantifiers~are~`*',~`?',~`+',~`{<int>}',~
+ `{<min>,}'~and~`{<min>,<max>}',~optionally~followed~by~`?'.
}
\__msg_kernel_new:nnnn { regex } { missing-rbrack }
{ Missing~right~bracket~inserted~in~regular~expression. }
{
LaTeX~was~given~a~regular~expression~where~a~character~class~
- was~started~with~'[',~but~the~matching~']'~is~missing.
+ was~started~with~`[',~but~the~matching~`]'~is~missing.
}
\__msg_kernel_new:nnnn { regex } { missing-rparen }
{
- Missing~right~parenthes\int_compare:nTF{#1=1}{i}{e}s~
+ Missing~right~
+ \int_compare:nTF { #1 = 1 } { parenthesis } { parentheses } ~
inserted~in~regular~expression.
}
{
- LaTeX~was~given~a~regular~expression~with~\int_eval:n{#1}~
- more~left~parenthes\int_compare:nTF{#1=1}{i}{e}s~than~right~
- parenthes\int_compare:nTF{#1=1}{i}{e}s.
+ LaTeX~was~given~a~regular~expression~with~\int_eval:n {#1} ~
+ more~left~parentheses~than~right~parentheses.
}
\__msg_kernel_new:nnnn { regex } { extra-rparen }
{ Extra~right~parenthesis~ignored~in~regular~expression. }
@@ -2612,7 +2622,7 @@
}
\__msg_kernel_new:nnnn { regex } { bad-escape }
{
- Invalid~escape~\c_backslash_str #1~
+ Invalid~escape~`\iow_char:N\\#1'~
\__regex_if_in_cs:TF { within~a~control~sequence. }
{
\__regex_if_in_class:TF
@@ -2621,96 +2631,102 @@
}
}
{
- The~escape~sequence~\iow_char:N\\#1~may~not~appear~
+ The~escape~sequence~`\iow_char:N\\#1'~may~not~appear~
\__regex_if_in_cs:TF
{
within~a~control~sequence~test~introduced~by~
- \iow_char:N\\c\iow_char:N\{.
+ `\iow_char:N\\c\iow_char:N\{'.
}
{
\__regex_if_in_class:TF
{ within~a~character~class~ }
- { following~a~category~test~such~as~\iow_char:N\\cL~ }
+ { following~a~category~test~such~as~`\iow_char:N\\cL'~ }
because~it~does~not~match~exactly~one~character.
}
}
\__msg_kernel_new:nnnn { regex } { range-missing-end }
- { Invalid~end-point~for~range~'#1-#2'~in~character~class. }
+ { Invalid~end-point~for~range~`#1-#2'~in~character~class. }
{
- The~end-point~'#2'~of~the~range~'#1-#2'~may~not~serve~as~an~
+ The~end-point~`#2'~of~the~range~`#1-#2'~may~not~serve~as~an~
end-point~for~a~range:~alphanumeric~characters~should~not~be~
escaped,~and~non-alphanumeric~characters~should~be~escaped.
}
\__msg_kernel_new:nnnn { regex } { range-backwards }
- { Range~[#1-#2]~out~of~order~in~character~class. }
+ { Range~`[#1-#2]'~out~of~order~in~character~class. }
{
- In~ranges~of~characters~[x-y]~appearing~in~character~classes,~
+ In~ranges~of~characters~`[x-y]'~appearing~in~character~classes,~
the~first~character~code~must~not~be~larger~than~the~second.~
- Here,~#1~has~character~code~\int_eval:n {`#1},~while~#2~has~
- character~code~\int_eval:n {`#2}.
+ Here,~`#1'~has~character~code~\int_eval:n {`#1},~while~
+ `#2'~has~character~code~\int_eval:n {`#2}.
}
\__msg_kernel_new:nnnn { regex } { c-bad-mode }
- { Invalid~nested~\iow_char:N\\c~escape~in~regular~expression. }
+ { Invalid~nested~`\iow_char:N\\c'~escape~in~regular~expression. }
{
- The~\iow_char:N\\c~escape~cannot~be~used~within~
- a~control~sequence~test~'\iow_char:N\\c{...}'.~
- To~combine~several~category~tests,~use~'\iow_char:N\\c[...]'.
+ The~`\iow_char:N\\c'~escape~cannot~be~used~within~
+ a~control~sequence~test~`\iow_char:N\\c{...}'.~
+ To~combine~several~category~tests,~use~`\iow_char:N\\c[...]'.
}
\__msg_kernel_new:nnnn { regex } { c-missing-rbrace }
- { Missing~right~brace~inserted~for~\iow_char:N\\c~escape. }
+ { Missing~right~brace~inserted~for~`\iow_char:N\\c'~escape. }
{
LaTeX~was~given~a~regular~expression~where~a~
- '\iow_char:N\\c\iow_char:N\{...'~construction~was~not~ended~
- with~a~closing~brace~'\iow_char:N\}'.
+ `\iow_char:N\\c\iow_char:N\{...'~construction~was~not~ended~
+ with~a~closing~brace~`\iow_char:N\}'.
}
\__msg_kernel_new:nnnn { regex } { c-missing-rbrack }
- { Missing~right~bracket~inserted~for~\iow_char:N\\c~escape. }
+ { Missing~right~bracket~inserted~for~`\iow_char:N\\c'~escape. }
{
- A~construction~'\iow_char:N\\c[...'~appears~in~a~
- regular~expression,~but~the~closing~']'~is~not~present.
+ A~construction~`\iow_char:N\\c[...'~appears~in~a~
+ regular~expression,~but~the~closing~`]'~is~not~present.
}
\__msg_kernel_new:nnnn { regex } { c-missing-category }
- { Invalid~character~'#1'~following~\iow_char:N\\c~escape. }
+ { Invalid~character~`#1'~following~`\iow_char:N\\c'~escape. }
{
- In~regular~expressions,~the~\iow_char:N\\c~escape~sequence~
+ In~regular~expressions,~the~`\iow_char:N\\c'~escape~sequence~
may~only~be~followed~by~a~left~brace,~a~left~bracket,~or~a~
capital~letter~representing~a~character~category,~namely~
- one~of~ABCDELMOPSTU.
+ one~of~`ABCDELMOPSTU'.
+ }
+\__msg_kernel_new:nnnn { regex } { c-trailing }
+ { Trailing~category~code~escape~`\iow_char:N\\c'... }
+ {
+ A~regular~expression~ends~with~`\iow_char:N\\c'~followed~
+ by~a~letter.~It~will~be~ignored.
}
\__msg_kernel_new:nnnn { regex } { u-missing-lbrace }
- { Missing~left~brace~following~\iow_char:N\\u~escape. }
+ { Missing~left~brace~following~`\iow_char:N\\u'~escape. }
{
- The~\iow_char:N\\u~escape~sequence~must~be~followed~by~
+ The~`\iow_char:N\\u'~escape~sequence~must~be~followed~by~
a~brace~group~with~the~name~of~the~variable~to~use.
}
\__msg_kernel_new:nnnn { regex } { u-missing-rbrace }
- { Missing~right~brace~inserted~for~\iow_char:N\\u~escape. }
+ { Missing~right~brace~inserted~for~`\iow_char:N\\u'~escape. }
{
LaTeX~
\str_if_eq_x:nnTF { } {#2}
{ reached~the~end~of~the~string~ }
- { encountered~an~escaped~alphanumeric~character '\iow_char:N\\#2'~ }
- when~parsing~the~argument~of~an~'\iow_char:N\\u\iow_char:N\{...\}'~escape.
+ { encountered~an~escaped~alphanumeric~character `\iow_char:N\\#2'~ }
+ when~parsing~the~argument~of~an~`\iow_char:N\\u\iow_char:N\{...\}'~escape.
}
\__msg_kernel_new:nnnn { regex } { posix-unsupported }
- { POSIX~collating~element~'[#1 ~ #1]'~not~supported. }
+ { POSIX~collating~element~`[#1 ~ #1]'~not~supported. }
{
- The~[.foo.]~and~[=bar=]~syntaxes~have~a~special~meaning~in~POSIX~
- regular~expressions.~This~is~not~supported~by~LaTeX.~Maybe~you~
- forgot~to~escape~a~left~bracket~in~a~character~class?
+ The~`[.foo.]'~and~`[=bar=]'~syntaxes~have~a~special~meaning~
+ in~POSIX~regular~expressions.~This~is~not~supported~by~LaTeX.~
+ Maybe~you~forgot~to~escape~a~left~bracket~in~a~character~class?
}
\__msg_kernel_new:nnnn { regex } { posix-unknown }
- { POSIX~class~[:#1:]~unknown. }
+ { POSIX~class~`[:#1:]'~unknown. }
{
- [:#1:]~is~not~among~the~known~POSIX~classes~
- [:alnum:],~[:alpha:],~[:ascii:],~[:blank:],~
- [:cntrl:],~[:digit:],~[:graph:],~[:lower:],~
- [:print:],~[:punct:],~[:space:],~[:upper:],~
- [:word:],~and~[:xdigit:].
+ `[:#1:]'~is~not~among~the~known~POSIX~classes~
+ `[:alnum:]',~`[:alpha:]',~`[:ascii:]',~`[:blank:]',~
+ `[:cntrl:]',~`[:digit:]',~`[:graph:]',~`[:lower:]',~
+ `[:print:]',~`[:punct:]',~`[:space:]',~`[:upper:]',~
+ `[:word:]',~and~`[:xdigit:]'.
}
\__msg_kernel_new:nnnn { regex } { posix-missing-close }
- { Missing~closing~':]'~for~POSIX~class. }
- { The~POSIX~syntax~'#1'~must~be~followed~by~':]',~not~'#2'. }
+ { Missing~closing~`:]'~for~POSIX~class. }
+ { The~POSIX~syntax~`#1'~must~be~followed~by~`:]',~not~`#2'. }
\__msg_kernel_new:nnnn { regex } { result-unbalanced }
{ Missing~brace~inserted~when~#1. }
{
@@ -2722,55 +2738,64 @@
\__msg_kernel_new:nnnn { regex } { unknown-option }
{ Unknown~option~`#1'~for~regular~expressions. }
{
- The~only~available~option~is~'case-insensitive',~toggled~by~
- '(?i)'~and~'(?-i)'.
+ The~only~available~option~is~`case-insensitive',~toggled~by~
+ `(?i)'~and~`(?-i)'.
+ }
+\__msg_kernel_new:nnnn { regex } { special-group-unknown }
+ { Unknown~special~group~`#1~...'~in~a~regular~expression. }
+ {
+ The~only~valid~constructions~starting~with~`(?'~are~
+ `(?:~...~)',~`(?|~...~)',~`(?i)',~and~`(?-i)'.
}
\__msg_kernel_new:nnnn { regex } { replacement-c }
- { Misused~\iow_char:N\\c~command~in~a~replacement~text. }
+ { Misused~`\iow_char:N\\c'~command~in~a~replacement~text. }
{
- In~a~replacement~text,~the~\iow_char:N\\c~escape~sequence~
- can~be~followed~by~one~of~the~letters~ABCDELMOPSTU~
- or~a~brace~group,~not~by~'#1'.
+ In~a~replacement~text,~the~`\iow_char:N\\c'~escape~sequence~
+ can~be~followed~by~one~of~the~letters~`ABCDELMOPSTU'~
+ or~a~brace~group,~not~by~`#1'.
}
\__msg_kernel_new:nnnn { regex } { replacement-u }
- { Misused~\iow_char:N\\u~command~in~a~replacement~text. }
+ { Misused~`\iow_char:N\\u'~command~in~a~replacement~text. }
{
- In~a~replacement~text,~the~\iow_char:N\\u~escape~sequence~
+ In~a~replacement~text,~the~`\iow_char:N\\u'~escape~sequence~
must~be~~followed~by~a~brace~group~holding~the~name~of~the~
variable~to~use.
}
\__msg_kernel_new:nnnn { regex } { replacement-g }
- { Missing~brace~for~the~\iow_char:N\\g~construction~in~a~replacement~text. }
+ {
+ Missing~brace~for~the~`\iow_char:N\\g'~construction~
+ in~a~replacement~text.
+ }
{
In~the~replacement~text~for~a~regular~expression~search,~
- submatches~are~represented~either~as~\iow_char:N \\g{dd..d},~
- or~\\d,~where~`d'~are~single~digits.~Here,~a~brace~is~missing.
+ submatches~are~represented~either~as~`\iow_char:N \\g{dd..d}',~
+ or~`\\d',~where~`d'~are~single~digits.~Here,~a~brace~is~missing.
}
\__msg_kernel_new:nnnn { regex } { replacement-catcode-end }
{
- Missing~character~for~the~\iow_char:N\\c<category><character>~
+ Missing~character~for~the~`\iow_char:N\\c<category><character>'~
construction~in~a~replacement~text.
}
{
- In~a~replacement~text,~the~\iow_char:N\\c~escape~sequence~
- can~be~followed~by~one~of~the~letters~ABCDELMOPSTU~representing~
+ In~a~replacement~text,~the~`\iow_char:N\\c'~escape~sequence~
+ can~be~followed~by~one~of~the~letters~`ABCDELMOPSTU'~representing~
the~character~category.~Then,~a~character~must~follow.~LaTeX~
reached~the~end~of~the~replacement~when~looking~for~that.
}
\__msg_kernel_new:nnnn { regex } { replacement-null-space }
{ TeX~cannot~build~a~space~token~with~character~code~0. }
{
- You~asked~for~a~character~token~with~category~'space',~
+ You~asked~for~a~character~token~with~category~space,~
and~character~code~0,~for~instance~through~
- '\iow_char:N\\cS\iow_char:N\\x00'.~
+ `\iow_char:N\\cS\iow_char:N\\x00'.~
This~specific~case~is~impossible~and~will~be~replaced~
by~a~normal~space.
}
\__msg_kernel_new:nnnn { regex } { replacement-missing-rbrace }
{ Missing~right~brace~inserted~in~replacement~text. }
{
- There~were~\int_use:N \l__regex_replacement_csnames_int \
- missing~right~braces.
+ There~ \int_compare:nTF { #1 = 1 } { was } { were } ~ #1~
+ missing~right~\int_compare:nTF { #1 = 1 } { brace } { braces } .
}
\cs_new:Npn \__regex_msg_repeated:nnN #1#2#3
{
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty
index aeb2ecc59fa..1b3122241ab 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-convert.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3str-convert.dtx 4339 2013-01-08 10:22:00Z bruno $
+\GetIdInfo$Id: l3str-convert.dtx 5028 2014-06-03 17:04:19Z bruno $
{L3 Experimental string encoding conversions}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -468,7 +468,6 @@
{
\cs_new_protected_nopar:Npn \__str_convert_encode_:
{
- \int_zero:N \l__tl_build_offset_int
\__tl_gbuild_x:Nw \g__str_result_tl
\exp_after:wN \__str_encode_native_loop:w
\g__str_result_tl \s__tl { \q_stop \__prg_break: } \s__tl
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
index 87eed61c5e8..7fc8488d265 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str-format.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3str-format.dtx 3940 2012-07-09 00:41:44Z bruno $
+\GetIdInfo$Id: l3str-format.dtx 4745 2014-05-06 10:41:27Z joseph $
{L3 Experimental string formatting}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty
index 5f8bcae6e85..05fff62dae9 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3str.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3str.dtx 4728 2014-05-04 13:25:37Z joseph $
+\GetIdInfo$Id: l3str.dtx 4889 2014-05-26 19:59:25Z joseph $
{L3 Experimental strings}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
@@ -318,7 +318,7 @@
}
\prg_new_conditional:Npnn \str_if_eq:NN #1#2 { p , TF , T , F }
{
- \if_int_compare:w \pdftex_strcmp:D { \tl_to_str:N #1 } { \tl_to_str:N #2 }
+ \if_int_compare:w \__str_if_eq_x:nn { \tl_to_str:N #1 } { \tl_to_str:N #2 }
= \c_zero \prg_return_true: \else: \prg_return_false: \fi:
}
\cs_new_eq:NN \str_show:n \tl_show:n
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty
index 8598a3df85c..b0f064707f6 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-analysis.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3tl-analysis.dtx 3039 2011-12-08 09:22:35Z bruno $
+\GetIdInfo$Id: l3tl-analysis.dtx 4745 2014-05-06 10:41:27Z joseph $
{L3 Experimental token lists analysis}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}
diff --git a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-build.sty b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-build.sty
index 1ad40197bab..e916eaa180e 100644
--- a/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-build.sty
+++ b/Master/texmf-dist/tex/latex/l3experimental/l3str/l3tl-build.sty
@@ -46,7 +46,7 @@
%%
%% -----------------------------------------------------------------------
\RequirePackage{expl3}
-\GetIdInfo$Id: l3tl-build.dtx 3039 2011-12-08 09:22:35Z bruno $
+\GetIdInfo$Id: l3tl-build.dtx 4745 2014-05-06 10:41:27Z joseph $
{L3 Experimental token list construction}
\ProvidesExplPackage
{\ExplFileName}{\ExplFileDate}{\ExplFileVersion}{\ExplFileDescription}