Environment Variables

        Path to the 'hg' executable, automatically passed when running hooks,
        extensions or external tools. If unset or empty, this is the hg
        executable's name if it's frozen, or an executable named 'hg' (with
        %PATHEXT% [defaulting to COM/EXE/BAT/CMD] extensions on Windows) is

        This is the name of the editor to run when committing. See EDITOR.

        (deprecated, use configuration file)

        This overrides the default locale setting detected by Mercurial. This
        setting is used to convert data including usernames, changeset
        descriptions, tag names, and branches. This setting can be overridden
        with the --encoding command-line option.

        This sets Mercurial's behavior for handling unknown characters while
        transcoding user input. The default is "strict", which causes
        Mercurial to abort if it can't map a character. Other settings include
        "replace", which replaces unknown characters, and "ignore", which
        drops them. This setting can be overridden with the --encodingmode
        command-line option.

        This sets Mercurial's behavior for handling characters with
        "ambiguous" widths like accented Latin characters with East Asian
        fonts. By default, Mercurial assumes ambiguous characters are narrow,
        set this variable to "wide" if such characters cause formatting

        An executable to use for resolving merge conflicts. The program will
        be executed with three arguments: local file, remote file, ancestor

        (deprecated, use configuration file)

        A list of files or directories to search for configuration files. Item
        separator is ":" on Unix, ";" on Windows. If HGRCPATH is not set,
        platform default search path is used. If empty, only the .hg/hgrc from
        the current repository is read.

        For each element in HGRCPATH:

        - if it's a directory, all files ending with .rc are added
        - otherwise, the file itself will be added

        When set, this disables any configuration settings that might change
        Mercurial's default output. This includes encoding, defaults, verbose
        mode, debug mode, quiet mode, tracebacks, and localization. This can
        be useful when scripting against Mercurial in the face of existing
        user configuration.

        Equivalent options set via command line flags or environment variables
        are not overridden.

        This is a comma-separated list of features to preserve when HGPLAIN is
        enabled. Currently the only value supported is "i18n", which preserves
        internationalization in plain mode.

        Setting HGPLAINEXCEPT to anything (even an empty string) will enable
        plain mode.

        This is the string used as the author of a commit. If not set,
        available values will be considered in this order:

        - HGUSER (deprecated)
        - configuration files from the HGRCPATH
        - EMAIL
        - interactive prompt
        - LOGNAME (with "@hostname" appended)

        (deprecated, use configuration file)

        May be used as the author of a commit; see HGUSER.

        May be used as the author of a commit; see HGUSER.

        This is the name of the editor to use when committing. See EDITOR.

        Sometimes Mercurial needs to open a text file in an editor for a user
        to modify, for example when writing commit messages. The editor it
        uses is determined by looking at the environment variables HGEDITOR,
        VISUAL and EDITOR, in that order. The first non-empty one is chosen.
        If all of them are empty, the editor defaults to 'vi'.

        This is used by Python to find imported modules and may need to be set
        appropriately if this Mercurial is not installed system-wide.