1271 lines · 51.9 KB · JSON
RawDownload
{    "$schema": "http://json-schema.org/draft-04/schema",    "$comment": "`taplo` and the corresponding VS Code plugins only support version draft-04 of JSON Schema, see <https://taplo.tamasfe.dev/configuration/developing-schemas.html>. draft-07 is mostly compatible with it, newer versions may not be.",    "title": "Jujutsu config",    "type": "object",    "description": "User configuration for Jujutsu VCS. See https://docs.jj-vcs.dev/latest/config/ for details",    "properties": {        "user": {            "type": "object",            "description": "Settings about the user",            "properties": {                "name": {                    "type": "string",                    "description": "Full name of the user, used in commits"                },                "email": {                    "type": "string",                    "description": "User's email address, used in commits",                    "format": "email"                }            }        },        "operation": {            "type": "object",            "description": "Metadata to be attached to jj operations (shown in jj op log)",            "properties": {                "hostname": {                    "type": "string",                    "format": "hostname"                },                "username": {                    "type": "string"                }            }        },        "ui": {            "type": "object",            "description": "UI settings",            "definitions": {                "conflict-marker-style": {                    "type": "string",                    "description": "Conflict marker style to use when materializing conflicts in the working copy",                    "enum": [                        "diff",                        "diff-experimental",                        "snapshot",                        "git"                    ],                    "default": "diff"                },                "command": {                    "type": [                        "string",                        "array"                    ],                    "minItems": 1,                    "items": {                        "type": "string"                    }                },                "command-env": {                    "type": "object",                    "properties": {                        "command": {                            "type": "array",                            "minItems": 1,                            "items": {                                "type": "string"                            }                        },                        "env": {                            "type": "object"                        }                    },                    "required": [                        "command",                        "env"                    ]                }            },            "properties": {                "default-command": {                    "description": "Default command to run when no explicit command is given",                    "default": "log",                    "oneOf": [                        {                            "type": "string"                        },                        {                            "type": "array",                            "items": {                                "type": "string"                            }                        }                    ]                },                "color": {                    "description": "Whether to colorize command output",                    "enum": [                        "always",                        "never",                        "debug",                        "auto"                    ],                    "default": "auto"                },                "paginate": {                    "type": "string",                    "description": "Whether or not to use a pager",                    "enum": [                        "never",                        "auto"                    ],                    "default": "auto"                },                "pager": {                    "description": "Pager to use for displaying command output",                    "default": "less -FRXK",                    "oneOf": [                        {                            "$ref": "#/properties/ui/definitions/command"                        },                        {                            "$ref": "#/properties/ui/definitions/command-env"                        }                    ]                },                "streampager": {                    "type": "object",                    "description": "':builtin' (streampager-based) pager configuration",                    "properties": {                        "interface": {                            "description": "Whether to quit automatically, whether to clear screen on startup/exit",                            "enum": [                                "quit-if-one-page",                                "full-screen-clear-output",                                "quit-quickly-or-clear-output"                            ],                            "default": "quit-if-one-page"                        },                        "wrapping": {                            "description": "Whether to wrap long lines",                            "enum": [                                "anywhere",                                "word",                                "none"                            ],                            "default": "anywhere"                        },                        "show-ruler": {                            "type": "boolean",                            "description": "Whether the ruler should start visible",                            "default": true                        }                    }                },                "diff-instructions": {                    "type": "boolean",                    "description": "Whether to generate the JJ-INSTRUCTIONS file as part of editing a diff",                    "default": true                },                "graph": {                    "type": "object",                    "description": "Options for rendering revision graphs from jj log etc",                    "properties": {                        "style": {                            "description": "Style of connectors/markings used to render the graph. See https://docs.jj-vcs.dev/latest/config/#graph-style",                            "enum": [                                "curved",                                "square",                                "ascii",                                "ascii-large"                            ],                            "default": "curved"                        }                    }                },                "log-word-wrap": {                    "type": "boolean",                    "description": "Whether to wrap log template output",                    "default": false                },                "log-synthetic-elided-nodes": {                    "type": "boolean",                    "description": "Whether to render elided parts of the graph as synthetic nodes.",                    "default": true                },                "editor": {                    "description": "Editor to use for commands that involve editing text",                    "oneOf": [                        {                            "$ref": "#/properties/ui/definitions/command"                        },                        {                            "$ref": "#/properties/ui/definitions/command-env"                        }                    ]                },                "diff-editor": {                    "description": "Editor tool to use for editing diffs",                    "default": ":builtin",                    "oneOf": [                        {                            "$ref": "#/properties/ui/definitions/command"                        },                        {                            "$ref": "#/properties/ui/definitions/command-env"                        }                    ]                },                "diff-formatter": {                    "description": "Tool for displaying or generating diffs",                    "default": ":color-words",                    "oneOf": [                        {                            "$ref": "#/properties/ui/definitions/command"                        },                        {                            "$ref": "#/properties/ui/definitions/command-env"                        }                    ]                },                "merge-editor": {                    "description": "Tool to use for resolving three-way merges. Behavior for a given tool name can be configured in merge-tools.TOOL tables",                    "default": ":builtin",                    "oneOf": [                        {                            "$ref": "#/properties/ui/definitions/command"                        },                        {                            "$ref": "#/properties/ui/definitions/command-env"                        }                    ]                },                "conflict-marker-style": {                    "$ref": "#/properties/ui/definitions/conflict-marker-style"                },                "show-cryptographic-signatures": {                    "type": "boolean",                    "default": false,                    "description": "Whether the built-in templates should show cryptographic signature information"                },                "movement": {                    "type": "object",                    "properties": {                        "edit": {                            "type": "boolean",                            "description": "Whether the next and prev commands should behave as if the --edit flag was passed",                            "default": false                        }                    }                },                "bookmark-list-sort-keys": {                    "type": "array",                    "description": "Specifies the sort keys for the bookmarks list. See the `jj bookmark list --help` for the `--sort` option",                    "items": {                        "type": "string",                        "enum": [                            "name",                            "name-",                            "author-name",                            "author-name-",                            "author-email",                            "author-email-",                            "author-date",                            "author-date-",                            "committer-name",                            "committer-name-",                            "committer-email",                            "committer-email-",                            "committer-date",                            "committer-date-"                        ]                    }                },                "tag-list-sort-keys": {                    "type": "array",                    "description": "Specifies the sort keys for the tags list. See the `jj tag list --help` for the `--sort` option",                    "items": {                        "type": "string",                        "enum": [                            "name",                            "name-",                            "author-name",                            "author-name-",                            "author-email",                            "author-email-",                            "author-date",                            "author-date-",                            "committer-name",                            "committer-name-",                            "committer-email",                            "committer-email-",                            "committer-date",                            "committer-date-"                        ]                    }                }            }        },        "fsmonitor": {            "type": "object",            "description": "External filesystem monitor settings, useful for large repos",            "properties": {                "backend": {                    "type": "string",                    "enum": [                        "none",                        "watchman"                    ],                    "default": "none",                    "description": "Whether to use an external filesystem monitor, useful for large repos"                },                "watchman": {                    "type": "object",                    "properties": {                        "register-snapshot-trigger": {                            "type": "boolean",                            "default": false,                            "description": "Whether to use triggers to monitor for changes in the background."                        }                    }                }            }        },        "colors": {            "type": "object",            "description": "Mapping from jj formatter labels to colors",            "definitions": {                "colorNames": {                    "type": "string",                    "enum": [                        "default",                        "black",                        "red",                        "green",                        "yellow",                        "blue",                        "magenta",                        "cyan",                        "white",                        "bright black",                        "bright red",                        "bright green",                        "bright yellow",                        "bright blue",                        "bright magenta",                        "bright cyan",                        "bright white"                    ]                },                "ansi256Color": {                    "type": "string",                    "pattern": "^ansi-color-([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"                },                "hexColor": {                    "type": "string",                    "pattern": "^#[0-9a-fA-F]{6}$"                },                "colors": {                    "oneOf": [                        {                            "$ref": "#/properties/colors/definitions/colorNames"                        },                        {                            "$ref": "#/properties/colors/definitions/ansi256Color"                        },                        {                            "$ref": "#/properties/colors/definitions/hexColor"                        }                    ]                }            },            "additionalProperties": {                "description": "A color profile for the given formatter label. Either a bare color name used as the foreground color or a table describing color and formatting",                "oneOf": [                    {                        "$ref": "#/properties/colors/definitions/colors"                    },                    {                        "type": "object",                        "properties": {                            "fg": {                                "$ref": "#/properties/colors/definitions/colors"                            },                            "bg": {                                "$ref": "#/properties/colors/definitions/colors"                            },                            "bold": {                                "type": "boolean"                            },                            "dim": {                                "type": "boolean"                            },                            "italic": {                                "type": "boolean"                            },                            "underline": {                                "type": "boolean"                            },                            "crossed-out": {                                "type": "boolean"                            },                            "reverse": {                                "type": "boolean"                            }                        }                    }                ]            }        },        "diff": {            "type": "object",            "description": "Builtin diff formats settings",            "properties": {                "color-words": {                    "type": "object",                    "description": "Options for color-words diffs",                    "properties": {                        "conflict": {                            "type": "string",                            "description": "How conflicts are processed and displayed",                            "enum": [                                "materialize",                                "pair"                            ],                            "default": "materialize"                        },                        "max-inline-alternation": {                            "type": "integer",                            "description": "Maximum number of removed/added word alternation to inline",                            "default": 3                        },                        "context": {                            "type": "integer",                            "description": "Number of lines of context to show",                            "default": 3                        }                    }                },                "git": {                    "type": "object",                    "description": "Options for git diffs",                    "properties": {                        "context": {                            "type": "integer",                            "description": "Number of lines of context to show",                            "default": 3                        },                        "show-path-prefix": {                            "type": "boolean",                            "description": "Whether to show the 'a/' and 'b/' path prefixes",                            "default": true                        }                    }                },                "stat": {                    "type": "object",                    "description": "Options for the diff stat display",                    "properties": {                        "context": {                            "type": "integer",                            "description": "Maximum number of characters to show in the `++--` stat bar"                        }                    }                }            }        },        "fileset-aliases": {            "type": "object",            "description": "Custom symbols/function aliases that can be used in fileset expressions",            "additionalProperties": {                "oneOf": [                    {                        "type": "string"                    },                    {                        "type": "object",                        "properties": {                            "definition": {                                "type": "string"                            },                            "doc": {                                "type": "string"                            }                        },                        "required": [                            "definition"                        ]                    }                ]            }        },        "git": {            "type": "object",            "description": "Settings for git behavior (when using git backend)",            "properties": {                "abandon-unreachable-commits": {                    "type": "boolean",                    "description": "Whether jj should abandon commits that became unreachable in Git.",

Lines 1–500 of 1271.