summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/l3backend
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2020-06-04 03:02:40 +0000
committerNorbert Preining <norbert@preining.info>2020-06-04 03:02:40 +0000
commit6c90555ebb89f41cc4dfb6cf3ee6bfaa8107650e (patch)
treed3475ab1d6bd6675a0975dfa6059602be057f0d5 /macros/latex/contrib/l3backend
parent44fde4a143b75ae4f383b05832343d497c254989 (diff)
CTAN sync 202006040302
Diffstat (limited to 'macros/latex/contrib/l3backend')
-rw-r--r--macros/latex/contrib/l3backend/CHANGELOG.md10
-rw-r--r--macros/latex/contrib/l3backend/README.md2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-basics.dtx12
-rw-r--r--macros/latex/contrib/l3backend/l3backend-box.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-code.pdfbin743243 -> 0 bytes
-rw-r--r--macros/latex/contrib/l3backend/l3backend-color.dtx52
-rw-r--r--macros/latex/contrib/l3backend/l3backend-draw.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-graphics.dtx10
-rw-r--r--macros/latex/contrib/l3backend/l3backend-header.dtx2
-rw-r--r--macros/latex/contrib/l3backend/l3backend-pdf.dtx25
10 files changed, 70 insertions, 47 deletions
diff --git a/macros/latex/contrib/l3backend/CHANGELOG.md b/macros/latex/contrib/l3backend/CHANGELOG.md
index ffd7ae74c0..4a6efebd0a 100644
--- a/macros/latex/contrib/l3backend/CHANGELOG.md
+++ b/macros/latex/contrib/l3backend/CHANGELOG.md
@@ -6,6 +6,13 @@ this project uses date-based 'snapshot' version identifiers.
## [Unreleased]
+## [2020-06-03]
+
+### Fixed
+- Unneeded `[nobreak]` in `dvips` driver (issue #709)
+- `\__pdf_backend_object_write_fstream:nn` with `dvips` backend (issue #710)
+- Array writing in `dvips` mode
+
## [2020-05-05]
### Added
@@ -69,7 +76,8 @@ this project uses date-based 'snapshot' version identifiers.
- Include `l3backend` in file names
- Moved backend code to internal for each 'parent' module
-[Unreleased]: https://github.com/latex3/latex3/compare/2020-05-05...HEAD
+[Unreleased]: https://github.com/latex3/latex3/compare/2020-06-03...HEAD
+[2020-06-03]: https://github.com/latex3/latex3/compare/2020-05-05...2020-06-03
[2020-05-05]: https://github.com/latex3/latex3/compare/2020-03-12...2020-05-05
[2020-03-12]: https://github.com/latex3/latex3/compare/2020-02-23...2020-03-12
[2020-02-23]: https://github.com/latex3/latex3/compare/2020-02-21...2020-02-23
diff --git a/macros/latex/contrib/l3backend/README.md b/macros/latex/contrib/l3backend/README.md
index 8871160d12..f03026a6b9 100644
--- a/macros/latex/contrib/l3backend/README.md
+++ b/macros/latex/contrib/l3backend/README.md
@@ -1,7 +1,7 @@
LaTeX3 Backend Drivers
======================
-Release 2020-05-05
+Release 2020-06-03
This package forms parts of `expl3`, and contains the code used to interface
with backends (drivers) across the `expl3` codebase. The functions here are
diff --git a/macros/latex/contrib/l3backend/l3backend-basics.dtx b/macros/latex/contrib/l3backend/l3backend-basics.dtx
index 71085fb1ba..26c516150a 100644
--- a/macros/latex/contrib/l3backend/l3backend-basics.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-basics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
@@ -71,23 +71,23 @@
%<*package>
\ProvidesExplFile
%<*dvipdfmx>
- {l3backend-dvipdfmx.def}{2020-05-05}{}
+ {l3backend-dvipdfmx.def}{2020-06-03}{}
{L3 backend support: dvipdfmx}
%</dvipdfmx>
%<*dvips>
- {l3backend-dvips.def}{2020-05-05}{}
+ {l3backend-dvips.def}{2020-06-03}{}
{L3 backend support: dvips}
%</dvips>
%<*dvisvgm>
- {l3backend-dvisvgm.def}{2020-05-05}{}
+ {l3backend-dvisvgm.def}{2020-06-03}{}
{L3 backend support: dvisvgm}
%</dvisvgm>
%<*pdfmode>
- {l3backend-pdfmode.def}{2020-05-05}{}
+ {l3backend-pdfmode.def}{2020-06-03}{}
{L3 backend support: PDF mode}
%</pdfmode>
%<*xdvipdfmx>
- {l3backend-xdvipdfmx.def}{2020-05-05}{}
+ {l3backend-xdvipdfmx.def}{2020-06-03}{}
{L3 backend support: xdvipdfmx}
%</xdvipdfmx>
%</package>
diff --git a/macros/latex/contrib/l3backend/l3backend-box.dtx b/macros/latex/contrib/l3backend/l3backend-box.dtx
index 5544192ea6..323756837e 100644
--- a/macros/latex/contrib/l3backend/l3backend-box.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-box.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-code.pdf b/macros/latex/contrib/l3backend/l3backend-code.pdf
deleted file mode 100644
index 890efdb4d2..0000000000
--- a/macros/latex/contrib/l3backend/l3backend-code.pdf
+++ /dev/null
Binary files differ
diff --git a/macros/latex/contrib/l3backend/l3backend-color.dtx b/macros/latex/contrib/l3backend/l3backend-color.dtx
index faadeb83ad..2b3e4d3708 100644
--- a/macros/latex/contrib/l3backend/l3backend-color.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-color.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
@@ -98,10 +98,10 @@
}
{
\exp_last_unbraced:Nx \@@_backend_pickup:w
- { \current@color } \q_stop #1
+ { \current@color } \s_@@_stop #1
}
}
- \cs_new_protected:Npn \@@_backend_pickup:w #1 ~ #2 \q_stop #3
+ \cs_new_protected:Npn \@@_backend_pickup:w #1 ~ #2 \s_@@_stop #3
{ \tl_set:Nn #3 { #1 ~ #2 } }
}
}
@@ -110,17 +110,17 @@
% \end{macro}
% \end{macro}
%
-% \begin{macro}{\@@_backend_cmyk:nnnn}
-% \begin{macro}{\@@_backend_gray:n}
-% \begin{macro}{\@@_backend_rgb:nnn}
-% \begin{macro}{\@@_backend_spot:nn}
+% \begin{macro}{\@@_backend_cmyk:w}
+% \begin{macro}{\@@_backend_gray:w}
+% \begin{macro}{\@@_backend_rgb:w}
+% \begin{macro}{\@@_backend_spot:w}
% \begin{macro}{\@@_backend_select:n, \@@_backend_select:x}
% \begin{macro}{\@@_backend_reset:}
% \begin{macro}{color.fc}
% Push the data to the stack. In the case of \texttt{dvips} also reset the
% drawing fill color in raw PostScript.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_backend_cmyk:nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_backend_cmyk:w #1 ~ #2 ~ #3 ~ #4 \s_@@_stop
{
\@@_backend_select:x
{
@@ -129,14 +129,14 @@
\fp_eval:n {#3} ~ \fp_eval:n {#4}
}
}
-\cs_new_protected:Npn \@@_backend_gray:n #1
+\cs_new_protected:Npn \@@_backend_gray:w #1 \s_@@_stop
{ \@@_backend_select:x { gray~ \fp_eval:n {#1} } }
-\cs_new_protected:Npn \@@_backend_rgb:nnn #1#2#3
+\cs_new_protected:Npn \@@_backend_rgb:w #1 ~ #2 ~ #3 \s_@@_stop
{
\@@_backend_select:x
{ rgb~ \fp_eval:n {#1} ~ \fp_eval:n {#2} ~ \fp_eval:n {#3} }
}
-\cs_new_protected:Npn \@@_backend_spot:nn #1#2
+\cs_new_protected:Npn \@@_backend_spot:w #1 ~ #2 \s_@@_stop
{ \@@_backend_select:n { #1 } }
\cs_new_protected:Npn \@@_backend_select:n #1
{
@@ -186,10 +186,10 @@
\cs_set_protected:Npn \@@_backend_pickup:N #1
{
\exp_last_unbraced:Nx \@@_backend_pickup:w
- { \current@color } ~ 0 ~ 0 ~ 0 \q_stop #1
+ { \current@color } ~ 0 ~ 0 ~ 0 \s_@@_stop #1
}
\cs_new_protected:Npn \@@_backend_pickup:w
- #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \q_stop #7
+ #1 ~ #2 ~ #3 ~ #4 ~ #5 ~ #6 \s_@@_stop #7
{
\str_if_eq:nnTF {#2} { g }
{ \tl_set:Nn #7 { gray ~ #1 } }
@@ -226,47 +226,47 @@
% \end{macrocode}
% \end{variable}
%
-% \begin{macro}{\@@_backend_cmyk:nnnn, \@@_backend_cmyk_aux:nnnn}
-% \begin{macro}{\@@_backend_gray:n, \@@_backend_gray_aux:n}
-% \begin{macro}{\@@_backend_rgb:nnn, \@@_backend_rgb_aux:nnn}
-% \begin{macro}{\@@_backend_spot:nn}
+% \begin{macro}{\@@_backend_cmyk:w, \@@_backend_cmyk:nnnn}
+% \begin{macro}{\@@_backend_gray:w, \@@_backend_gray:n}
+% \begin{macro}{\@@_backend_rgb:w, \@@_backend_rgb:nnn}
+% \begin{macro}{\@@_backend_spot:w}
% \begin{macro}{\@@_backend_select:n, \@@_backend_select:x}
% \begin{macro}{\@@_backend_reset:}
% Simply dump the data, but allowing for \LuaTeX{}.
% \begin{macrocode}
-\cs_new_protected:Npn \@@_backend_cmyk:nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_backend_cmyk:w #1 ~ #2 ~ #3 ~ #4 \s_@@_stop
{
\use:x
{
- \@@_backend_cmyk_aux:nnnn
+ \@@_backend_cmyk:nnnn
{ \fp_eval:n {#1} }
{ \fp_eval:n {#2} }
{ \fp_eval:n {#3} }
{ \fp_eval:n {#4} }
}
}
-\cs_new_protected:Npn \@@_backend_cmyk_aux:nnnn #1#2#3#4
+\cs_new_protected:Npn \@@_backend_cmyk:nnnn #1#2#3#4
{
\@@_backend_select:n
{ #1 ~ #2 ~ #3 ~ #4 ~ k ~ #1 ~ #2 ~ #3 ~ #4 ~ K }
}
+\cs_new_protected:Npn \@@_backend_gray:w #1 \s_@@_stop
+ { \exp_args:Nx \@@_backend_gray:n { \fp_eval:n {#1} } }
\cs_new_protected:Npn \@@_backend_gray:n #1
- { \exp_args:Nx \@@_backend_gray_aux:n { \fp_eval:n {#1} } }
-\cs_new_protected:Npn \@@_backend_gray_aux:n #1
{ \@@_backend_select:n { #1 ~ g ~ #1 ~ G } }
-\cs_new_protected:Npn \@@_backend_rgb:nnn #1#2#3
+\cs_new_protected:Npn \@@_backend_rgb:w #1~ #2 ~ #3 \s_@@_stop
{
\use:x
{
- \@@_backend_rgb_aux:nnn
+ \@@_backend_rgb:nnn
{ \fp_eval:n {#1} }
{ \fp_eval:n {#2} }
{ \fp_eval:n {#3} }
}
}
-\cs_new_protected:Npn \@@_backend_rgb_aux:nnn #1#2#3
+\cs_new_protected:Npn \@@_backend_rgb:nnn #1#2#3
{ \@@_backend_select:n { #1 ~ #2 ~ #3 ~ rg ~ #1 ~ #2 ~ #3 ~ RG } }
-\cs_new_protected:Npn \@@_backend_spot:nn #1#2
+\cs_new_protected:Npn \@@_backend_spot:w #1 ~ #2 \s_@@_stop
{ \@@_backend_select:n { /#1 ~ cs ~ /#1 ~ CS ~ #2 ~ sc ~ #2 ~ SC } }
\cs_new_protected:Npx \@@_backend_select:n #1
{
diff --git a/macros/latex/contrib/l3backend/l3backend-draw.dtx b/macros/latex/contrib/l3backend/l3backend-draw.dtx
index f1d83363db..6b235e4faa 100644
--- a/macros/latex/contrib/l3backend/l3backend-draw.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-draw.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-graphics.dtx b/macros/latex/contrib/l3backend/l3backend-graphics.dtx
index f986a2d1a7..dd19bba9a1 100644
--- a/macros/latex/contrib/l3backend/l3backend-graphics.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-graphics.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
@@ -536,12 +536,12 @@
\cs_new_protected:Npn \@@_backend_include_pdf:n #1
{
\tex_XeTeXpdffile:D
- \@@_backend_include_pdf_quote:w #1 "#1" \q_stop \c_space_tl
+ \@@_backend_include_pdf_quote:w #1 "#1" \s_@@_stop \c_space_tl
\int_compare:nNnT \l_graphics_page_int > 0
{ page ~ \int_use:N \l_graphics_page_int \c_space_tl }
\exp_after:wN \@@_backend_getbb_pagebox:w \l_graphics_pagebox_tl
}
-\cs_new:Npn \@@_backend_include_pdf_quote:w #1 " #2 " #3 \q_stop
+\cs_new:Npn \@@_backend_include_pdf_quote:w #1 " #2 " #3 \s_@@_stop
{ " #2 " }
% \end{macrocode}
% \end{macro}
@@ -635,11 +635,11 @@
dvisvgm:img~
\dim_to_decimal:n { \l_graphics_ury_dim } ~
\dim_to_decimal:n { \l_graphics_ury_dim } ~
- \@@_backend_include_bitmap_quote:w #1 " #1 " \q_stop
+ \@@_backend_include_bitmap_quote:w #1 " #1 " \s_@@_stop
}
}
\cs_new_eq:NN \@@_backend_include_jpg:n \@@_backend_include_png:n
-\cs_new:Npn \@@_backend_include_bitmap_quote:w #1 " #2 " #3 \q_stop
+\cs_new:Npn \@@_backend_include_bitmap_quote:w #1 " #2 " #3 \s_@@_stop
{ " #2 " }
% \end{macrocode}
% \end{macro}
diff --git a/macros/latex/contrib/l3backend/l3backend-header.dtx b/macros/latex/contrib/l3backend/l3backend-header.dtx
index b3c7f0527e..955f8a3b14 100644
--- a/macros/latex/contrib/l3backend/l3backend-header.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-header.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
diff --git a/macros/latex/contrib/l3backend/l3backend-pdf.dtx b/macros/latex/contrib/l3backend/l3backend-pdf.dtx
index 95d1cc6530..5382b4a92c 100644
--- a/macros/latex/contrib/l3backend/l3backend-pdf.dtx
+++ b/macros/latex/contrib/l3backend/l3backend-pdf.dtx
@@ -43,7 +43,7 @@
% }^^A
% }
%
-% \date{Released 2020-05-05}
+% \date{Released 2020-06-03}
%
% \maketitle
%
@@ -134,8 +134,9 @@
% \begin{macro}{\@@_backend_object_write:nn, \@@_backend_object_write:nx}
% \begin{macro}
% {
-% \@@_backend_object_write_array:nn ,
-% \@@_backend_object_write_dict:nn ,
+% \@@_backend_object_write_array:nn ,
+% \@@_backend_object_write_dict:nn ,
+% \@@_backend_object_write_fstream:nn ,
% \@@_backend_object_write_stream:nn
% }
% \begin{macro}{\@@_backend_object_write_stream:nnn}
@@ -166,13 +167,28 @@
\cs_new_protected:Npn \@@_backend_object_write_array:nn #1#2
{
\@@_backend_pdfmark:x
- { #1 [ ~ \exp_not:n {#2} ~ ] ~ /PUTINTERVAL }
+ { #1 ~0~ [ ~ \exp_not:n {#2} ~ ] ~ /PUTINTERVAL }
}
\cs_new_protected:Npn \@@_backend_object_write_dict:nn #1#2
{
\@@_backend_pdfmark:x
{ #1 << \exp_not:n {#2} >> /PUT }
}
+\cs_new_protected:Npn \@@_backend_object_write_fstream:nn #1#2
+ {
+ \exp_args:Nx
+ \@@_backend_object_write_fstream:nnn {#1} #2
+ }
+\cs_new_protected:Npn \@@_backend_object_write_fstream:nnn #1#2#3
+ {
+ \__kernel_backend_postscript:n
+ {
+ SDict ~ begin ~
+ mark ~ #1 ~ << #2 >> /PUT ~ pdfmark ~
+ mark ~ #1 ~ ( #3 )~ ( r )~ file ~ /PUT ~ pdfmark ~
+ end
+ }
+ }
\cs_new_protected:Npn \@@_backend_object_write_stream:nn #1#2
{
\exp_args:Nx
@@ -182,7 +198,6 @@
{
\__kernel_backend_postscript:n
{
- [nobreak]
mark ~ #1 ~ ( #3 ) /PUT ~ pdfmark ~
mark ~ #1 ~ << #2 >> /PUT ~ pdfmark
}