Changes

Jump to navigation Jump to search
4,230 bytes added ,  13:17, 9 August 2020
m
Text replacement - "</cmd>" to "}}"
< [[Structurals]]
 
= Overview of commands =
</texcode>
The <{{cmd>|startitemize</cmd> }} command takes optional parameters (see the documentation of <{{cmd>|startitemgroup</cmd> }} for a complete list), for example a number conversion may be given, with the following predefined types:
<table>
</table>
It is also possible to define your own number conversions; see [[User-Defined Enumerations]]. If you have loaded the [[Chinese Japanese and Korean|Chinese]] module, you can also use <tt>c</tt> (and some more) for Chinese numbers. When the selected language is Slovenian or Spanish, items are numbered using their proper alphabets (the Slovenian enumeration includes č, š and ž; the Spanish enumeration includes ñ). You can change to the international enumeration with <code>alphabetic</code>, <code>Alphabetic</code>.
Additional parameters include
* <tt>continue</tt> (start where the previous itemization was finished, to allow text injections),
* <tt>reverse</tt> (numbers the items in reverse, i.e. descending, order),
* <tt>packed</tt> (less vertical space between items),
* <tt>inmargin</tt> (place enumeration symbols into the margin), and
== \setupitemize ==
To change the general layout of enumerations, there is <{{cmd>|setupitemize</cmd>}}. It accepts an integer as its first parameter to denote for which level of itemization the subsequent settings should apply.
You will find more about <{{cmd>|setupitemize</}} at {{cmd> at <|setupitemgroup}} and {{cmd>|defineitemgroup</cmd>}}.
== \defineitemgroup ==
For finer control, it is advisable to create new types of itemization, using the command <{{cmd>|defineitemgroup</cmd> (which unfortunately seems undocumented)}}. For example:
{|
= Customization details and examples =
==LabelsManual labels==
{|
\stoptext
</context>
|Irregular item types can be inserted via [[{{cmd|sym}}:sym|<tt>\sym{#1}</tt>]] [http://article.gmane.org/gmane.comp.tex.context/61731]:
<texcode>
\startitemize[a]
|}
== Spacing Expanded subnumbers == To specify that item numbers should also be leading numbers in any subitemizations, use the {{code|repeat}} keyword. <context source=yes>% Indentation is a bit odd; cannot reproduce off-wiki. \setupitemgroup[itemize][1][n,repeat]\setupitemgroup[itemize][2][a,repeat]\setupitemgroup[itemize][3][n] This is our item list: \startitemize \item ... % 1 \startitemize \item ... % 1.a \startitemize \item ... % 1.a.1 \stopitemize \item ... % 1.b \startitemize \item ... % 1.b.1 \item ... % 1.b.2 \stopitemize \stopitemize \item ... % 1\stopitemize</context> To add change the separator mark, you have to setup the {{code|numberseparatorset}} key of the {{code|itemgroup:itemize}} counter. This example removes the separator mark entirely. <context source=yes mode=mkiv>\setupitemgroup[itemize][1][n,repeat][width=1em]\setupitemgroup[itemize][2][a,repeat][width=2em]\setupitemgroup[itemize][3][n] [width=3em] \defineseparatorset[none][][] \setupcounter[itemgroup:itemize][numberseparatorset=none]\startitemize \item ... % 1 \startitemize \item ... % 1a \startitemize \item ... % 1a1 \stopitemize \stopitemize\stopitemize</context> == Vertical spacing ==
This is the way how you can set spacing before and after itemize when working with
\definesymbol[1][$\triangleright$]
\startcolumns
{\bf joinedup:} \par before \startitemize[joinedup] \item test \item test \stopitemize after \par{\bf nowhite:} \par before \startitemize[nowhite] \item test \item test \stopitemize after \par{\bf joinedup,nowhite:} \par before \startitemize[joinedup,nowhite] \item test \item test \stopitemize after \column{\bf joinedup,nowhite,before:} \par before \startitemize[joinedup,nowhite,before] \item test \item test \stopitemize after \par{\bf joinedup,nowhite,after:} \par before \startitemize[joinedup,nowhite,after] \item test \item test \stopitemize after
\stopcolumns
</context>
 
 
 
It is also (at least in mkiv) possible to do
<texcode>
Text before
\startitemize[before={\blank[small]},after={\blank[small]},inbetween={\blank[medium]}]
\item test
\item test
\stopitemize
Text after
</texcode>
to control the vertical space.
 
 
 
To prevent an unwanted pagebreak before the list, there is an <tt>intro</tt> parameter :
<texcode>
The following list is on the same page as this paragraph :
\startitemize[intro]
\startitem foo \stopitem
\startitem bar \stopitem
\stopitemize
</texcode>
 
==Horizontal spacing==
{|
! width="45%"|
! width="10%"|
! width="45%"|
|-
|To control the space between the item symbol (bullet) and the item text
 
you can use eather the broad option
<texcode>
\startitemize[n*broad] %replace n with a number (e.g "3").
\item Test
\stopitemize
</texcode>
or you can use absolute values (for fine tuning):
<texcode>
\startitemize[width=1em,distance=0pt]
\item Test
\stopitemize
</texcode>
|
|<context>
\startitemize[width=1em,distance=0pt]
\item Using width=1em,distance=0pt
\stopitemize\setuplayout[scale=0.8,width=9cm]
\startitemize
\item {\bf Default} (no arguments)
\stopitemize
 
\startitemize[1*broad]
\item Using 1*broad
\stopitemize
\startitemize[3*broad]
\item Using 2*broad
\stopitemize
</context>
|}
==Multicolumn==
\item one
\item two
\stopitemize
 
And the text continues after the list
 
\stoptext
 
</context>
|}
 
From a discussion on the mailing list, the following was suggested (note that you have to enclose your items in {{cmd|startitem}} and {{cmd|stopitem}}, using {{cmd|item}} only does not work):
 
{|
! width="35%"|
! width="5%"|
! width="60%"|
|-
| <texcode>
\starttext
 
Some previous sentence before the list
 
\startitemize[a,horizontal,three]
\startitem first \stopitem
\startitem second \stopitem
\startitem third \stopitem
\startitem fourth \stopitem
\startitem fifth \stopitem
\startitem sixth \stopitem
\stopitemize
 
And the text continues after the list
 
\stoptext
</texcode>
|
|<context>
\starttext
 
Some previous sentence before the list
 
\startitemize[a,horizontal,two]
\startitem first \stopitem
\startitem second \stopitem
\startitem third \stopitem
\startitem fourth \stopitem
\stopitemize
== Randomizing items ==
It is possible to make ConTeXt randomize the items in enumerations; this can come handy when, e.g., typesetting tests. You have to add a <tt>random</tt> option to <{{cmd>|startitemize</cmd>}}. There are two caveats:# You have to say <{{cmd>|startitem</cmd> }} ... <{{cmd>|stopitem</cmd> }} instead of <{{cmd>|item</cmd> }} ... .# Somehow the first item does not get randomized. (I learned from the mailing list - thanks, Aditya! - that adding a <{{cmd>|nextrandom</cmd> }} somewhere earlier helps.)
Example:
</context>
|}
 
=Further Reading=
 
* [[User-Defined Enumerations]]: Defining a new numbering scheme.
* [[Command/startitemize]]
* The source: {{src|strc-itm.mkvi}}
* [[Description]] (definition lists)
 
[[Category:Basics]]

Navigation menu