diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index 63bdec24b93751b4c7b2a78c304fc083c418be8c..ab8800be7dde1c3270b9cf7492b24825d09262be 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,3 +1,12 @@
+4.10.0 (Work-in-progress): more flexible homology/cohomology workflow in the
+API;
+
+* New API functions: mesh/addHomologyRequest, mesh/clearHomologyRequests
+
+* Incompatible API changes: removed mesh/computeCohomology; changed arguments of
+  mesh/computeHomology; new optional arguments to model/addPhysicalGroup,
+  model/geo/addPhysicalGroup and mesh/removeDuplicateNodes.
+
 4.9.5 (February 21, 2022): dynamic Gmsh library now also only exports public
 symbols on macOS and Linux, like it does on Windows; better handling of
 max. thread settings; small bug fixes.
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 159dd1ac9ac459fc43431b5f47bb18a046197b93..f81d0794cad410f3bc62497eb9c9b90ce122f31e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -107,8 +107,8 @@ opt(WRAP_PYTHON "Generate SWIG Python wrappers for private API (not used by publ
 opt(ZIPPER "Enable Zip file compression/decompression" OFF)
 
 set(GMSH_MAJOR_VERSION 4)
-set(GMSH_MINOR_VERSION 9)
-set(GMSH_PATCH_VERSION 5)
+set(GMSH_MINOR_VERSION 10)
+set(GMSH_PATCH_VERSION 0)
 if(NOT GMSH_EXTRA_VERSION)
   set(GMSH_EXTRA_VERSION "")
 endif()
diff --git a/api/gen.py b/api/gen.py
index 1d75877e5d9be144b8204d0d51946ef4625d5f89..6fb0df97b9c6d7a196b1d6d1f5fbd5e85b936cb5 100644
--- a/api/gen.py
+++ b/api/gen.py
@@ -130,8 +130,8 @@ model.add('getEntitiesForPhysicalGroup', doc, None, iint('dim'), iint('tag'), ov
 doc = '''Get the tags of the physical groups (if any) to which the model entity of dimension `dim' and tag `tag' belongs.'''
 model.add('getPhysicalGroupsForEntity', doc, None, iint('dim'), iint('tag'), ovectorint('physicalTags'))
 
-doc = '''Add a physical group of dimension `dim', grouping the model entities with tags `tags'. Return the tag of the physical group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0.'''
-model.add('addPhysicalGroup', doc, oint, iint('dim'), ivectorint('tags'), iint('tag', '-1'))
+doc = '''Add a physical group of dimension `dim', grouping the model entities with tags `tags'. Return the tag of the physical group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set the name of the physical group if `name' is not empty.'''
+model.add('addPhysicalGroup', doc, oint, iint('dim'), ivectorint('tags'), iint('tag', '-1'), istring('name', '""'))
 
 doc = '''Remove the physical groups `dimTags' from the current model. If `dimTags' is empty, remove all groups.'''
 model.add('removePhysicalGroups', doc, None, ivectorpair('dimTags', 'gmsh::vectorpair()', "[]", "[]"))
@@ -249,7 +249,7 @@ doc = '''Unpartition the mesh of the current model.'''
 mesh.add('unpartition', doc, None)
 
 doc = '''Optimize the mesh of the current model using `method' (empty for default tetrahedral mesh optimizer, "Netgen" for Netgen optimizer, "HighOrder" for direct high-order mesh optimizer, "HighOrderElastic" for high-order elastic smoother, "HighOrderFastCurving" for fast curving algorithm, "Laplace2D" for Laplace smoothing, "Relocate2D" and "Relocate3D" for node relocation). If `force' is set apply the optimization also to discrete entities. If `dimTags' is given, only apply the optimizer to the given entities.'''
-mesh.add('optimize', doc, None, istring('method', ''), ibool('force', 'false', 'False'), iint('niter', '1'), ivectorpair('dimTags', 'gmsh::vectorpair()', "[]", "[]"))
+mesh.add('optimize', doc, None, istring('method', '""'), ibool('force', 'false', 'False'), iint('niter', '1'), ivectorpair('dimTags', 'gmsh::vectorpair()', "[]", "[]"))
 
 doc = '''Recombine the mesh of the current model.'''
 mesh.add('recombine', doc, None)
@@ -512,8 +512,8 @@ mesh.add('importStl', doc, None)
 doc = '''Get the `tags' of any duplicate nodes in the mesh of the entities `dimTags'. If `dimTags' is empty, consider the whole mesh.'''
 mesh.add('getDuplicateNodes', doc, None, ovectorsize('tags'), ivectorpair('dimTags', 'gmsh::vectorpair()', "[]", "[]"))
 
-doc = '''Remove duplicate nodes in the mesh of the current model.'''
-mesh.add('removeDuplicateNodes', doc, None)
+doc = '''Remove duplicate nodes in the mesh of the entities `dimTags'. If `dimTags' is empty, consider the whole mesh.'''
+mesh.add('removeDuplicateNodes', doc, None, ivectorpair('dimTags', 'gmsh::vectorpair()', "[]", "[]"))
 
 doc = '''Split (into two triangles) all quadrangles in surface `tag' whose quality is lower than `quality'. If `tag' < 0, split quadrangles in all surfaces.'''
 mesh.add('splitQuadrangles', doc, None, idouble('quality', '1.'), iint('tag', '-1'))
@@ -527,11 +527,14 @@ mesh.add('createGeometry', doc, None, ivectorpair('dimTags', 'gmsh::vectorpair()
 doc = '''Create a boundary representation from the mesh if the model does not have one (e.g. when imported from mesh file formats with no BRep representation of the underlying model). If `makeSimplyConnected' is set, enforce simply connected discrete surfaces and volumes. If `exportDiscrete' is set, clear any built-in CAD kernel entities and export the discrete entities in the built-in CAD kernel.'''
 mesh.add('createTopology', doc, None, ibool('makeSimplyConnected', 'true', 'True'), ibool('exportDiscrete', 'true', 'True'))
 
-doc = '''Compute a basis representation for homology spaces after a mesh has been generated. The computation domain is given in a list of physical group tags `domainTags'; if empty, the whole mesh is the domain. The computation subdomain for relative homology computation is given in a list of physical group tags `subdomainTags'; if empty, absolute homology is computed. The dimensions homology bases to be computed are given in the list `dim'; if empty, all bases are computed. Resulting basis representation chains are stored as physical groups in the mesh.'''
-mesh.add('computeHomology', doc, None, ivectorint('domainTags', 'std::vector<int>()', "[]", "[]"), ivectorint('subdomainTags', 'std::vector<int>()', "[]", "[]"), ivectorint('dims', 'std::vector<int>()', "[]", "[]"))
+doc = '''Add a request to compute a basis representation for homology spaces (if `type' == "Homology") or cohomology spaces (if `type' == "Cohomology"). The computation domain is given in a list of physical group tags `domainTags'; if empty, the whole mesh is the domain. The computation subdomain for relative (co)homology computation is given in a list of physical group tags `subdomainTags'; if empty, absolute (co)homology is computed. The dimensions of the (co)homology bases to be computed are given in the list `dim'; if empty, all bases are computed. Resulting basis representation (co)chains are stored as physical groups in the mesh. If the request is added before mesh generation, the computation will be performed at the end of the meshing pipeline.'''
+mesh.add('addHomologyRequest', doc, None, istring('type', '"Homology"'), ivectorint('domainTags', 'std::vector<int>()', "[]", "[]"), ivectorint('subdomainTags', 'std::vector<int>()', "[]", "[]"), ivectorint('dims', 'std::vector<int>()', "[]", "[]"))
 
-doc = '''Compute a basis representation for cohomology spaces after a mesh has been generated. The computation domain is given in a list of physical group tags `domainTags'; if empty, the whole mesh is the domain. The computation subdomain for relative cohomology computation is given in a list of physical group tags `subdomainTags'; if empty, absolute cohomology is computed. The dimensions homology bases to be computed are given in the list `dim'; if empty, all bases are computed. Resulting basis representation cochains are stored as physical groups in the mesh.'''
-mesh.add('computeCohomology', doc, None, ivectorint('domainTags', 'std::vector<int>()', "[]", "[]"), ivectorint('subdomainTags', 'std::vector<int>()', "[]", "[]"), ivectorint('dims', 'std::vector<int>()', "[]", "[]"))
+doc = '''Clear all (co)homology computation requests.'''
+mesh.add('clearHomologyRequests', doc, None)
+
+doc = '''Perform the (co)homology computations requested by addHomologyRequest().'''
+mesh.add('computeHomology', doc, None)
 
 doc = '''Compute a cross field for the current mesh. The function creates 3 views: the H function, the Theta function and cross directions. Return the tags of the views.'''
 mesh.add('computeCrossField', doc, None, ovectorint('viewTags'))
@@ -678,8 +681,8 @@ geo.add('getMaxTag', doc, oint, iint('dim'))
 doc = '''Set the maximum tag `maxTag' for entities of dimension `dim' in the built-in CAD representation.'''
 geo.add('setMaxTag', doc, None, iint('dim'), iint('maxTag'))
 
-doc = '''Add a physical group of dimension `dim', grouping the entities with tags `tags' in the built-in CAD representation. Return the tag of the physical group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0.'''
-geo.add('addPhysicalGroup', doc, oint, iint('dim'), ivectorint('tags'), iint('tag', '-1'))
+doc = '''Add a physical group of dimension `dim', grouping the entities with tags `tags' in the built-in CAD representation. Return the tag of the physical group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set the name of the physical group if `name' is not empty.'''
+geo.add('addPhysicalGroup', doc, oint, iint('dim'), ivectorint('tags'), iint('tag', '-1'), istring('name', '""'))
 
 doc = '''Remove the physical groups `dimTags' from the built-in CAD representation. If `dimTags' is empty, remove all groups.'''
 geo.add('removePhysicalGroups', doc, None, ivectorpair('dimTags', 'gmsh::vectorpair()', "[]", "[]"))
diff --git a/api/gmsh.h b/api/gmsh.h
index 81d98abfe88695cb578aab68b622e081d7eaaa6f..4cf1a4a1299802c7607845fba36644499e39833c 100644
--- a/api/gmsh.h
+++ b/api/gmsh.h
@@ -6,7 +6,7 @@
 #ifndef GMSH_H
 #define GMSH_H
 
-// This file defines the Gmsh C++ API (v4.9.5).
+// This file defines the Gmsh C++ API (v4.10.0).
 //
 // Do not edit this file directly: it is automatically generated by `api/gen.py'.
 //
@@ -20,10 +20,10 @@
 #include <utility>
 #include <functional>
 
-#define GMSH_API_VERSION "4.9.5"
+#define GMSH_API_VERSION "4.10.0"
 #define GMSH_API_VERSION_MAJOR 4
-#define GMSH_API_VERSION_MINOR 9
-#define GMSH_API_VERSION_PATCH 5
+#define GMSH_API_VERSION_MINOR 10
+#define GMSH_API_VERSION_PATCH 0
 
 #if defined(GMSH_DLL)
 #if defined(GMSH_DLL_EXPORT)
@@ -255,10 +255,12 @@ namespace gmsh { // Top-level functions
     //
     // Add a physical group of dimension `dim', grouping the model entities with
     // tags `tags'. Return the tag of the physical group, equal to `tag' if `tag'
-    // is positive, or a new tag if `tag' < 0.
+    // is positive, or a new tag if `tag' < 0. Set the name of the physical group
+    // if `name' is not empty.
     GMSH_API int addPhysicalGroup(const int dim,
                                   const std::vector<int> & tags,
-                                  const int tag = -1);
+                                  const int tag = -1,
+                                  const std::string & name = "");
 
     // gmsh::model::removePhysicalGroups
     //
@@ -637,7 +639,7 @@ namespace gmsh { // Top-level functions
       // relocation). If `force' is set apply the optimization also to discrete
       // entities. If `dimTags' is given, only apply the optimizer to the given
       // entities.
-      GMSH_API void optimize(const std::string & method,
+      GMSH_API void optimize(const std::string & method = "",
                              const bool force = false,
                              const int niter = 1,
                              const gmsh::vectorpair & dimTags = gmsh::vectorpair());
@@ -1604,8 +1606,9 @@ namespace gmsh { // Top-level functions
 
       // gmsh::model::mesh::removeDuplicateNodes
       //
-      // Remove duplicate nodes in the mesh of the current model.
-      GMSH_API void removeDuplicateNodes();
+      // Remove duplicate nodes in the mesh of the entities `dimTags'. If `dimTags'
+      // is empty, consider the whole mesh.
+      GMSH_API void removeDuplicateNodes(const gmsh::vectorpair & dimTags = gmsh::vectorpair());
 
       // gmsh::model::mesh::splitQuadrangles
       //
@@ -1650,33 +1653,33 @@ namespace gmsh { // Top-level functions
       GMSH_API void createTopology(const bool makeSimplyConnected = true,
                                    const bool exportDiscrete = true);
 
+      // gmsh::model::mesh::addHomologyRequest
+      //
+      // Add a request to compute a basis representation for homology spaces (if
+      // `type' == "Homology") or cohomology spaces (if `type' == "Cohomology").
+      // The computation domain is given in a list of physical group tags
+      // `domainTags'; if empty, the whole mesh is the domain. The computation
+      // subdomain for relative (co)homology computation is given in a list of
+      // physical group tags `subdomainTags'; if empty, absolute (co)homology is
+      // computed. The dimensions of the (co)homology bases to be computed are
+      // given in the list `dim'; if empty, all bases are computed. Resulting basis
+      // representation (co)chains are stored as physical groups in the mesh. If
+      // the request is added before mesh generation, the computation will be
+      // performed at the end of the meshing pipeline.
+      GMSH_API void addHomologyRequest(const std::string & type = "Homology",
+                                       const std::vector<int> & domainTags = std::vector<int>(),
+                                       const std::vector<int> & subdomainTags = std::vector<int>(),
+                                       const std::vector<int> & dims = std::vector<int>());
+
+      // gmsh::model::mesh::clearHomologyRequests
+      //
+      // Clear all (co)homology computation requests.
+      GMSH_API void clearHomologyRequests();
+
       // gmsh::model::mesh::computeHomology
       //
-      // Compute a basis representation for homology spaces after a mesh has been
-      // generated. The computation domain is given in a list of physical group
-      // tags `domainTags'; if empty, the whole mesh is the domain. The computation
-      // subdomain for relative homology computation is given in a list of physical
-      // group tags `subdomainTags'; if empty, absolute homology is computed. The
-      // dimensions homology bases to be computed are given in the list `dim'; if
-      // empty, all bases are computed. Resulting basis representation chains are
-      // stored as physical groups in the mesh.
-      GMSH_API void computeHomology(const std::vector<int> & domainTags = std::vector<int>(),
-                                    const std::vector<int> & subdomainTags = std::vector<int>(),
-                                    const std::vector<int> & dims = std::vector<int>());
-
-      // gmsh::model::mesh::computeCohomology
-      //
-      // Compute a basis representation for cohomology spaces after a mesh has been
-      // generated. The computation domain is given in a list of physical group
-      // tags `domainTags'; if empty, the whole mesh is the domain. The computation
-      // subdomain for relative cohomology computation is given in a list of
-      // physical group tags `subdomainTags'; if empty, absolute cohomology is
-      // computed. The dimensions homology bases to be computed are given in the
-      // list `dim'; if empty, all bases are computed. Resulting basis
-      // representation cochains are stored as physical groups in the mesh.
-      GMSH_API void computeCohomology(const std::vector<int> & domainTags = std::vector<int>(),
-                                      const std::vector<int> & subdomainTags = std::vector<int>(),
-                                      const std::vector<int> & dims = std::vector<int>());
+      // Perform the (co)homology computations requested by addHomologyRequest().
+      GMSH_API void computeHomology();
 
       // gmsh::model::mesh::computeCrossField
       //
@@ -2157,10 +2160,12 @@ namespace gmsh { // Top-level functions
       //
       // Add a physical group of dimension `dim', grouping the entities with tags
       // `tags' in the built-in CAD representation. Return the tag of the physical
-      // group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0.
+      // group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set
+      // the name of the physical group if `name' is not empty.
       GMSH_API int addPhysicalGroup(const int dim,
                                     const std::vector<int> & tags,
-                                    const int tag = -1);
+                                    const int tag = -1,
+                                    const std::string & name = "");
 
       // gmsh::model::geo::removePhysicalGroups
       //
diff --git a/api/gmsh.h_cwrap b/api/gmsh.h_cwrap
index a824d6e6cbdfde5a899a0efc6acef26a09442f80..50c808059c6145bba669ac668dfc975cc67453dc 100644
--- a/api/gmsh.h_cwrap
+++ b/api/gmsh.h_cwrap
@@ -6,7 +6,7 @@
 #ifndef GMSH_H
 #define GMSH_H
 
-// This file redefines the Gmsh C++ API in terms of the C API (v4.9.5).
+// This file redefines the Gmsh C++ API in terms of the C API (v4.10.0).
 //
 // This is provided as a convenience for users of the binary Gmsh SDK whose C++
 // compiler ABI is not compatible with the ABI of the C++ compiler used to create
@@ -400,14 +400,16 @@ namespace gmsh { // Top-level functions
 
     // Add a physical group of dimension `dim', grouping the model entities with
     // tags `tags'. Return the tag of the physical group, equal to `tag' if `tag'
-    // is positive, or a new tag if `tag' < 0.
+    // is positive, or a new tag if `tag' < 0. Set the name of the physical group
+    // if `name' is not empty.
     inline int addPhysicalGroup(const int dim,
                                 const std::vector<int> & tags,
-                                const int tag = -1)
+                                const int tag = -1,
+                                const std::string & name = "")
     {
       int ierr = 0;
       int *api_tags_; size_t api_tags_n_; vector2ptr(tags, &api_tags_, &api_tags_n_);
-      int result_api_ = gmshModelAddPhysicalGroup(dim, api_tags_, api_tags_n_, tag, &ierr);
+      int result_api_ = gmshModelAddPhysicalGroup(dim, api_tags_, api_tags_n_, tag, name.c_str(), &ierr);
       if(ierr) throwLastError();
       gmshFree(api_tags_);
       return result_api_;
@@ -983,7 +985,7 @@ namespace gmsh { // Top-level functions
       // relocation). If `force' is set apply the optimization also to discrete
       // entities. If `dimTags' is given, only apply the optimizer to the given
       // entities.
-      inline void optimize(const std::string & method,
+      inline void optimize(const std::string & method = "",
                            const bool force = false,
                            const int niter = 1,
                            const gmsh::vectorpair & dimTags = gmsh::vectorpair())
@@ -2462,12 +2464,15 @@ namespace gmsh { // Top-level functions
         gmshFree(api_dimTags_);
       }
 
-      // Remove duplicate nodes in the mesh of the current model.
-      inline void removeDuplicateNodes()
+      // Remove duplicate nodes in the mesh of the entities `dimTags'. If `dimTags'
+      // is empty, consider the whole mesh.
+      inline void removeDuplicateNodes(const gmsh::vectorpair & dimTags = gmsh::vectorpair())
       {
         int ierr = 0;
-        gmshModelMeshRemoveDuplicateNodes(&ierr);
+        int *api_dimTags_; size_t api_dimTags_n_; vectorpair2intptr(dimTags, &api_dimTags_, &api_dimTags_n_);
+        gmshModelMeshRemoveDuplicateNodes(api_dimTags_, api_dimTags_n_, &ierr);
         if(ierr) throwLastError();
+        gmshFree(api_dimTags_);
       }
 
       // Split (into two triangles) all quadrangles in surface `tag' whose quality
@@ -2527,50 +2532,47 @@ namespace gmsh { // Top-level functions
         if(ierr) throwLastError();
       }
 
-      // Compute a basis representation for homology spaces after a mesh has been
-      // generated. The computation domain is given in a list of physical group
-      // tags `domainTags'; if empty, the whole mesh is the domain. The computation
-      // subdomain for relative homology computation is given in a list of physical
-      // group tags `subdomainTags'; if empty, absolute homology is computed. The
-      // dimensions homology bases to be computed are given in the list `dim'; if
-      // empty, all bases are computed. Resulting basis representation chains are
-      // stored as physical groups in the mesh.
-      inline void computeHomology(const std::vector<int> & domainTags = std::vector<int>(),
-                                  const std::vector<int> & subdomainTags = std::vector<int>(),
-                                  const std::vector<int> & dims = std::vector<int>())
+      // Add a request to compute a basis representation for homology spaces (if
+      // `type' == "Homology") or cohomology spaces (if `type' == "Cohomology").
+      // The computation domain is given in a list of physical group tags
+      // `domainTags'; if empty, the whole mesh is the domain. The computation
+      // subdomain for relative (co)homology computation is given in a list of
+      // physical group tags `subdomainTags'; if empty, absolute (co)homology is
+      // computed. The dimensions of the (co)homology bases to be computed are
+      // given in the list `dim'; if empty, all bases are computed. Resulting basis
+      // representation (co)chains are stored as physical groups in the mesh. If
+      // the request is added before mesh generation, the computation will be
+      // performed at the end of the meshing pipeline.
+      inline void addHomologyRequest(const std::string & type = "Homology",
+                                     const std::vector<int> & domainTags = std::vector<int>(),
+                                     const std::vector<int> & subdomainTags = std::vector<int>(),
+                                     const std::vector<int> & dims = std::vector<int>())
       {
         int ierr = 0;
         int *api_domainTags_; size_t api_domainTags_n_; vector2ptr(domainTags, &api_domainTags_, &api_domainTags_n_);
         int *api_subdomainTags_; size_t api_subdomainTags_n_; vector2ptr(subdomainTags, &api_subdomainTags_, &api_subdomainTags_n_);
         int *api_dims_; size_t api_dims_n_; vector2ptr(dims, &api_dims_, &api_dims_n_);
-        gmshModelMeshComputeHomology(api_domainTags_, api_domainTags_n_, api_subdomainTags_, api_subdomainTags_n_, api_dims_, api_dims_n_, &ierr);
+        gmshModelMeshAddHomologyRequest(type.c_str(), api_domainTags_, api_domainTags_n_, api_subdomainTags_, api_subdomainTags_n_, api_dims_, api_dims_n_, &ierr);
         if(ierr) throwLastError();
         gmshFree(api_domainTags_);
         gmshFree(api_subdomainTags_);
         gmshFree(api_dims_);
       }
 
-      // Compute a basis representation for cohomology spaces after a mesh has been
-      // generated. The computation domain is given in a list of physical group
-      // tags `domainTags'; if empty, the whole mesh is the domain. The computation
-      // subdomain for relative cohomology computation is given in a list of
-      // physical group tags `subdomainTags'; if empty, absolute cohomology is
-      // computed. The dimensions homology bases to be computed are given in the
-      // list `dim'; if empty, all bases are computed. Resulting basis
-      // representation cochains are stored as physical groups in the mesh.
-      inline void computeCohomology(const std::vector<int> & domainTags = std::vector<int>(),
-                                    const std::vector<int> & subdomainTags = std::vector<int>(),
-                                    const std::vector<int> & dims = std::vector<int>())
+      // Clear all (co)homology computation requests.
+      inline void clearHomologyRequests()
       {
         int ierr = 0;
-        int *api_domainTags_; size_t api_domainTags_n_; vector2ptr(domainTags, &api_domainTags_, &api_domainTags_n_);
-        int *api_subdomainTags_; size_t api_subdomainTags_n_; vector2ptr(subdomainTags, &api_subdomainTags_, &api_subdomainTags_n_);
-        int *api_dims_; size_t api_dims_n_; vector2ptr(dims, &api_dims_, &api_dims_n_);
-        gmshModelMeshComputeCohomology(api_domainTags_, api_domainTags_n_, api_subdomainTags_, api_subdomainTags_n_, api_dims_, api_dims_n_, &ierr);
+        gmshModelMeshClearHomologyRequests(&ierr);
+        if(ierr) throwLastError();
+      }
+
+      // Perform the (co)homology computations requested by addHomologyRequest().
+      inline void computeHomology()
+      {
+        int ierr = 0;
+        gmshModelMeshComputeHomology(&ierr);
         if(ierr) throwLastError();
-        gmshFree(api_domainTags_);
-        gmshFree(api_subdomainTags_);
-        gmshFree(api_dims_);
       }
 
       // Compute a cross field for the current mesh. The function creates 3 views:
@@ -3303,14 +3305,16 @@ namespace gmsh { // Top-level functions
 
       // Add a physical group of dimension `dim', grouping the entities with tags
       // `tags' in the built-in CAD representation. Return the tag of the physical
-      // group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0.
+      // group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set
+      // the name of the physical group if `name' is not empty.
       inline int addPhysicalGroup(const int dim,
                                   const std::vector<int> & tags,
-                                  const int tag = -1)
+                                  const int tag = -1,
+                                  const std::string & name = "")
       {
         int ierr = 0;
         int *api_tags_; size_t api_tags_n_; vector2ptr(tags, &api_tags_, &api_tags_n_);
-        int result_api_ = gmshModelGeoAddPhysicalGroup(dim, api_tags_, api_tags_n_, tag, &ierr);
+        int result_api_ = gmshModelGeoAddPhysicalGroup(dim, api_tags_, api_tags_n_, tag, name.c_str(), &ierr);
         if(ierr) throwLastError();
         gmshFree(api_tags_);
         return result_api_;
diff --git a/api/gmsh.jl b/api/gmsh.jl
index 77923e45cd6f213252eacf067c8e393e1d4293eb..97ab31c8ceb3b0f70fbb90997b496901dc6ee0c0 100644
--- a/api/gmsh.jl
+++ b/api/gmsh.jl
@@ -3,7 +3,7 @@
 # See the LICENSE.txt file in the Gmsh root directory for license information.
 # Please report all issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
 
-# This file defines the Gmsh Julia API (v4.9.5).
+# This file defines the Gmsh Julia API (v4.10.0).
 #
 # Do not edit this file directly: it is automatically generated by `api/gen.py'.
 #
@@ -18,12 +18,12 @@ Top-level functions
 """
 module gmsh
 
-const GMSH_API_VERSION = "4.9.5"
+const GMSH_API_VERSION = "4.10.0"
 const GMSH_API_VERSION_MAJOR = 4
-const GMSH_API_VERSION_MINOR = 9
-const GMSH_API_VERSION_PATCH = 5
+const GMSH_API_VERSION_MINOR = 10
+const GMSH_API_VERSION_PATCH = 0
 const libdir = dirname(@__FILE__)
-const libname = Sys.iswindows() ? "gmsh-4.9.dll" : "libgmsh"
+const libname = Sys.iswindows() ? "gmsh-4.10.dll" : "libgmsh"
 import Libdl
 const lib = Libdl.find_library([libname], [libdir])
 
@@ -519,19 +519,20 @@ end
 const get_physical_groups_for_entity = getPhysicalGroupsForEntity
 
 """
-    gmsh.model.addPhysicalGroup(dim, tags, tag = -1)
+    gmsh.model.addPhysicalGroup(dim, tags, tag = -1, name = "")
 
 Add a physical group of dimension `dim`, grouping the model entities with tags
 `tags`. Return the tag of the physical group, equal to `tag` if `tag` is
-positive, or a new tag if `tag` < 0.
+positive, or a new tag if `tag` < 0. Set the name of the physical group if
+`name` is not empty.
 
 Return an integer value.
 """
-function addPhysicalGroup(dim, tags, tag = -1)
+function addPhysicalGroup(dim, tags, tag = -1, name = "")
     ierr = Ref{Cint}()
     api_result_ = ccall((:gmshModelAddPhysicalGroup, gmsh.lib), Cint,
-          (Cint, Ptr{Cint}, Csize_t, Cint, Ptr{Cint}),
-          dim, convert(Vector{Cint}, tags), length(tags), tag, ierr)
+          (Cint, Ptr{Cint}, Csize_t, Cint, Ptr{Cchar}, Ptr{Cint}),
+          dim, convert(Vector{Cint}, tags), length(tags), tag, name, ierr)
     ierr[] != 0 && error(gmsh.logger.getLastError())
     return api_result_
 end
@@ -1318,7 +1319,7 @@ function unpartition()
 end
 
 """
-    gmsh.model.mesh.optimize(method, force = false, niter = 1, dimTags = Tuple{Cint,Cint}[])
+    gmsh.model.mesh.optimize(method = "", force = false, niter = 1, dimTags = Tuple{Cint,Cint}[])
 
 Optimize the mesh of the current model using `method` (empty for default
 tetrahedral mesh optimizer, "Netgen" for Netgen optimizer, "HighOrder" for
@@ -1328,7 +1329,7 @@ Laplace smoothing, "Relocate2D" and "Relocate3D" for node relocation). If
 `force` is set apply the optimization also to discrete entities. If `dimTags` is
 given, only apply the optimizer to the given entities.
 """
-function optimize(method, force = false, niter = 1, dimTags = Tuple{Cint,Cint}[])
+function optimize(method = "", force = false, niter = 1, dimTags = Tuple{Cint,Cint}[])
     api_dimTags_ = collect(Cint, Iterators.flatten(dimTags))
     api_dimTags_n_ = length(api_dimTags_)
     ierr = Ref{Cint}()
@@ -3192,15 +3193,18 @@ end
 const get_duplicate_nodes = getDuplicateNodes
 
 """
-    gmsh.model.mesh.removeDuplicateNodes()
+    gmsh.model.mesh.removeDuplicateNodes(dimTags = Tuple{Cint,Cint}[])
 
-Remove duplicate nodes in the mesh of the current model.
+Remove duplicate nodes in the mesh of the entities `dimTags`. If `dimTags` is
+empty, consider the whole mesh.
 """
-function removeDuplicateNodes()
+function removeDuplicateNodes(dimTags = Tuple{Cint,Cint}[])
+    api_dimTags_ = collect(Cint, Iterators.flatten(dimTags))
+    api_dimTags_n_ = length(api_dimTags_)
     ierr = Ref{Cint}()
     ccall((:gmshModelMeshRemoveDuplicateNodes, gmsh.lib), Cvoid,
-          (Ptr{Cint},),
-          ierr)
+          (Ptr{Cint}, Csize_t, Ptr{Cint}),
+          api_dimTags_, api_dimTags_n_, ierr)
     ierr[] != 0 && error(gmsh.logger.getLastError())
     return nothing
 end
@@ -3285,48 +3289,58 @@ end
 const create_topology = createTopology
 
 """
-    gmsh.model.mesh.computeHomology(domainTags = Cint[], subdomainTags = Cint[], dims = Cint[])
+    gmsh.model.mesh.addHomologyRequest(type = "Homology", domainTags = Cint[], subdomainTags = Cint[], dims = Cint[])
 
-Compute a basis representation for homology spaces after a mesh has been
-generated. The computation domain is given in a list of physical group tags
-`domainTags`; if empty, the whole mesh is the domain. The computation subdomain
-for relative homology computation is given in a list of physical group tags
-`subdomainTags`; if empty, absolute homology is computed. The dimensions
-homology bases to be computed are given in the list `dim`; if empty, all bases
-are computed. Resulting basis representation chains are stored as physical
-groups in the mesh.
+Add a request to compute a basis representation for homology spaces (if `type`
+== "Homology") or cohomology spaces (if `type` == "Cohomology"). The computation
+domain is given in a list of physical group tags `domainTags`; if empty, the
+whole mesh is the domain. The computation subdomain for relative (co)homology
+computation is given in a list of physical group tags `subdomainTags`; if empty,
+absolute (co)homology is computed. The dimensions of the (co)homology bases to
+be computed are given in the list `dim`; if empty, all bases are computed.
+Resulting basis representation (co)chains are stored as physical groups in the
+mesh. If the request is added before mesh generation, the computation will be
+performed at the end of the meshing pipeline.
 """
-function computeHomology(domainTags = Cint[], subdomainTags = Cint[], dims = Cint[])
+function addHomologyRequest(type = "Homology", domainTags = Cint[], subdomainTags = Cint[], dims = Cint[])
     ierr = Ref{Cint}()
-    ccall((:gmshModelMeshComputeHomology, gmsh.lib), Cvoid,
-          (Ptr{Cint}, Csize_t, Ptr{Cint}, Csize_t, Ptr{Cint}, Csize_t, Ptr{Cint}),
-          convert(Vector{Cint}, domainTags), length(domainTags), convert(Vector{Cint}, subdomainTags), length(subdomainTags), convert(Vector{Cint}, dims), length(dims), ierr)
+    ccall((:gmshModelMeshAddHomologyRequest, gmsh.lib), Cvoid,
+          (Ptr{Cchar}, Ptr{Cint}, Csize_t, Ptr{Cint}, Csize_t, Ptr{Cint}, Csize_t, Ptr{Cint}),
+          type, convert(Vector{Cint}, domainTags), length(domainTags), convert(Vector{Cint}, subdomainTags), length(subdomainTags), convert(Vector{Cint}, dims), length(dims), ierr)
     ierr[] != 0 && error(gmsh.logger.getLastError())
     return nothing
 end
-const compute_homology = computeHomology
+const add_homology_request = addHomologyRequest
+
+"""
+    gmsh.model.mesh.clearHomologyRequests()
+
+Clear all (co)homology computation requests.
+"""
+function clearHomologyRequests()
+    ierr = Ref{Cint}()
+    ccall((:gmshModelMeshClearHomologyRequests, gmsh.lib), Cvoid,
+          (Ptr{Cint},),
+          ierr)
+    ierr[] != 0 && error(gmsh.logger.getLastError())
+    return nothing
+end
+const clear_homology_requests = clearHomologyRequests
 
 """
-    gmsh.model.mesh.computeCohomology(domainTags = Cint[], subdomainTags = Cint[], dims = Cint[])
+    gmsh.model.mesh.computeHomology()
 
-Compute a basis representation for cohomology spaces after a mesh has been
-generated. The computation domain is given in a list of physical group tags
-`domainTags`; if empty, the whole mesh is the domain. The computation subdomain
-for relative cohomology computation is given in a list of physical group tags
-`subdomainTags`; if empty, absolute cohomology is computed. The dimensions
-homology bases to be computed are given in the list `dim`; if empty, all bases
-are computed. Resulting basis representation cochains are stored as physical
-groups in the mesh.
+Perform the (co)homology computations requested by addHomologyRequest().
 """
-function computeCohomology(domainTags = Cint[], subdomainTags = Cint[], dims = Cint[])
+function computeHomology()
     ierr = Ref{Cint}()
-    ccall((:gmshModelMeshComputeCohomology, gmsh.lib), Cvoid,
-          (Ptr{Cint}, Csize_t, Ptr{Cint}, Csize_t, Ptr{Cint}, Csize_t, Ptr{Cint}),
-          convert(Vector{Cint}, domainTags), length(domainTags), convert(Vector{Cint}, subdomainTags), length(subdomainTags), convert(Vector{Cint}, dims), length(dims), ierr)
+    ccall((:gmshModelMeshComputeHomology, gmsh.lib), Cvoid,
+          (Ptr{Cint},),
+          ierr)
     ierr[] != 0 && error(gmsh.logger.getLastError())
     return nothing
 end
-const compute_cohomology = computeCohomology
+const compute_homology = computeHomology
 
 """
     gmsh.model.mesh.computeCrossField()
@@ -4266,19 +4280,20 @@ end
 const set_max_tag = setMaxTag
 
 """
-    gmsh.model.geo.addPhysicalGroup(dim, tags, tag = -1)
+    gmsh.model.geo.addPhysicalGroup(dim, tags, tag = -1, name = "")
 
 Add a physical group of dimension `dim`, grouping the entities with tags `tags`
 in the built-in CAD representation. Return the tag of the physical group, equal
-to `tag` if `tag` is positive, or a new tag if `tag` < 0.
+to `tag` if `tag` is positive, or a new tag if `tag` < 0. Set the name of the
+physical group if `name` is not empty.
 
 Return an integer value.
 """
-function addPhysicalGroup(dim, tags, tag = -1)
+function addPhysicalGroup(dim, tags, tag = -1, name = "")
     ierr = Ref{Cint}()
     api_result_ = ccall((:gmshModelGeoAddPhysicalGroup, gmsh.lib), Cint,
-          (Cint, Ptr{Cint}, Csize_t, Cint, Ptr{Cint}),
-          dim, convert(Vector{Cint}, tags), length(tags), tag, ierr)
+          (Cint, Ptr{Cint}, Csize_t, Cint, Ptr{Cchar}, Ptr{Cint}),
+          dim, convert(Vector{Cint}, tags), length(tags), tag, name, ierr)
     ierr[] != 0 && error(gmsh.logger.getLastError())
     return api_result_
 end
diff --git a/api/gmsh.py b/api/gmsh.py
index 2cf1c027b0bf7eda8f0f5f5ed6d7c965da32acc0..a6103469f8c5bd57ae8740e3f12d7d42ce298d09 100644
--- a/api/gmsh.py
+++ b/api/gmsh.py
@@ -3,7 +3,7 @@
 # See the LICENSE.txt file in the Gmsh root directory for license information.
 # Please report all issues on https://gitlab.onelab.info/gmsh/gmsh/issues.
 
-# This file defines the Gmsh Python API (v4.9.5).
+# This file defines the Gmsh Python API (v4.10.0).
 #
 # Do not edit this file directly: it is automatically generated by `api/gen.py'.
 #
@@ -18,23 +18,23 @@ import os
 import platform
 from math import pi
 
-GMSH_API_VERSION = "4.9.5"
+GMSH_API_VERSION = "4.10.0"
 GMSH_API_VERSION_MAJOR = 4
-GMSH_API_VERSION_MINOR = 9
-GMSH_API_VERSION_PATCH = 5
+GMSH_API_VERSION_MINOR = 10
+GMSH_API_VERSION_PATCH = 0
 
 __version__ = GMSH_API_VERSION
 
 oldsig = signal.signal(signal.SIGINT, signal.SIG_DFL)
 moduledir = os.path.dirname(os.path.realpath(__file__))
 if platform.system() == "Windows":
-    libname = "gmsh-4.9.dll"
+    libname = "gmsh-4.10.dll"
     libdir = os.path.dirname(moduledir)
 elif platform.system() == "Darwin":
-    libname = "libgmsh.4.9.dylib"
+    libname = "libgmsh.4.10.dylib"
     libdir = os.path.dirname(os.path.dirname(moduledir))
 else:
-    libname = "libgmsh.so.4.9"
+    libname = "libgmsh.so.4.10"
     libdir = os.path.dirname(os.path.dirname(moduledir))
 
 libpath = os.path.join(libdir, libname)
@@ -44,7 +44,7 @@ if not os.path.exists(libpath):
     libpath = os.path.join(moduledir, libname)
 if not os.path.exists(libpath):
     if platform.system() == "Windows":
-        libpath = find_library("gmsh-4.9")
+        libpath = find_library("gmsh-4.10")
         if not libpath:
             libpath = find_library("gmsh")
     else:
@@ -726,13 +726,14 @@ class model:
     get_physical_groups_for_entity = getPhysicalGroupsForEntity
 
     @staticmethod
-    def addPhysicalGroup(dim, tags, tag=-1):
+    def addPhysicalGroup(dim, tags, tag=-1, name=""):
         """
-        gmsh.model.addPhysicalGroup(dim, tags, tag=-1)
+        gmsh.model.addPhysicalGroup(dim, tags, tag=-1, name="")
 
         Add a physical group of dimension `dim', grouping the model entities with
         tags `tags'. Return the tag of the physical group, equal to `tag' if `tag'
-        is positive, or a new tag if `tag' < 0.
+        is positive, or a new tag if `tag' < 0. Set the name of the physical group
+        if `name' is not empty.
 
         Return an integer value.
         """
@@ -742,6 +743,7 @@ class model:
             c_int(dim),
             api_tags_, api_tags_n_,
             c_int(tag),
+            c_char_p(name.encode()),
             byref(ierr))
         if ierr.value != 0:
             raise Exception(logger.getLastError())
@@ -1631,9 +1633,9 @@ class model:
                 raise Exception(logger.getLastError())
 
         @staticmethod
-        def optimize(method, force=False, niter=1, dimTags=[]):
+        def optimize(method="", force=False, niter=1, dimTags=[]):
             """
-            gmsh.model.mesh.optimize(method, force=False, niter=1, dimTags=[])
+            gmsh.model.mesh.optimize(method="", force=False, niter=1, dimTags=[])
 
             Optimize the mesh of the current model using `method' (empty for default
             tetrahedral mesh optimizer, "Netgen" for Netgen optimizer, "HighOrder" for
@@ -3728,14 +3730,17 @@ class model:
         get_duplicate_nodes = getDuplicateNodes
 
         @staticmethod
-        def removeDuplicateNodes():
+        def removeDuplicateNodes(dimTags=[]):
             """
-            gmsh.model.mesh.removeDuplicateNodes()
+            gmsh.model.mesh.removeDuplicateNodes(dimTags=[])
 
-            Remove duplicate nodes in the mesh of the current model.
+            Remove duplicate nodes in the mesh of the entities `dimTags'. If `dimTags'
+            is empty, consider the whole mesh.
             """
+            api_dimTags_, api_dimTags_n_ = _ivectorpair(dimTags)
             ierr = c_int()
             lib.gmshModelMeshRemoveDuplicateNodes(
+                api_dimTags_, api_dimTags_n_,
                 byref(ierr))
             if ierr.value != 0:
                 raise Exception(logger.getLastError())
@@ -3826,58 +3831,63 @@ class model:
         create_topology = createTopology
 
         @staticmethod
-        def computeHomology(domainTags=[], subdomainTags=[], dims=[]):
+        def addHomologyRequest(type="Homology", domainTags=[], subdomainTags=[], dims=[]):
             """
-            gmsh.model.mesh.computeHomology(domainTags=[], subdomainTags=[], dims=[])
+            gmsh.model.mesh.addHomologyRequest(type="Homology", domainTags=[], subdomainTags=[], dims=[])
 
-            Compute a basis representation for homology spaces after a mesh has been
-            generated. The computation domain is given in a list of physical group tags
-            `domainTags'; if empty, the whole mesh is the domain. The computation
-            subdomain for relative homology computation is given in a list of physical
-            group tags `subdomainTags'; if empty, absolute homology is computed. The
-            dimensions homology bases to be computed are given in the list `dim'; if
-            empty, all bases are computed. Resulting basis representation chains are
-            stored as physical groups in the mesh.
+            Add a request to compute a basis representation for homology spaces (if
+            `type' == "Homology") or cohomology spaces (if `type' == "Cohomology"). The
+            computation domain is given in a list of physical group tags `domainTags';
+            if empty, the whole mesh is the domain. The computation subdomain for
+            relative (co)homology computation is given in a list of physical group tags
+            `subdomainTags'; if empty, absolute (co)homology is computed. The
+            dimensions of the (co)homology bases to be computed are given in the list
+            `dim'; if empty, all bases are computed. Resulting basis representation
+            (co)chains are stored as physical groups in the mesh. If the request is
+            added before mesh generation, the computation will be performed at the end
+            of the meshing pipeline.
             """
             api_domainTags_, api_domainTags_n_ = _ivectorint(domainTags)
             api_subdomainTags_, api_subdomainTags_n_ = _ivectorint(subdomainTags)
             api_dims_, api_dims_n_ = _ivectorint(dims)
             ierr = c_int()
-            lib.gmshModelMeshComputeHomology(
+            lib.gmshModelMeshAddHomologyRequest(
+                c_char_p(type.encode()),
                 api_domainTags_, api_domainTags_n_,
                 api_subdomainTags_, api_subdomainTags_n_,
                 api_dims_, api_dims_n_,
                 byref(ierr))
             if ierr.value != 0:
                 raise Exception(logger.getLastError())
-        compute_homology = computeHomology
+        add_homology_request = addHomologyRequest
 
         @staticmethod
-        def computeCohomology(domainTags=[], subdomainTags=[], dims=[]):
+        def clearHomologyRequests():
             """
-            gmsh.model.mesh.computeCohomology(domainTags=[], subdomainTags=[], dims=[])
+            gmsh.model.mesh.clearHomologyRequests()
 
-            Compute a basis representation for cohomology spaces after a mesh has been
-            generated. The computation domain is given in a list of physical group tags
-            `domainTags'; if empty, the whole mesh is the domain. The computation
-            subdomain for relative cohomology computation is given in a list of
-            physical group tags `subdomainTags'; if empty, absolute cohomology is
-            computed. The dimensions homology bases to be computed are given in the
-            list `dim'; if empty, all bases are computed. Resulting basis
-            representation cochains are stored as physical groups in the mesh.
+            Clear all (co)homology computation requests.
             """
-            api_domainTags_, api_domainTags_n_ = _ivectorint(domainTags)
-            api_subdomainTags_, api_subdomainTags_n_ = _ivectorint(subdomainTags)
-            api_dims_, api_dims_n_ = _ivectorint(dims)
             ierr = c_int()
-            lib.gmshModelMeshComputeCohomology(
-                api_domainTags_, api_domainTags_n_,
-                api_subdomainTags_, api_subdomainTags_n_,
-                api_dims_, api_dims_n_,
+            lib.gmshModelMeshClearHomologyRequests(
                 byref(ierr))
             if ierr.value != 0:
                 raise Exception(logger.getLastError())
-        compute_cohomology = computeCohomology
+        clear_homology_requests = clearHomologyRequests
+
+        @staticmethod
+        def computeHomology():
+            """
+            gmsh.model.mesh.computeHomology()
+
+            Perform the (co)homology computations requested by addHomologyRequest().
+            """
+            ierr = c_int()
+            lib.gmshModelMeshComputeHomology(
+                byref(ierr))
+            if ierr.value != 0:
+                raise Exception(logger.getLastError())
+        compute_homology = computeHomology
 
         @staticmethod
         def computeCrossField():
@@ -4947,13 +4957,14 @@ class model:
         set_max_tag = setMaxTag
 
         @staticmethod
-        def addPhysicalGroup(dim, tags, tag=-1):
+        def addPhysicalGroup(dim, tags, tag=-1, name=""):
             """
-            gmsh.model.geo.addPhysicalGroup(dim, tags, tag=-1)
+            gmsh.model.geo.addPhysicalGroup(dim, tags, tag=-1, name="")
 
             Add a physical group of dimension `dim', grouping the entities with tags
             `tags' in the built-in CAD representation. Return the tag of the physical
-            group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0.
+            group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set
+            the name of the physical group if `name' is not empty.
 
             Return an integer value.
             """
@@ -4963,6 +4974,7 @@ class model:
                 c_int(dim),
                 api_tags_, api_tags_n_,
                 c_int(tag),
+                c_char_p(name.encode()),
                 byref(ierr))
             if ierr.value != 0:
                 raise Exception(logger.getLastError())
diff --git a/api/gmshc.cpp b/api/gmshc.cpp
index 090ecc4f0ca34a64f96cc0d4f71d9cb33de86160..ca516d052f15c22d35dd160d0cccb10bf4322f3c 100644
--- a/api/gmshc.cpp
+++ b/api/gmshc.cpp
@@ -377,13 +377,13 @@ GMSH_API void gmshModelGetPhysicalGroupsForEntity(const int dim, const int tag,
   }
 }
 
-GMSH_API int gmshModelAddPhysicalGroup(const int dim, int * tags, size_t tags_n, const int tag, int * ierr)
+GMSH_API int gmshModelAddPhysicalGroup(const int dim, int * tags, size_t tags_n, const int tag, const char * name, int * ierr)
 {
   int result_api_ = 0;
   if(ierr) *ierr = 0;
   try {
     std::vector<int> api_tags_(tags, tags + tags_n);
-    result_api_ = gmsh::model::addPhysicalGroup(dim, api_tags_, tag);
+    result_api_ = gmsh::model::addPhysicalGroup(dim, api_tags_, tag, name);
   }
   catch(...){
     if(ierr) *ierr = 1;
@@ -2106,11 +2106,16 @@ GMSH_API void gmshModelMeshGetDuplicateNodes(size_t ** tags, size_t * tags_n, in
   }
 }
 
-GMSH_API void gmshModelMeshRemoveDuplicateNodes(int * ierr)
+GMSH_API void gmshModelMeshRemoveDuplicateNodes(int * dimTags, size_t dimTags_n, int * ierr)
 {
   if(ierr) *ierr = 0;
   try {
-    gmsh::model::mesh::removeDuplicateNodes();
+    gmsh::vectorpair api_dimTags_(dimTags_n/2);
+    for(size_t i = 0; i < dimTags_n/2; ++i){
+      api_dimTags_[i].first = dimTags[i * 2 + 0];
+      api_dimTags_[i].second = dimTags[i * 2 + 1];
+    }
+    gmsh::model::mesh::removeDuplicateNodes(api_dimTags_);
   }
   catch(...){
     if(ierr) *ierr = 1;
@@ -2166,28 +2171,36 @@ GMSH_API void gmshModelMeshCreateTopology(const int makeSimplyConnected, const i
   }
 }
 
-GMSH_API void gmshModelMeshComputeHomology(int * domainTags, size_t domainTags_n, int * subdomainTags, size_t subdomainTags_n, int * dims, size_t dims_n, int * ierr)
+GMSH_API void gmshModelMeshAddHomologyRequest(const char * type, int * domainTags, size_t domainTags_n, int * subdomainTags, size_t subdomainTags_n, int * dims, size_t dims_n, int * ierr)
 {
   if(ierr) *ierr = 0;
   try {
     std::vector<int> api_domainTags_(domainTags, domainTags + domainTags_n);
     std::vector<int> api_subdomainTags_(subdomainTags, subdomainTags + subdomainTags_n);
     std::vector<int> api_dims_(dims, dims + dims_n);
-    gmsh::model::mesh::computeHomology(api_domainTags_, api_subdomainTags_, api_dims_);
+    gmsh::model::mesh::addHomologyRequest(type, api_domainTags_, api_subdomainTags_, api_dims_);
   }
   catch(...){
     if(ierr) *ierr = 1;
   }
 }
 
-GMSH_API void gmshModelMeshComputeCohomology(int * domainTags, size_t domainTags_n, int * subdomainTags, size_t subdomainTags_n, int * dims, size_t dims_n, int * ierr)
+GMSH_API void gmshModelMeshClearHomologyRequests(int * ierr)
 {
   if(ierr) *ierr = 0;
   try {
-    std::vector<int> api_domainTags_(domainTags, domainTags + domainTags_n);
-    std::vector<int> api_subdomainTags_(subdomainTags, subdomainTags + subdomainTags_n);
-    std::vector<int> api_dims_(dims, dims + dims_n);
-    gmsh::model::mesh::computeCohomology(api_domainTags_, api_subdomainTags_, api_dims_);
+    gmsh::model::mesh::clearHomologyRequests();
+  }
+  catch(...){
+    if(ierr) *ierr = 1;
+  }
+}
+
+GMSH_API void gmshModelMeshComputeHomology(int * ierr)
+{
+  if(ierr) *ierr = 0;
+  try {
+    gmsh::model::mesh::computeHomology();
   }
   catch(...){
     if(ierr) *ierr = 1;
@@ -2841,13 +2854,13 @@ GMSH_API void gmshModelGeoSetMaxTag(const int dim, const int maxTag, int * ierr)
   }
 }
 
-GMSH_API int gmshModelGeoAddPhysicalGroup(const int dim, int * tags, size_t tags_n, const int tag, int * ierr)
+GMSH_API int gmshModelGeoAddPhysicalGroup(const int dim, int * tags, size_t tags_n, const int tag, const char * name, int * ierr)
 {
   int result_api_ = 0;
   if(ierr) *ierr = 0;
   try {
     std::vector<int> api_tags_(tags, tags + tags_n);
-    result_api_ = gmsh::model::geo::addPhysicalGroup(dim, api_tags_, tag);
+    result_api_ = gmsh::model::geo::addPhysicalGroup(dim, api_tags_, tag, name);
   }
   catch(...){
     if(ierr) *ierr = 1;
diff --git a/api/gmshc.h b/api/gmshc.h
index 1d33aafa46b51807553bf9cb4aba4426fb47ac94..7588783522f2806b6cf8cca8671d17cd14a4dc20 100644
--- a/api/gmshc.h
+++ b/api/gmshc.h
@@ -9,7 +9,7 @@
 #define GMSHC_H
 
 /*
- * This file defines the Gmsh C API (v4.9.5).
+ * This file defines the Gmsh C API (v4.10.0).
  *
  * Do not edit this file directly: it is automatically generated by `api/gen.py'.
  *
@@ -19,10 +19,10 @@
 
 #include <stddef.h>
 
-#define GMSH_API_VERSION "4.9.5"
+#define GMSH_API_VERSION "4.10.0"
 #define GMSH_API_VERSION_MAJOR 4
-#define GMSH_API_VERSION_MINOR 9
-#define GMSH_API_VERSION_PATCH 5
+#define GMSH_API_VERSION_MINOR 10
+#define GMSH_API_VERSION_PATCH 0
 
 #if defined(GMSH_DLL)
 #if defined(GMSH_DLL_EXPORT)
@@ -203,10 +203,12 @@ GMSH_API void gmshModelGetPhysicalGroupsForEntity(const int dim,
 
 /* Add a physical group of dimension `dim', grouping the model entities with
  * tags `tags'. Return the tag of the physical group, equal to `tag' if `tag'
- * is positive, or a new tag if `tag' < 0. */
+ * is positive, or a new tag if `tag' < 0. Set the name of the physical group
+ * if `name' is not empty. */
 GMSH_API int gmshModelAddPhysicalGroup(const int dim,
                                        int * tags, size_t tags_n,
                                        const int tag,
+                                       const char * name,
                                        int * ierr);
 
 /* Remove the physical groups `dimTags' from the current model. If `dimTags'
@@ -1410,8 +1412,10 @@ GMSH_API void gmshModelMeshGetDuplicateNodes(size_t ** tags, size_t * tags_n,
                                              int * dimTags, size_t dimTags_n,
                                              int * ierr);
 
-/* Remove duplicate nodes in the mesh of the current model. */
-GMSH_API void gmshModelMeshRemoveDuplicateNodes(int * ierr);
+/* Remove duplicate nodes in the mesh of the entities `dimTags'. If `dimTags'
+ * is empty, consider the whole mesh. */
+GMSH_API void gmshModelMeshRemoveDuplicateNodes(int * dimTags, size_t dimTags_n,
+                                                int * ierr);
 
 /* Split (into two triangles) all quadrangles in surface `tag' whose quality
  * is lower than `quality'. If `tag' < 0, split quadrangles in all surfaces. */
@@ -1452,31 +1456,28 @@ GMSH_API void gmshModelMeshCreateTopology(const int makeSimplyConnected,
                                           const int exportDiscrete,
                                           int * ierr);
 
-/* Compute a basis representation for homology spaces after a mesh has been
- * generated. The computation domain is given in a list of physical group tags
- * `domainTags'; if empty, the whole mesh is the domain. The computation
- * subdomain for relative homology computation is given in a list of physical
- * group tags `subdomainTags'; if empty, absolute homology is computed. The
- * dimensions homology bases to be computed are given in the list `dim'; if
- * empty, all bases are computed. Resulting basis representation chains are
- * stored as physical groups in the mesh. */
-GMSH_API void gmshModelMeshComputeHomology(int * domainTags, size_t domainTags_n,
-                                           int * subdomainTags, size_t subdomainTags_n,
-                                           int * dims, size_t dims_n,
-                                           int * ierr);
+/* Add a request to compute a basis representation for homology spaces (if
+ * `type' == "Homology") or cohomology spaces (if `type' == "Cohomology"). The
+ * computation domain is given in a list of physical group tags `domainTags';
+ * if empty, the whole mesh is the domain. The computation subdomain for
+ * relative (co)homology computation is given in a list of physical group tags
+ * `subdomainTags'; if empty, absolute (co)homology is computed. The
+ * dimensions of the (co)homology bases to be computed are given in the list
+ * `dim'; if empty, all bases are computed. Resulting basis representation
+ * (co)chains are stored as physical groups in the mesh. If the request is
+ * added before mesh generation, the computation will be performed at the end
+ * of the meshing pipeline. */
+GMSH_API void gmshModelMeshAddHomologyRequest(const char * type,
+                                              int * domainTags, size_t domainTags_n,
+                                              int * subdomainTags, size_t subdomainTags_n,
+                                              int * dims, size_t dims_n,
+                                              int * ierr);
 
-/* Compute a basis representation for cohomology spaces after a mesh has been
- * generated. The computation domain is given in a list of physical group tags
- * `domainTags'; if empty, the whole mesh is the domain. The computation
- * subdomain for relative cohomology computation is given in a list of
- * physical group tags `subdomainTags'; if empty, absolute cohomology is
- * computed. The dimensions homology bases to be computed are given in the
- * list `dim'; if empty, all bases are computed. Resulting basis
- * representation cochains are stored as physical groups in the mesh. */
-GMSH_API void gmshModelMeshComputeCohomology(int * domainTags, size_t domainTags_n,
-                                             int * subdomainTags, size_t subdomainTags_n,
-                                             int * dims, size_t dims_n,
-                                             int * ierr);
+/* Clear all (co)homology computation requests. */
+GMSH_API void gmshModelMeshClearHomologyRequests(int * ierr);
+
+/* Perform the (co)homology computations requested by addHomologyRequest(). */
+GMSH_API void gmshModelMeshComputeHomology(int * ierr);
 
 /* Compute a cross field for the current mesh. The function creates 3 views:
  * the H function, the Theta function and cross directions. Return the tags of
@@ -1898,10 +1899,12 @@ GMSH_API void gmshModelGeoSetMaxTag(const int dim,
 
 /* Add a physical group of dimension `dim', grouping the entities with tags
  * `tags' in the built-in CAD representation. Return the tag of the physical
- * group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. */
+ * group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set
+ * the name of the physical group if `name' is not empty. */
 GMSH_API int gmshModelGeoAddPhysicalGroup(const int dim,
                                           int * tags, size_t tags_n,
                                           const int tag,
+                                          const char * name,
                                           int * ierr);
 
 /* Remove the physical groups `dimTags' from the built-in CAD representation.
diff --git a/api/gmshf.h b/api/gmshf.h
index 79ae009ff0146f3f8cc87459ddceab7859bbbf9d..3590bd9acd78f47f26c5255d8480eef51a202b23 100644
--- a/api/gmshf.h
+++ b/api/gmshf.h
@@ -10,7 +10,7 @@ c
 !DEC$ DEFINE GMSHF_H
 
 c
-c  This file defines the Gmsh Fortran API (v4.9.5).
+c  This file defines the Gmsh Fortran API (v4.10.0).
 c
 c  Do not edit this file directly: it is automatically generated by `api/gen.py'.
 c
@@ -20,14 +20,14 @@ c  examples.
 c
 
 !DEC$ DEFINE GMSH_API_VERSION_MAJOR = 4
-!DEC$ DEFINE GMSH_API_VERSION_MINOR = 9
-!DEC$ DEFINE GMSH_API_VERSION_PATCH = 5
+!DEC$ DEFINE GMSH_API_VERSION_MINOR = 10
+!DEC$ DEFINE GMSH_API_VERSION_PATCH = 0
 
       module gmsh_fortran
 
         use, intrinsic :: iso_c_binding
 
-        character(len = 5), parameter :: GMSH_API_VERSION = "4.9.5"
+        character(len = 5), parameter :: GMSH_API_VERSION = "4.10.0"
         real(c_double), parameter::M_PI = 3.14159265358979323846d0
 
         interface
@@ -385,12 +385,14 @@ c
 
 !  Add a physical group of dimension `dim', grouping the model entities with
 !  tags `tags'. Return the tag of the physical group, equal to `tag' if `tag'
-!  is positive, or a new tag if `tag' < 0.
+!  is positive, or a new tag if `tag' < 0. Set the name of the physical group
+!  if `name' is not empty.
         function gmshModelAddPhysicalGroup(
      &      dim,
      &      tags,
      &      tags_n,
      &      tag,
+     &      name,
      &      ierr)
      &    bind(C, name = "gmshModelAddPhysicalGroup")
           use, intrinsic :: iso_c_binding
@@ -399,6 +401,7 @@ c
             integer(c_int)::tags(*)
             integer(c_size_t), value :: tags_n
             integer(c_int), value::tag
+            character(len = 1, kind = c_char)::name(*)
             integer(c_int)::ierr
           end function gmshModelAddPhysicalGroup
 
@@ -2963,11 +2966,16 @@ c
             integer(c_int)::ierr
           end subroutine gmshModelMeshGetDuplicateNodes
 
-!  Remove duplicate nodes in the mesh of the current model.
+!  Remove duplicate nodes in the mesh of the entities `dimTags'. If `dimTags'
+!  is empty, consider the whole mesh.
         subroutine gmshModelMeshRemoveDuplicateNodes(
+     &      dimTags,
+     &      dimTags_n,
      &      ierr)
      &    bind(C, name = "gmshModelMeshRemoveDuplicateNodes")
           use, intrinsic :: iso_c_binding
+            integer(c_int)::dimTags(*)
+            integer(c_size_t), value :: dimTags_n
             integer(c_int)::ierr
           end subroutine gmshModelMeshRemoveDuplicateNodes
 
@@ -3042,15 +3050,19 @@ c
             integer(c_int)::ierr
           end subroutine gmshModelMeshCreateTopology
 
-!  Compute a basis representation for homology spaces after a mesh has been
-!  generated. The computation domain is given in a list of physical group tags
-!  `domainTags'; if empty, the whole mesh is the domain. The computation
-!  subdomain for relative homology computation is given in a list of physical
-!  group tags `subdomainTags'; if empty, absolute homology is computed. The
-!  dimensions homology bases to be computed are given in the list `dim'; if
-!  empty, all bases are computed. Resulting basis representation chains are
-!  stored as physical groups in the mesh.
-        subroutine gmshModelMeshComputeHomology(
+!  Add a request to compute a basis representation for homology spaces (if
+!  `type' == "Homology") or cohomology spaces (if `type' == "Cohomology"). The
+!  computation domain is given in a list of physical group tags `domainTags';
+!  if empty, the whole mesh is the domain. The computation subdomain for
+!  relative (co)homology computation is given in a list of physical group tags
+!  `subdomainTags'; if empty, absolute (co)homology is computed. The
+!  dimensions of the (co)homology bases to be computed are given in the list
+!  `dim'; if empty, all bases are computed. Resulting basis representation
+!  (co)chains are stored as physical groups in the mesh. If the request is
+!  added before mesh generation, the computation will be performed at the end
+!  of the meshing pipeline.
+        subroutine gmshModelMeshAddHomologyRequest(
+     &      type,
      &      domainTags,
      &      domainTags_n,
      &      subdomainTags,
@@ -3058,8 +3070,9 @@ c
      &      dims,
      &      dims_n,
      &      ierr)
-     &    bind(C, name = "gmshModelMeshComputeHomology")
+     &    bind(C, name = "gmshModelMeshAddHomologyRequest")
           use, intrinsic :: iso_c_binding
+            character(len = 1, kind = c_char)::type(*)
             integer(c_int)::domainTags(*)
             integer(c_size_t), value :: domainTags_n
             integer(c_int)::subdomainTags(*)
@@ -3067,34 +3080,23 @@ c
             integer(c_int)::dims(*)
             integer(c_size_t), value :: dims_n
             integer(c_int)::ierr
-          end subroutine gmshModelMeshComputeHomology
+          end subroutine gmshModelMeshAddHomologyRequest
 
-!  Compute a basis representation for cohomology spaces after a mesh has been
-!  generated. The computation domain is given in a list of physical group tags
-!  `domainTags'; if empty, the whole mesh is the domain. The computation
-!  subdomain for relative cohomology computation is given in a list of
-!  physical group tags `subdomainTags'; if empty, absolute cohomology is
-!  computed. The dimensions homology bases to be computed are given in the
-!  list `dim'; if empty, all bases are computed. Resulting basis
-!  representation cochains are stored as physical groups in the mesh.
-        subroutine gmshModelMeshComputeCohomology(
-     &      domainTags,
-     &      domainTags_n,
-     &      subdomainTags,
-     &      subdomainTags_n,
-     &      dims,
-     &      dims_n,
+!  Clear all (co)homology computation requests.
+        subroutine gmshModelMeshClearHomologyRequests(
      &      ierr)
-     &    bind(C, name = "gmshModelMeshComputeCohomology")
+     &    bind(C, name = "gmshModelMeshClearHomologyRequests")
+          use, intrinsic :: iso_c_binding
+            integer(c_int)::ierr
+          end subroutine gmshModelMeshClearHomologyRequests
+
+!  Perform the (co)homology computations requested by addHomologyRequest().
+        subroutine gmshModelMeshComputeHomology(
+     &      ierr)
+     &    bind(C, name = "gmshModelMeshComputeHomology")
           use, intrinsic :: iso_c_binding
-            integer(c_int)::domainTags(*)
-            integer(c_size_t), value :: domainTags_n
-            integer(c_int)::subdomainTags(*)
-            integer(c_size_t), value :: subdomainTags_n
-            integer(c_int)::dims(*)
-            integer(c_size_t), value :: dims_n
             integer(c_int)::ierr
-          end subroutine gmshModelMeshComputeCohomology
+          end subroutine gmshModelMeshComputeHomology
 
 !  Compute a cross field for the current mesh. The function creates 3 views:
 !  the H function, the Theta function and cross directions. Return the tags of
@@ -4020,12 +4022,14 @@ c
 
 !  Add a physical group of dimension `dim', grouping the entities with tags
 !  `tags' in the built-in CAD representation. Return the tag of the physical
-!  group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0.
+!  group, equal to `tag' if `tag' is positive, or a new tag if `tag' < 0. Set
+!  the name of the physical group if `name' is not empty.
         function gmshModelGeoAddPhysicalGroup(
      &      dim,
      &      tags,
      &      tags_n,
      &      tag,
+     &      name,
      &      ierr)
      &    bind(C, name = "gmshModelGeoAddPhysicalGroup")
           use, intrinsic :: iso_c_binding
@@ -4034,6 +4038,7 @@ c
             integer(c_int)::tags(*)
             integer(c_size_t), value :: tags_n
             integer(c_int), value::tag
+            character(len = 1, kind = c_char)::name(*)
             integer(c_int)::ierr
           end function gmshModelGeoAddPhysicalGroup
 
diff --git a/doc/texinfo/api.texi b/doc/texinfo/api.texi
index a80a8d10f0bef9101dd2ad8d3d4df8523f477108..ae6826c9f131952f45ad0f519996738fd00954f3 100644
--- a/doc/texinfo/api.texi
+++ b/doc/texinfo/api.texi
@@ -76,7 +76,7 @@ Finalize the Gmsh API. This must be called when you are done using the Gmsh API.
 @item Language-specific definition:
 @url{@value{GITLAB-PREFIX}/api/gmsh.h#L82,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L62,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L268,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L74,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L175,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L172,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L148,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L173,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L231,t5.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L174,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L165,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L135,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L180,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L225,t5.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L174,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L170,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L147,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L173,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L231,t5.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L173,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L163,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L134,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L180,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L225,t5.py}, ...)
 @end table
 
 @item gmsh/open
@@ -128,7 +128,7 @@ Write a file. The export format is determined by the file extension.
 @item Language-specific definition:
 @url{@value{GITLAB-PREFIX}/api/gmsh.h#L101,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L77,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L313,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L120,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L124,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L144,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L85,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L167,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L225,t5.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L123,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L137,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L80,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L174,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L219,t5.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L123,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L142,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L84,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L167,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L225,t5.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L122,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L135,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L79,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L174,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L219,t5.py}, ...)
 @end table
 
 @item gmsh/clear
@@ -168,7 +168,7 @@ are listed in the Gmsh reference manual.
 @item Language-specific definition:
 @url{@value{GITLAB-PREFIX}/api/gmsh.h#L115,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L87,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L346,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L159,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L91,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L206,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L97,t6.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t7.cpp#L58,t7.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L54,t8.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L85,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L201,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L98,t6.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t7.py#L51,t7.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L47,t8.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L90,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L206,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L97,t6.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t7.cpp#L58,t7.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L54,t8.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L84,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L201,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L98,t6.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t7.py#L51,t7.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L47,t8.py}, ...)
 @end table
 
 @item gmsh/option/getNumber
@@ -242,7 +242,7 @@ Gmsh reference manual. For conciseness "Color." can be ommitted in @code{name}.
 @item Language-specific definition:
 @url{@value{GITLAB-PREFIX}/api/gmsh.h#L149,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L117,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L426,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L236,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L92,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L61,t8.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L86,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L58,t8.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L91,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L61,t8.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L85,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L58,t8.py})
 @end table
 
 @item gmsh/option/getColor
@@ -261,7 +261,7 @@ Gmsh reference manual. For conciseness "Color." can be ommitted in @code{name}.
 @item Language-specific definition:
 @url{@value{GITLAB-PREFIX}/api/gmsh.h#L161,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L128,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L449,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L256,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L98,t3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L91,t3.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L97,t3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L90,t3.py})
 @end table
 
 @end ftable
@@ -479,17 +479,18 @@ C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L119,x1.cpp}), Python (@url
 @item gmsh/model/addPhysicalGroup
 Add a physical group of dimension @code{dim}, grouping the model entities with
 tags @code{tags}. Return the tag of the physical group, equal to @code{tag} if
-@code{tag} is positive, or a new tag if @code{tag} < 0.
+@code{tag} is positive, or a new tag if @code{tag} < 0. Set the name of the
+physical group if @code{name} is not empty.
 
 @table @asis
 @item Input:
-@code{dim}, @code{tags}, @code{tag = -1}
+@code{dim}, @code{tags}, @code{tag = -1}, @code{name = ""}
 @item Output:
 -
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L259,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L207,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L729,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L530,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L260,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L208,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L729,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L531,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L116,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L34,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L36,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L196,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L76,t14.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L115,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L32,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L33,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L192,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L70,t14.py}, ...)
 @end table
@@ -506,7 +507,7 @@ Remove the physical groups @code{dimTags} from the current model. If
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L267,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L214,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L752,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L546,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L269,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L216,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L754,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L547,Julia}
 @end table
 
 @item gmsh/model/setPhysicalName
@@ -520,9 +521,9 @@ Set the name of the physical group of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L272,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L218,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L769,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L563,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L274,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L220,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L771,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L564,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L118,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L36,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L38,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L77,t14.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L52,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L117,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L34,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L35,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L71,t14.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L40,t21.py}, ...)
+Python (@url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L49,poisson.py}, @url{@value{GITLAB-PREFIX}/examples/api/step_assembly.py#L37,step_assembly.py})
 @end table
 
 @item gmsh/model/removePhysicalName
@@ -536,7 +537,7 @@ Remove the physical name @code{name} from the current model.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L279,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L224,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L786,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L578,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L281,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L226,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L788,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L579,Julia}
 @end table
 
 @item gmsh/model/getPhysicalName
@@ -550,7 +551,7 @@ Get the name of the physical group of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L284,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L228,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L801,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L595,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L286,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L230,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L803,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L596,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L124,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L103,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L87,poisson.py})
 @end table
@@ -567,7 +568,7 @@ value @code{newTag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L292,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L235,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L822,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L613,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L294,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L237,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L824,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L614,Julia}
 @end table
 
 @item gmsh/model/getBoundary
@@ -586,9 +587,9 @@ recursively down to dimension 0 (i.e. to points) if @code{recursive} is true.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L304,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L246,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L840,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L635,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L306,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L248,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L842,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L636,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L88,t14.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L118,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L97,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L50,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L176,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L82,t14.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L100,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L88,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L46,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L152,t21.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L88,t14.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L118,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L97,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L50,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L174,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L81,t14.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L100,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L88,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L46,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L150,t21.py}, ...)
 @end table
 
 @item gmsh/model/getAdjacencies
@@ -605,7 +606,7 @@ adjacent entities of dimension @code{dim} - 1.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L316,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L257,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L869,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L661,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L318,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L259,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L871,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L662,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L105,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L92,x1.py})
 @end table
@@ -624,7 +625,7 @@ dimension (e.g. points if @code{dim} == 0).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L327,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L267,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L897,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L686,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L329,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L269,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L899,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L687,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L123,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L86,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L105,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L105,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L80,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L86,t20.py})
 @end table
@@ -643,7 +644,7 @@ the whole model.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L341,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L280,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L926,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L709,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L343,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L282,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L928,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L710,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L113,t18.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L103,t18.py})
 @end table
@@ -659,7 +660,7 @@ Return the geometrical dimension of the current model.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L353,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L291,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L965,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L732,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L355,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L293,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L967,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L733,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L35,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L32,x1.py})
 @end table
@@ -680,7 +681,7 @@ overall model.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L362,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L298,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L982,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L753,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L364,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L300,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L984,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L754,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L78,x2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L24,x4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L71,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L74,x2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L22,x4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L70,x7.py}, @url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L28,copy_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/discrete.py#L9,discrete.py}, ...)
 @end table
@@ -699,7 +700,7 @@ dimension 0.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L372,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L307,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1007,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L770,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L374,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L309,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1009,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L771,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L92,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L119,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L84,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L94,t20.py}, @url{@value{GITLAB-PREFIX}/examples/api/spherical_surf.py#L16,spherical_surf.py})
 @end table
@@ -715,7 +716,7 @@ Remove the entity name @code{name} from the current model.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L378,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L312,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1027,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L787,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L380,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L314,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1029,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L788,Julia}
 @end table
 
 @item gmsh/model/getType
@@ -729,9 +730,9 @@ Get the type of the entity of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L383,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L316,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1042,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L804,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L385,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L318,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1044,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L805,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L166,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L90,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L149,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L81,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L17,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L44,partition.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L164,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L90,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L147,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L81,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L17,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L44,partition.py})
 @end table
 
 @item gmsh/model/getParent
@@ -747,9 +748,9 @@ tag @code{tag}, i.e. from which the entity is a part of, if any.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L392,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L324,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1063,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L825,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L394,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L326,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1065,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L826,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L173,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L138,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L151,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L112,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L31,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L46,partition.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L171,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L138,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L149,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L112,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L31,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L46,partition.py})
 @end table
 
 @item gmsh/model/getNumberOfPartitions
@@ -763,7 +764,7 @@ Return the number of partitions in the model.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L400,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L331,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1090,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L844,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L402,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L333,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1092,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L845,Julia}
 @end table
 
 @item gmsh/model/getPartitions
@@ -778,9 +779,9 @@ belongs.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L406,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L335,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1107,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L862,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L408,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L337,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1109,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L863,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L163,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L133,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L146,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L109,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L28,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L41,partition.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L161,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L133,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L144,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L109,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L28,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L41,partition.py})
 @end table
 
 @item gmsh/model/getValue
@@ -800,9 +801,9 @@ coordinates in @code{coord}, concatenated: [p1x, p1y, p1z, p2x, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L419,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L347,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1129,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L888,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L421,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L349,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1131,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L889,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L91,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L92,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L86,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L78,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/reparamOnFace.py#L20,reparamOnFace.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L35,terrain_stl.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L90,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L92,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L85,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L78,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/reparamOnFace.py#L20,reparamOnFace.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L35,terrain_stl.py})
 @end table
 
 @item gmsh/model/getDerivative
@@ -825,7 +826,7 @@ derivative with respect to u and v: [d1ux, d1uy, d1uz, d1vx, d1vy, d1vz, d2ux,
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L435,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L362,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1158,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L916,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L437,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L364,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1160,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L917,Julia}
 @end table
 
 @item gmsh/model/getSecondDerivative
@@ -849,7 +850,7 @@ d1uvx, d1uvy, d1uvz, d2uux, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L453,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L379,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1189,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L945,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L455,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L381,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1191,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L946,Julia}
 @end table
 
 @item gmsh/model/getCurvature
@@ -867,7 +868,7 @@ u, v parametric coordinates on the surface, concatenated: [p1u, p1v, p2u, ...]).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L465,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L390,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1222,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L969,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L467,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L392,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1224,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L970,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L60,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L50,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/normals.py#L28,normals.py})
 @end table
@@ -886,7 +887,7 @@ concatenated: [p1u, p1v, p2u, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L476,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L400,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1249,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L992,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L478,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L402,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1251,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L993,Julia}
 @end table
 
 @item gmsh/model/getNormal
@@ -903,7 +904,7 @@ triplets of x, y, z components, concatenated: [n1x, n1y, n1z, n2x, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L489,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L412,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1284,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1024,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L491,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L414,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1286,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1025,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L56,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L47,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/normals.py#L26,normals.py})
 @end table
@@ -924,7 +925,7 @@ the surface (if @code{dim} = 2), i.e. [p1t, p2t, ...] or [p1u, p1v, p2u, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L501,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L423,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1309,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1049,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L503,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L425,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1311,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1050,Julia}
 @end table
 
 @item gmsh/model/getParametrizationBounds
@@ -939,7 +940,7 @@ entity of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L510,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L431,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1337,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1070,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L512,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L433,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1339,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1071,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L88,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L75,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/reparamOnFace.py#L17,reparamOnFace.py})
 @end table
@@ -959,7 +960,7 @@ underyling geometrical representation.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L522,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L442,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1363,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1097,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L524,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L444,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1365,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1098,Julia}
 @end table
 
 @item gmsh/model/getClosestPoint
@@ -979,7 +980,7 @@ coordinates concatenated on the surface (if @code{dim} = 2), i.e. [p1t, p2t,
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L535,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L455,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1389,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1119,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L537,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L457,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1391,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1120,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/closest_point.py#L11,closest_point.py})
 @end table
@@ -1000,7 +1001,7 @@ subset of entities, depending on the underyling geometrical representation.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L549,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L468,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1422,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1147,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L551,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L470,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1424,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1148,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L97,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L82,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/reparamOnFace.py#L19,reparamOnFace.py})
 @end table
@@ -1017,7 +1018,7 @@ the visibility setting recursively if @code{recursive} is true.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L560,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L478,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1452,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1166,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L562,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L480,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1454,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1167,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/gui.py#L33,gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/hybrid_order.py#L14,hybrid_order.py})
 @end table
@@ -1034,7 +1035,7 @@ Get the visibility of the model entity of dimension @code{dim} and tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L567,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L484,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1471,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1185,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L569,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L486,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1473,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1186,Julia}
 @end table
 
 @item gmsh/model/setVisibilityPerWindow
@@ -1049,7 +1050,7 @@ Set the global visibility of the model per window to @code{value}, where
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L575,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L491,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1492,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1202,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L577,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L493,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1494,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1203,Julia}
 @end table
 
 @item gmsh/model/setColor
@@ -1066,7 +1067,7 @@ should be integers between 0 and 255. Apply the color setting recursively if
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L583,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L498,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1509,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1219,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L585,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L500,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1511,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1220,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L158,t4.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L167,t4.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L35,gui.py})
 @end table
@@ -1082,7 +1083,7 @@ Get the color of the model entity of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L593,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L507,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1532,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1238,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L595,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L509,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1534,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1239,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/step_boundary_colors.py#L10,step_boundary_colors.py})
 @end table
@@ -1098,7 +1099,7 @@ Set the @code{x}, @code{y}, @code{z} coordinates of a geometrical point.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L603,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L516,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1563,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1257,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L605,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L518,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1565,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1258,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L79,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L75,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/reparamOnFace.py#L23,reparamOnFace.py})
 @end table
@@ -1120,9 +1121,9 @@ Generate a mesh of the current model, up to dimension @code{dim} (0, 1, 2 or 3).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L614,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L523,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1587,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1281,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L616,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L525,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1589,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1282,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L121,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L143,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L84,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L165,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L224,t5.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L120,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L136,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L79,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L172,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L218,t5.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L120,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L141,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L83,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L165,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L224,t5.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L119,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L134,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L78,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L172,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L218,t5.py}, ...)
 @end table
 
 @item gmsh/model/mesh/partition
@@ -1138,9 +1139,9 @@ the partition of each element explicitly.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L621,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L529,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1601,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1297,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L623,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L531,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1603,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1298,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L138,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L126,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L26,partition.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L136,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L124,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/partition.py#L26,partition.py})
 @end table
 
 @item gmsh/model/mesh/unpartition
@@ -1154,7 +1155,7 @@ Unpartition the mesh of the current model.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L628,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L535,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1621,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1311,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L630,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L537,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1623,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1312,Julia}
 @end table
 
 @item gmsh/model/mesh/optimize
@@ -1168,13 +1169,13 @@ Laplace smoothing, "Relocate2D" and "Relocate3D" for node relocation). If
 
 @table @asis
 @item Input:
-@code{method}, @code{force = False}, @code{niter = 1}, @code{dimTags = []}
+@code{method = ""}, @code{force = False}, @code{niter = 1}, @code{dimTags = []}
 @item Output:
 -
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L640,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L544,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1634,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1331,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L642,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L546,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1636,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1332,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L124,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L157,naca_boundary_layer_3d.py}, @url{@value{GITLAB-PREFIX}/examples/api/opt.py#L12,opt.py})
 @end table
@@ -1190,7 +1191,7 @@ Recombine the mesh of the current model.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L648,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L551,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1658,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1347,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L650,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L553,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1660,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1348,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/stl_to_mesh.py#L28,stl_to_mesh.py})
 @end table
@@ -1206,7 +1207,7 @@ Refine the mesh of the current model by uniformly splitting the elements.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L653,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L554,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1671,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1361,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L655,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L556,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1673,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1362,Julia}
 @end table
 
 @item gmsh/model/mesh/setOrder
@@ -1220,7 +1221,7 @@ Set the order of the elements in the mesh of the current model to @code{order}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L658,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L557,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1684,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1375,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L660,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L559,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1686,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1376,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x6.cpp#L27,x6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L27,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/hybrid_order.py#L16,hybrid_order.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L123,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L156,naca_boundary_layer_3d.py})
 @end table
@@ -1237,7 +1238,7 @@ populated by the new 3D meshing algorithms.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L664,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L562,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1699,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1393,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L666,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L564,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1701,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1394,Julia}
 @end table
 
 @item gmsh/model/mesh/getLastNodeError
@@ -1252,7 +1253,7 @@ populated by the new 3D meshing algorithms.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L670,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L567,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1719,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1415,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L672,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L569,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1721,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1416,Julia}
 @end table
 
 @item gmsh/model/mesh/clear
@@ -1269,7 +1270,7 @@ another entity with a non-empty mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L678,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L574,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1739,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1436,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L680,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L576,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1741,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1437,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L53,copy_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/flatten.py#L32,flatten.py}, @url{@value{GITLAB-PREFIX}/examples/api/remesh_partial_move.py#L20,remesh_partial_move.py})
 @end table
@@ -1287,7 +1288,7 @@ mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L685,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L580,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1757,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1453,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L687,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L582,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1759,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1454,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/mirror_mesh.py#L44,mirror_mesh.py})
 @end table
@@ -1306,7 +1307,7 @@ coordinates of the nodes classified on the entities @code{dimTags}. If
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L693,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L587,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1774,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1472,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L695,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L589,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1776,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1473,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/flatten2.py#L15,flatten2.py})
 @end table
@@ -1334,7 +1335,7 @@ the entity if @code{dim} >= 0 in order to compute their parametric coordinates).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L711,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L604,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1795,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1502,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L713,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L606,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1797,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1503,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L75,x1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L65,x4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L51,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L69,x1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L61,x4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L43,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L15,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L20,copy_mesh.py}, ...)
 @end table
@@ -1352,7 +1353,7 @@ of type @code{elementType}. The other arguments are treated as in
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L723,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L615,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1837,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1529,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L725,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L617,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1839,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1530,Julia}
 @end table
 
 @item gmsh/model/mesh/getNode
@@ -1370,7 +1371,7 @@ accessing nodes in bulk is often preferable.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L737,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L628,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1867,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1559,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L739,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L630,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1869,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1560,Julia}
 @end table
 
 @item gmsh/model/mesh/setNode
@@ -1387,7 +1388,7 @@ often preferable.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L749,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L639,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1901,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1585,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L751,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L641,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1903,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1586,Julia}
 @end table
 
 @item gmsh/model/mesh/rebuildNodeCache
@@ -1401,7 +1402,7 @@ Rebuild the node cache.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L756,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L645,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1923,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1600,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L758,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L647,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1925,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1601,Julia}
 @end table
 
 @item gmsh/model/mesh/rebuildElementCache
@@ -1415,7 +1416,7 @@ Rebuild the element cache.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L761,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L649,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1938,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1615,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L763,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L651,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1940,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1616,Julia}
 @end table
 
 @item gmsh/model/mesh/getNodesForPhysicalGroup
@@ -1433,7 +1434,7 @@ n2x, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L769,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L656,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1953,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1635,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L771,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L658,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1955,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1636,Julia}
 @end table
 
 @item gmsh/model/mesh/getMaxNodeTag
@@ -1447,7 +1448,7 @@ Get the maximum tag @code{maxTag} of a node in the mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L777,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L663,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1981,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1658,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L779,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L665,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L1983,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1659,Julia}
 @end table
 
 @item gmsh/model/mesh/addNodes
@@ -1469,7 +1470,7 @@ automatically assigned to the nodes.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L790,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L675,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2000,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1681,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L792,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L677,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2002,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1682,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L92,x2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L27,x4.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L88,x2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L25,x4.py}, @url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L29,copy_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/discrete.py#L12,discrete.py}, @url{@value{GITLAB-PREFIX}/examples/api/flatten.py#L38,flatten.py}, ...)
 @end table
@@ -1488,7 +1489,7 @@ after the elements have been set.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L802,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L686,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2030,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1699,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L804,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L688,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2032,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1700,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L107,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L102,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain.py#L66,terrain.py})
 @end table
@@ -1507,7 +1508,7 @@ negative, relocate all the nodes in the mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L810,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L692,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2047,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1717,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L812,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L694,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2049,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1718,Julia}
 @end table
 
 @item gmsh/model/mesh/getElements
@@ -1533,7 +1534,7 @@ that contains the node tags of all the elements of the given type, concatenated:
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L828,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L709,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2066,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1745,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L830,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L711,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2068,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1746,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L80,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L72,x1.py}, @url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L21,copy_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L21,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/flatten.py#L29,flatten.py}, @url{@value{GITLAB-PREFIX}/examples/api/mirror_mesh.py#L22,mirror_mesh.py}, ...)
 @end table
@@ -1553,7 +1554,7 @@ is often preferable.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L841,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L721,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2106,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1781,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L843,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L723,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2108,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1782,Julia}
 @end table
 
 @item gmsh/model/mesh/getElementByCoordinates
@@ -1573,7 +1574,7 @@ the search location.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L856,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L734,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2140,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1809,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L858,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L736,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2142,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1810,Julia}
 @end table
 
 @item gmsh/model/mesh/getElementsByCoordinates
@@ -1593,7 +1594,7 @@ find elements near the search location.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L877,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L753,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2185,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1839,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L879,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L755,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2187,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1840,Julia}
 @end table
 
 @item gmsh/model/mesh/getLocalCoordinatesInElement
@@ -1611,7 +1612,7 @@ is often preferable.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L891,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L766,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2214,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1862,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L893,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L768,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2216,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1863,Julia}
 @end table
 
 @item gmsh/model/mesh/getElementTypes
@@ -1628,7 +1629,7 @@ mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L904,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L778,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2248,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1884,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L906,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L780,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2250,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1885,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x6.cpp#L38,x6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L33,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L92,poisson.py})
 @end table
@@ -1647,7 +1648,7 @@ corresponding serendip element type (element without interior nodes).
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L914,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L787,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2271,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1907,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L916,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L789,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2273,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1908,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L32,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L29,x7.py})
 @end table
@@ -1667,7 +1668,7 @@ number of primary (first order) nodes (@code{numPrimaryNodes}).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L925,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L797,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2294,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1928,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L927,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L799,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2296,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1929,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x1.cpp#L148,x1.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x1.py#L116,x1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L38,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/explore.py#L33,explore.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L111,poisson.py})
 @end table
@@ -1691,7 +1692,7 @@ indexed by @code{task}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L944,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L815,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2334,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1961,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L946,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L817,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2336,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1962,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L58,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L50,x7.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L18,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/neighbors.py#L15,neighbors.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L95,poisson.py})
 @end table
@@ -1707,7 +1708,7 @@ Get the maximum tag @code{maxTag} of an element in the mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L954,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L824,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2369,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1984,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L956,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L826,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2371,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L1985,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L78,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L74,x7.py})
 @end table
@@ -1724,7 +1725,7 @@ Preallocate data before calling @code{getElementsByType} with @code{numTasks} >
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L960,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L829,C}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L962,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L831,C}
 @end table
 
 @item gmsh/model/mesh/addElements
@@ -1747,7 +1748,7 @@ e1nN, e2n1, ...].
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L979,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L847,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2388,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2008,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L981,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L849,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2390,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2009,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L30,copy_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/discrete.py#L32,discrete.py}, @url{@value{GITLAB-PREFIX}/examples/api/flatten.py#L39,flatten.py}, @url{@value{GITLAB-PREFIX}/examples/api/mesh_from_discrete_curve.py#L21,mesh_from_discrete_curve.py}, @url{@value{GITLAB-PREFIX}/examples/api/mirror_mesh.py#L40,mirror_mesh.py}, ...)
 @end table
@@ -1769,7 +1770,7 @@ are automatically assigned to the elements.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L994,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L861,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2419,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2031,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L996,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L863,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2421,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2032,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L98,x2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L29,x4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L89,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L94,x2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L27,x4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L86,x7.py}, @url{@value{GITLAB-PREFIX}/examples/api/import_perf.py#L70,import_perf.py}, @url{@value{GITLAB-PREFIX}/examples/api/raw_tetrahedralization.py#L21,raw_tetrahedralization.py}, ...)
 @end table
@@ -1796,7 +1797,7 @@ g1v, g1w, ..., gGu, gGv, gGw]. @code{weights} contains the associated weights:
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1013,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L879,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2445,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2058,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1015,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L881,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2447,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2059,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L46,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L30,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L112,poisson.py})
 @end table
@@ -1825,7 +1826,7 @@ points. If @code{tag} < 0, get the Jacobian data for all entities. If
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1034,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L899,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2481,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2093,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1036,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L901,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2483,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2094,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L67,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L31,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L131,poisson.py})
 @end table
@@ -1842,7 +1843,7 @@ For C and C++ only.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1047,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L911,C}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1049,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L913,C}
 @end table
 
 @item gmsh/model/mesh/getJacobian
@@ -1866,7 +1867,7 @@ often preferable.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1070,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L933,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2526,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2128,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1072,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L935,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2528,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2129,Julia}
 @end table
 
 @item gmsh/model/mesh/getBasisFunctions
@@ -1899,7 +1900,7 @@ orientation indices.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1098,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L960,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2565,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2172,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1100,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L962,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2567,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2173,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L57,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L32,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L114,poisson.py})
 @end table
@@ -1920,7 +1921,7 @@ as it will return a vector of zeros.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1114,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L975,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2616,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2198,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1116,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L977,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2618,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2199,Julia}
 @end table
 
 @item gmsh/model/mesh/getBasisFunctionsOrientation@-ForElement
@@ -1934,7 +1935,7 @@ Get the orientation of a single element @code{elementTag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1124,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L984,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2645,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2218,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1126,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L986,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2647,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2219,Julia}
 @end table
 
 @item gmsh/model/mesh/getNumberOfOrientations
@@ -1949,7 +1950,7 @@ and function space named @code{functionSpaceType}.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1132,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L991,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2666,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2237,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1134,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L993,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2668,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2238,Julia}
 @end table
 
 @item gmsh/model/mesh/preallocateBasisFunctions@-Orientation
@@ -1964,7 +1965,7 @@ Preallocate data before calling @code{getBasisFunctionsOrientation} with
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1139,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L997,C}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1141,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L999,C}
 @end table
 
 @item gmsh/model/mesh/getEdges
@@ -1984,7 +1985,7 @@ as well.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1152,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1009,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2686,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2259,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1154,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1011,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2688,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2260,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L51,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L44,x7.py})
 @end table
@@ -2004,7 +2005,7 @@ by @code{createFaces()}, @code{getKeys()} or @code{addFaces()}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1163,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1019,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2717,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2286,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1165,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1021,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2719,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2287,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L52,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L45,x7.py})
 @end table
@@ -2020,7 +2021,7 @@ Create unique mesh edges for the entities @code{dimTags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1171,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1026,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2747,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2307,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1173,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1028,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2749,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2308,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L45,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L40,x7.py})
 @end table
@@ -2036,7 +2037,7 @@ Create unique mesh faces for the entities @code{dimTags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1176,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1030,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2763,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2324,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1178,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1032,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2765,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2325,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L46,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L41,x7.py})
 @end table
@@ -2054,7 +2055,7 @@ of the edges in the mesh. Mesh edges are created e.g. by @code{createEdges()},
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1183,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1036,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2779,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2345,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1185,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1038,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2781,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2346,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L103,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L98,x7.py})
 @end table
@@ -2072,7 +2073,7 @@ of the faces of type @code{faceType} in the mesh. Mesh faces are created e.g. by
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1191,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1043,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2804,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2370,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1193,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1045,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2806,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2371,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L104,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L99,x7.py})
 @end table
@@ -2089,7 +2090,7 @@ their nodes @code{edgeNodes}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1199,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1050,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2830,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2392,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1201,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1052,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2832,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2393,Julia}
 @end table
 
 @item gmsh/model/mesh/addFaces
@@ -2104,7 +2105,7 @@ identifiers @code{faceTags} and their nodes @code{faceNodes}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1206,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1056,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2849,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2408,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1208,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1058,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2851,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2409,Julia}
 @end table
 
 @item gmsh/model/mesh/getKeys
@@ -2124,7 +2125,7 @@ release.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1219,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1068,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2869,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2430,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1221,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1070,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2871,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2431,Julia}
 @end table
 
 @item gmsh/model/mesh/getKeysForElement
@@ -2138,7 +2139,7 @@ Get the pair of keys for a single element @code{elementTag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1230,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1078,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2905,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2456,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1232,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1080,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2907,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2457,Julia}
 @end table
 
 @item gmsh/model/mesh/getNumberOfKeys
@@ -2153,7 +2154,7 @@ named @code{functionSpaceType}.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1241,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1088,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2934,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2483,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1243,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1090,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2936,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2484,Julia}
 @end table
 
 @item gmsh/model/mesh/getKeysInformation
@@ -2173,7 +2174,7 @@ in a future release.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1253,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1099,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2954,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2506,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1255,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1101,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2956,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2507,Julia}
 @end table
 
 @item gmsh/model/mesh/getBarycenters
@@ -2193,7 +2194,7 @@ the part of the data indexed by @code{task}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1268,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1113,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2985,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2532,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1270,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1115,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L2987,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2533,Julia}
 @end table
 
 @item gmsh/model/mesh/preallocateBarycenters
@@ -2208,7 +2209,7 @@ For C and C++ only.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1280,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1124,C}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1282,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1126,C}
 @end table
 
 @item gmsh/model/mesh/getElementEdgeNodes
@@ -2229,7 +2230,7 @@ indexed by @code{task}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1294,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1137,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3016,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2558,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1296,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1139,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3018,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2559,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L34,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L30,x7.py})
 @end table
@@ -2253,7 +2254,7 @@ the data indexed by @code{task}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1312,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1154,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3047,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2585,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1314,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1156,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3049,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2586,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L35,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L31,x7.py}, @url{@value{GITLAB-PREFIX}/examples/api/neighbors.py#L16,neighbors.py})
 @end table
@@ -2270,7 +2271,7 @@ stored in the ghost entity of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1324,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1165,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3080,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2606,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1326,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1167,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3082,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2607,Julia}
 @end table
 
 @item gmsh/model/mesh/setSize
@@ -2285,9 +2286,9 @@ entities of dimension 0 (points) are handled.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1333,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1173,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3106,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2628,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1335,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1175,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3108,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2629,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L115,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L32,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L47,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L97,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L29,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L35,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L80,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/mirror_mesh.py#L13,mirror_mesh.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L115,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L32,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L47,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L97,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L29,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L35,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L80,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/extend_field.py#L17,extend_field.py}, ...)
 @end table
 
 @item gmsh/model/mesh/getSizes
@@ -2303,7 +2304,7 @@ size constraint is specified on the corresponding entity.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1341,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1180,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3124,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2649,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1343,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1182,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3126,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2650,Julia}
 @end table
 
 @item gmsh/model/mesh/setSizeAtParametricPoints
@@ -2319,7 +2320,7 @@ entities of dimension 1 (lines) are handled.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1349,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1187,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3147,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2671,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1351,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1189,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3149,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2672,Julia}
 @end table
 
 @item gmsh/model/mesh/setSizeCallback
@@ -2341,7 +2342,7 @@ mesh size; returning @code{lc} is equivalent to a no-op.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1365,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1202,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3169,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2693,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1367,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1204,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3171,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2694,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L117,t10.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L109,t10.py})
 @end table
@@ -2357,7 +2358,7 @@ Remove the mesh size callback from the current model.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1370,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1206,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3196,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2710,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1372,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1208,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3198,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2711,Julia}
 @end table
 
 @item gmsh/model/mesh/setTransfiniteCurve
@@ -2375,7 +2376,7 @@ Currently supported types are "Progression" (geometrical progression with power
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1379,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1212,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3210,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2728,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1381,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1214,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3212,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2729,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L155,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L151,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain.py#L149,terrain.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L42,terrain_bspline.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L78,terrain_stl.py})
 @end table
@@ -2397,7 +2398,7 @@ its boundary.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1393,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1225,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3231,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2748,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1395,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1227,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3233,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2749,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L158,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L153,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L11,get_data_perf.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain.py#L151,terrain.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L44,terrain_bspline.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L80,terrain_stl.py})
 @end table
@@ -2415,7 +2416,7 @@ interpolation explicitly.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1402,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1233,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3255,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2765,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1404,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1235,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3257,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2766,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L162,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L156,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain.py#L154,terrain.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L47,terrain_bspline.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L83,terrain_stl.py})
 @end table
@@ -2438,7 +2439,7 @@ transfinite surfaces.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1415,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1245,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3274,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2786,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1417,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1247,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3276,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2787,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L169,x2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x6.cpp#L22,x6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L162,x2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L21,x6.py})
 @end table
@@ -2456,7 +2457,7 @@ recombine triangles into quadrangles) are supported.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1424,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1253,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3299,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2805,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1426,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1255,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3301,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2806,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t11.cpp#L44,t11.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L159,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t11.py#L42,t11.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L154,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L238,poisson.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain.py#L152,terrain.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L45,terrain_bspline.py}, ...)
 @end table
@@ -2473,7 +2474,7 @@ and tag @code{tag}. @code{val} iterations of a Laplace smoother are applied.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1431,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1259,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3317,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2821,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1433,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1261,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3319,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2822,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L160,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L155,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain.py#L153,terrain.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L46,terrain_bspline.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L82,terrain_stl.py})
 @end table
@@ -2493,7 +2494,7 @@ as-is.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1442,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1269,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3335,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2839,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1444,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1271,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3337,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2840,Julia}
 @end table
 
 @item gmsh/model/mesh/setAlgorithm
@@ -2508,7 +2509,7 @@ Set the meshing algorithm on the model entity of dimension @code{dim} and tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1450,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1276,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3356,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2855,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1452,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1278,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3358,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2856,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L211,t5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L205,t5.py})
 @end table
@@ -2526,7 +2527,7 @@ entity of dimension @code{dim} and tag @code{tag}. Currently only supported for
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1459,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1284,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3374,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2872,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1461,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1286,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3376,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2873,Julia}
 @end table
 
 @item gmsh/model/mesh/setCompound
@@ -2542,7 +2543,7 @@ discrete entity, which is automatically reparametrized.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1468,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1292,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3393,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2889,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1470,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1294,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3395,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2890,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t12.cpp#L83,t12.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t12.py#L79,t12.py})
 @end table
@@ -2561,7 +2562,7 @@ kernel, as it relies on the STL triangulation.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1477,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1300,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3412,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2907,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1479,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1302,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3414,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2908,Julia}
 @end table
 
 @item gmsh/model/mesh/removeConstraints
@@ -2576,7 +2577,7 @@ Remove all meshing constraints from the model entities @code{dimTags}. If
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1483,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1305,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3430,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2923,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1485,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1307,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3432,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2924,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L50,terrain_bspline.py})
 @end table
@@ -2600,7 +2601,7 @@ their boundary.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1496,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1317,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3447,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2947,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1498,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1319,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3449,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2948,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t15.cpp#L51,t15.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t15.py#L47,t15.py})
 @end table
@@ -2618,7 +2619,7 @@ points if @code{dim} == 0).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1506,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1326,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3473,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2963,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1508,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1328,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3475,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2964,Julia}
 @end table
 
 @item gmsh/model/mesh/getEmbedded
@@ -2633,7 +2634,7 @@ and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1513,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1332,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3492,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2983,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1515,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1334,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3494,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L2984,Julia}
 @end table
 
 @item gmsh/model/mesh/reorderElements
@@ -2648,7 +2649,7 @@ Reorder the elements of type @code{elementType} classified on the entity of tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1521,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1339,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3514,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3003,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1523,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1341,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3516,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3004,Julia}
 @end table
 
 @item gmsh/model/mesh/renumberNodes
@@ -2662,7 +2663,7 @@ Renumber the node tags in a continuous sequence.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1528,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1345,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3533,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3018,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1530,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1347,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3535,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3019,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/view_renumbering.py#L31,view_renumbering.py})
 @end table
@@ -2678,7 +2679,7 @@ Renumber the element tags in a continuous sequence.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1533,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1348,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3547,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3033,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1535,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1350,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3549,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3034,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/view_renumbering.py#L32,view_renumbering.py})
 @end table
@@ -2701,7 +2702,7 @@ and @code{dim} == 2.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1545,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1358,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3561,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3054,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1547,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1360,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3563,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3055,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L40,t18.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L36,t18.py}, @url{@value{GITLAB-PREFIX}/examples/api/periodic.py#L13,periodic.py})
 @end table
@@ -2718,7 +2719,7 @@ and tags @code{tags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1554,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1366,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3589,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3072,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1556,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1368,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3591,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3073,Julia}
 @end table
 
 @item gmsh/model/mesh/getPeriodicNodes
@@ -2736,7 +2737,7 @@ the returned data.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1565,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1376,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3612,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3095,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1567,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1378,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3614,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3096,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/periodic.py#L19,periodic.py})
 @end table
@@ -2757,7 +2758,7 @@ locating basis functions for sorting purposes.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1581,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1391,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3648,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3127,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1583,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1393,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3650,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3128,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/periodic.py#L23,periodic.py})
 @end table
@@ -2773,7 +2774,7 @@ Import the model STL representation (if available) as the current mesh.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1596,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1405,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3695,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3161,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1598,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1407,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3697,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3162,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/stl_to_mesh.py#L19,stl_to_mesh.py})
 @end table
@@ -2790,21 +2791,22 @@ Get the @code{tags} of any duplicate nodes in the mesh of the entities
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1602,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1409,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3709,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3179,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1604,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1411,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3711,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3180,Julia}
 @end table
 
 @item gmsh/model/mesh/removeDuplicateNodes
-Remove duplicate nodes in the mesh of the current model.
+Remove duplicate nodes in the mesh of the entities @code{dimTags}. If
+@code{dimTags} is empty, consider the whole mesh.
 
 @table @asis
 @item Input:
--
+@code{dimTags = []}
 @item Output:
 -
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1608,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1414,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3731,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3199,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1611,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1417,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3733,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3201,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/glue_and_remesh_stl.py#L15,glue_and_remesh_stl.py}, @url{@value{GITLAB-PREFIX}/examples/api/mirror_mesh.py#L52,mirror_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/stl_to_mesh.py#L20,stl_to_mesh.py})
 @end table
@@ -2822,7 +2824,7 @@ surfaces.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1614,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1418,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3745,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3215,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1617,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1422,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3750,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3219,Julia}
 @end table
 
 @item gmsh/model/mesh/classifySurfaces
@@ -2843,7 +2845,7 @@ the discrete entities in the built-in CAD kernel.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1627,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1430,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3762,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3237,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1630,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1434,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3767,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3241,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L53,t13.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L44,t13.py}, @url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L12,aneurysm.py}, @url{@value{GITLAB-PREFIX}/examples/api/glue_and_remesh_stl.py#L19,glue_and_remesh_stl.py}, @url{@value{GITLAB-PREFIX}/examples/api/remesh_stl.py#L22,remesh_stl.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L16,terrain_stl.py})
 @end table
@@ -2863,7 +2865,7 @@ entities.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1640,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1442,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3788,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3256,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1643,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1446,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3793,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3260,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L59,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L111,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L50,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L106,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L13,aneurysm.py}, @url{@value{GITLAB-PREFIX}/examples/api/glue_and_remesh_stl.py#L32,glue_and_remesh_stl.py}, @url{@value{GITLAB-PREFIX}/examples/api/remesh_stl.py#L26,remesh_stl.py}, ...)
 @end table
@@ -2884,53 +2886,61 @@ in CAD kernel.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1650,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1451,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3808,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3277,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1653,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1455,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3813,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3281,Julia}
 @end table
 
-@item gmsh/model/mesh/computeHomology
-Compute a basis representation for homology spaces after a mesh has been
-generated. The computation domain is given in a list of physical group tags
+@item gmsh/model/mesh/addHomologyRequest
+Add a request to compute a basis representation for homology spaces (if
+@code{type} == "Homology") or cohomology spaces (if @code{type} ==
+"Cohomology"). The computation domain is given in a list of physical group tags
 @code{domainTags}; if empty, the whole mesh is the domain. The computation
-subdomain for relative homology computation is given in a list of physical group
-tags @code{subdomainTags}; if empty, absolute homology is computed. The
-dimensions homology bases to be computed are given in the list @code{dim}; if
-empty, all bases are computed. Resulting basis representation chains are stored
-as physical groups in the mesh.
+subdomain for relative (co)homology computation is given in a list of physical
+group tags @code{subdomainTags}; if empty, absolute (co)homology is computed.
+The dimensions of the (co)homology bases to be computed are given in the list
+@code{dim}; if empty, all bases are computed. Resulting basis representation
+(co)chains are stored as physical groups in the mesh. If the request is added
+before mesh generation, the computation will be performed at the end of the
+meshing pipeline.
 
 @table @asis
 @item Input:
-@code{domainTags = []}, @code{subdomainTags = []}, @code{dims = []}
+@code{type = "Homology"}, @code{domainTags = []}, @code{subdomainTags = []}, @code{dims = []}
 @item Output:
 -
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1663,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1463,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3829,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3299,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1669,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1470,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3834,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3305,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L112,t14.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L110,t14.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L112,t14.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L107,t14.py})
 @end table
 
-@item gmsh/model/mesh/computeCohomology
-Compute a basis representation for cohomology spaces after a mesh has been
-generated. The computation domain is given in a list of physical group tags
-@code{domainTags}; if empty, the whole mesh is the domain. The computation
-subdomain for relative cohomology computation is given in a list of physical
-group tags @code{subdomainTags}; if empty, absolute cohomology is computed. The
-dimensions homology bases to be computed are given in the list @code{dim}; if
-empty, all bases are computed. Resulting basis representation cochains are
-stored as physical groups in the mesh.
+@item gmsh/model/mesh/clearHomologyRequests
+Clear all (co)homology computation requests.
 
 @table @asis
 @item Input:
-@code{domainTags = []}, @code{subdomainTags = []}, @code{dims = []}
+-
 @item Output:
 -
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1677,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1476,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3856,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3321,Julia}
-@item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L122,t14.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L122,t14.py})
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1677,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1477,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3865,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3320,Julia}
+@end table
+
+@item gmsh/model/mesh/computeHomology
+Perform the (co)homology computations requested by addHomologyRequest().
+
+@table @asis
+@item Input:
+-
+@item Output:
+-
+@item Return:
+-
+@item Language-specific definition:
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1682,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1480,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3879,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3335,Julia}
 @end table
 
 @item gmsh/model/mesh/computeCrossField
@@ -2945,7 +2955,7 @@ function, the Theta function and cross directions. Return the tags of the views.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1686,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1484,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3883,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3339,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1689,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1485,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3893,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3353,Julia}
 @end table
 
 @item gmsh/model/mesh/triangulate
@@ -2961,7 +2971,7 @@ resulting triangles in @code{tri}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1693,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1490,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3904,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3361,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1696,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1491,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3914,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3375,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/raw_triangulation.py#L14,raw_triangulation.py})
 @end table
@@ -2979,7 +2989,7 @@ resulting tetrahedra in @code{tetra}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1701,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1497,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3926,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3382,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1704,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1498,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3936,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3396,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/raw_tetrahedralization.py#L16,raw_tetrahedralization.py})
 @end table
@@ -3003,7 +3013,7 @@ the field tag.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1711,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1504,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3954,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3412,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1714,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1505,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3964,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3426,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t7.cpp#L50,t7.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L47,t10.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t11.cpp#L38,t11.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L83,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t17.cpp#L41,t17.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t7.py#L43,t7.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L43,t10.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L71,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t17.py#L35,t17.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L111,adapt_mesh.py}, ...)
 @end table
@@ -3019,7 +3029,7 @@ Remove the field with tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1717,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1509,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3974,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3426,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1720,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1510,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3984,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3440,Julia}
 @end table
 
 @item gmsh/model/mesh/field/list
@@ -3033,7 +3043,7 @@ Get the list of all fields.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1722,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1513,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3988,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3442,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1725,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1514,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L3998,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3456,Julia}
 @end table
 
 @item gmsh/model/mesh/field/getType
@@ -3047,7 +3057,7 @@ Get the type @code{fieldType} of the field with tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1727,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1517,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4006,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3461,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1730,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1518,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4016,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3475,Julia}
 @end table
 
 @item gmsh/model/mesh/field/setNumber
@@ -3062,7 +3072,7 @@ Set the numerical option @code{option} to value @code{value} for field
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1733,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1522,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4026,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3478,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1736,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1523,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4036,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3492,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t7.cpp#L51,t7.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L50,t10.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t17.cpp#L42,t17.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t7.py#L44,t7.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L46,t10.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t17.py#L36,t17.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L112,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L47,copy_mesh.py}, ...)
 @end table
@@ -3078,7 +3088,7 @@ Get the value of the numerical option @code{option} for field @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1740,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1528,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4043,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3495,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1743,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1529,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4053,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3509,Julia}
 @end table
 
 @item gmsh/model/mesh/field/setString
@@ -3092,7 +3102,7 @@ Set the string option @code{option} to value @code{value} for field @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1747,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1534,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4064,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3511,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1750,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1535,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4074,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3525,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L74,t10.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t11.cpp#L39,t11.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L86,t13.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L69,t10.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L73,t13.py})
 @end table
@@ -3108,7 +3118,7 @@ Get the value of the string option @code{option} for field @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1754,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1540,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4081,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3528,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1757,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1541,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4091,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3542,Julia}
 @end table
 
 @item gmsh/model/mesh/field/setNumbers
@@ -3123,9 +3133,9 @@ Set the numerical list option @code{option} to value @code{value} for field
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1761,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1546,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4102,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3545,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1764,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1547,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4112,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3559,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L48,t10.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L44,t10.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L106,naca_boundary_layer_2d.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L48,t10.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L44,t10.py}, @url{@value{GITLAB-PREFIX}/examples/api/extend_field.py#L22,extend_field.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L106,naca_boundary_layer_2d.py})
 @end table
 
 @item gmsh/model/mesh/field/getNumbers
@@ -3139,7 +3149,7 @@ Get the value of the numerical list option @code{option} for field @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1768,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1552,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4120,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3562,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1771,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1553,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4130,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3576,Julia}
 @end table
 
 @item gmsh/model/mesh/field/setAsBackgroundMesh
@@ -3153,7 +3163,7 @@ Set the field @code{tag} as the background mesh size field.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1775,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1558,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4141,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3580,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1778,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1559,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4151,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3594,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t7.cpp#L54,t7.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t10.cpp#L109,t10.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t11.cpp#L41,t11.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L89,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t17.cpp#L43,t17.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t7.py#L47,t7.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t10.py#L102,t10.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L76,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t17.py#L37,t17.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L113,adapt_mesh.py}, ...)
 @end table
@@ -3169,7 +3179,7 @@ Set the field @code{tag} as a boundary layer size field.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1780,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1562,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4156,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3595,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1783,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1563,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4166,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3609,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L116,naca_boundary_layer_2d.py})
 @end table
@@ -3197,7 +3207,7 @@ the geo module.)
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1796,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1571,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4177,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3630,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1799,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1572,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4187,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3644,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L36,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L23,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L25,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L19,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L20,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L33,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L21,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L22,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L45,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L19,t6.py}, ...)
 @end table
@@ -3216,7 +3226,7 @@ the tag of the line.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1808,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1582,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4204,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3650,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1811,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1583,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4214,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3664,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L67,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L27,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L29,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L125,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L24,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L69,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L25,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L26,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L60,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L23,t6.py}, ...)
 @end table
@@ -3237,7 +3247,7 @@ tag of the circle arc.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1820,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1593,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4227,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3671,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1823,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1594,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4237,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3685,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L27,t5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L119,t5.py})
 @end table
@@ -3258,7 +3268,7 @@ the plane of the circle arc. Return the tag of the ellipse arc.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1836,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1608,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4256,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3693,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1839,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1609,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4266,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3707,Julia}
 @end table
 
 @item gmsh/model/geo/addSpline
@@ -3276,7 +3286,7 @@ curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1852,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1623,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4286,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3713,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1855,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1624,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4296,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3727,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t12.cpp#L67,t12.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t12.py#L63,t12.py})
 @end table
@@ -3296,7 +3306,7 @@ curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1862,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1632,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4310,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3733,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1865,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1633,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4320,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3747,Julia}
 @end table
 
 @item gmsh/model/geo/addBezier
@@ -3312,7 +3322,7 @@ new tag is selected automatically.  Return the tag of the Bezier curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1870,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1639,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4334,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3752,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1873,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1640,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4344,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3766,Julia}
 @end table
 
 @item gmsh/model/geo/addPolyline
@@ -3329,7 +3339,7 @@ first and last points are the same. Return the tag of the polyline curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1880,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1647,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4356,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3772,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1883,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1648,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4366,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3786,Julia}
 @end table
 
 @item gmsh/model/geo/addCompoundSpline
@@ -3347,7 +3357,7 @@ Return the tag of the spline.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1890,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1656,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4379,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3793,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1893,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1657,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4389,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3807,Julia}
 @end table
 
 @item gmsh/model/geo/addCompoundBSpline
@@ -3365,7 +3375,7 @@ b-spline.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1901,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1666,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4404,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3813,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1904,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1667,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4414,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3827,Julia}
 @end table
 
 @item gmsh/model/geo/addCurveLoop
@@ -3385,7 +3395,7 @@ necessary. Return the tag of the curve loop.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1914,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1678,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4429,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3836,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1917,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1679,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4439,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3850,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L80,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L31,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L33,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L40,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L28,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L81,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L29,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L30,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L82,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L27,t6.py}, ...)
 @end table
@@ -3402,7 +3412,7 @@ Add curve loops in the built-in CAD representation based on the curves
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1922,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1685,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4456,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3854,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1925,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1686,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4466,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3868,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L36,aneurysm.py})
 @end table
@@ -3422,7 +3432,7 @@ surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1932,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1694,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4478,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3878,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1935,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1695,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4488,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3892,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L85,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L32,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L34,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L148,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L29,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L86,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L30,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L31,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L83,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L28,t6.py}, ...)
 @end table
@@ -3442,7 +3452,7 @@ automatically. Return the tag of the surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1942,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1703,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4502,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3899,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1945,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1704,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4512,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3913,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L61,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t12.cpp#L71,t12.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L153,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t12.py#L67,t12.py})
 @end table
@@ -3460,9 +3470,9 @@ otherwise a new tag is selected automatically. Return the tag of the shell.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1952,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1711,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4527,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3918,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1955,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1712,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4537,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3932,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L114,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L70,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L77,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L143,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L109,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L103,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L65,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L139,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L41,aneurysm.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L113,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L70,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L77,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L143,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L108,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L103,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L65,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L139,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L41,aneurysm.py}, ...)
 @end table
 
 @item gmsh/model/geo/addVolume
@@ -3480,9 +3490,9 @@ tag of the volume.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1962,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1720,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4549,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3939,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1965,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1721,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4559,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3953,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L115,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L71,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L78,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L144,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L110,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L163,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L66,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L140,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L41,aneurysm.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L114,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L71,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L78,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x2.cpp#L144,x2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L109,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L163,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L66,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x2.py#L140,x2.py}, @url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L41,aneurysm.py}, ...)
 @end table
 
 @item gmsh/model/geo/extrude
@@ -3502,9 +3512,9 @@ layers.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1974,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1731,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4573,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3961,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1977,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1732,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4583,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3975,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L125,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L49,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L65,t14.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t15.cpp#L63,t15.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L119,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L45,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L59,t14.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t15.py#L59,t15.py}, @url{@value{GITLAB-PREFIX}/examples/api/hex.py#L8,hex.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L124,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L48,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t14.cpp#L65,t14.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t15.cpp#L63,t15.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L118,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L44,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t14.py#L59,t14.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t15.py#L59,t15.py}, @url{@value{GITLAB-PREFIX}/examples/api/hex.py#L8,hex.py})
 @end table
 
 @item gmsh/model/geo/revolve
@@ -3526,9 +3536,9 @@ mesh in the layers.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1994,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1750,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4607,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L3990,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L1997,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1751,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4617,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4004,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L56,t3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L52,t3.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L55,t3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L51,t3.py})
 @end table
 
 @item gmsh/model/geo/twist
@@ -3551,9 +3561,9 @@ mesh in the layers.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2018,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1773,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4647,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4020,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2021,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1774,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4657,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4034,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L71,t3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L66,t3.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L70,t3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L65,t3.py})
 @end table
 
 @item gmsh/model/geo/extrudeBoundaryLayer
@@ -3575,7 +3585,7 @@ normals (if the view is scalar).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2045,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1799,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4690,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4050,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2048,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1800,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4700,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4064,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/aneurysm.py#L19,aneurysm.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L77,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L96,naca_boundary_layer_3d.py})
 @end table
@@ -3592,9 +3602,9 @@ Translate the entities @code{dimTags} in the built-in CAD representation along
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2057,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1810,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4726,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4072,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2060,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1811,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4736,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4086,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L49,t2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L46,t2.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L48,t2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L45,t2.py})
 @end table
 
 @item gmsh/model/geo/rotate
@@ -3611,9 +3621,9 @@ Rotate the entities @code{dimTags} in the built-in CAD representation by
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2067,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1819,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4745,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4090,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2070,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1820,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4755,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4104,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L53,t2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L50,t2.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L52,t2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L49,t2.py})
 @end table
 
 @item gmsh/model/geo/dilate
@@ -3629,7 +3639,7 @@ Scale the entities @code{dimTag} in the built-in CAD representation by factors
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2081,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1832,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4769,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4108,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2084,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1833,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4779,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4122,Julia}
 @end table
 
 @item gmsh/model/geo/mirror
@@ -3645,7 +3655,7 @@ respect to the plane of equation @code{a} * x + @code{b} * y + @code{c} * z +
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2093,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1843,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4792,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4125,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2096,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1844,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4802,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4139,Julia}
 @end table
 
 @item gmsh/model/geo/symmetrize
@@ -3662,7 +3672,7 @@ a future release.)
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2105,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1854,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4812,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4143,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2108,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1855,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4822,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4157,Julia}
 @end table
 
 @item gmsh/model/geo/copy
@@ -3677,9 +3687,9 @@ entities are returned in @code{outDimTags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2115,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1863,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4834,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4162,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2118,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1864,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4844,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4176,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L62,t2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L58,t2.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L61,t2.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L57,t2.py})
 @end table
 
 @item gmsh/model/geo/remove
@@ -3696,7 +3706,7 @@ dimension 0.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2124,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1871,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4855,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4184,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2127,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1872,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4865,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4198,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L32,t6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L31,t6.py})
 @end table
@@ -3713,7 +3723,7 @@ entities at the same geometrical location).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2131,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1877,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4874,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4201,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2134,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1878,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4884,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4215,Julia}
 @end table
 
 @item gmsh/model/geo/splitCurve
@@ -3730,7 +3740,7 @@ created curve(s).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2139,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1883,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4889,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4221,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2142,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1884,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4899,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4235,Julia}
 @end table
 
 @item gmsh/model/geo/getMaxTag
@@ -3745,7 +3755,7 @@ representation.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2147,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1890,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4914,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4242,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2150,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1891,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4924,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4256,Julia}
 @end table
 
 @item gmsh/model/geo/setMaxTag
@@ -3760,24 +3770,24 @@ built-in CAD representation.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2153,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1895,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4933,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4258,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2156,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1896,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4943,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4272,Julia}
 @end table
 
 @item gmsh/model/geo/addPhysicalGroup
 Add a physical group of dimension @code{dim}, grouping the entities with tags
 @code{tags} in the built-in CAD representation. Return the tag of the physical
 group, equal to @code{tag} if @code{tag} is positive, or a new tag if @code{tag}
-< 0.
+< 0. Set the name of the physical group if @code{name} is not empty.
 
 @table @asis
 @item Input:
-@code{dim}, @code{tags}, @code{tag = -1}
+@code{dim}, @code{tags}, @code{tag = -1}, @code{name = ""}
 @item Output:
 -
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2161,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1902,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4950,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4277,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2165,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1904,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4960,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4292,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L178,t5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L177,t5.py})
 @end table
@@ -3794,7 +3804,7 @@ If @code{dimTags} is empty, remove all groups.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2169,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1909,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4973,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4293,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2174,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1912,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4985,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4308,Julia}
 @end table
 
 @item gmsh/model/geo/synchronize
@@ -3812,7 +3822,7 @@ available to any function outside of the built-in CAD kernel functions.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2179,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1918,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L4990,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4314,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2184,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1921,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5002,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4329,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L96,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L33,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L35,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L188,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L99,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L96,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L31,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L32,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L184,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L94,t6.py}, ...)
 @end table
@@ -3836,9 +3846,9 @@ handled.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2188,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1923,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5014,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4338,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2193,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1926,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5026,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4353,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L129,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t15.cpp#L41,t15.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L123,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t15.py#L37,t15.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L128,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t15.cpp#L41,t15.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L122,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t15.py#L37,t15.py})
 @end table
 
 @item gmsh/model/geo/mesh/setTransfiniteCurve
@@ -3856,7 +3866,7 @@ both extremities of the curve).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2198,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1932,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5033,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4358,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2203,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1935,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5045,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4373,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L48,t6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L47,t6.py})
 @end table
@@ -3878,7 +3888,7 @@ surface has more that 3 or 4 points on its boundary.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2213,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1945,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5055,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4379,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2218,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1948,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5067,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4394,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L67,t6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L66,t6.py})
 @end table
@@ -3896,7 +3906,7 @@ corners of the transfinite interpolation explicitly.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2222,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1953,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5079,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4396,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2227,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1956,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5091,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4411,Julia}
 @end table
 
 @item gmsh/model/geo/mesh/setRecombine
@@ -3912,7 +3922,7 @@ entities of dimension 2 (to recombine triangles into quadrangles) are supported.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2231,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1961,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5098,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4413,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2236,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1964,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5110,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4428,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L71,t6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L70,t6.py})
 @end table
@@ -3930,7 +3940,7 @@ Laplace smoother are applied.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2240,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1969,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5118,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4430,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2245,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1972,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5130,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4445,Julia}
 @end table
 
 @item gmsh/model/geo/mesh/setReverse
@@ -3948,7 +3958,7 @@ mesh orientation will be reversed with respect to the natural mesh orientation
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2251,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1979,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5137,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4449,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2256,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1982,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5149,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4464,Julia}
 @end table
 
 @item gmsh/model/geo/mesh/setAlgorithm
@@ -3964,7 +3974,7 @@ for @code{dim} == 2.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2260,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1987,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5158,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4465,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2265,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1990,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5170,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4480,Julia}
 @end table
 
 @item gmsh/model/geo/mesh/setSizeFromBoundary
@@ -3980,7 +3990,7 @@ representation. Currently only supported for @code{dim} == 2.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2269,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1995,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5177,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4482,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2274,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L1998,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5189,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4497,Julia}
 @end table
 
 @end ftable
@@ -4006,7 +4016,7 @@ the occ module.)
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2288,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2006,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5202,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4517,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2293,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2009,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5214,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4532,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L67,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L59,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L6,bspline_bezier_patches.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_trimmed.py#L6,bspline_bezier_trimmed.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_filling.py#L14,bspline_filling.py}, @url{@value{GITLAB-PREFIX}/examples/api/closest_point.py#L14,closest_point.py}, ...)
 @end table
@@ -4025,7 +4035,7 @@ Return the tag of the line.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2300,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2017,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5229,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4537,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2305,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2020,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5241,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4552,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/crack.py#L13,crack.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L64,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L67,naca_boundary_layer_3d.py})
 @end table
@@ -4044,7 +4054,7 @@ automatically. Return the tag of the circle arc.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2310,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2026,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5252,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4557,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2315,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2029,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5264,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4572,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L61,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L57,naca_boundary_layer_3d.py})
 @end table
@@ -4064,7 +4074,7 @@ the tag of the circle.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2322,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2037,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5276,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4577,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2327,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2040,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5288,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4592,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L25,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L23,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_trimmed.py#L30,bspline_bezier_trimmed.py}, @url{@value{GITLAB-PREFIX}/examples/api/closest_point.py#L7,closest_point.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed.py#L9,trimmed.py})
 @end table
@@ -4085,7 +4095,7 @@ radius smaller than the minor radius.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2338,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2052,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5304,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4599,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2343,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2055,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5316,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4614,Julia}
 @end table
 
 @item gmsh/model/occ/addEllipse
@@ -4106,7 +4116,7 @@ y-axis): rotate the shape or use @code{addCircle} in such cases.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2354,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2067,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5331,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4623,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2359,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2070,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5343,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4638,Julia}
 @end table
 
 @item gmsh/model/occ/addSpline
@@ -4124,7 +4134,7 @@ curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2370,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2082,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5363,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4643,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2375,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2085,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5375,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4658,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L71,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L62,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L56,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L53,naca_boundary_layer_3d.py}, @url{@value{GITLAB-PREFIX}/examples/api/pipe.py#L20,pipe.py}, @url{@value{GITLAB-PREFIX}/examples/api/spline.py#L12,spline.py}, ...)
 @end table
@@ -4145,7 +4155,7 @@ first and last points are the same. Return the tag of the b-spline curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2381,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2092,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5387,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4665,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2386,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2095,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5399,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4680,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/bspline_filling.py#L18,bspline_filling.py}, @url{@value{GITLAB-PREFIX}/examples/api/spline.py#L13,spline.py})
 @end table
@@ -4163,7 +4173,7 @@ new tag is selected automatically. Return the tag of the Bezier curve.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2393,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2103,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5419,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4684,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2398,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2106,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5431,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4699,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/spline.py#L14,spline.py})
 @end table
@@ -4183,7 +4193,7 @@ automatically. Return the tag of the wire.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2403,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2112,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5441,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4705,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2408,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2115,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5453,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4720,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L74,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L65,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_trimmed.py#L31,bspline_bezier_trimmed.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_filling.py#L36,bspline_filling.py}, @url{@value{GITLAB-PREFIX}/examples/api/pipe.py#L21,pipe.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed.py#L10,trimmed.py}, ...)
 @end table
@@ -4206,7 +4216,7 @@ is selected automatically. Return the tag of the curve loop.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2418,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2126,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5466,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4729,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2423,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2129,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5478,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4744,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L26,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L24,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L67,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/surface_filling.py#L16,surface_filling.py})
 @end table
@@ -4226,7 +4236,7 @@ explicitly; otherwise a new tag is selected automatically. Round the corners if
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2428,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2135,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5494,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4750,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2433,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2138,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5506,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4765,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t17.cpp#L28,t17.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L62,t20.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L39,t21.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x6.cpp#L20,x6.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t17.py#L27,t17.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L52,t20.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L31,t21.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x6.py#L19,x6.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L75,adapt_mesh.py}, ...)
 @end table
@@ -4245,7 +4255,7 @@ tag is selected automatically. Return the tag of the disk.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2442,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2148,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5522,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4770,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2447,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2151,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5534,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4785,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L77,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L68,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/pipe.py#L23,pipe.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L37,poisson.py})
 @end table
@@ -4265,7 +4275,7 @@ Return the tag of the surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2456,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2161,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5548,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4791,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2461,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2164,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5560,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4806,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L100,naca_boundary_layer_2d.py})
 @end table
@@ -4298,7 +4308,7 @@ the filling surface can have).
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2480,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2183,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5572,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4824,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2485,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2186,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5584,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4839,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/surface_filling.py#L19,surface_filling.py})
 @end table
@@ -4320,7 +4330,7 @@ Return the tag of the surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2503,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2205,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5620,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4847,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2508,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2208,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5632,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4862,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/bspline_filling.py#L39,bspline_filling.py}, @url{@value{GITLAB-PREFIX}/examples/api/surface_filling.py#L22,surface_filling.py})
 @end table
@@ -4342,7 +4352,7 @@ automatically. Return the tag of the surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2516,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2217,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5646,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4870,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2521,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2220,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5658,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4885,Julia}
 @end table
 
 @item gmsh/model/occ/addBSplineSurface
@@ -4366,7 +4376,7 @@ the parametric space of the surface. Return the tag of the b-spline surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2533,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2233,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5672,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4897,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2538,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2236,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5684,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4912,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L55,bspline_bezier_patches.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_trimmed.py#L41,bspline_bezier_trimmed.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_bspline.py#L19,terrain_bspline.py})
 @end table
@@ -4390,7 +4400,7 @@ Return the tag of the Bezier surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2557,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2256,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5718,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4921,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2562,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2259,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5730,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4936,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L52,bspline_bezier_patches.py})
 @end table
@@ -4412,7 +4422,7 @@ trimmed surface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2572,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2270,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5750,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4943,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2577,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2273,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5762,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4958,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/trimmed.py#L24,trimmed.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed_sphere.py#L23,trimmed_sphere.py})
 @end table
@@ -4432,7 +4442,7 @@ that share geometrically identical (but topologically different) curves.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2585,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2281,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5778,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4964,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2590,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2284,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5790,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4979,Julia}
 @end table
 
 @item gmsh/model/occ/addVolume
@@ -4450,7 +4460,7 @@ tag of the volume.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2596,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2291,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5803,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L4985,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2601,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2294,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5815,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5000,Julia}
 @end table
 
 @item gmsh/model/occ/addSphere
@@ -4469,9 +4479,9 @@ automatically. Return the tag of the sphere.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2607,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2301,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5827,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5007,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2612,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2304,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5839,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5022,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L53,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L61,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L23,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L47,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L59,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L20,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L21,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L22,gui.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L53,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L61,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L23,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L47,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L59,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L20,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L21,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/extend_field.py#L5,extend_field.py}, ...)
 @end table
 
 @item gmsh/model/occ/addBox
@@ -4488,7 +4498,7 @@ is selected automatically. Return the tag of the box.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2622,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2315,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5857,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5027,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2627,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2318,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5869,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5042,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L31,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L27,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L58,x4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L24,x5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x7.cpp#L24,x7.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L28,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L26,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L56,x4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L21,x5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x7.py#L21,x7.py}, ...)
 @end table
@@ -4509,7 +4519,7 @@ is selected automatically. Return the tag of the cylinder.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2638,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2330,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5884,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5049,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2643,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2333,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5896,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5064,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L23,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L24,gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed_sphere.py#L14,trimmed_sphere.py})
 @end table
@@ -4531,7 +4541,7 @@ tag of the cone.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2656,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2347,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5915,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5071,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2661,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2350,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5927,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5086,Julia}
 @end table
 
 @item gmsh/model/occ/addWedge
@@ -4550,7 +4560,7 @@ the wedge.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2675,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2365,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5947,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5092,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2680,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2368,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5959,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5107,Julia}
 @end table
 
 @item gmsh/model/occ/addTorus
@@ -4568,7 +4578,7 @@ automatically. The optional argument @code{angle} defines the angular opening
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2691,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2380,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5977,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5113,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2696,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2383,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L5989,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5128,Julia}
 @end table
 
 @item gmsh/model/occ/addThruSections
@@ -4588,7 +4598,7 @@ surfaces created on the boundary are forced to be ruled surfaces. If
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2708,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2396,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6005,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5136,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2713,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2399,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6017,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5151,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L32,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L29,t19.py})
 @end table
@@ -4609,7 +4619,7 @@ automatically.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2723,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2410,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6036,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5161,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2728,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2413,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6048,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5176,Julia}
 @end table
 
 @item gmsh/model/occ/extrude
@@ -4629,7 +4639,7 @@ layers.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2738,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2424,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6065,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5187,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2743,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2427,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6077,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5202,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L60,naca_boundary_layer_3d.py})
 @end table
@@ -4653,7 +4663,7 @@ set, recombine the mesh in the layers.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2758,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2443,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6099,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5216,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2763,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2446,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6111,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5231,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L80,naca_boundary_layer_3d.py})
 @end table
@@ -4674,7 +4684,7 @@ provided, "DiscreteTrihedron" is assumed. Return the pipe in @code{outDimTags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2780,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2463,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6139,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5243,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2785,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2466,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6151,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5258,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L82,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L73,t19.py}, @url{@value{GITLAB-PREFIX}/examples/api/pipe.py#L29,pipe.py})
 @end table
@@ -4695,7 +4705,7 @@ Return the filleted entities in @code{outDimTags}. Remove the original volume if
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2793,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2475,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6167,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5270,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2798,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2478,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6179,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5285,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L55,t19.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L47,t19.py})
 @end table
@@ -4718,7 +4728,7 @@ original volume if @code{removeVolume} is set.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2809,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2490,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6197,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5296,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2814,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2493,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6209,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5311,Julia}
 @end table
 
 @item gmsh/model/occ/fuse
@@ -4737,7 +4747,7 @@ Remove the object if @code{removeObject} is set. Remove the tool if
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2824,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2504,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6231,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5320,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2829,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2507,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6243,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5335,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L27,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L22,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L26,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L27,gui.py})
 @end table
@@ -4758,7 +4768,7 @@ is set. Remove the tool if @code{removeTool} is set.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2840,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2519,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6265,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5360,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2845,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2522,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6277,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5375,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L22,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L23,gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed_sphere.py#L15,trimmed_sphere.py})
 @end table
@@ -4779,9 +4789,9 @@ Remove the object if @code{removeObject} is set. Remove the tool if
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2856,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2534,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6299,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5399,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2861,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2537,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6311,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5414,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L41,t16.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L32,t16.py}, @url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L27,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L28,gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L102,naca_boundary_layer_2d.py}, @url{@value{GITLAB-PREFIX}/examples/api/spherical_surf.py#L13,spherical_surf.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L41,t16.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L32,t16.py}, @url{@value{GITLAB-PREFIX}/examples/api/boolean.py#L27,boolean.py}, @url{@value{GITLAB-PREFIX}/examples/api/extend_field.py#L6,extend_field.py}, @url{@value{GITLAB-PREFIX}/examples/api/gui.py#L28,gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_2d.py#L102,naca_boundary_layer_2d.py}, ...)
 @end table
 
 @item gmsh/model/occ/fragment
@@ -4803,7 +4813,7 @@ if @code{removeTool} is set.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2875,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2552,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6333,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5442,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2880,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2555,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6345,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5457,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L61,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L75,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L85,t20.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L43,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L54,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L70,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L68,t20.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L33,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L70,bspline_bezier_patches.py}, ...)
 @end table
@@ -4820,7 +4830,7 @@ along (@code{dx}, @code{dy}, @code{dz}).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2887,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2563,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6370,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5476,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2892,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2566,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6382,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5491,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L47,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L72,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L44,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L60,t20.py})
 @end table
@@ -4839,7 +4849,7 @@ Rotate the entities @code{dimTags} in the OpenCASCADE CAD representation by
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2897,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2572,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6389,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5494,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2902,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2575,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6401,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5509,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L78,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L64,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L69,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L54,t20.py}, @url{@value{GITLAB-PREFIX}/examples/api/pipe.py#L26,pipe.py})
 @end table
@@ -4857,7 +4867,7 @@ factors @code{a}, @code{b} and @code{c} along the three coordinate axes; use
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2911,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2585,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6413,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5512,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2916,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2588,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6425,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5527,Julia}
 @end table
 
 @item gmsh/model/occ/mirror
@@ -4873,7 +4883,7 @@ respect to the plane of equation @code{a} * x + @code{b} * y + @code{c} * z +
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2923,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2596,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6436,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5529,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2928,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2599,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6448,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5544,Julia}
 @end table
 
 @item gmsh/model/occ/symmetrize
@@ -4889,7 +4899,7 @@ respect to the plane of equation @code{a} * x + @code{b} * y + @code{c} * z +
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2934,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2606,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6456,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5547,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2939,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2609,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6468,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5562,Julia}
 @end table
 
 @item gmsh/model/occ/affineTransform
@@ -4905,7 +4915,7 @@ the entities @code{dimTags} in the OpenCASCADE CAD representation.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2946,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2616,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6477,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5565,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2951,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2619,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6489,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5580,Julia}
 @end table
 
 @item gmsh/model/occ/copy
@@ -4920,7 +4930,7 @@ entities are returned in @code{outDimTags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2953,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2622,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6497,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5585,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2958,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2625,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6509,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5600,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L46,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L77,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L43,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L64,t20.py})
 @end table
@@ -4939,7 +4949,7 @@ dimension 0.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2962,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2630,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6518,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5607,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2967,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2633,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6530,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5622,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L86,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L91,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L77,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L73,t20.py}, @url{@value{GITLAB-PREFIX}/examples/api/pipe.py#L31,pipe.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed.py#L28,trimmed.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed_sphere.py#L11,trimmed_sphere.py})
 @end table
@@ -4957,7 +4967,7 @@ fragments) all highest dimensional entities.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2970,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2637,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6537,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5625,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2975,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2640,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6549,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5640,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L75,bspline_bezier_patches.py}, @url{@value{GITLAB-PREFIX}/examples/api/compsolid.py#L7,compsolid.py}, @url{@value{GITLAB-PREFIX}/examples/api/hybrid_order.py#L5,hybrid_order.py}, @url{@value{GITLAB-PREFIX}/examples/api/stl_to_mesh.py#L10,stl_to_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/trimmed_sphere.py#L27,trimmed_sphere.py})
 @end table
@@ -4975,7 +4985,7 @@ representation. Return the healed entities in @code{outDimTags}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2977,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2642,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6553,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5644,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2982,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2645,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6565,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5659,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L65,bspline_bezier_patches.py}, @url{@value{GITLAB-PREFIX}/examples/api/heal.py#L11,heal.py})
 @end table
@@ -4991,7 +5001,7 @@ Convert the entities @code{dimTags} to NURBS.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2989,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2653,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6582,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5665,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2994,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2656,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6594,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5680,Julia}
 @end table
 
 @item gmsh/model/occ/importShapes
@@ -5010,7 +5020,7 @@ import the highest dimensional entities in the file. The optional argument
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L2999,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2662,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6598,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5688,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3004,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2665,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6610,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5703,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L28,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L24,t20.py})
 @end table
@@ -5034,7 +5044,7 @@ invalid pointer will lead to undefined behavior.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3015,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2677,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6625,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5716,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3020,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2680,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6637,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5731,Julia}
 @end table
 
 @item gmsh/model/occ/getEntities
@@ -5050,7 +5060,7 @@ entities are returned as a vector of (dim, tag) integer pairs.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3024,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2685,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6654,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5739,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3029,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2688,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6666,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5754,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L90,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L73,t20.py}, @url{@value{GITLAB-PREFIX}/examples/api/bspline_bezier_patches.py#L70,bspline_bezier_patches.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L71,naca_boundary_layer_3d.py})
 @end table
@@ -5069,7 +5079,7 @@ dimension (e.g. points if @code{dim} == 0).
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3033,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2693,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6676,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5762,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3038,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2696,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6688,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5777,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L76,naca_boundary_layer_3d.py})
 @end table
@@ -5087,7 +5097,7 @@ tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3046,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2705,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6705,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5784,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3051,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2708,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6717,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5799,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L44,t20.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L34,t20.py}, @url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L64,naca_boundary_layer_3d.py})
 @end table
@@ -5104,7 +5114,7 @@ Get the @code{tags} of the curve loops making up the surface of tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3059,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2717,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6743,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5807,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3064,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2720,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6755,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5822,Julia}
 @end table
 
 @item gmsh/model/occ/getSurfaceLoops
@@ -5119,7 +5129,7 @@ Get the @code{tags} of the surface loops making up the volume of tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3066,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2723,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6764,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5827,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3071,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2726,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6776,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5842,Julia}
 @end table
 
 @item gmsh/model/occ/getMass
@@ -5134,7 +5144,7 @@ Get the mass of the OpenCASCADE entity of dimension @code{dim} and tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3072,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2728,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6785,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5847,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3077,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2731,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6797,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5862,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/step_assembly.py#L27,step_assembly.py}, @url{@value{GITLAB-PREFIX}/examples/api/volume.py#L9,volume.py})
 @end table
@@ -5151,7 +5161,7 @@ Get the center of mass of the OpenCASCADE entity of dimension @code{dim} and tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3080,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2735,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6806,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5866,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3085,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2738,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6818,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5881,Julia}
 @end table
 
 @item gmsh/model/occ/getMatrixOfInertia
@@ -5166,7 +5176,7 @@ Get the matrix of inertia (by row) of the OpenCASCADE entity of dimension
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3090,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2744,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6835,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5887,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3095,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2747,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6847,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5902,Julia}
 @end table
 
 @item gmsh/model/occ/getMaxTag
@@ -5181,7 +5191,7 @@ representation.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3098,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2751,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6857,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5908,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3103,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2754,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6869,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5923,Julia}
 @end table
 
 @item gmsh/model/occ/setMaxTag
@@ -5196,7 +5206,7 @@ OpenCASCADE CAD representation.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3104,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2756,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6876,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5924,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3109,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2759,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6888,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5939,Julia}
 @end table
 
 @item gmsh/model/occ/synchronize
@@ -5214,7 +5224,7 @@ not available to any function outside of the OpenCASCADE CAD kernel functions.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3115,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2766,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6893,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5943,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3120,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2769,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6905,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5958,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L84,t16.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t17.cpp#L29,t17.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t18.cpp#L28,t18.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t19.cpp#L33,t19.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t20.cpp#L93,t20.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L67,t16.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t17.py#L28,t17.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t18.py#L27,t18.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t19.py#L30,t19.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t20.py#L75,t20.py}, ...)
 @end table
@@ -5237,7 +5247,7 @@ representation. Currently only entities of dimension 0 (points) are handled.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3124,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2771,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6917,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5967,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3129,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2774,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6929,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L5982,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/naca_boundary_layer_3d.py#L85,naca_boundary_layer_3d.py})
 @end table
@@ -5261,7 +5271,7 @@ associate a new tag. Return the view tag.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3140,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2778,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6942,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6003,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3145,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2781,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6954,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6018,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L111,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L28,x3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L33,x4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L80,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L118,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L25,x3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L31,x4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L68,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L88,adapt_mesh.py}, ...)
 @end table
@@ -5277,7 +5287,7 @@ Remove the view with tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3146,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2783,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6962,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6017,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3151,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2786,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6974,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6032,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/plugin.py#L28,plugin.py})
 @end table
@@ -5295,7 +5305,7 @@ access view options.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3153,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2789,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6976,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6035,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3158,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2792,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6988,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6050,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L89,x3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L81,t8.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L81,x3.py})
 @end table
@@ -5311,7 +5321,7 @@ Get the tags of all views.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3158,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2793,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L6996,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6052,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3163,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2796,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7008,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6067,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L78,t8.py}, @url{@value{GITLAB-PREFIX}/examples/api/plugin.py#L31,plugin.py})
 @end table
@@ -5338,7 +5348,7 @@ data. @code{partition} allows one to specify data in several sub-sets.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3174,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2808,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7015,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6081,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3179,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2811,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7027,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6096,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L89,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/plugin.py#L16,plugin.py}, @url{@value{GITLAB-PREFIX}/examples/api/poisson.py#L229,poisson.py}, @url{@value{GITLAB-PREFIX}/examples/api/view.py#L19,view.py})
 @end table
@@ -5358,7 +5368,7 @@ single vector. For data types that can lead to different data sizes per tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3191,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2824,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7051,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6101,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3196,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2827,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7063,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6116,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L35,x4.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L33,x4.py}, @url{@value{GITLAB-PREFIX}/examples/api/copy_mesh.py#L41,copy_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/view_renumbering.py#L18,view_renumbering.py})
 @end table
@@ -5377,7 +5387,7 @@ tags @code{tags}, as well as the @code{dataType} and the number of components
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3207,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2839,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7080,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6120,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3212,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2842,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7092,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6135,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L20,get_data_perf.py}, @url{@value{GITLAB-PREFIX}/examples/api/mesh_quality.py#L14,mesh_quality.py}, @url{@value{GITLAB-PREFIX}/examples/api/plugin.py#L20,plugin.py})
 @end table
@@ -5396,7 +5406,7 @@ vector, with the appropriate padding if necessary.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3221,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2852,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7117,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6153,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3226,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2855,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7129,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6168,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L25,get_data_perf.py})
 @end table
@@ -5421,7 +5431,7 @@ followed by values per node, repeated for each step: [e1x1, ..., e1xn, e1y1,
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3241,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2871,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7154,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6187,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3246,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2874,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7166,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6202,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L56,x3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x5.cpp#L81,x5.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L47,x3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L69,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/normals.py#L42,normals.py}, @url{@value{GITLAB-PREFIX}/examples/api/view_combine.py#L18,view_combine.py}, @url{@value{GITLAB-PREFIX}/examples/api/viewlist.py#L19,viewlist.py})
 @end table
@@ -5439,7 +5449,7 @@ data type and the @code{data} for each data type.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3251,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2880,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7182,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6206,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3256,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2883,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7194,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6221,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/plugin.py#L35,plugin.py}, @url{@value{GITLAB-PREFIX}/examples/api/volume.py#L19,volume.py})
 @end table
@@ -5466,7 +5476,7 @@ Bold", "Times-Italic", "Times-BoldItalic", "Helvetica", "Helvetica-Bold",
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3270,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2899,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7211,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6245,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3275,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2902,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7223,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6260,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L115,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L80,x3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L122,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L72,x3.py})
 @end table
@@ -5485,7 +5495,7 @@ coordinates in @code{coord}, the strings in @code{data} and the styles in
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3280,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2908,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7244,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6264,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3285,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2911,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7256,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6279,Julia}
 @end table
 
 @item gmsh/view/setInterpolationMatrices
@@ -5510,7 +5520,7 @@ matrices.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3299,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2926,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7274,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6299,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3304,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2929,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7286,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6314,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L129,x3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L113,x3.py})
 @end table
@@ -5529,7 +5539,7 @@ already exists), otherwise associate a new tag. Return the view tag.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3314,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2940,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7310,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6319,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3319,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2943,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7322,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6334,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/view_combine.py#L27,view_combine.py})
 @end table
@@ -5548,7 +5558,7 @@ original views if @code{remove} is set.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3324,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2949,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7333,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6337,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3329,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2952,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7345,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6352,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/view_combine.py#L23,view_combine.py})
 @end table
@@ -5577,7 +5587,7 @@ specified dimension.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3344,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2968,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7353,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6364,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3349,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2971,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7365,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6379,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L101,x3.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L89,x3.py})
 @end table
@@ -5594,7 +5604,7 @@ file extension. Append to the file if @code{append} is set.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3363,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2986,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7402,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6383,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3368,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2989,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7414,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6398,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/x3.cpp#L107,x3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/x4.cpp#L88,x4.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x3.py#L92,x3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/x4.py#L81,x4.py}, @url{@value{GITLAB-PREFIX}/examples/api/adapt_mesh.py#L91,adapt_mesh.py}, @url{@value{GITLAB-PREFIX}/examples/api/normals.py#L43,normals.py}, @url{@value{GITLAB-PREFIX}/examples/api/plugin.py#L33,plugin.py}, ...)
 @end table
@@ -5611,7 +5621,7 @@ where @code{windowIndex} identifies the window in the window list.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3371,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2993,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7419,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6398,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3376,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L2996,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7431,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6413,Julia}
 @end table
 
 @end ftable
@@ -5632,7 +5642,7 @@ Set the numerical option @code{name} to value @code{value} for the view with tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3381,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3000,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7443,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6422,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3386,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3003,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7455,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6437,Julia}
 @end table
 
 @item gmsh/view/option/getNumber
@@ -5647,7 +5657,7 @@ Get the @code{value} of the numerical option @code{name} for the view with tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3389,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3006,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7461,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6439,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3394,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3009,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7473,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6454,Julia}
 @end table
 
 @item gmsh/view/option/setString
@@ -5662,7 +5672,7 @@ Set the string option @code{name} to value @code{value} for the view with tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3396,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3012,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7482,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6455,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3401,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3015,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7494,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6470,Julia}
 @end table
 
 @item gmsh/view/option/getString
@@ -5677,7 +5687,7 @@ Get the @code{value} of the string option @code{name} for the view with tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3403,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3018,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7499,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6472,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3408,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3021,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7511,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6487,Julia}
 @end table
 
 @item gmsh/view/option/setColor
@@ -5693,7 +5703,7 @@ Set the color option @code{name} to the RGBA value (@code{r}, @code{g},
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3412,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3026,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7520,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6491,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3417,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3029,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7532,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6506,Julia}
 @end table
 
 @item gmsh/view/option/getColor
@@ -5708,7 +5718,7 @@ Get the @code{r}, @code{g}, @code{b}, @code{a} value of the color option
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3423,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3036,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7542,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6509,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3428,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3039,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7554,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6524,Julia}
 @end table
 
 @item gmsh/view/option/copy
@@ -5723,7 +5733,7 @@ Copy the options from the view with tag @code{refTag} to the view with tag
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3434,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3046,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7574,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6528,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3439,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3049,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7586,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6543,Julia}
 @end table
 
 @end ftable
@@ -5744,9 +5754,9 @@ Set the numerical option @code{option} to the value @code{value} for plugin
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3446,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3051,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7596,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6555,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3451,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3054,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7608,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6570,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t9.cpp#L38,t9.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L146,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t9.py#L30,t9.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L133,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack3d.py#L29,crack3d.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack.py#L33,crack.py}, @url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L15,get_data_perf.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t9.cpp#L38,t9.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L144,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t9.py#L30,t9.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L131,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack3d.py#L29,crack3d.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack.py#L33,crack.py}, @url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L15,get_data_perf.py}, ...)
 @end table
 
 @item gmsh/plugin/setString
@@ -5761,7 +5771,7 @@ Set the string option @code{option} to the value @code{value} for plugin
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3453,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3057,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7613,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6570,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3458,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3060,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7625,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6585,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t9.cpp#L54,t9.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t9.py#L46,t9.py})
 @end table
@@ -5777,9 +5787,9 @@ Run the plugin @code{name}. Return the tag of the created view (if any).
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3460,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3063,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7630,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6587,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3465,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3066,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7642,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6602,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t9.cpp#L40,t9.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L149,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t9.py#L32,t9.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L136,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack3d.py#L31,crack3d.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack.py#L34,crack.py}, @url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L16,get_data_perf.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t9.cpp#L40,t9.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L147,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t9.py#L32,t9.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L134,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack3d.py#L31,crack3d.py}, @url{@value{GITLAB-PREFIX}/examples/api/crack.py#L34,crack.py}, @url{@value{GITLAB-PREFIX}/examples/api/get_data_perf.py#L16,get_data_perf.py}, ...)
 @end table
 
 @end ftable
@@ -5799,9 +5809,9 @@ Draw all the OpenGL scenes.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3469,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3067,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7653,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6612,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3474,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3070,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7665,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6627,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L130,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L150,t8.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L129,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L194,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L121,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L178,t8.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L115,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L164,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/split_window.py#L44,split_window.py})
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L129,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L150,t8.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L129,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L192,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L120,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L178,t8.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L115,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L162,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/split_window.py#L44,split_window.py})
 @end table
 
 @end ftable
@@ -5821,9 +5831,9 @@ Create the FLTK graphical user interface. Can only be called in the main thread.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3479,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3071,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7672,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6637,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3484,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3074,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7684,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6652,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L137,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L76,t8.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L136,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L201,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L125,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L71,t8.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L119,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L168,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L112,custom_gui.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L136,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L76,t8.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L136,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L199,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L124,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t8.py#L71,t8.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L119,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L166,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L112,custom_gui.py}, ...)
 @end table
 
 @item gmsh/fltk/wait
@@ -5840,9 +5850,9 @@ thread.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3486,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3076,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7686,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6653,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3491,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3079,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7698,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6668,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L139,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L138,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L203,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L127,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L121,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L170,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L115,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L218,prepro.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L138,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L138,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L201,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L126,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L121,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L168,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L115,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L218,prepro.py}, ...)
 @end table
 
 @item gmsh/fltk/update
@@ -5859,7 +5869,7 @@ update of the user interface from another thread.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3494,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3083,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7702,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6670,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3499,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3086,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7714,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6685,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L84,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L188,prepro.py})
 @end table
@@ -5876,7 +5886,7 @@ perform an action (currently the only @code{action} allowed is "update").
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3501,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3088,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7718,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6685,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3506,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3091,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7730,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6700,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L66,custom_gui.py})
 @end table
@@ -5892,7 +5902,7 @@ Block the current thread until it can safely modify the user interface.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3506,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3092,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7734,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6699,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3511,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3095,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7746,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6714,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L59,custom_gui.py})
 @end table
@@ -5908,7 +5918,7 @@ Release the lock that was set using lock.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3511,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3095,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7747,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6713,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3516,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3098,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7759,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6728,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L61,custom_gui.py})
 @end table
@@ -5926,9 +5936,9 @@ been initialized. Can only be called in the main thread.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3518,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3100,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7760,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6729,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3523,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3103,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7772,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6744,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L151,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L170,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L171,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L229,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L105,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L150,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L163,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L178,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L223,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L105,t6.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t1.cpp#L150,t1.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t2.cpp#L168,t2.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t4.cpp#L171,t4.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t5.cpp#L229,t5.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t6.cpp#L105,t6.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t1.py#L149,t1.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t2.py#L161,t2.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t4.py#L178,t4.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t5.py#L223,t5.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t6.py#L105,t6.py}, ...)
 @end table
 
 @item gmsh/fltk/isAvailable
@@ -5942,9 +5952,9 @@ Check if the user interface is available (e.g. to detect if it has been closed).
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3524,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3104,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7775,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6745,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3529,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3107,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7787,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6760,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L138,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L137,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L202,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L126,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L120,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L169,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L114,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L204,prepro.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L137,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L137,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L200,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L125,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L120,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L167,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L114,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L204,prepro.py}, ...)
 @end table
 
 @item gmsh/fltk/selectEntities
@@ -5959,7 +5969,7 @@ entities of the specified dimension (e.g. points if @code{dim} == 0).
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3530,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3108,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7793,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6763,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3535,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3111,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7805,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6778,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L203,prepro.py})
 @end table
@@ -5975,7 +5985,7 @@ Select elements in the user interface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3536,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3113,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7816,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6784,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3541,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3116,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7828,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6799,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/select_elements.py#L8,select_elements.py})
 @end table
@@ -5991,7 +6001,7 @@ Select views in the user interface.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3541,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3117,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7837,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6804,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3546,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3120,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7849,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6819,Julia}
 @end table
 
 @item gmsh/fltk/splitCurrentWindow
@@ -6007,7 +6017,7 @@ single window.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3547,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3122,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7858,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6823,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3552,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3125,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7870,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6838,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/split_window.py#L21,split_window.py})
 @end table
@@ -6025,7 +6035,7 @@ the end of the list.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3555,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3129,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7875,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6840,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3560,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3132,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7887,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6855,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/split_window.py#L36,split_window.py})
 @end table
@@ -6042,7 +6052,7 @@ the message inside the graphic window instead of the status bar.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3561,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3134,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7892,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6856,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3566,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3137,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7904,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6871,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L201,prepro.py}, @url{@value{GITLAB-PREFIX}/examples/api/select_elements.py#L7,select_elements.py})
 @end table
@@ -6058,7 +6068,7 @@ Show context window for the entity of dimension @code{dim} and tag @code{tag}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3567,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3139,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7909,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6871,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3572,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3142,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7921,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6886,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L206,prepro.py})
 @end table
@@ -6074,7 +6084,7 @@ Open the @code{name} item in the menu tree.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3573,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3144,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7925,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6886,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3578,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3147,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7937,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6901,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L216,prepro.py})
 @end table
@@ -6090,7 +6100,7 @@ Close the @code{name} item in the menu tree.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3578,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3148,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7940,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6901,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3583,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3151,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7952,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6916,Julia}
 @end table
 
 @end ftable
@@ -6111,7 +6121,7 @@ regular expression. If @code{search} is empty, return all the names.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3588,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3153,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7961,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6930,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3593,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3156,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7973,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6945,Julia}
 @end table
 
 @item gmsh/parser/setNumber
@@ -6126,7 +6136,7 @@ variable if it does not exist; update the value if the variable exists.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3595,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3159,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7982,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6950,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3600,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3162,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L7994,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6965,Julia}
 @end table
 
 @item gmsh/parser/setString
@@ -6141,7 +6151,7 @@ variable if it does not exist; update the value if the variable exists.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3602,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3165,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8000,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6966,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3607,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3168,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8012,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6981,Julia}
 @end table
 
 @item gmsh/parser/getNumber
@@ -6156,7 +6166,7 @@ empty vector if the variable does not exist.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3609,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3171,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8018,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6984,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3614,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3174,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8030,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L6999,Julia}
 @end table
 
 @item gmsh/parser/getString
@@ -6171,7 +6181,7 @@ empty vector if the variable does not exist.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3616,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3177,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8039,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7005,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3621,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3180,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8051,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7020,Julia}
 @end table
 
 @item gmsh/parser/clear
@@ -6186,7 +6196,7 @@ is given.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3623,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3183,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8060,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7025,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3628,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3186,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8072,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7040,Julia}
 @end table
 
 @item gmsh/parser/parse
@@ -6200,7 +6210,7 @@ Parse the file @code{fileName} with the Gmsh parser.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3628,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3187,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8075,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7039,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3633,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3190,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8087,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7054,Julia}
 @end table
 
 @end ftable
@@ -6220,9 +6230,9 @@ Set one or more parameters in the ONELAB database, encoded in @code{format}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3637,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3191,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8095,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7064,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3642,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3194,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8107,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7079,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L107,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L95,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L59,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L100,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L82,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L47,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L33,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L9,onelab_test.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L106,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L95,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L57,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L99,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L82,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L45,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L33,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L9,onelab_test.py}, ...)
 @end table
 
 @item gmsh/onelab/get
@@ -6237,7 +6247,7 @@ ONELAB database, encoded in @code{format}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3644,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3197,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8110,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7081,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3649,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3200,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8122,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7096,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/onelab_run_auto.py#L28,onelab_run_auto.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L35,onelab_test.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L170,prepro.py})
 @end table
@@ -6255,7 +6265,7 @@ names.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3652,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3204,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8131,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7100,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3657,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3207,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8143,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7115,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L172,prepro.py})
 @end table
@@ -6272,7 +6282,7 @@ the parameter if it does not exist; update the value if the parameter exists.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3660,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3211,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8152,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7120,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3665,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3214,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8164,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7135,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L67,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_run.py#L18,onelab_run.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L40,onelab_test.py})
 @end table
@@ -6289,9 +6299,9 @@ the parameter if it does not exist; update the value if the parameter exists.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3668,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3218,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8171,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7136,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3673,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3221,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8183,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7151,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L128,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L127,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L192,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L119,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L113,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L162,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L56,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L41,onelab_test.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L127,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L127,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L190,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L118,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L113,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L160,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L56,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L41,onelab_test.py}, ...)
 @end table
 
 @item gmsh/onelab/getNumber
@@ -6306,9 +6316,9 @@ Return an empty vector if the parameter does not exist.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3675,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3224,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8190,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7154,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3680,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3227,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8202,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7169,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L70,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L37,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L111,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L65,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L29,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L97,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L41,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L174,prepro.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L69,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L37,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L109,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L64,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L29,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L95,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L41,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L174,prepro.py}, ...)
 @end table
 
 @item gmsh/onelab/getString
@@ -6323,9 +6333,9 @@ Return an empty vector if the parameter does not exist.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3682,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3230,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8211,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7175,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3687,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3233,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8223,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7190,Julia}
 @item Examples:
-C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L126,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L125,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L190,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L117,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L111,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L160,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L75,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L178,prepro.py}, ...)
+C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t3.cpp#L125,t3.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L125,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t21.cpp#L188,t21.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t3.py#L116,t3.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t13.py#L111,t13.py}, @url{@value{GITLAB-PREFIX}/tutorials/python/t21.py#L158,t21.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L75,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/prepro.py#L178,prepro.py}, ...)
 @end table
 
 @item gmsh/onelab/getChanged
@@ -6340,7 +6350,7 @@ have been changed.
 @item Return:
 integer value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3689,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3236,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8232,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7197,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3694,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3239,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8244,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7212,Julia}
 @end table
 
 @item gmsh/onelab/setChanged
@@ -6355,7 +6365,7 @@ database used by the client @code{name}.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3695,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3241,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8251,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7213,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3700,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3244,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8263,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7228,Julia}
 @end table
 
 @item gmsh/onelab/clear
@@ -6369,7 +6379,7 @@ Clear the ONELAB database, or remove a single parameter if @code{name} is given.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3701,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3246,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8268,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7228,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3706,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3249,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8280,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7243,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/onelab_test.py#L44,onelab_test.py})
 @end table
@@ -6387,7 +6397,7 @@ might be linked to the processed input files.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3708,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3252,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8282,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7244,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3713,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3255,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8294,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7259,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/onelab_run.py#L24,onelab_run.py}, @url{@value{GITLAB-PREFIX}/examples/api/onelab_run_auto.py#L26,onelab_run_auto.py})
 @end table
@@ -6409,7 +6419,7 @@ Write a @code{message}. @code{level} can be "info", "warning" or "error".
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3718,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3257,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8305,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7269,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3723,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3260,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8317,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7284,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t7.cpp#L23,t7.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t8.cpp#L41,t8.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t9.cpp#L31,t9.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t13.cpp#L26,t13.cpp}, @url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L34,t16.cpp}, ...), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/x5.py#L87,x5.py}, @url{@value{GITLAB-PREFIX}/examples/api/custom_gui.py#L60,custom_gui.py}, @url{@value{GITLAB-PREFIX}/examples/api/terrain_stl.py#L26,terrain_stl.py})
 @end table
@@ -6425,7 +6435,7 @@ Start logging messages.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3724,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3262,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8320,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7283,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3729,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3265,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8332,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7298,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L27,t16.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L25,t16.py})
 @end table
@@ -6441,7 +6451,7 @@ Get logged messages.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3729,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3265,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8333,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7299,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3734,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3268,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8345,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7314,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L137,t16.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L118,t16.py})
 @end table
@@ -6457,7 +6467,7 @@ Stop logging messages.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3734,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3269,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8351,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7317,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3739,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3272,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8363,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7332,Julia}
 @item Examples:
 C++ (@url{@value{GITLAB-PREFIX}/tutorials/c++/t16.cpp#L139,t16.cpp}), Python (@url{@value{GITLAB-PREFIX}/tutorials/python/t16.py#L120,t16.py})
 @end table
@@ -6473,7 +6483,7 @@ Return wall clock time.
 @item Return:
 floating point value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3739,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3272,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8364,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7333,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3744,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3275,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8376,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7348,Julia}
 @item Examples:
 Python (@url{@value{GITLAB-PREFIX}/examples/api/import_perf.py#L8,import_perf.py})
 @end table
@@ -6489,7 +6499,7 @@ Return CPU time.
 @item Return:
 floating point value
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3744,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3275,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8382,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7350,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3749,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3278,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8394,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7365,Julia}
 @end table
 
 @item gmsh/logger/getLastError
@@ -6503,7 +6513,7 @@ Return last error message, if any.
 @item Return:
 -
 @item Language-specific definition:
-@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3749,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3278,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8400,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7367,Julia}
+@url{@value{GITLAB-PREFIX}/api/gmsh.h#L3754,C++}, @url{@value{GITLAB-PREFIX}/api/gmshc.h#L3281,C}, @url{@value{GITLAB-PREFIX}/api/gmsh.py#L8412,Python}, @url{@value{GITLAB-PREFIX}/api/gmsh.jl#L7382,Julia}
 @end table
 
 @end ftable
diff --git a/doc/texinfo/version.texi b/doc/texinfo/version.texi
index 9e5465c0b52907f36ffe97fa606770c894286e4c..b30862eea925209bbaa3b9c8f9e4b1d345ff48be 100644
--- a/doc/texinfo/version.texi
+++ b/doc/texinfo/version.texi
@@ -1,4 +1,4 @@
 @c This file was generated by cmake: do not edit manually!
 
-@set GMSH-VERSION 4.9.5 (development version)
+@set GMSH-VERSION 4.10.0 (development version)
 @set GITLAB-PREFIX https://gitlab.onelab.info/gmsh/gmsh/blob/master
diff --git a/src/common/gmsh.cpp b/src/common/gmsh.cpp
index 566abb38052f8fcf9158188566593970cf1304a6..4ea2a7ea9f97dae3156d95a9b4f848c7395bc129 100644
--- a/src/common/gmsh.cpp
+++ b/src/common/gmsh.cpp
@@ -437,7 +437,8 @@ gmsh::model::getPhysicalGroupsForEntity(const int dim, const int tag,
 
 GMSH_API int gmsh::model::addPhysicalGroup(const int dim,
                                            const std::vector<int> &tags,
-                                           const int tag)
+                                           const int tag,
+                                           const std::string &name)
 {
   // FIXME: 1) the "master" physical group definitions are still stored in the
   // buil-in CAD kernel, so that built-in CAD operations (e.g. Coherence) can
@@ -459,6 +460,7 @@ GMSH_API int gmsh::model::addPhysicalGroup(const int dim,
     return -1;
   }
   GModel::current()->addPhysicalGroup(dim, outTag, tags);
+  if(!name.empty()) GModel::current()->setPhysicalName(name, dim, outTag);
   return outTag;
 }
 
@@ -5270,12 +5272,13 @@ GMSH_API void gmsh::model::mesh::getDuplicateNodes(std::vector<std::size_t> &nod
   for(auto n : duplicates) nodeTags.push_back(n->getNum());
 }
 
-// TODO: add argument to limit the entities to consider
-GMSH_API void gmsh::model::mesh::removeDuplicateNodes()
+GMSH_API void gmsh::model::mesh::removeDuplicateNodes(const vectorpair &dimTags)
 {
   if(!_checkInit()) return;
+  std::vector<GEntity *> entities;
+  _getEntities(dimTags, entities);
   GModel::current()->removeDuplicateMeshVertices(
-    CTX::instance()->geom.tolerance);
+    CTX::instance()->geom.tolerance, entities);
   CTX::instance()->mesh.changed = ENT_ALL;
 }
 
@@ -5326,23 +5329,28 @@ GMSH_API void gmsh::model::mesh::createTopology(const bool makeSimplyConnected,
 }
 
 GMSH_API void
-gmsh::model::mesh::computeHomology(const std::vector<int> &domainTags,
-                                   const std::vector<int> &subdomainTags,
-                                   const std::vector<int> &dims)
+gmsh::model::mesh::addHomologyRequest(const std::string &type,
+                                      const std::vector<int> &domainTags,
+                                      const std::vector<int> &subdomainTags,
+                                      const std::vector<int> &dims)
 {
   if(!_checkInit()) return;
-  GModel::current()->addHomologyRequest("Homology", domainTags, subdomainTags,
+  GModel::current()->addHomologyRequest(type, domainTags, subdomainTags,
                                         dims);
 }
 
 GMSH_API void
-gmsh::model::mesh::computeCohomology(const std::vector<int> &domainTags,
-                                     const std::vector<int> &subdomainTags,
-                                     const std::vector<int> &dims)
+gmsh::model::mesh::clearHomologyRequests()
 {
   if(!_checkInit()) return;
-  GModel::current()->addHomologyRequest("Cohomology", domainTags, subdomainTags,
-                                        dims);
+  GModel::current()->clearHomologyRequests();
+}
+
+GMSH_API void
+gmsh::model::mesh::computeHomology()
+{
+  if(!_checkInit()) return;
+  GModel::current()->computeHomology();
 }
 
 GMSH_API void gmsh::model::mesh::triangulate(const std::vector<double> &coord,
@@ -5960,7 +5968,8 @@ GMSH_API void gmsh::model::geo::setMaxTag(const int dim, const int maxTag)
 
 GMSH_API int gmsh::model::geo::addPhysicalGroup(const int dim,
                                                 const std::vector<int> &tags,
-                                                const int tag)
+                                                const int tag,
+                                                const std::string &name)
 {
   if(!_checkInit()) return -1;
   int outTag = tag;
@@ -5968,6 +5977,7 @@ GMSH_API int gmsh::model::geo::addPhysicalGroup(const int dim,
     outTag = GModel::current()->getGEOInternals()->getMaxPhysicalTag() + 1;
   GModel::current()->getGEOInternals()->modifyPhysicalGroup(dim, outTag, 0,
                                                             tags);
+  if(!name.empty()) GModel::current()->setPhysicalName(name, dim, outTag);
   return outTag;
 }
 
diff --git a/src/geo/GModel.cpp b/src/geo/GModel.cpp
index b6951fa5c96eef2f6debba397997c613e26f1d46..d671ab19fe326cf9fb0e0c74f184efc73cf8440b 100644
--- a/src/geo/GModel.cpp
+++ b/src/geo/GModel.cpp
@@ -2673,7 +2673,8 @@ void GModel::checkMeshCoherence(double tolerance)
   Msg::StatusBar(true, "Done checking mesh coherence");
 }
 
-int GModel::removeDuplicateMeshVertices(double tolerance)
+int GModel::removeDuplicateMeshVertices(double tolerance,
+                                        const std::vector<GEntity*> &ents)
 {
   Msg::StatusBar(true, "Removing duplicate mesh nodes...");
 
@@ -2683,8 +2684,8 @@ int GModel::removeDuplicateMeshVertices(double tolerance)
 
   // get entities (in order of increasing dimensions so that topological
   // classification of vertices remains correct)
-  std::vector<GEntity *> entities;
-  getEntities(entities);
+  std::vector<GEntity*> entities(ents);
+  if(entities.empty()) getEntities(entities);
 
   // re-index all vertices (don't use MVertex::getNum(), as we want to be able
   // to remove duplicate vertices from "incorrect" meshes, where vertices with
@@ -3434,13 +3435,17 @@ void GModel::addHomologyRequest(const std::string &type,
                                 const std::vector<int> &subdomain,
                                 const std::vector<int> &dim)
 {
-  typedef std::pair<const std::vector<int>, const std::vector<int> > dpair;
-  typedef std::pair<const std::string, const std::vector<int> > tpair;
-  dpair p(domain, subdomain);
-  tpair p2(type, dim);
+  std::pair<const std::vector<int>, const std::vector<int> > p(domain,
+                                                               subdomain);
+  std::pair<const std::string, const std::vector<int> > p2(type, dim);
   _homologyRequests.insert(std::make_pair(p, p2));
 }
 
+void GModel::clearHomologyRequests()
+{
+  _homologyRequests.clear();
+}
+
 void GModel::computeHomology()
 {
   if(_homologyRequests.empty()) return;
diff --git a/src/geo/GModel.h b/src/geo/GModel.h
index b8c01e7e724be0b09f4adeacb1503552bf4cc003..e9737776d5e6ec10a917e492d15e62a90cab002c 100644
--- a/src/geo/GModel.h
+++ b/src/geo/GModel.h
@@ -621,7 +621,9 @@ public:
   void checkMeshCoherence(double tolerance);
 
   // remove duplicate mesh vertices
-  int removeDuplicateMeshVertices(double tolerance);
+  int removeDuplicateMeshVertices(double tolerance,
+                                  const std::vector<GEntity*> &entities =
+                                  std::vector<GEntity*>());
 
   // create a geometry (i.e. a parametrization for curves and surfaces) for the
   // given discrete entities (or all of them if dimTags is empty)
@@ -696,6 +698,7 @@ public:
                           const std::vector<int> &domain,
                           const std::vector<int> &subdomain,
                           const std::vector<int> &dim);
+  void clearHomologyRequests();
   void computeHomology();
 
   // mesh size callback
diff --git a/tutorials/c++/t1.cpp b/tutorials/c++/t1.cpp
index 0cfaaa1584a61a1eaa6c76507ec93025a6be9083..8ea65e6ea6f2de7d798dc7bdfa43f75fd100f186 100644
--- a/tutorials/c++/t1.cpp
+++ b/tutorials/c++/t1.cpp
@@ -114,8 +114,7 @@ int main(int argc, char **argv)
   // with name "My surface" (with an automatic tag) containing the geometrical
   // surface 1:
   gmsh::model::addPhysicalGroup(1, {1, 2, 4}, 5);
-  int ps = gmsh::model::addPhysicalGroup(2, {1});
-  gmsh::model::setPhysicalName(2, ps, "My surface");
+  gmsh::model::addPhysicalGroup(2, {1}, -1, "My surface");
 
   // We can then generate a 2D mesh...
   gmsh::model::mesh::generate(2);
diff --git a/tutorials/c++/t14.cpp b/tutorials/c++/t14.cpp
index 5167249d95475f325a3ddace6107952fd00832ce..a652063a52aa4e57257ce7363724ba6d9b256bac 100644
--- a/tutorials/c++/t14.cpp
+++ b/tutorials/c++/t14.cpp
@@ -73,15 +73,15 @@ int main(int argc, char **argv)
   // Whole domain
   int domain_tag = e[1].second;
   int domain_physical_tag = 1001;
-  gmsh::model::addPhysicalGroup(3, {domain_tag}, domain_physical_tag);
-  gmsh::model::setPhysicalName(3, domain_physical_tag, "Whole domain");
+  gmsh::model::addPhysicalGroup(3, {domain_tag}, domain_physical_tag,
+                                "Whole domain");
 
   // Four "terminals" of the model
   std::vector<int> terminal_tags = {e[3].second, e[5].second, e[7].second,
                                     e[9].second};
   int terminals_physical_tag = 2001;
-  gmsh::model::addPhysicalGroup(2, terminal_tags, terminals_physical_tag);
-  gmsh::model::setPhysicalName(2, terminals_physical_tag, "Terminals");
+  gmsh::model::addPhysicalGroup(2, terminal_tags, terminals_physical_tag,
+                                "Terminals");
 
   // Find domain boundary tags
   std::vector<std::pair<int, int> > boundary_dimtags;
@@ -99,35 +99,35 @@ int main(int argc, char **argv)
 
   // Whole domain surface
   int boundary_physical_tag = 2002;
-  gmsh::model::addPhysicalGroup(2, boundary_tags, boundary_physical_tag);
-  gmsh::model::setPhysicalName(2, boundary_physical_tag, "Boundary");
+  gmsh::model::addPhysicalGroup(2, boundary_tags, boundary_physical_tag,
+                                "Boundary");
 
   // Complement of the domain surface with respect to the four terminals
   int complement_physical_tag = 2003;
-  gmsh::model::addPhysicalGroup(2, complement_tags, complement_physical_tag);
-  gmsh::model::setPhysicalName(2, complement_physical_tag, "Complement");
+  gmsh::model::addPhysicalGroup(2, complement_tags, complement_physical_tag,
+                                "Complement");
 
   // Find bases for relative homology spaces of the domain modulo the four
   // terminals
-  gmsh::model::mesh::computeHomology({domain_physical_tag},
-                                     {terminals_physical_tag}, {0, 1, 2, 3});
+  gmsh::model::mesh::addHomologyRequest("Homology", {domain_physical_tag},
+                                        {terminals_physical_tag}, {0, 1, 2, 3});
 
   // Find homology space bases isomorphic to the previous bases: homology spaces
   // modulo the non-terminal domain surface, a.k.a the thin cuts
-  gmsh::model::mesh::computeHomology({domain_physical_tag},
-                                     {complement_physical_tag}, {0, 1, 2, 3});
+  gmsh::model::mesh::addHomologyRequest("Homology", {domain_physical_tag},
+                                        {complement_physical_tag}, {0, 1, 2, 3});
 
   // Find cohomology space bases isomorphic to the previous bases: cohomology
   // spaces of the domain modulo the four terminals, a.k.a the thick cuts
-  gmsh::model::mesh::computeCohomology({domain_physical_tag},
-                                       {terminals_physical_tag}, {0, 1, 2, 3});
+  gmsh::model::mesh::addHomologyRequest("Cohomology", {domain_physical_tag},
+                                        {terminals_physical_tag}, {0, 1, 2, 3});
 
   // More examples:
-  // gmsh::model::mesh::computeHomology();
-  // gmsh::model::mesh::computeHomology({domain_physical_tag});
-  // gmsh::model::mesh::computeHomology({domain_physical_tag},
-  //                                    {boundary_physical_tag},
-  //                                     {0,1,2,3});
+  // gmsh::model::mesh::addHomologyRequest();
+  // gmsh::model::mesh::addHomologyRequest("Homology", {domain_physical_tag});
+  // gmsh::model::mesh::addHomologyRequest("Homology", {domain_physical_tag},
+  //                                       {boundary_physical_tag},
+  //                                       {0,1,2,3});
 
   // Generate the mesh and perform the requested homology computations
   gmsh::model::mesh::generate(3);
diff --git a/tutorials/c++/t2.cpp b/tutorials/c++/t2.cpp
index 712eb29f28efe6f7edf7892a6ea7e1c994628069..2d55a8938f424e6742ca507265415e7e772e4a66 100644
--- a/tutorials/c++/t2.cpp
+++ b/tutorials/c++/t2.cpp
@@ -32,8 +32,7 @@ int main(int argc, char **argv)
   gmsh::model::geo::addPlaneSurface({1}, 1);
   gmsh::model::geo::synchronize();
   gmsh::model::addPhysicalGroup(1, {1, 2, 4}, 5);
-  int ps = gmsh::model::addPhysicalGroup(2, {1});
-  gmsh::model::setPhysicalName(2, ps, "My surface");
+  gmsh::model::addPhysicalGroup(2, {1}, -1, "My surface");
 
   // We can then add new points and curves in the same way as we did in
   // `t1.cpp':
@@ -136,8 +135,7 @@ int main(int argc, char **argv)
 
   // We group volumes 129 and 130 in a single physical group with tag `1' and
   // name "The volume":
-  gmsh::model::addPhysicalGroup(3, {129, 130}, 1);
-  gmsh::model::setPhysicalName(3, 1, "The volume");
+  gmsh::model::addPhysicalGroup(3, {129, 130}, 1, "The volume");
 
   // We finally generate and save the mesh:
   gmsh::model::mesh::generate(3);
diff --git a/tutorials/c++/t21.cpp b/tutorials/c++/t21.cpp
index e6fbbf096eaa4b13b16f1dcb8846bd8c674c0b62..f4bc891d39f7f029badd52c0b3505de9adc97287 100644
--- a/tutorials/c++/t21.cpp
+++ b/tutorials/c++/t21.cpp
@@ -48,10 +48,8 @@ int main(int argc, char **argv)
 
   // We create one physical group for each square, and we mesh the resulting
   // geometry:
-  gmsh::model::addPhysicalGroup(2, {1}, 100);
-  gmsh::model::setPhysicalName(2, 100, "Left");
-  gmsh::model::addPhysicalGroup(2, {2}, 200);
-  gmsh::model::setPhysicalName(2, 200, "Right");
+  gmsh::model::addPhysicalGroup(2, {1}, 100, "Left");
+  gmsh::model::addPhysicalGroup(2, {2}, 200, "Right");
   gmsh::model::mesh::generate(2);
 
   // We now define several ONELAB parameters to fine-tune how the mesh will be
diff --git a/tutorials/c++/t3.cpp b/tutorials/c++/t3.cpp
index e032f4ee426fae7c7d02022be5d882f8a3233bb1..375a9a1cff8499e86322a3e10817dc788f6a0e93 100644
--- a/tutorials/c++/t3.cpp
+++ b/tutorials/c++/t3.cpp
@@ -34,8 +34,7 @@ int main(int argc, char **argv)
     gmsh::model::geo::addPlaneSurface({1}, 1);
     gmsh::model::geo::synchronize();
     gmsh::model::addPhysicalGroup(1, {1, 2, 4}, 5);
-    int ps = gmsh::model::addPhysicalGroup(2, {1});
-    gmsh::model::setPhysicalName(2, ps, "My surface");
+    gmsh::model::addPhysicalGroup(2, {1}, -1, "My surface");
 
     // As in `t2.cpp', we plan to perform an extrusion along the z axis.  But
     // here, instead of only extruding the geometry, we also want to extrude the
diff --git a/tutorials/c/t1.c b/tutorials/c/t1.c
index b69641ffd8fe2f43aa67a0288f922d4f9827a96f..134628add6fabfecb59992e31c72bcffe12efd55 100644
--- a/tutorials/c/t1.c
+++ b/tutorials/c/t1.c
@@ -15,7 +15,7 @@ int main(int argc, char **argv)
   int ierr, p4;
   double lc = 1e-2;
   int cl1[] = {4, 1, -2, 3}, s1[] = {1};
-  int g5[] = {1, 2, 4}, g6[] = {1}, ps;
+  int g5[] = {1, 2, 4}, g6[] = {1};
 
   /* Before using any functions in the C API, Gmsh must be initialized. In the C
      API the last argument of all functions returns the error code, if any. */
@@ -116,9 +116,8 @@ int main(int argc, char **argv)
      curves in a single group (with prescribed tag 5); and a physical surface
      with name "My surface" (with an automatic tag) containing the geometrical
      surface 1: */
-  gmshModelAddPhysicalGroup(1, g5, sizeof(g5)/sizeof(g5[0]), 5, &ierr);
-  ps = gmshModelAddPhysicalGroup(2, g6, sizeof(g6)/sizeof(g6[0]), -1, &ierr);
-  gmshModelSetPhysicalName(2, ps, "My surface", &ierr);
+  gmshModelAddPhysicalGroup(1, g5, sizeof(g5)/sizeof(g5[0]), 5, NULL, &ierr);
+  gmshModelAddPhysicalGroup(2, g6, sizeof(g6)/sizeof(g6[0]), -1, "My surface", &ierr);
 
   /* We can then generate a 2D mesh... */
   gmshModelMeshGenerate(2, &ierr);
diff --git a/tutorials/c/t2.c b/tutorials/c/t2.c
index 1df37d3122ec42ce9d5b037432da24900109a9c4..3509bdd4e833b72ea44b783c0f54496bda4790d0 100644
--- a/tutorials/c/t2.c
+++ b/tutorials/c/t2.c
@@ -40,13 +40,10 @@ int main(int argc, char **argv)
   gmshModelGeoSynchronize(&ierr);
 
   int g5[] = {1, 2, 4};
-  gmshModelAddPhysicalGroup(1, g5, sizeof(g5) / sizeof(g5[0]), 5, &ierr);
+  gmshModelAddPhysicalGroup(1, g5, sizeof(g5) / sizeof(g5[0]), 5, NULL, &ierr);
 
   int g6[] = {1};
-  int ps =
-    gmshModelAddPhysicalGroup(2, g6, sizeof(g6) / sizeof(g6[0]), -1, &ierr);
-
-  gmshModelSetPhysicalName(2, ps, "My surface", &ierr);
+  gmshModelAddPhysicalGroup(2, g6, sizeof(g6) / sizeof(g6[0]), -1, "My surface", &ierr);
 
   // We can then add new points and curves in the same way as we did in
   // `t1.c':
@@ -193,9 +190,7 @@ int main(int argc, char **argv)
   // We group volumes 129 and 130 in a single physical group with tag `1' and
   // name "The volume":
   int g7[] = {129, 130};
-  gmshModelAddPhysicalGroup(3, g7, sizeof(g7) / sizeof(g7[0]), 1, &ierr);
-
-  gmshModelSetPhysicalName(3, 1, "The volume", &ierr);
+  gmshModelAddPhysicalGroup(3, g7, sizeof(g7) / sizeof(g7[0]), 1, "The volume", &ierr);
 
   gmshModelMeshGenerate(3, &ierr);
 
diff --git a/tutorials/python/t1.py b/tutorials/python/t1.py
index 5fe6b57c430d58662412e0d1dc571f8d30e9462f..aae7600ed499886bd05c74c20585d5dae895a765 100644
--- a/tutorials/python/t1.py
+++ b/tutorials/python/t1.py
@@ -113,8 +113,7 @@ gmsh.model.geo.synchronize()
 # in a single group (with prescribed tag 5); and a physical surface with name
 # "My surface" (with an automatic tag) containing the geometrical surface 1:
 gmsh.model.addPhysicalGroup(1, [1, 2, 4], 5)
-ps = gmsh.model.addPhysicalGroup(2, [1])
-gmsh.model.setPhysicalName(2, ps, "My surface")
+gmsh.model.addPhysicalGroup(2, [1], name = "My surface")
 
 # We can then generate a 2D mesh...
 gmsh.model.mesh.generate(2)
diff --git a/tutorials/python/t14.py b/tutorials/python/t14.py
index d410ba8fd7c20873d68162c63c97324f8bea9a08..1ae1c93ca5d05d0ad5ea153a012cc7725af66818 100644
--- a/tutorials/python/t14.py
+++ b/tutorials/python/t14.py
@@ -67,16 +67,15 @@ gmsh.model.geo.synchronize()
 # Whole domain
 domain_tag = e[1][1]
 domain_physical_tag = 1001
-gmsh.model.addPhysicalGroup(dim=3, tags=[domain_tag], tag=domain_physical_tag)
-gmsh.model.setPhysicalName(dim=3, tag=domain_physical_tag, name="Whole domain")
+gmsh.model.addPhysicalGroup(dim=3, tags=[domain_tag], tag=domain_physical_tag, name="Whole domain")
 
 # Four "terminals" of the model
 terminal_tags = [e[3][1], e[5][1], e[7][1], e[9][1]]
 terminals_physical_tag = 2001
 gmsh.model.addPhysicalGroup(dim=2,
                             tags=terminal_tags,
-                            tag=terminals_physical_tag)
-gmsh.model.setPhysicalName(dim=2, tag=terminals_physical_tag, name="Terminals")
+                            tag=terminals_physical_tag,
+                            name="Terminals")
 
 # Find domain boundary tags
 boundary_dimtags = gmsh.model.getBoundary(dimTags=[(3, domain_tag)],
@@ -93,42 +92,40 @@ for tag in terminal_tags:
 boundary_physical_tag = 2002
 gmsh.model.addPhysicalGroup(dim=2,
                             tags=boundary_tags,
-                            tag=boundary_physical_tag)
-gmsh.model.setPhysicalName(dim=2, tag=boundary_physical_tag, name="Boundary")
+                            tag=boundary_physical_tag,
+                            name="Boundary")
 
 # Complement of the domain surface with respect to the four terminals
 complement_physical_tag = 2003
 gmsh.model.addPhysicalGroup(dim=2,
                             tags=complement_tags,
-                            tag=complement_physical_tag)
-gmsh.model.setPhysicalName(dim=2,
-                           tag=complement_physical_tag,
-                           name="Complement")
+                            tag=complement_physical_tag,
+                            name="Complement")
 
 # Find bases for relative homology spaces of the domain modulo the four
 # terminals.
-gmsh.model.mesh.computeHomology(domainTags=[domain_physical_tag],
-                                subdomainTags=[terminals_physical_tag],
-                                dims=[0, 1, 2, 3])
+gmsh.model.mesh.addHomologyRequest("Homology", domainTags=[domain_physical_tag],
+                                   subdomainTags=[terminals_physical_tag],
+                                   dims=[0, 1, 2, 3])
 
 # Find homology space bases isomorphic to the previous bases: homology spaces
 # modulo the non-terminal domain surface, a.k.a the thin cuts.
-gmsh.model.mesh.computeHomology(domainTags=[domain_physical_tag],
-                                subdomainTags=[complement_physical_tag],
-                                dims=[0, 1, 2, 3])
+gmsh.model.mesh.addHomologyRequest("Homology", domainTags=[domain_physical_tag],
+                                   subdomainTags=[complement_physical_tag],
+                                   dims=[0, 1, 2, 3])
 
 # Find cohomology space bases isomorphic to the previous bases: cohomology
 # spaces of the domain modulo the four terminals, a.k.a the thick cuts.
-gmsh.model.mesh.computeCohomology(domainTags=[domain_physical_tag],
-                                  subdomainTags=[terminals_physical_tag],
-                                  dims=[0, 1, 2, 3])
+gmsh.model.mesh.addHomologyRequest("Cohomology", domainTags=[domain_physical_tag],
+                                   subdomainTags=[terminals_physical_tag],
+                                   dims=[0, 1, 2, 3])
 
 # more examples
-# gmsh.model.mesh.computeHomology()
-# gmsh.model.mesh.computeHomology(domainTags=[domain_physical_tag])
-# gmsh.model.mesh.computeHomology(domainTags=[domain_physical_tag],
-#                                 subdomainTags=[boundary_physical_tag],
-#                                 dims=[0,1,2,3])
+# gmsh.model.mesh.addHomologyRequest()
+# gmsh.model.mesh.addHomologyRequest("Homology", domainTags=[domain_physical_tag])
+# gmsh.model.mesh.addHomologyRequest("Homology", domainTags=[domain_physical_tag],
+#                                    subdomainTags=[boundary_physical_tag],
+#                                    dims=[0,1,2,3])
 
 # Generate the mesh and perform the requested homology computations
 gmsh.model.mesh.generate(3)
diff --git a/tutorials/python/t2.py b/tutorials/python/t2.py
index dd86075af65e7fbc4aa90390ec5eb4314310a14f..a40575fd7fb578ee8c497ba1d0c4b27aef60af56 100644
--- a/tutorials/python/t2.py
+++ b/tutorials/python/t2.py
@@ -30,8 +30,7 @@ gmsh.model.geo.addCurveLoop([4, 1, -2, 3], 1)
 gmsh.model.geo.addPlaneSurface([1], 1)
 gmsh.model.geo.synchronize()
 gmsh.model.addPhysicalGroup(0, [1, 2, 4], 5)
-ps = gmsh.model.addPhysicalGroup(2, [1])
-gmsh.model.setPhysicalName(2, ps, "My surface")
+gmsh.model.addPhysicalGroup(2, [1], name="My surface")
 
 # We can then add new points and curves in the same way as we did in `t1.py':
 gmsh.model.geo.addPoint(0, .4, 0, lc, 5)
@@ -129,8 +128,7 @@ gmsh.model.geo.synchronize()
 
 # We group volumes 129 and 130 in a single physical group with tag `1' and name
 # "The volume":
-gmsh.model.addPhysicalGroup(3, [129, 130], 1)
-gmsh.model.setPhysicalName(3, 1, "The volume")
+gmsh.model.addPhysicalGroup(3, [129, 130], 1, "The volume")
 
 # We finally generate and save the mesh:
 gmsh.model.mesh.generate(3)
diff --git a/tutorials/python/t21.py b/tutorials/python/t21.py
index 7803f1f9b863f27976476638e28e13840d25f44f..b73cfc79e3742e3ac1fcd16c1ba7b23eb52471f8 100644
--- a/tutorials/python/t21.py
+++ b/tutorials/python/t21.py
@@ -36,10 +36,8 @@ gmsh.model.mesh.setSize(gmsh.model.getEntities(0), 0.05)
 
 # We create one physical group for each square, and we mesh the resulting
 # geometry:
-gmsh.model.addPhysicalGroup(2, [1], 100)
-gmsh.model.setPhysicalName(2, 100, "Left")
-gmsh.model.addPhysicalGroup(2, [2], 200)
-gmsh.model.setPhysicalName(2, 200, "Right")
+gmsh.model.addPhysicalGroup(2, [1], 100, "Left")
+gmsh.model.addPhysicalGroup(2, [2], 200, "Right")
 gmsh.model.mesh.generate(2)
 
 # We now define several ONELAB parameters to fine-tune how the mesh will be
diff --git a/tutorials/python/t3.py b/tutorials/python/t3.py
index 67d8d4c6b8032952d0339cbcac68ad7ce5500938..0a0dab7d68c3f4e92a6c7fa70c472297a0673202 100644
--- a/tutorials/python/t3.py
+++ b/tutorials/python/t3.py
@@ -31,8 +31,7 @@ def createGeometryAndMesh():
     gmsh.model.geo.addPlaneSurface([1], 1)
     gmsh.model.geo.synchronize()
     gmsh.model.addPhysicalGroup(1, [1, 2, 4], 5)
-    ps = gmsh.model.addPhysicalGroup(2, [1])
-    gmsh.model.setPhysicalName(2, ps, "My surface")
+    gmsh.model.addPhysicalGroup(2, [1], name="My surface")
 
     # As in `t2.py', we plan to perform an extrusion along the z axis.  But
     # here, instead of only extruding the geometry, we also want to extrude the