Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Examples

A taste of what Ctrl+Grid makes — one A4 example per generator, plus a multi-page document, the calibration cover sheet, a whole linked calendar, a notebook of sections, a calligraphy guide, a box net to cut out and a sheet with a printed ruler along its edges. Each is an ordinary definition file: open the .yaml, change it, regenerate. The .pdf is the real output (measured, to scale); the image is just a preview. Only the calendar ships without its PDF — 405 pages is too much to carry in a repository, and the one command below rebuilds it in about a second.

Try one without installing anything:

uvx --from git+https://github.com/DocAtPrompt/ctrlgrid.git \
  ctrlgrid -d examples/01-lines-squared.yaml -o out.pdf

The preview images are rasterised from the PDFs with one command, recorded here so the gallery can be rebuilt the same way every time — the tool was not written down before 0.12.0, and that is why bumping a version used to leave the previews looking slightly different from each other:

pdftoppm -png -scale-to-x 600 -scale-to-y 849 -f 1 -l 1 example.pdf previews/name

The calendar has no committed PDF, so its two previews come from a fresh render — page 6 for the month view and page 18 for the day view, which is where they fall once the title page is counted.

Everything here is A4. Add --format a5, --format letter or a --device remarkable-paper-pro to the same command and it re-fits the new medium — the examples using %w/%h/%s (polar, mandala) fill it proportionally.

Preview What it is
lines — 5 mm squared paper filling the whole page from the top-left (align: top-left): heavy lines start top-left, cells run to the edges, and the incomplete block falls to the bottom.
01-lines-squared.yaml · PDF
lines (complete blocks) — the same, but snap: cycle keeps only whole 25 mm blocks, so every edge is a heavy major line and the leftover stays blank margin.
01b-lines-squared-blocks.yaml · PDF
dots — a 5 mm dot grid, every fifth dot larger and darker.
02-dots-grid.yaml · PDF
grid — a 12 × 12 labelled board (A…, 1…) with a checker fill.
03-grid-battleship.yaml · PDF
staves — treble-clef manuscript paper; the clef is a glyph from the bundled music font.
04-staves-treble.yaml · PDF
maze — multi-page — a booklet of three mazes, each with its solution on the next sheet: six sheets from one command.
05-maze-booklet.yaml · PDF
polar — a concentric target whose radii are a share of the shorter side (%s), so it fills any format.
06-polar-target.yaml · PDF
tiling — a flat-top hexagon honeycomb with a three-colour fill.
07-tiling-hex.yaml · PDF
form — a weekly planner: seven day rows with a done-box, then a notes block.
08-form-weekly.yaml · PDF
perspective — a two-point drawing grid: a horizon, two vanishing points off the sheet, and true verticals.
09-perspective-2pt.yaml · PDF
mandala — a twelve-fold template: guide rings and spokes, a flower-of-life rosette, a double ring of lotus petals, two bead rings and a twelve-sided frame.
10-mandala.yaml · PDF
mandala (variant) — the same blade, a different character: a scalloped outer border, a pinwheel of tilted squares, an inward-turned scalloped ring and a flower-of-life centre.
10b-mandala-scallops.yaml · PDF
--cover — the calibration cover sheet (§ 8.8): a 50 mm square and 100 mm rule to catch a scaling print driver, a ladder of stroke weights so you see how each one prints, and a settings summary. The preview is the cover; the grid it precedes is page two.
11-cover-calibration.yaml · PDF
lines (slanted) — an italic calligraphy guide: a ruled cycle of ascender, body, descender and air, crossed by a family at 55°. A slanted family is spaced perpendicular and clipped to the pattern area (§ 7.1).
14-calligraphy-italic.yaml · PDF
calendar — a whole document — a linked, write-on year planner: a cover, the year on one sheet, two half-year tables, twelve months, every day and three note pads, all cross-linked — tap a date and land on that day. The previews are a day page (schedule with half hours, tick boxes, squared notes) and January. 405 pages and ~1.6 MB, so this one ships without its PDF: ctrlgrid -d examples/12-calendar-year.yaml -o calendar.pdf builds it in about a second.
12-calendar-year.yaml · preset calendar-a4
notebook — several papers in one linked document: a cover, a contents page that links to each section, dividers, and sections filled by dots, lines and staves. The header names the section, the footer counts the pages. The previews are the contents and a journal page.
15-notebook.yaml · PDF · preset notebook-a4
net — an 80 × 50 × 30 mm tray: base, four walls, four glue tabs, cut lines solid and creases dashed. Print at 100 %, cut, fold — if it closes, nothing scaled it. Dimensions are the inner ones.
16-net-tray.yaml · PDF · preset box-tuck-a4
ruler — the promise, on the sheet: a centimetre scale along the bottom and left edges, zeroed on the pattern area so the numbers agree with the grid. Print at 100 % and lay a real ruler against it.
13-ruler-edge.yaml · PDF

The maze booklet uses a fixed seed for a reproducible set — regenerate it with:

ctrlgrid -d examples/05-maze-booklet.yaml --seed 4711 -o out.pdf