Metadata-Version: 2.5
Name: pygments-lexer-pseudocode-i18n
Version: 0.1.1
Summary: Python-inspired Pygments lexer for multilingual educational pseudocode
Project-URL: Homepage, https://rod2ik.gitlab.io/pygments-lexer-pseudocode-i18n/
Project-URL: Documentation, https://rod2ik.gitlab.io/pygments-lexer-pseudocode-i18n/
Project-URL: Repository, https://gitlab.com/rod2ik/pygments-lexer-pseudocode-i18n
Project-URL: Issues, https://gitlab.com/rod2ik/pygments-lexer-pseudocode-i18n/-/issues
Author: Rod2ik
License: GPL-3.0-or-later
License-File: LICENSE
Keywords: education,i18n,lexer,pseudocode,pygments
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Education
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.11
Requires-Dist: pseudocode-i18n>=0.1.1
Requires-Dist: pygments>=2.18
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == 'dev'
Requires-Dist: mkdocs-material>=9.6; extra == 'dev'
Requires-Dist: mkdocs<2,>=1.6; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: ruff>=0.12; extra == 'dev'
Description-Content-Type: text/markdown

# pygments-lexer-pseudocode-i18n

A reusable Pygments lexer for the multilingual educational pseudocode language provided by [`pseudocode-i18n`](https://pypi.org/project/pseudocode-i18n/).

The token model intentionally mirrors Python's Pygments categories so existing Pygments themes remain familiar. Language aliases include `pseudocode` / `pseudo` and the language-specific pairs `pseudocode-fr` / `pseudo-fr`, `pseudocode-en` / `pseudo-en`, and equivalents for Spanish, German, Italian and Portuguese.

## Development

Prepare the complete local development environment with:

```bash
yarn setup
```

`yarn setup` installs the Yarn environment and then installs this package in Python editable mode with its development dependencies. If a sibling `../pseudocode-i18n` checkout exists, that checkout is preferred in editable mode; otherwise the dependency is resolved normally from PyPI.

Run the complete validation pipeline with:

```bash
yarn bfc
```

The documentation lives entirely under `site/` and can be served with `yarn dev` or `yarn dev:lan`.

## Versioning and releases

`package.json` is the source of truth for the project version. Change only that version manually. `yarn bfc` starts with `version:sync`, which propagates it to `pyproject.toml` and `pygments_lexer_pseudocode_i18n/__init__.py`, then `version:check` verifies that all three are identical.

After a successful `yarn bfc`, use `push` for a normal main-branch publication or `push --release` to additionally create and push the `v<version>` tag. GitLab tags matching `v...` trigger the PyPI publication job through Trusted Publishing/OIDC; no permanent PyPI token is stored in GitLab.

## License

GNU General Public License v3 or later (`GPL-3.0-or-later`).
