Jeroen schrieb am 19.02.2024 um 14:14:
In a textbook I am looking to place a large left margin at every page of each chapter. At left printed pages a left margin and at right printed pages a right margin, so like a double sided construction. In this margin I would like to place:

You can use a custom layout with a narrow text block and a wide rightmargin area.

1. Keywords and small descriptions to emphasize some text from the textflow

Use the \inright etc. commands or create your own commands based on \inright, look at the margindata mechanism for more information.

2. Figures

You can change the default location of figures from the text block to the margin area.

3. An expansion of a table that is placed in the main textflow but that needs to cover a wider range then the text area so it expands into the margin

In the example below I added a check to the table float to either center the small tables or align wide tables on the inner margin which extend into the margin area. While this method works in a simple example for a real document I suggest to create a clone of the table float (e.g. widetable) because the method in the example can lead to problems/limitations.

What is the the easiest way to achieve this?

%%%% begin example
\setuppagenumbering
  [alternative=doublesided]

\setuplayout
  [width=10cm,
   rightmargin=6cm]

\showframe

\def\FloatTableALignment
  {\dowithnextbox
     {\ifdim\nextboxwd>\textwidth
        \doalignedline{inner}{\flushnextbox}%
      \else
        \flushnextbox
      \fi}
     \hbox}

\setupfloat[table][command=\FloatTableALignment]

\setupfloat[figure][default=rightmargin]

\starttext

\inright{Lorem ipsum \unknown}\samplefile{lorem}

\startplacefigure
  \externalfigure[dummy][width=\rightmarginwidth]
\stopplacefigure

\samplefile{lorem}

\startplacetable
  \bTABLE
    \bTR
      \bTD one \eTD
      \bTD two \eTD
      \bTD three \eTD
    \eTR
  \eTABLE
\stopplacetable

\samplefile{lorem}

\startplacetable

\bTABLE[textwidth=\dimexpr\textwidth+\rightmarginwidth+\rightmargindistance\relax,option=stretch]
    \bTR
      \bTD one \eTD
      \bTD two \eTD
      \bTD three \eTD
    \eTR
  \eTABLE
\stopplacetable

\samplefile{lorem}

\stoptext
%%% end example

Wolfgang
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the 
Wiki!

maillist : ntg-context@ntg.nl / 
https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage  : https://www.pragma-ade.nl / https://context.aanhet.net (mirror)
archive  : https://github.com/contextgarden/context
wiki     : https://wiki.contextgarden.net
___________________________________________________________________________________

Reply via email to