Metadata-Version: 1.1
Name: foliantcontrib.runcommands
Version: 1.0.0
Summary: Preprocessor for Foliant to run arbitrary external commands.
Home-page: https://github.com/foliant-docs/foliantcontrib.runcommands
Author: Artemy Lomov
Author-email: artemy@lomov.ru
License: MIT
Description-Content-Type: text/markdown
Description: # RunCommands
        
        RunCommands is a preprocessor that allows to execute a sequence of arbitrary external commands.
        
        ## Installation
        
        ```bash
        $ pip install foliantcontrib.runcommands
        ```
        
        ## Usage
        
        To enable the preprocessor, add `runcommands` to `preprocessors` section in the project config, and specify the commands to run:
        
        ```yaml
        preprocessors:
            - runcommands:
                commands:
                   - ./build.sh
                   - echo "Hello World" > ${WORKING_DIR}/hello.txt
            - targets:
                - pre
                - tex
                - pdf
                - docx
        ```
        
        `commands`
        :   Sequence of system commands to execute one after the other.
        
        `targets`
        :   Allowed targets for the preprocessor. If not specified (by default), the preprocessor applies to all targets.
        
        ### Supported environment variables
        
        You may use the following environment variables in your commands:
        
        * `${PROJECT_DIR}` — full path to the project directory, e.g. `/usr/src/app`;
        * `${SRC_DIR}` — full path to the directory that contains Markdown sources, e.g. `/usr/src/app/src`;
        * `${WORKING_DIR}` — full path to the temporary directory that is used by preprocessors, e.g. `/usr/src/app/__folianttmp__`;
        * `${BACKEND}` — currently used backend, e.g. `pre`, `pandoc`, or `mkdocs`;
        * `${TARGET}` — current target, e.g. `site`, or `pdf`.
        
Platform: any
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Documentation
Classifier: Topic :: Utilities
