completionSpec top-level property

FigSpec completionSpec
final

Implementation

final completionSpec = FigSpec(
  name: "go-task",
  description: "A task runner / simpler Make alternative written in Go",
  icon: "https://taskfile.dev/favicon.ico",
  args: [
    FigArg(
      generators: tasksGenerator,
      isVariadic: true,
      isOptional: true,
    ),
  ],
  options: [
    FigOption(
      name: ["-a", "--list-all"],
      description: "Lists tasks with or without a description",
    ),
    FigOption(
      name: ["-c", "--color"],
      description:
          "Colored output. Enabled by default. Set flag to false or use NO_COLOR=1 to disable (default true)",
      requiresEquals: true,
      args: [
        FigArg(
          name: "color",
          suggestions: ["true", "false"],
        ),
      ],
    ),
    FigOption(
      name: ["-C", "--concurrency"],
      description: "Limit number tasks to run concurrently",
      args: [
        FigArg(
          name: "number",
        ),
      ],
    ),
    FigOption(
      name: DIRECTORY_FLAGS,
      description: "Sets directory of execution",
      exclusiveOn: TASKFILE_FLAGS,
      args: [
        FigArg(
          name: "path",
          template: ["folders"],
        ),
      ],
    ),
    FigOption(
      name: ["--dry"],
      description:
          "Compiles and prints tasks in the order that they would be run, without executing them",
    ),
    FigOption(
      name: ["-f", "--force"],
      description: "Forces execution even when the task is up-to-date",
    ),
    FigOption(
      name: ["-h", "--help"],
      description: "Shows Task usage",
    ),
    FigOption(
      name: ["-i", "--init"],
      description: "Creates a new Taskfile.yml in the current folder",
    ),
    FigOption(
      name: ["-l", "--list"],
      description: "Lists tasks with description of current Taskfile",
    ),
    FigOption(
      name: ["-o", "--output"],
      description: "Sets output style",
      args: [
        FigArg(
          name: "output",
          suggestions: ["interleaved", "group", "prefixed"],
        ),
      ],
    ),
    FigOption(
      name: ["-p", "--parallel"],
      description: "Executes tasks provided on command line in parallel",
    ),
    FigOption(
      name: ["-s", "--silent"],
      description: "Disables echoing",
    ),
    FigOption(
      name: ["--status"],
      description:
          "Exits with non-zero exit code if any of the given tasks is not up-to-date",
    ),
    FigOption(
      name: ["--summary"],
      description: "Show summary about a task",
    ),
    FigOption(
      name: TASKFILE_FLAGS,
      description: "Choose which Taskfile to run",
      exclusiveOn: DIRECTORY_FLAGS,
      args: [
        FigArg(
          name: "taskfile",
          defaultValue: "Taskfile.yml",
          template: ["filepaths"],
        ),
      ],
    ),
    FigOption(
      name: ["-v", "--verbose"],
      description: "Enables verbose mode",
    ),
    FigOption(
      name: ["--version"],
      description: "Show Task version",
    ),
    FigOption(
      name: ["-w", "--watch"],
      description: "Enables watch of the given task",
    ),
    FigOption(
      name: ["--"],
      description: "Pass variables to the task",
      args: [
        FigArg(
          name: "variables",
          isVariadic: true,
          optionsCanBreakVariadicArg: false,
        ),
      ],
    ),
  ],
);