summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2023-07-13 19:56:40 +0000
committerKarl Berry <karl@freefriends.org>2023-07-13 19:56:40 +0000
commitc176f36e915f8dd75211dbcfc9049d093125e428 (patch)
tree7b757f69020686a8768cc8240489036b1ec73a73 /Master/texmf-dist/source
parent27f6e9cbfa3c157055897f29cc74a9e497b9366a (diff)
naive-ebnf (13jul23)
git-svn-id: svn://tug.org/texlive/trunk@67621 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source')
-rw-r--r--Master/texmf-dist/source/latex/naive-ebnf/naive-ebnf.dtx31
1 files changed, 16 insertions, 15 deletions
diff --git a/Master/texmf-dist/source/latex/naive-ebnf/naive-ebnf.dtx b/Master/texmf-dist/source/latex/naive-ebnf/naive-ebnf.dtx
index 922dd7a4f6a..0fee1be6a5f 100644
--- a/Master/texmf-dist/source/latex/naive-ebnf/naive-ebnf.dtx
+++ b/Master/texmf-dist/source/latex/naive-ebnf/naive-ebnf.dtx
@@ -50,7 +50,7 @@
%<package>\NeedsTeXFormat{LaTeX2e}
%<package>\ProvidesPackage{naive-ebnf}
%<*package>
-[2023-07-12 0.0.11 EBNF in Plain Text]
+[2023-07-13 0.0.12 EBNF in Plain Text]
%</package>
%<*driver>
\documentclass{ltxdoc}
@@ -192,7 +192,7 @@
% \usepackage[paperwidth=4in]{geometry}
% \usepackage{naive-ebnf}
% \begin{document}
-% \begin{ebnf}[1.5in]
+% \begin{ebnf}
% <data> := <bool> | <integer> | <byte> \\
% <bool> := "TRUE" | "FALSE" \\
% <integer> := /(+\char`\|-)?[0-9]+/ \\
@@ -208,7 +208,7 @@
% \usepackage[T1]{fontenc}
% \usepackage{naive-ebnf}
% \begin{document}
-% \begin{ebnf}[1.5in]
+% \begin{ebnf}
% <X> := 'EOL' "'" "|" \\
% <Y> := ">" "<" "[" "]" "/" "/" \\
% <Z> := "\LaTeX" "\textdollar" \\
@@ -217,13 +217,14 @@
% \end{docshot}
% Nested brackets work fine too:
-% \docshotOptions{firstline=5,lastline=10}
+% \docshotOptions{firstline=5,lastline=11}
% \begin{docshot}
% \documentclass{minimal}
% \usepackage[T1]{fontenc}
% \usepackage{naive-ebnf}
% \begin{document}
-% \begin{ebnf}[1.5in]
+% \begin{ebnf}
+% % There is no meaning in this:
% <x> := ( "x" ( "y" | ( "z" | <z> ) ) ) \\
% <y> := [ [ "x1" ] { /[a-z]+/ } ] \\
% <z> := { { { <x> } <y> } <z> } \\
@@ -395,34 +396,34 @@
{\tl_set:Nn\ebnf_tmp{#2}}
{%
\regex_replace_all:nnN
- { ([^\ ])/([^\ ]) } {\1\\slash{}\2} \ebnf_tmp%
+ { ([^\s])/([^\s]) } {\1\\slash{}\2} \ebnf_tmp%
\regex_replace_all:nnN
- { ([^\ ])< } {\1\\textless{}} \ebnf_tmp%
+ { ([^\s])< } {\1\\textless{}} \ebnf_tmp%
\regex_replace_all:nnN
- { >([^\ ]) } {\\textgreater{}\1} \ebnf_tmp%
+ { >([^\s]) } {\\textgreater{}\1} \ebnf_tmp%
\regex_replace_all:nnN
- { ([^\ ])'([^\ ]) } {\1\\textquotesingle{}\2} \ebnf_tmp%
+ { ([^\s])'([^\s]) } {\1\\textquotesingle{}\2} \ebnf_tmp%
\regex_replace_all:nnN
- { ([^\ ])\|([^\ ]) } {\1\\textbar{}\2} \ebnf_tmp%
+ { ([^\s])\|([^\s]) } {\1\\textbar{}\2} \ebnf_tmp%
%
- \regex_replace_all:nnN { \ /(.+?)/\ }%
+ \regex_replace_all:nnN { \s/(.+?)/\s }%
{\c{ebnf@regexp}{\1}} \ebnf_tmp%
\cs_new:Npn\ebnf_curled{%
\regex_replace_all:nnNT
- { \{\ (([^\ ]*(\ [^\}\{]|\ (\}|\{)[^\ ])?)*)\ \} }%
+ { \{\s(([^\s]*(\s[^\}\{]|\s(\}|\{)[^\s])?)*)\s\} }%
{\c{ebnf@repetition}{\1}} \ebnf_tmp \ebnf_curled}%
\ebnf_curled%
\cs_new:Npn\ebnf_brackets{%
\regex_replace_all:nnNT
- { \(\ (([^\ ]*(\ [^\)\(]|\ (\)|\()[^\ ])?)*)\ \) }%
+ { \(\s(([^\s]*(\s[^\)\(]|\s(\)|\()[^\s])?)*)\s\) }%
{\c{ebnf@grouping}{\1}} \ebnf_tmp \ebnf_brackets}%
\ebnf_brackets%
\cs_new:Npn\ebnf_squares{%
\regex_replace_all:nnNT
- { \[\ (([^\ ]*(\ [^\]\[]|\ (\]|\[)[^\ ])?)*)\ \] }%
+ { \[\s(([^\s]*(\s[^\]\[]|\s(\]|\[)[^\s])?)*)\s\] }%
{\c{ebnf@optional}{\1}} \ebnf_tmp \ebnf_squares}%
\ebnf_squares%
- \regex_replace_all:nnN { (<[^>]+?>\ :=) }%
+ \regex_replace_all:nnN { (<[^>]+?>\s:=) }%
{\c{makebox}[#1][r]{\1}} \ebnf_tmp%
\regex_replace_all:nnN { <(.+?)> }%
{\c{ebnf@nonterminal}{\1}} \ebnf_tmp%