GNU Info

Info Node: (kpathsea.info)Brace expansion

(kpathsea.info)Brace expansion


Next: KPSE_DOT expansion Prev: Tilde expansion Up: Path expansion
Enter node , (file) or (file)node

Brace expansion
---------------

  `x{A,B}y' expands to `xAy:xBy'.  For example:

     foo/{1,2}/baz

expands to `foo/1/baz:foo/2/baz'.  `:' is the path separator on the
current system; e.g., on a DOS system, it's `;'.

  Braces can be nested; for example, `x{A,B{1,2}}y' expands to
`xAy:xB1y:xB2y'.

  Multiple non-nested braces are expanded from right to left; for
example, `x{A,B}{1,2}y' expands to `x{A,B}1y:x{A,B}2y', which expands
to `xA1y:xB1y:xA2y:xB2y'.

  This feature can be used to implement multiple TeX hierarchies, by
assigning a brace list to `$TEXMF', as mentioned in `texmf.in'.

  You can also use the path separator in stead of the comma.  The last
example could have been written `x{A:B}{1:2}y'.

  Brace expansion is implemented in the source file
`kpathsea/expand.c'.  It is a modification of the Bash sources, and is
thus covered by the GNU General Public License, rather than the Library
General Public License that covers the rest of Kpathsea.


automatically generated by info2www version 1.2.2.9