CTAN Comprehensive TeX Archive Network

Verzeichnis macros/latex/contrib/uvlhighlight

README.md

uvlhighlight — Syntax highlighting for Universal Variability Language in

Author: José Miguel Horcas Email: horcas@uma.es License: Project Public License (LPPL) 1.3c


Description

The uvlhighlight package provides syntax highlighting support for the Universal Variability Language (UVL) in documents. It is built on top of the listings package and enables expressive and customizable formatting of UVL models.

The Universal Variability Language (UVL) is described in:

Benavides et al., UVL: Feature modelling with the Universal Variability Language, Journal of Systems and Software, 2025.


Features

The package provides:

  • Syntax highlighting for:
  • Keywords
    • Features
    • Attributes
    • Constraints
    • Strings, numbers, and comments
  • Multiple visual themes:
  • Default
    • Flamapy
    • UVLS (dark mode)
    • Black & White (print-friendly)
  • Inline semantic commands for UVL elements.
  • Support for user-defined attributes.
  • Integration with the listings package.
  • Inclusion of external .uvl files.

Installation

Via CTAN / distributions

The package can be installed using standard tools such as Live or MiK.

Manual installation

  1. Download the package
  1. Place uvlhighlight.sty in your local tree.
  1. Refresh the filename database.

Usage

Load the package in the preamble:

\usepackage{uvlhighlight}

Minimal example

\documentclass{article}
\usepackage{uvlhighlight}

\begin{document}

\begin{lstlisting}[language=UVL]
features
    Pizza
        optional
            Cheese
\end{lstlisting}

\end{document}

Package Options

The package supports several options to customize appearance:

  • default — standard color theme
  • flamapy — Flamapy-inspired colors
  • uvls — dark theme (VS Code inspired)
  • bw — black & white theme (print-friendly)
  • beramono — Bera Mono font (default)
  • inconsolata — Inconsolata font
  • nofont — disables automatic font loading

Main Commands

  • \UVL — typesets the UVL acronym
  • \UVLKeyword{...} — highlights keywords
  • \feature{...} — highlights features
  • \attribute{...} — highlights attributes
  • \constraint{...} — formats constraint expressions
  • \uvlattributes{...} — defines custom attributes

Environments

  • lstlisting with language=UVL for code blocks
  • \inputuvl to include external .uvl files

Documentation

Full documentation is available in:

uvlhighlight-doc.pdf

Requirements

  • (pdf, , or Lua)
  • listings package
  • Standard font encodings

License

This work is distributed under the terms of the Project Public License (LPPL), version 1.3c.

https://www.latex-project.org/lppl/


Changelog

Version 1.3 (2026-04-13)

  • Added \UVL inline command

Version 1.2 (2026-02-16)

  • Improved typography compatibility

Version 1.1 (2025-12-02)

  • Added inline commands

Version 1.0 (2025-12-01)

  • Initial release

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

uvlhighlight – Syntax Highlighting for Universal Variability Language

This package provides syntax highlighting for the Universal Variability Language (UVL) in . It is based on the listings package and supports all UVL keywords.

The package includes multiple visual themes (default, Flamapy, UVLS dark mode, and black & white) and provides inline commands for semantic highlighting. It also supports user-defined features’ attributes and the inclusion of external .uvl files.

Paketuvlhighlight
Repositoryhttps://github.com/jmhorcas/uvlhighlight
Entwicklerhttps://jmhorcas.github.io/
Version1.3 2026-04-13
LizenzenThe Project Public License 1.3c
BetreuerJosé Miguel Horcas
Enthalten inTeX Live als uvlhighlight
ThemenSyntax-Highlighting
...
Gästebuch Seiten-Struktur Impressum Autor kontaktieren