CTAN Comprehensive TeX Archive Network

Verzeichnis macros/latex/contrib/starray

README.md

starray

This is a structured (properties) array (hash) package based on expl3.

For more details, see the documentation, starray.pdf


Requirements

  • none besides a fairly recent distribution as recent as 2025/06/01

(with the new in kernel ProcessKeyOptions and NewDocumentCommand and propnewlinked:)

Installation

The stable version is available at CTAN.

Usage

Stable version

Just place

  \usepackage{starray}

in the preamble and compile away.

Be aware that options might change between versions, so you have to check them manually.

More Information and documentation

More Information can be found in the documentation; you can find a "bleeding edge" version at the github page

Contacting Author

For bug reports and enhancement suggestions, the preferred way is to use the project's issue page. Please be ready to provide an example code showing the bug, if any.

Please do not use the issue page for generic help on how to use the package.


Copyright 2023-present by Alceu Frigeri

This work may be distributed and/or modified under the conditions of

This work has the LPPL maintenance status maintained.

The Current Maintainer of this work is Alceu Frigeri


## This work consists of the files

  • starray.sty
    • The Package itself
  • README.md (this file)
    • quick introduction
  • starray.tex
    • package documentation
  • starray.pdf
    • documentation in PDF format

## Change log

  • Version 2.0 (this)
    • full re-factoring, based on basest, termst and refst (better context control, lesser use of cs-names)
      • new package option: iter cascade
      • added series of iparsed commands (alike uparsed ones) for iterateover
      • code cleanup: removing redundant tmp variables and no longer need lkernel3 variants.
      • readme fix (hash marks).
      • documentation update
  • Version 1.12a
    • using \pkginfograbProvidesExplPackage
      • internals: better expansion control. Reduced dependency on internal variables context
      • deprecation: all commands related to user saved references renamed, to avoid name crashing
      • new package option to easy the commands migration
      • removed a package option: prefix
  • Version 1.11
    • code cleanup (variants) and a bit of optimization
      • removing references to expl scratch variables (like \l_tmpa_tl, \l_tmpa_int...)
      • deprecating \starray_term_syntax: in favour of \starray_term_parser: (issues warnings)
      • added a new set of starrayparsed commands
      • re-factoring the parsed commands generation
      • using pkginfograb for package's info
  • Version 1.10
    • fixing issue #8.
      • typos in documentation
      • an example of use added (finally 'fixing' #5), in demo
  • Version 1.9b
  • Version 1.9
    • Removing some internal structures (baseprop, defprop) deprecated by the last three updates.
  • Version 1.8
    • code speedup thanks to 'linked' property lists. Code now relies on a more recent l3kernel.
  • Version 1.5
    • added starraytermsyntax:nNN variant and friends (starrayparsed ... :NN ) the parsed ones being expandable
  • Version 1.4
    • added a few functions setiterfromhash:nn and iterateover:n.
  • Version 1.3
    • Fixed issue #4, where (in some instances) setfromkeyval could render a quark loop.
  • Version 1.2
    • Issues #3
      • added expandable versions of some commands (see manual)
      • documentation
  • Version 1.1
    • Issues #1/#2
      • most/all commands are protected now
      • removed predicate version of conditionals
      • documentation
  • Version 1.0
    • Initial release by CTAN.

Herunterladen des vollständigen Inhalts dieses Pakets in einem Zip-Archiv (502.9k).

starray – A structured array (of properties) based on expl3

This package implements vector-like ’structures’, like in ’C’ and other programming languages. So it is possible to store information in a systematic and regular way. The provided ’functions’ are similar to the ones provided for property (or sequence, or token) lists.

The package is based on expl3 and aimed at package authors, not end users.

The name “starray” is an abbreviation for “structured arrays”.

Paketstarray
Fehlermeldungenhttps://github.com/alceu-frigeri/starray/issues
Repositoryhttps://github.com/alceu-frigeri/starray
Version2.0 2026-02-03
LizenzenGNU Affero General Public License, version 3
The Project Public License 1.3c
Copyright2023–2026 Alceu Frigeri
BetreuerAlceu Frigeri
Enthalten inTeX Live als starray
MiKTeX als starray
ThemenPaketentwicklung
...
Gästebuch Seiten-Struktur Impressum Autor kontaktieren