Skip to main content

PICT VS Code Extension

VS Marketplace Version VS Marketplace Installs Open VSX Version

PICT Pairwise Testing with CoverTable brings PICT support directly into your editor — syntax highlighting, live diagnostics, and covering-array generation — powered by the same CoverTable engine as the online tool. No external binary is required.

Install

  • VS Code: Marketplace page, or run in the Quick Open bar (Cmd/Ctrl + P):

    ext install walkframe.pict-covertable
  • Cursor / VSCodium / Windsurf / Gitpod (Open VSX): Open VSX page

  • CLI:

    code --install-extension walkframe.pict-covertable

Features

  • Syntax highlighting for .pict files: parameters, values, weights (N), negatives ~, aliases a|b, parameter references <Name>, sub-models { A, B } @ N, and the constraint language (IF/THEN/ELSE, AND/OR/NOT, IN/LIKE, [Field] refs, sets, strings, arithmetic).
  • Diagnostics: unknown references, malformed constraints, and other parse errors are reported inline with line numbers as you type.
  • Generate Covering Array: run the model and write the result as a TSV/CSV file next to it. Command: PICT: Generate Covering Array (also on the editor context menu).
  • Status-bar footer: while a .pict file is active, the bottom bar shows Strength · Criterion · Sorter · Case · ▷ Generate. Click any option to change it; click Generate to run.
  • Progress & cancel: generation runs with a determinate, cancellable progress indicator and a completion summary (row count, order, elapsed time).

Settings

SettingDefaultDescription
pict.strength2Combinatorial order (/o). 2 = pairwise, 3 = triple-wise.
pict.criteriongreedyRow-construction criterion: greedy (fewest rows) or simple.
pict.sorterrandomCandidate ordering: random (varies) or hash (deterministic).
pict.caseSensitivefalseCase-sensitive comparisons/aliases. Off = case-insensitive.
pict.output.formattsvResult separator: tsv or csv.
pict.output.includeHeadertrueEmit a header row of parameter names.
pict.output.promptFileNametrueAsk for the output file name before generating.
pict.diagnostics.enabletrueToggle inline parse diagnostics.
Same engine, same format

The extension uses CoverTable's model format, a superset of Microsoft PICT (arithmetic expressions and # comments in constraints). See Compatible PICT to try the same engine in your browser, and the PICT reference for the full model syntax.

The source lives in the monorepo at editors/vscode.