diff docs/lexer-frpseudocode.rst @ 168:bff8b900713a

REFACTOR: All documentation pages refactored: merge intro and details for lexers and filters
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 11 May 2026 01:31:12 +0200
parents docs/details-frpseudocode.rst@4acf578ae93f
children d45dfbbec209
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/docs/lexer-frpseudocode.rst	Mon May 11 01:31:12 2026 +0200
@@ -0,0 +1,80 @@
+.. -*- coding: utf-8; indent-tabs-mode: nil; -*-
+
+.. _XXfr-pseudocode:   
+
+**************
+ FrPseudocode
+**************
+
+This is the pseudocode lexer from the original `pygments-lexer-pseudocode`
+package.
+
+It has been changed somewhat:
+
+- renamed from ``Pseudocode`` to ``FrPseudocode``
+- changed aliases to ``fr-pseudocode``, ``fr-pseudo``, ``fr-algorithm``
+  and ``fr-algo``
+- changed file extension to ``.fr-algo`` and ``.fr-pseudocode``
+- changed some exististing arrows and added some more
+- numbers parsing is more flexible by following the rules of the `Pygments`_
+  lexer for `Python`_
+- also allow ``!=`` as inequality operator (in addition to ``<>``)
+
+It mostly just recognizes some (french) keywords and highlights them.
+
+Comments are supported (``//`` and ``/* ... */`` (single-line only))-
+"Directives" in "special" comments are to be enclosed in curly braces ``{ ... }``.
+
+It also implements some symbol replacements/conversions like
+``<=`` to ``≤``, ``>=`` to ``≥`` or ``<>`` to ``≠``.
+
+
+.. rubric:: Example:
+
+The follwing example
+
+.. code-block:: none
+
+   /* foo bar */
+
+   fonction fonc-1({passage par valeur}param1)
+   début
+     si param1 <= 0 alors
+       b = 0
+     sinon
+       b = 1
+       a = param1
+       répéter
+         a = a - 1
+         b = b * 2
+       tantque a <> 0
+     fin si
+     retourner b
+   fin fonction
+
+will be highlighted as
+
+.. code-block:: fr-algorithm
+
+   /* foo bar */
+
+   fonction fonc-1({passage par valeur}param1)
+   début
+     si param1 <= 0 alors
+       b = 0
+     sinon
+       b = 1
+       a = param1
+       répéter
+         a = a - 1
+         b = b * 2
+       tantque a <> 0
+     fin si
+     retourner b
+   fin fonction
+
+
+Lexer Options
+=============
+
+There are no lexer options besides the `Pygments`_ standard lexer options.