id = "jupytext"
name = "Jupytext"
homepage = "https://jupytext.readthedocs.io/"
description = "Jupyter notebooks as plain text"
executables = ["jupytext"]
[dotfiles]
paths = [
"[configHome]/jupytext/",
"[configHome]/.jupytext*",
"[configHome]/jupytext*",
"~/.jupytext*",
"~/jupytext*",
]
secret = []
side_effect = false
[commands]
format = 1
label = "Convert or sync notebooks"
description = "Convert notebooks between .ipynb and text formats, or synchronize paired files. Piping, linting, kernel and pre-commit options are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false }
[[commands.source]]
id = "cli"
kind = "help"
url = "https://github.com/mwouts/jupytext/blob/main/src/jupytext/cli.py"
revision = "main 2026-10-27"
evidence = """
"notebooks",
help="One or more notebook(s). Notebook is read from stdin when this argument is empty.",
"--from",
help="Jupytext format for the input(s). Inferred from the file extension and content when missing.",
"--to",
help=( "The destination format: 'ipynb', 'markdown' or 'script', or a file extension: "
"-o",
"--output",
help="Destination file. Defaults to the original file, "
"--update",
help="Preserve the output cells when the destination notebook is an .ipynb file that already exists",
"--set-formats",
"with e.g. '--set-formats ipynb,py:light'. "
"--sync",
"-s",
help="Synchronize the content of the paired representations of "
"--execute",
help="Execute the notebook with the given kernel."
"--quiet",
"-q",
help="Quiet mode: do not comment about files being updated or created",
"--show-changes",
help="Display the diff for each output file",
"""
[[commands.field]]
id = "notebooks"
label = "Notebooks"
type = "path"
position = 0
multiple = true
path = { kind = "file", role = "input", must_exist = true }
sources = ["cli"]
[[commands.field]]
id = "from"
label = "Input format"
description = "Inferred from the file extension when empty."
type = "string"
option = ["--from"]
sources = ["cli"]
[[commands.field]]
id = "to"
label = "Destination format"
type = "string"
option = ["--to"]
suggestions = [{ value = "ipynb", label = "Notebook (ipynb)" }, { value = "markdown", label = "Markdown" }, { value = "script", label = "Script" }, { value = "py:percent", label = "Python percent" }, { value = "md", label = "md" }]
sources = ["cli"]
[[commands.field]]
id = "output"
label = "Output file"
type = "path"
option = ["--output", "-o"]
path = { kind = "file", role = "output" }
effect = "overwrite"
sources = ["cli"]
[[commands.field]]
id = "update"
label = "Preserve existing outputs"
type = "boolean"
option = ["--update"]
sources = ["cli"]
[[commands.field]]
id = "set_formats"
label = "Set paired formats"
description = "For example ipynb,py:light."
type = "string"
option = ["--set-formats"]
sources = ["cli"]
[[commands.field]]
id = "sync"
label = "Sync paired files"
type = "boolean"
option = ["--sync", "-s"]
effect = "overwrite"
sources = ["cli"]
[[commands.field]]
id = "execute"
label = "Execute notebook"
type = "boolean"
option = ["--execute"]
effect = "exec"
sources = ["cli"]
[[commands.field]]
id = "show_changes"
label = "Show changes"
type = "boolean"
option = ["--show-changes"]
sources = ["cli"]
[[commands.field]]
id = "quiet"
label = "Quiet"
type = "boolean"
option = ["--quiet", "-q"]
sources = ["cli"]
[[commands.task]]
id = "to-py"
label = "Notebook to percent script"
set = { to = ["py:percent"] }
lock = ["to"]
fields = ["notebooks", "to", "output", "quiet"]
required = ["notebooks"]
[[commands.task]]
id = "to-ipynb"
label = "Text file to notebook"
set = { to = ["ipynb"] }
lock = ["to"]
fields = ["notebooks", "to", "output", "update", "execute", "quiet"]
required = ["notebooks"]
[[commands.task]]
id = "sync"
label = "Sync paired files"
set = { sync = [true] }
lock = ["sync"]
fields = ["notebooks", "sync", "quiet"]
required = ["notebooks"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["notebooks", "from", "to", "output", "sync"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["update", "set_formats", "execute", "show_changes", "quiet"]