<\body> Lists are made up of two principal ingredients: the outer list environment and the inner items. List environments may either be customized by customizing or redefining the rendering macros for these environments, or defining additional list environments which match the same abstract interface. The rendering of the outer list environment is controlled by the macro which takes the body of the list as its argument. For instance, consider the following redefinition of : <\tm-fragment> |||3fn>|par-right||3fn>|>>>>>> This redefinition affects the rendering of all list environments (itemize, enumerate, ) by reducing the right margin with a length of : <\with|render-list||||3fn>|par-right||3fn>|>>>> <\itemize> This text, which has been made so long that it does not fit on a single line, is indented on the right hand side by . <\enumerate> This text is indented by an additional on the right hand side, since it occurs inside a second list environment. Once again: this text, which has been made so long that it does not fit on a single line, is indented on the right hand side by . In a similar way, you may customize the rendering of list items by redefining the macros and . These macros both take one argument with the text of the item and render it either in a right-aligned way (such that subsequent text is left aligned) or in a left-aligned way (such that subsequent text may not be aligned). For instance, consider the following redefinition of : <\tm-fragment> >>|r-2.5fn||r+0.5fn|>>>>> Then items inside all list environments with compact items will appear in red: <\with|aligned-item|>>|r-2.5fn||r+0.5fn|>>> <\itemize> This list and aligned descriptions have red items. <\description-aligned> First condition. Second condition. The items of compact description lists are rendered using . <\description-compact> Nice beasts. Evil beings. <\remark> The macros and are required to produce inline content, so that they may be used in order to surround blocks. In particular, several other internal macros (, , ) are based on and , and used for the rendering of the different types of lists (, , ). In the future, we also plan to extend and with a compulsory argument. When customizing the list environments, it is important to keep that in mind, so as to make your style-sheets upward compatible. The also provides a macro to define new lists. Its syntax is , where is the name of the new list environment, an (inline) macro for rendering the item and an additional transformation which is applied on the item text. For instance, the environment is defined by <\tm-fragment> <\inactive*> ||roman>>> <\initial> <\collection>