summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3box.dtx')
-rw-r--r--Master/texmf-dist/source/latex/l3kernel/l3box.dtx53
1 files changed, 32 insertions, 21 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
index ef3c56615b1..89e41ce8b8b 100644
--- a/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
+++ b/Master/texmf-dist/source/latex/l3kernel/l3box.dtx
@@ -35,7 +35,7 @@
%
%<*driver|package>
\RequirePackage{l3names}
-\GetIdInfo$Id: l3box.dtx 3029 2011-12-06 22:47:30Z joseph $
+\GetIdInfo$Id: l3box.dtx 3086 2011-12-22 17:55:46Z bruno $
{L3 Experimental boxes}
%</driver|package>
%<*driver>
@@ -581,7 +581,7 @@
% is that of the first item added. These tend to have a large depth and
% small height, although the latter will typically be non-zero.
%
-% \begin{function}{\vbox:n}
+% \begin{function}[updated = 2011-12-18]{\vbox:n}
% \begin{syntax}
% \cs{vbox:n} \Arg{contents}
% \end{syntax}
@@ -592,7 +592,7 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}{\vbox_top:n}
+% \begin{function}[updated = 2011-12-18]{\vbox_top:n}
% \begin{syntax}
% \cs{vbox_top:n} \Arg{contents}
% \end{syntax}
@@ -605,7 +605,7 @@
% \end{texnote}
% \end{function}
%
-% \begin{function}{\vbox_to_ht:nn}
+% \begin{function}[updated = 2011-12-18]{\vbox_to_ht:nn}
% \begin{syntax}
% \cs{vbox_to_ht:nn} \Arg{dimexpr} \Arg{contents}
% \end{syntax}
@@ -614,7 +614,7 @@
% typesetting.
% \end{function}
%
-% \begin{function}{\vbox_to_zero:n}
+% \begin{function}[updated = 2011-12-18]{\vbox_to_zero:n}
% \begin{syntax}
% \cs{vbox_to_zero:n} \Arg{contents}
% \end{syntax}
@@ -622,7 +622,8 @@
% and then includes this box in the current list for typesetting.
% \end{function}
%
-% \begin{function}{\vbox_set:Nn, \vbox_set:cn, \vbox_gset:Nn, \vbox_gset:cn}
+% \begin{function}[updated = 2011-12-18]
+% {\vbox_set:Nn, \vbox_set:cn, \vbox_gset:Nn, \vbox_gset:cn}
% \begin{syntax}
% \cs{vbox_set:Nn} \meta{box} \Arg{contents}
% \end{syntax}
@@ -630,7 +631,7 @@
% result inside the \meta{box}.
% \end{function}
%
-% \begin{function}
+% \begin{function}[updated = 2011-12-18]
% {\vbox_set_top:Nn, \vbox_set_top:cn, \vbox_gset_top:Nn, \vbox_gset_top:cn}
% \begin{syntax}
% \cs{vbox_set_top:Nn} \meta{box} \Arg{contents}
@@ -640,7 +641,7 @@
% to that of the \emph{first} item added to the box.
% \end{function}
%
-% \begin{function}
+% \begin{function}[updated = 2011-12-18]
% {
% \vbox_set_to_ht:Nnn, \vbox_set_to_ht:cnn,
% \vbox_gset_to_ht:Nnn, \vbox_gset_to_ht:cnn
@@ -652,7 +653,7 @@
% \meta{dimexpr} and then stores the result inside the \meta{box}.
% \end{function}
%
-% \begin{function}
+% \begin{function}[updated = 2011-12-18]
% {
% \vbox_set:Nw, \vbox_set:cw,
% \vbox_set_end:,
@@ -1214,7 +1215,11 @@
% \end{macro}
% \end{macro}
%
-% \subsection{Vertical mode boxes}
+% \subsection{Vertical mode boxes}
+%
+% \TeX{} ends these boxes directly with the internal \emph{end_graf}
+% routine. This means that there is no \cs{par} at the end of vertical
+% boxes unless we insert one.
%
% \begin{macro}{\vbox:n}
% \TestFiles{m3box003.lvt}
@@ -1222,8 +1227,8 @@
% \TestFiles{m3box003.lvt}
% Put a vertical box directly into the input stream.
% \begin{macrocode}
-\cs_new_protected:Npn \vbox:n { \tex_vbox:D \scan_stop: }
-\cs_new_protected:Npn \vbox_top:n { \tex_vtop:D \scan_stop: }
+\cs_new_protected:Npn \vbox:n #1 { \tex_vbox:D { #1 \par } }
+\cs_new_protected:Npn \vbox_top:n #1 { \tex_vtop:D { #1 \par } }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1234,8 +1239,9 @@
% Put a vertical box directly into the input stream.
% \begin{macrocode}
\cs_new_protected:Npn \vbox_to_ht:nn #1#2
- { \tex_vbox:D to \dim_eval:w #1 \dim_eval_end: {#2} }
-\cs_new_protected:Npn \vbox_to_zero:n #1 { \tex_vbox:D to \c_zero_dim {#1} }
+ { \tex_vbox:D to \dim_eval:w #1 \dim_eval_end: { #2 \par } }
+\cs_new_protected:Npn \vbox_to_zero:n #1
+ { \tex_vbox:D to \c_zero_dim { #1 \par } }
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1245,7 +1251,8 @@
% \testfile*
% Storing material in a vertical box with a natural height.
% \begin{macrocode}
-\cs_new_protected:Npn \vbox_set:Nn #1#2 { \tex_setbox:D #1 \tex_vbox:D {#2} }
+\cs_new_protected:Npn \vbox_set:Nn #1#2
+ { \tex_setbox:D #1 \tex_vbox:D { #2 \par } }
\cs_new_protected:Npn \vbox_gset:Nn { \tex_global:D \vbox_set:Nn }
\cs_generate_variant:Nn \vbox_set:Nn { c }
\cs_generate_variant:Nn \vbox_gset:Nn { c }
@@ -1260,7 +1267,7 @@
% point at the baseline of the first object in the box.
% \begin{macrocode}
\cs_new_protected:Npn \vbox_set_top:Nn #1#2
- { \tex_setbox:D #1 \tex_vtop:D {#2} }
+ { \tex_setbox:D #1 \tex_vtop:D { #2 \par } }
\cs_new_protected:Npn \vbox_gset_top:Nn
{ \tex_global:D \vbox_set_top:Nn }
\cs_generate_variant:Nn \vbox_set_top:Nn { c }
@@ -1275,7 +1282,7 @@
% Storing material in a vertical box with a specified height.
% \begin{macrocode}
\cs_new_protected:Npn \vbox_set_to_ht:Nnn #1#2#3
- { \tex_setbox:D #1 \tex_vbox:D to \dim_eval:w #2 \dim_eval_end: {#3} }
+ { \tex_setbox:D #1 \tex_vbox:D to \dim_eval:w #2 \dim_eval_end: { #3 \par } }
\cs_new_protected:Npn \vbox_gset_to_ht:Nnn
{ \tex_global:D \vbox_set_to_ht:Nnn }
\cs_generate_variant:Nn \vbox_set_to_ht:Nnn { c }
@@ -1291,14 +1298,18 @@
% Storing material in a vertical box. This type is useful in
% environment definitions.
% \begin{macrocode}
-\cs_new:Npn \vbox_set:Nw #1
+\cs_new_protected:Npn \vbox_set:Nw #1
{ \tex_setbox:D #1 \tex_vbox:D \c_group_begin_token }
\cs_new_protected:Npn \vbox_gset:Nw
{ \tex_global:D \vbox_set:Nw }
\cs_generate_variant:Nn \vbox_set:Nw { c }
\cs_generate_variant:Nn \vbox_gset:Nw { c }
-\cs_new_eq:NN \vbox_set_end: \c_group_end_token
-\cs_new_eq:NN \vbox_gset_end: \c_group_end_token
+\cs_new_protected:Npn \vbox_set_end:
+ {
+ \par
+ \c_group_end_token
+ }
+\cs_new_eq:NN \vbox_gset_end: \vbox_set_end:
% \end{macrocode}
% \end{macro}
% \end{macro}
@@ -1951,7 +1962,7 @@
\cs_generate_variant:Nn \box_viewport:Nnnnn { c }
% \end{macrocode}
% \end{macro}
-%
+%
% \subsection{Deprecated functions}
%
% \begin{variable}{\l_last_box}