Changes

Jump to navigation Jump to search
2,172 bytes added ,  11:39, 14 April 2023
Define module release file. Explain module publishing.
* [[Modules/Maps|maps]] Articles for [http://www.ntg.nl/maps.html MAPS], the publication of NTG (Nederlandstalige TeX Gebruikersgroep or Netherlands TeX Group)
=Modules Module writing guidelines=
==Module requirements==
 While a module usually consists of one main file with a name like <tt>t-modulename.[tex|ctx|mkiv|mkxl]</tt>, there can be many more files, and there should be some documentation. Please sort these files in folders according to TDS (TeX directory structure) – just have a look at the distribution. BTW <tt>t-</tt> is for “third party” modules, that means everything that isn’t part of the distribution. === Module release file === * A release file is a ZIP archive that contains the necessary files in a TDS compliant structure.* The filename should be <code>t-modulename-version.zip</code>, where the version is usually an date like <tt>YYYY.MM.DD</tt> (but that’s up to you).* On the top level there must be a VERSION file that only contains your version string.* On the top level there should be a LICENSE file containing the text of an open source license of your choice.* On the top level there should be a README(|.md|.txt) file with some metadata like a short description and author info.* On the top level there must NOT be a folder with the module name, but TDS folders like "doc" and "tex". The same applies for git/SVN repositories containing ConTeXt modules. === Module main file === All modules module files should start with a block containing ''meta information'' about that module.
There is a [[Module template]] available to help setting up that header correctly.
Which should generate a font-def.pdf in your current directory.
<!-- offline as of 2023-04
(The autogenerated documentation of all ConTeXt sources has been
made available by Luigi at [http://foundry.supelec.fr/gf/project/modules/].
Go there for examples of the output.)
-->
 
==Publication and maintenance==
 
* Please upload your module(s) to https://modules.contextgarden.net! Our server scripts handle distribution for ConTeXt and CTAN.
* Register an account, then you can login to the “member section”.
* If you lost your password, please ask Taco or Mojca (via the mailing list if you don’t know them).
==Legacy modules disclaimer==* Create a '''new module''' entry with a distinct name (e.g. prettyprinter) and fill in the metadata:** Title, e.g. “My Pretty Printer”** Short and longer description (the short one gets published e.g. in CTAN updates).<!-- This info is obsolete** Home URL, if the module has a homepage, e.g. a wiki page.** Keywords (for CTAN search)** Type: Macro or font** Works with Mk... (please check)** License** Check Put in download section could be kicked out(yes please, allows installation by rsync)** Check Put in ConTeXt distribution (not sure if this works)** Check Synch with CTAN (yes please, doesn’t makes it? -visible)** CTAN location: e.g. “<tt>/macros/context/contrib/context-prettyprinter</tt>Prior to release ** Comment: for you or the server admins* Create a '''new module version'2005.05.25'', ConTeXt silently truncated all file names from a ZIP upload/download or checkout from SVN or git** Log message: short information about changes in {{cmd|usemodule}} commands to 8 characters long and lowercased them to "prevent cross platform problems with filenames"this version** Version: usually YYYY.MM. ThusDD, module files that are but up to be used with older versions of ConTeXt must have filenames that fit those restrictionsyou** File upload / HTTP download URL: release file as ZIP, as outlined above** SVN/GIT URL: repository checkout, structured like the ZIP, or they will (somewhat cryptically) not be found.as outlined above

Navigation menu