.. index:: lgtdocp .. _lgtdocp/0: .. rst-class:: right **protocol** ``lgtdocp`` =========== Documenting tool protocol. | **Availability:** | ``logtalk_load(lgtdoc(loader))`` | **Author:** Paulo Moura | **Version:** 6:0:0 | **Date:** 2024-03-08 | **Compilation flags:** | ``static`` | **Dependencies:** | (none) | **Remarks:** - Compiling files for generating XML documentation: All source files must be compiled with the ``source_data`` flag turned on. - ``xml_spec(Specification)`` option: XML documenting files specification format. Possible option values are ``dtd`` (DTD specification; default) and ``xsd`` (XML Schema specification). - ``xml_spec_reference(Reference)`` option: Reference to the XML specification file in XML documenting files. Possible values are ``local`` (default; DTD/XSD file in same folder as XML files), ``web`` (logtalk.org website DTD/XSD file), and ``standalone`` (no reference to specification files). - ``entity_xsl_file(File)`` option: XSLT file to use with generated XML documenting files. Default is ``logtalk_entity_to_xml.xsl``, allowing the XML files to be viewed by opening them with a browser supporting XSLT (after running the ``lgt2xml.sh`` script on the output directory). - ``index_xsl_file(File)`` option: XSLT file to use with generated XML documenting files. Default is ``logtalk_index_to_xml.xsl``, allowing the XML files to be viewed by opening them with a browser supporting XSLT (after running the ``lgt2xml.sh`` script on the output directory). - ``xml_docs_directory(Directory)`` option: Directory where the XML documenting files will be generated. The default value is ``./xml_docs``, a sub-directory of the source files directory. - ``bom(Boolean)`` option: Defines if a BOM should be added to the generated XML documenting files. - ``encoding(Encoding)`` option: Encoding to be used for the generated XML documenting files. - ``omit_path_prefixes(Prefixes)`` option: List of path prefixes (atoms) to omit when writing directory paths. The default value is to omit the home directory. - ``exclude_files(List)`` option: List of files to exclude when generating the XML documenting files. - ``exclude_paths(List)`` option: List of relative library paths to exclude when generating the XML documenting files (default is ``[]``). All sub-directories of the excluded directories are also excluded. - ``exclude_prefixes(List)`` option: List of path prefixes to exclude when generating the XML documenting files (default is ``[]``). - ``exclude_entities(List)`` option: List of entities to exclude when generating the XML documenting files (default is ``[]``). - ``sort_predicates(Boolean)`` option: Sort entity predicates (default is ``false``). - Known issues: Some options may depend on the used XSL processor. Most XSL processors support DTDs but only some of them support XML Schemas. Some processors (e.g. ``fop2``) reject reference to a DTD. | **Inherited public predicates:** | (none) .. contents:: :local: :backlinks: top Public predicates ----------------- .. index:: rlibraries/2 .. _lgtdocp/0::rlibraries/2: ``rlibraries/2`` ^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given libraries and their sub-libraries using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``rlibraries(Libraries,Options)`` | **Mode and number of proofs:** | ``rlibraries(+list(atom),+list)`` - ``one`` ------------ .. index:: rlibraries/1 .. _lgtdocp/0::rlibraries/1: ``rlibraries/1`` ^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given libraries and their sub-libraries using default options. | **Compilation flags:** | ``static`` | **Template:** | ``rlibraries(Libraries)`` | **Mode and number of proofs:** | ``rlibraries(+list(atom))`` - ``one`` ------------ .. index:: rlibrary/2 .. _lgtdocp/0::rlibrary/2: ``rlibrary/2`` ^^^^^^^^^^^^^^ Creates XML documenting files for all entities in a library and its sub-libraries using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``rlibrary(Library,Options)`` | **Mode and number of proofs:** | ``rlibrary(+atom,+list)`` - ``one`` | **Examples:** | Generate XML documenting files for all tool entities for later conversion to Markdown files | ``rlibrary(tools,[xslfile('lgtmd.xsl')])`` | ``yes`` ------------ .. index:: rlibrary/1 .. _lgtdocp/0::rlibrary/1: ``rlibrary/1`` ^^^^^^^^^^^^^^ Creates XML documenting files for all entities in a library and its sub-libraries using default options. | **Compilation flags:** | ``static`` | **Template:** | ``rlibrary(Library)`` | **Mode and number of proofs:** | ``rlibrary(+atom)`` - ``one`` | **Examples:** | Generate XML documenting files for all tool entities for direct viewing in a browser (after indexing using the ``lgt2xml`` script) | ``rlibrary(tools)`` | ``yes`` ------------ .. index:: libraries/2 .. _lgtdocp/0::libraries/2: ``libraries/2`` ^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given libraries using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``libraries(Libraries,Options)`` | **Mode and number of proofs:** | ``libraries(+list(atom),+list)`` - ``one`` ------------ .. index:: libraries/1 .. _lgtdocp/0::libraries/1: ``libraries/1`` ^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given libraries using default options. | **Compilation flags:** | ``static`` | **Template:** | ``libraries(Libraries)`` | **Mode and number of proofs:** | ``libraries(+list(atom))`` - ``one`` ------------ .. index:: library/2 .. _lgtdocp/0::library/2: ``library/2`` ^^^^^^^^^^^^^ Creates XML documenting files for all entities in a library using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``library(Library,Options)`` | **Mode and number of proofs:** | ``library(+atom,+list)`` - ``one`` | **Examples:** | Generate XML documenting files for all library entities for later conversion to PDF A4 files | ``library(library,[xslfile('logtalk_entity_to_pdf_a4.xsl')])`` | ``yes`` ------------ .. index:: library/1 .. _lgtdocp/0::library/1: ``library/1`` ^^^^^^^^^^^^^ Creates XML documenting files for all entities in a library using default options. | **Compilation flags:** | ``static`` | **Template:** | ``library(Library)`` | **Mode and number of proofs:** | ``library(+atom)`` - ``one`` ------------ .. index:: rdirectories/2 .. _lgtdocp/0::rdirectories/2: ``rdirectories/2`` ^^^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given directories and their sub-directories using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``rdirectories(Directories,Options)`` | **Mode and number of proofs:** | ``rdirectories(+list(atom),+list)`` - ``one`` ------------ .. index:: rdirectories/1 .. _lgtdocp/0::rdirectories/1: ``rdirectories/1`` ^^^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given directories and their sub-directories using default options. | **Compilation flags:** | ``static`` | **Template:** | ``rdirectories(Directories)`` | **Mode and number of proofs:** | ``rdirectories(+list(atom))`` - ``one`` ------------ .. index:: rdirectory/2 .. _lgtdocp/0::rdirectory/2: ``rdirectory/2`` ^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in a directory and its sub-directories using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``rdirectory(Directory,Options)`` | **Mode and number of proofs:** | ``rdirectory(+atom,+list)`` - ``one`` | **Examples:** | Generate XML documenting files for all entities in the tools directory for later conversion to Markdown files | ``rdirectory('./tools',[xslfile('lgtmd.xsl')])`` | ``yes`` ------------ .. index:: rdirectory/1 .. _lgtdocp/0::rdirectory/1: ``rdirectory/1`` ^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in a directory and its sub-directories using default options. | **Compilation flags:** | ``static`` | **Template:** | ``rdirectory(Directory)`` | **Mode and number of proofs:** | ``rdirectory(+atom)`` - ``one`` | **Examples:** | Generate XML documenting files for all entities in the tools directory for direct viewing in a browser (after indexing using the ``lgt2xml`` script) | ``rdirectory('./tools')`` | ``yes`` ------------ .. index:: directories/2 .. _lgtdocp/0::directories/2: ``directories/2`` ^^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given directories using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``directories(Directories,Options)`` | **Mode and number of proofs:** | ``directories(+list(atom),+list)`` - ``one`` ------------ .. index:: directories/1 .. _lgtdocp/0::directories/1: ``directories/1`` ^^^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in all given directories using default options. | **Compilation flags:** | ``static`` | **Template:** | ``directories(Directories)`` | **Mode and number of proofs:** | ``directories(+list(atom))`` - ``one`` ------------ .. index:: directory/2 .. _lgtdocp/0::directory/2: ``directory/2`` ^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in a directory using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``directory(Directory,Options)`` | **Mode and number of proofs:** | ``directory(+atom,+list)`` - ``one`` | **Examples:** | Generate XML documenting files for all the entities in the current directory for later conversion to PDF A4 files | ``directory('.',[xslfile('logtalk_entity_to_pdf_a4.xsl')])`` | ``yes`` ------------ .. index:: directory/1 .. _lgtdocp/0::directory/1: ``directory/1`` ^^^^^^^^^^^^^^^ Creates XML documenting files for all entities in a directory using default options. | **Compilation flags:** | ``static`` | **Template:** | ``directory(Directory)`` | **Mode and number of proofs:** | ``directory(+atom)`` - ``one`` ------------ .. index:: files/2 .. _lgtdocp/0::files/2: ``files/2`` ^^^^^^^^^^^ Creates XML documenting files for all entities in loaded source files using the specified options. The files can be given by name, basename, full path, or using library notation. | **Compilation flags:** | ``static`` | **Template:** | ``files(Files,Options)`` | **Mode and number of proofs:** | ``files(+list(atom),+list)`` - ``one`` ------------ .. index:: files/1 .. _lgtdocp/0::files/1: ``files/1`` ^^^^^^^^^^^ Creates XML documenting files for all entities in loaded source files using default options. The files can be given by name, basename, full path, or using library notation. | **Compilation flags:** | ``static`` | **Template:** | ``files(Files)`` | **Mode and number of proofs:** | ``files(+list(atom))`` - ``one`` ------------ .. index:: file/2 .. _lgtdocp/0::file/2: ``file/2`` ^^^^^^^^^^ Creates XML documenting files for all entities in a loaded source file using the specified options. The file can be given by name, basename, full path, or using library notation. | **Compilation flags:** | ``static`` | **Template:** | ``file(File,Options)`` | **Mode and number of proofs:** | ``file(+atom,+list)`` - ``one`` ------------ .. index:: file/1 .. _lgtdocp/0::file/1: ``file/1`` ^^^^^^^^^^ Creates XML documenting files for all entities in a loaded source file using default options. The file can be given by name, basename, full path, or using library notation. | **Compilation flags:** | ``static`` | **Template:** | ``file(File)`` | **Mode and number of proofs:** | ``file(+atom)`` - ``one`` ------------ .. index:: all/1 .. _lgtdocp/0::all/1: ``all/1`` ^^^^^^^^^ Creates XML documenting files for all loaded entities using the specified options. | **Compilation flags:** | ``static`` | **Template:** | ``all(Options)`` | **Mode and number of proofs:** | ``all(+list)`` - ``one`` ------------ .. index:: all/0 .. _lgtdocp/0::all/0: ``all/0`` ^^^^^^^^^ Creates XML documenting files for all loaded entities using default options. | **Compilation flags:** | ``static`` | **Mode and number of proofs:** | ``all`` - ``one`` ------------ Protected predicates -------------------- (none) Private predicates ------------------ (none) Operators --------- (none) .. seealso:: :ref:`lgtdoc `