CTAN Comprehensive TeX Archive Network

Directory macros/latex/contrib/l3packages

README.md

3 High-Level Concepts

Release 2020-01-12

Overview

The l3packages collection contains implementations for aspects of the 3 kernel, dealing with higher-level ideas such as the Designer Interface. The packages here are considered broadly stable (The 3 Project does not expect the interfaces to alter radically). These packages are build on conventions at the interface level, and so may not migrate in the current form to a stand-alone 3 format.

All of the material in the collection requires the 3 base layer package l3kernel. The two packages must be installed in matching versions: if you update l3packages, make sure that l3kernel is updated at the same time.

Currently included in the CTAN release of l3packages are the following bundles:

  • l3keys2e
  • xfp
  • xfrac
  • xparse
  • xtemplate

l3keys2e


The l3keys2e package allows keys defined using l3keys to be used as package and class options with . This is tied to the method the existing kernel uses for processing options, and so it is likely that a stand-alone 3 kernel will use a very different approach.

xfp


The xfp package provides a document-level interface for the 3 FPU. As such, it is a wrapper around the core \fp_eval:n function but does not require code syntax. It provides the expandable command \fpeval, which can be used inside for example \edef or contexts where requires a number.

xfrac


The xfrac package uses the interface defined by xtemplate to provide flexible split-level fractions via the \sfrac macro. This is both a demonstration of the power of the template concept and also a useful addition to the available functionality in .

xparse


The xparse package provides a high-level interface for declaring document commands, e.g., a uniform way to define commands taking optional arguments, optional stars (and others), mandatory arguments and more.

xtemplate


The xtemplate package provides an interface for defining generic functions using a key=val syntax. This is designed to be "self-documenting", with the key definitions providing information on how they are to be used.

Discussion

Discussion concerning the approach, suggestions for improvements, changes, additions, etc. should be addressed to the list -L.

You can subscribe to this list by sending mail to

listserv@urz.uni-heidelberg.de

with the body containing

subscribe LATEX-L  <Your-First-Name> <Your-Second-Name>

Issues

The issue tracker for 3 is currently located on GitHub.

Please report specific issues with 3 code there; more general discussion should be directed to the -L list.

The 3 Project

Development of 3 is carried out by The 3 Project.

The development team can be contacted by e-mail: <latex-team@latex-project.org>; for general 3 discussion the -L list should be used.


Copyright (C) 1998-2011,2015-2020 The LaTeX3 Project
http://latex-project.org/
All rights reserved.

Download the contents of this package in one zip archive (2.0M).

l3packages – High-level 3 concepts

This collection contains implementations for aspects of the 3 kernel, dealing with higher-level ideas such as the Designer Interface. The packages here are considered broadly stable (The 3 Project does not expect the interfaces to alter radically). These packages are built on conventions at the interface level, and so may not migrate in the current form to a stand-alone 3 format.

Packages provided:

  • xparse, which provides a high-level interface for declaring document commands
  • xfp, an expandable IEEE 754 FPU for
  • l3keys2e, which makes the facilities of the kernel module l3keys available for use by 2e packages
  • xtemplate, which provides a means of defining generic functions using a key-value syntax
  • xfrac, which provides flexible split-level fractions

Packagel3packages
Home pagehttp://www.latex-project.org/code.html
Version 2020-01-12
LicensesThe Project Public License 1.3c
Copyright1998–2011, 2015–2020 The project
MaintainerThe Team
TDS archivel3packages.tds.zip
Contained inTeX Live as l3packages
MiKTeX as l3packages
Topics3
Macro support
Pre release
See alsol3kernel
l3experimental
...
Guest Book Sitemap Contact Contact Author