id = "sips" name = "sips" description = "Scriptable image processing system built into macOS." executables = ["sips"] [commands] format = 1 label = "Process image" description = "Resize, rotate, flip, convert or inspect images in place or into a new file. Profile and tag editing is not included. Note that sips modifies the input file unless an output path is given (the output option is not in the completion data, so edit a copy)." quality = "ai-draft" base = "fig:sips" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/sips.ts" license = "MIT" [[commands.field]] id = "files" label = "Image files" description = "Image files to read or modify." type = "path" position = 0 multiple = true path = { kind = "file", role = "input" } sources = ["fig"] [[commands.field]] id = "get" label = "Get property" description = "Print a property such as pixelWidth or format." type = "string" option = ["--getProperty", "-g"] suggestions = [{ value = "all", label = "all" }, { value = "dpiHeight", label = "dpiHeight" }, { value = "dpiWidth", label = "dpiWidth" }, { value = "pixelHeight", label = "pixelHeight" }, { value = "pixelWidth", label = "pixelWidth" }, { value = "typeIdentifier", label = "typeIdentifier" }, { value = "format", label = "format" }, { value = "space", label = "space" }, { value = "samplesPerPixel", label = "samplesPerPixel" }, { value = "bitsPerSample", label = "bitsPerSample" }, { value = "creation", label = "creation" }, { value = "make", label = "make" }, { value = "model", label = "model" }] sources = ["fig"] [[commands.field]] id = "rotate" label = "Rotate (degrees clockwise)" type = "string" option = ["--rotate", "-r"] sources = ["fig"] [[commands.field]] id = "flip" label = "Flip axis" type = "enum" option = ["--flip", "-f"] choices = [{ value = "horizontal", label = "Horizontal" }, { value = "vertical", label = "Vertical" }] sources = ["fig"] [[commands.field]] id = "resample_width" label = "Resample to width (px)" description = "Keeps aspect ratio." type = "integer" option = ["--resampleWidth"] sources = ["fig"] [[commands.field]] id = "resample_height" label = "Resample to height (px)" description = "Keeps aspect ratio." type = "integer" option = ["--resampleHeight"] sources = ["fig"] [[commands.field]] id = "max_size" label = "Fit within size (px)" description = "Longest side will not exceed this size." type = "integer" option = ["-Z", "--resampleHeightWidthMax"] sources = ["fig"] [[commands.field]] id = "formats" label = "List supported formats" type = "boolean" option = ["--formats"] sources = ["fig"] [[commands.field]] id = "debug" label = "Debug output" type = "boolean" option = ["--debug"] sources = ["fig"] [[commands.task]] id = "resize" label = "Fit image within size" fields = ["files", "max_size"] required = ["files", "max_size"] [[commands.task]] id = "info" label = "Show image size" fields = ["files", "get"] required = ["files", "get"] set = { get = ["all"] } [[commands.task]] id = "formats" label = "List formats" fields = ["formats"] required = ["formats"] [[commands.group]] id = "basic" label = "Basic" fields = ["files", "max_size", "get", "rotate", "flip", "resample_width", "resample_height"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["formats", "debug"]