Using gedoc PreviousNext

Command-line options

The usual way to invoke gedoc is as follows:

gedoc --format=<output_format> --output=<output_directory> <input_filename>
This will read the description of your Eiffel project from the ECF file input_filename, analyze it, and generate the documentation files in directory output_directory using the format output_format. Note that in addition to ECF, the file input_filename can also be an Eiffel class file. In that case, your Eiffel project will be considered to be made up of only one Eiffel class. This is useful when we just want to pretty-print one Eiffel file.

Here is the list of options that can be used with gedoc:

-h
--help
Print a summary of the command-line options of gedoc and exit.
--target=<target_name>
Name of target to be used in ECF file. (default: last target in ECF file)
--format=<pretty_print|html_ise_stylesheet|descendants|implicit_converts|explicit_converts|ecf_pretty_print|available_targets|executable_name>
Format for the output. (default: pretty_print) The formats currently supported are pretty_print to use gedoc as an Eiffel pretty-printer, html_ise_stylesheet to generate HTML documentation using ISE's stylesheet, descendants to get the descendants of a class or of a set of classes, implicit_converts and explicit_converts to list implicit conversions in the code and make them explicit, ecf_pretty_print to use gedoc as an ECF pretty-printer to format or convert ECF files, available_targets to figure out the list of available targets in an ECF file, and executable_name to get the name of the executable to be compiled using a given ECF file.
-c <class_name>
--class=<class_name>
Name of classes to be processed. (default: process all classes in the Eiffel project) The name can contain wildcards such as FOO* or @(FOO|BAR). This option can be used several times to specify several class names.
-l <library_name>
--library=<library_name>
Name of libraries whose classes will be processed. (default: process all classes in the Eiffel project) The name can contain wildcards such as str* or @(structure|string). This option can be used several times to specify several library names. The name of a library is defined as follows in its ECF file: <system name="..." ...>.
-o <directory_name>
--output=<directory_name>
Directory for generated files. (default: next to each class file)
--library-prefix
Add subfolders with library names in the output directory.
-f
--force
Overwrite existing files without asking.
--no-force
Do not overwrite existing files, do nothing silently without asking.
-i
--interactive
Ask before overwriting a file, unless --force or --no-force is specified.
--ise[=major[.minor[.revision[.build]]]]
Version of Eiffel whose semantics should be used during code analysis. (default: latest version)
--ecf=<latest|major.minor.revision>
Version of ECF to be used when converting ECF files. (default: version of the ECF input file)
--setting=name=value
Override settings defined in ECF file. This option can be used several times to override several settings.
--capability=name=value
Override capability usage defined in ECF file. This option can be used several times to override several capabilities.
--variable=NAME=VALUE
Override variables defined in ECF file. This option can be used several times to override several variables.
--thread=<thread_count>
Number of threads to be used to run gedoc. Negative numbers -N mean "number of CPUs - N". (default: -3, aka "max (number of CPUs -3, 1)")
--silent
Run gedoc in silent mode.
--verbose
Run gedoc in verbose mode.
--no-benchmark
Should no benchmark information be displayed? (default: display non-nested benchmark information)
--nested-benchmark
Should nested benchmark information be displayed?
--metrics
Should metrics information be displayed?
-V
--version
Print the version number of gedoc and exit.

Environment variables

It is possible to override some of the command-line options above, or the default values for these options, using environment variables.

$GOBO_CLI_SETTING
Override settings as if they were specified with the command-line option --setting, or override their values if they are also specified with the command-line option. Several settings can be specified in this environment variable, separated by a comma or a space.
$GOBO_DEFAULT_SETTING
Override the default value for a given setting when the command-line option --setting or the environment variable $GOBO_CLI_SETTING did not set it. Several settings can be specified in this environment variable, separated by a comma or a space.
$GOBO_CLI_CAPABILITY
Override capabilities as if they were specified with the command-line option --capability, or override their values if they are also specified with the command-line option. Several capabilities can be specified in this environment variable, separated by a comma or a space.
$GOBO_DEFAULT_CAPABILITY
Override the default value for a given capability when the command-line option --capability or the environment variable $GOBO_CLI_CAPABILITY did not set it. Several capabilities can be specified in this environment variable, separated by a comma or a space.
$GOBO_CLI_THREAD
Override the command-line option --thread.
$GOBO_DEFAULT_THREAD
Override the default value when the command-line option --thread has not been specified and the environment variable $GOBO_CLI_THREAD has not been set.


Copyright © 2017-2025, Eric Bezault
mailto:ericb@gobosoft.com
https://www.gobosoft.com
Last Updated: 10 December 2025
HomeTocPreviousNext