)]}'
{
  "log": [
    {
      "commit": "ddd9ba5be28dc00d446706cc113ab0065d772706",
      "tree": "0727d4612ab90bcbb055a7ab111f2b768b5741cb",
      "parents": [
        "b2cc52374cafc799d5b89ae7fc13604deac4e8e8"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 29 16:22:29 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 29 16:22:29 2026 +0300"
      },
      "message": "ids theme: style Overview TOC entries as the links they are\n\nThe auto-generated table of contents opted out of the theme\u0027s normal\nstyling twice: font-size: 0.72em made it smaller than any other slide\nbody text, and color: inherit on its links overrode --r-link-color, so\nentries rendered as plain dark text with no sign that they navigate to\nthe chapter they name.\n\nDrop both.  The list now inherits the theme\u0027s standard link colour and\nhover transition, so it tracks any future palette change, and sits at the\nsame size and baseline rhythm as an ordinary bullet slide.  The reduced\nsize moves to the .with-subheadings variant, the two-column layout where\nthe extra density is actually wanted.\n\nThe whole OVERVIEW / TOC section existed only in the built ids.css and\nnever in ids.scss, so a rebuild from the scss source would have dropped\nit; backfill it there too.  SPEAKER NOTES OVERLAY and TRANSCRIPT are\nstill missing from the scss for the same reason.\n\nCo-Authored-By: Claude Opus 5 \u003cnoreply@anthropic.com\u003e\nChange-Id: If7cc1629a4afc8ea3e395f2a787b676a5df65ac3\n"
    },
    {
      "commit": "b2cc52374cafc799d5b89ae7fc13604deac4e8e8",
      "tree": "be207750e7adb7d41f0d8981b8e734fbc5caa167",
      "parents": [
        "59e95a6c71438a434f037f8f9611672056eada8b"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 29 16:21:52 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 29 16:21:52 2026 +0300"
      },
      "message": "Title slide: align all four corners, make QR codes scalable\n\nqrcode::generate_svg() paints the code into a fixed 300x300 canvas and\nemits no viewBox, so the svg could not be resized by CSS: given a smaller\nbox it kept drawing at full size and only its top left corner stayed\nvisible.  qr_svg_fit() adds a viewBox cropped to the dark modules, so the\ncode scales to whatever box it is placed in and its quiet zone becomes\nthe surrounding layout\u0027s business -- the white plate behind the title\nslide\u0027s code, and padding on a.qrcode elsewhere.\n\nWith that in place all four title-slide corners share one 8px inset\nmeasured to the visible ink: IDS (plus partner) logo top right, website\nQR top left, funder logo bottom left, WGL membership logo bottom right.\nThe funder logo previously sat 20px lower than intended, because\nreveal.js\u0027 default image margin adds itself to the offset of an\nabsolutely positioned image.\n\nAlso point the documented repository url at gitlab rather than gerrit,\nand give the ids example deck an Overview slide.\n\nChange-Id: I27447527345b71572a9e952bc21f542eba1ec352\n"
    },
    {
      "commit": "59e95a6c71438a434f037f8f9611672056eada8b",
      "tree": "7fc1c186065ea44efef57750534a3ffba3553568",
      "parents": [
        "6640f1214405e5fde12ec80f22a5e43388da5391"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 29 10:19:05 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 29 10:19:05 2026 +0300"
      },
      "message": "Introduce partner and funder logos\n\nChange-Id: I71e00aaa51c2dffe74335c7c4f170e8d507356d6\n"
    },
    {
      "commit": "25570ef20ffb361fe7bf03f7c299d63d06084966",
      "tree": "d303651b3fcbe45bbf04b8bf17d4849612289c37",
      "parents": [
        "725acd1c41a92662d38867db8b2f185921da9944"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 28 14:03:21 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 28 14:03:21 2026 +0300"
      },
      "message": "ids theme: tabular figures for table digits (vertical alignment of numeric columns)\n\nChange-Id: I108491093898f081659d1555584bb4d1a9f556b5\n"
    },
    {
      "commit": "010db0b13fc031fb3c7fb0d6758ceed0aa92f12d",
      "tree": "2518fff469fc4db5c41e4080cb98f7a603041c4e",
      "parents": [
        "eaaa2b42372ee28360b600276a4100b72b09da45"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 26 09:56:45 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 26 09:56:45 2026 +0300"
      },
      "message": "transcript view: list button for touch devices\n\nThe \u0027r\u0027 keyboard shortcut is useless on mobile browsers, so the\ntranscript view can now also be toggled with a button next to the\nspeaker notes button (shown on coarse-pointer devices, like the\nfullscreen and notes buttons, and highlighted while the transcript is\nopen).\n\nChange-Id: I10909124850a5fba469a670115e87ef4f6c4376b\n"
    },
    {
      "commit": "eaaa2b42372ee28360b600276a4100b72b09da45",
      "tree": "9409760733f00f7e799c88b04ae88c24fc84bde4",
      "parents": [
        "4eb03205f9ff7baf6e3fca4f07aef38275b44faa"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 26 09:41:27 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 26 09:41:27 2026 +0300"
      },
      "message": "add transcript view (\u0027r\u0027) for text-to-speech read-aloud extensions\n\nRead-aloud browser extensions cannot walk a reveal.js deck: slides\noutside the current one are display:none and the visible page text is\nindexed only once at page load, so such extensions stop after the title\nslide. Pressing \u0027r\u0027 now toggles a transcript view -- a single scrollable\npage containing every slide\u0027s content and speaker notes (overview TOC\nlists excluded, fragments shown, rebuilt on every open) -- which\nextensions can read from start to finish. Styled in the ids theme;\ncloses on click or Escape.\n\nChange-Id: Ia3df9dfa68b9699d318d747831ac8a0e270c8271\n"
    },
    {
      "commit": "24057e5aa56a0c0830caae3eae6fb120790a67c8",
      "tree": "1c07c9457b4a1b57414a1ad9be90612026e5924b",
      "parents": [
        "4fc867c049bb739700828da92c16861ee4eb1703"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 25 10:51:06 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 25 10:51:06 2026 +0300"
      },
      "message": "overview TOC: only chapter headings by default, two columns with sub-headings\n\nThe overview table of contents now lists only top-level (#) headings by\ndefault. Adding {data-overview-subheadings\u003dtrue} to the overview\nheading opts in to the ## sub-headings below their chapters, which are\nthen laid out in two CSS columns (chapters kept intact across column\nbreaks).\n\nChange-Id: Ic916c07b5479e8d19fd942e9151b0a471bf039a4\n"
    },
    {
      "commit": "4fc867c049bb739700828da92c16861ee4eb1703",
      "tree": "8a3dd46d124661e74fcab1910c9a88bd12f51c58",
      "parents": [
        "6b65c03e7e6177f73fe435b528b4e8533db58e0a"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 25 10:30:18 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 25 10:30:18 2026 +0300"
      },
      "message": "auto-populate Overview/Überblick slides with a clickable TOC\n\nPort the convention from the old Google Docs slide workflow: at\npresentation time, any slide whose (only) heading is Overview or\nÜberblick gets its body content replaced with a hierarchical list of\nthe deck\u0027s h1/h2 slide headings, each entry linking to its slide.\nStyled in the ids theme; slides without headings and the title slide\nare left out.\n\nChange-Id: I3bfd62d530f297a389030e431a6066b5adc99bb8\n"
    },
    {
      "commit": "88799180fb0ddf2ac00194e0397d6708ba3d5c18",
      "tree": "f546d84e138c2970e7c1d854dda7c46c292a4dad",
      "parents": [
        "ad0f24bb7c325da6960db16306fd19c536b80230"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 24 09:22:33 2026 +0300"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Mon Aug 24 09:22:33 2026 +0300"
      },
      "message": "ids theme: speaker notes overlay button for touch devices\n\nThe reveal.js speaker view (\u0027s\u0027) opens a separate window, which is\nawkward on mobile browsers. Add a button next to the fullscreen toggle\n(shown on coarse-pointer devices only, like the fullscreen button) that\ncovers the slide with a full-screen overlay showing the current slide\u0027s\nspeaker notes, its title and planned time (from data-timing). The\noverlay follows slide changes while open, closes with the X button or\nEscape, is hidden in print output, and the button only appears when the\ndeck contains notes at all.\n\nChange-Id: I50c6cd701115a973e8c6ba35448b13d5c722ab5a\n"
    },
    {
      "commit": "54d9ce08f919ad9ba5596f7b0f2b59ff23af7ee6",
      "tree": "5b35b290a78f3cbfff1b7968f477f4da392bfda0",
      "parents": [
        "61c8ec7e8ca33f23c6f0412299e82a6d21760608"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 11:38:45 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 11:38:45 2026 +0200"
      },
      "message": "ids theme: fullscreen toggle button for touch devices\n\nChange-Id: I0bd17d0b899faa0f81c692933b3d494678853e12\n"
    },
    {
      "commit": "61c8ec7e8ca33f23c6f0412299e82a6d21760608",
      "tree": "b5986282a131681cff344daee790aa238e3b895a",
      "parents": [
        "d023f07dbd809be6e259c539393a529f1f327bd2"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 20:47:45 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Fri Aug 21 06:59:36 2026 +0200"
      },
      "message": "Fix print to pdf\n\nChange-Id: I27f134c1ee74fe06a7f4579f9f4845da5d5c7ef1\n"
    },
    {
      "commit": "d023f07dbd809be6e259c539393a529f1f327bd2",
      "tree": "4cf76196cb8520358bf4343c519ed8cc98689993",
      "parents": [
        "6acbd668d4a8ef6c8ddc1106c34239f41aff23e6"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 15:27:37 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 15:27:37 2026 +0200"
      },
      "message": "ids theme: balance title/subtitle margins in bar, keep layout invariant\n\nChange-Id: I49672cdefdb9a91b2ab7738aebe9e169fa8b7e85\n"
    },
    {
      "commit": "6acbd668d4a8ef6c8ddc1106c34239f41aff23e6",
      "tree": "9ddb033d72df1aa42e2f07f3be1e033d7b55b290",
      "parents": [
        "28822cdc852497f7586b42533353d593c1e13f98"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 14:41:00 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 14:41:00 2026 +0200"
      },
      "message": "ids theme: vertically center lone titles within the orange bar\n\nChange-Id: I477ce457d556e28e034fd6e419d223dccd338b09\n"
    },
    {
      "commit": "28822cdc852497f7586b42533353d593c1e13f98",
      "tree": "5d6bc48e209e10bae59ccde5f6596ea8d05e3d4b",
      "parents": [
        "205cd5baa4a6e1510f777767df7d0f89af00277d"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 14:10:18 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 14:10:18 2026 +0200"
      },
      "message": "ids theme: restore logo right inset, move logo slightly up\n\nChange-Id: If4440654f7d1e3292aa008cd1f0454bf00539364\n"
    },
    {
      "commit": "7427cca7046e9bd6f6cfd292df077b72f21a4790",
      "tree": "76dbcf01be1f45435686d23f8b3979b7b2df964e",
      "parents": [
        "903104a8c4084e2cb245c5744c4d58f5c8bb10ea"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 10:53:03 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 10:53:03 2026 +0200"
      },
      "message": "ids theme: bold section headings in slides menu\n\nChange-Id: I589343912b8f82c2b1d197678d3ba723633c30bf\n"
    },
    {
      "commit": "903104a8c4084e2cb245c5744c4d58f5c8bb10ea",
      "tree": "f34012744a9f88ccc31b67f3754aa6cfc5f082c2",
      "parents": [
        "f4945eb2b61fa2e08dd0a84956f51a7c72ad90a6"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 10:10:41 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Thu Aug 20 10:10:41 2026 +0200"
      },
      "message": "ids theme: crisper slides menu in Fira Sans Condensed, wider and hanging wraps\n\nChange-Id: Ia6c2e5f440d3b3e177ee37adca0e9ec7ebbfac7e\n"
    },
    {
      "commit": "f4945eb2b61fa2e08dd0a84956f51a7c72ad90a6",
      "tree": "627883480d46d3f3288853d2578d7ca410fe7da6",
      "parents": [
        "bfab8a1f3d679971bc976ca76b7fc24ba33a41db"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 19 17:48:41 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 19 17:48:41 2026 +0200"
      },
      "message": "Add styling for description lists\n\nChange-Id: I5545fdb0d48972d5493b0370553078fb18cfce86\n"
    },
    {
      "commit": "bfab8a1f3d679971bc976ca76b7fc24ba33a41db",
      "tree": "d18072229a8e3294abe0dacd87d4abada6e72992",
      "parents": [
        "9b795bdb3d3ecce296530e55dc1c6a477f9c570e"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 19 14:42:42 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 19 14:42:42 2026 +0200"
      },
      "message": "ids theme: tighten references scrollbox position and height\n\nReduce margin-top from 35px to 10px so the scrollbox sits closer to\nthe heading. Reduce max-height from 540px to 510px so the bottom of\nthe scrollbox stays above the IDS footer bar.\n\nChange-Id: If7e488306f5a5b9a290679af76fad8cb74e8f7a9\n"
    },
    {
      "commit": "9b795bdb3d3ecce296530e55dc1c6a477f9c570e",
      "tree": "c1fdab15f25c4471332c28a38fb4268cfc1200e7",
      "parents": [
        "c22be150b3d6e558360aba44bc1d0d7923e881e3"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 19 06:58:44 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Wed Aug 19 06:58:44 2026 +0200"
      },
      "message": "ids theme: render bold text in orange Fira Sans Condensed\n\nBold (\"highlighted\") text previously only got the orange colour and\nkept the serif body face. Mirror the IDS reference decks: Fira Sans\nCondensed, weight 600, 90% size, so bold passages contrast against the\nserif text without dominating it.\n\nChange-Id: I82212814f9de83a6bb2ba39094726ac4ab780f90\n"
    },
    {
      "commit": "c22be150b3d6e558360aba44bc1d0d7923e881e3",
      "tree": "b61599e011ff502e164625bea95e8f1d76873ec3",
      "parents": [
        "371d1d812af79e0325d050e50b46237f02861c5f"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 18 15:54:55 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Tue Aug 18 15:54:55 2026 +0200"
      },
      "message": "ids theme: use Fira Code for highlighted/code text\n\nLoads Fira Code from Google Fonts (the monospaced Fira Sans variant the\nIDS reference decks use) and sets it as --r-code-font, replacing the\ngeneric monospace; falls back to Fira Mono (already imported via the\nMozilla CSS), then DejaVu Sans Mono. R\u0027s \u003c- renders as an arrow glyph\nvia Fira Code\u0027s default ligatures.\n\nChange-Id: I7b7eb8538042b2287973a6687c0e4f0565a21328\n"
    },
    {
      "commit": "cf6e998a8f5cffb32f255c2e45684b90cc49bb8b",
      "tree": "52fc3eeb296389961bcde9be665563341c4f579e",
      "parents": [
        "26096d316a1a8fb13d02a2b7e1470599c5553716"
      ],
      "author": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 15 15:37:40 2026 +0200"
      },
      "committer": {
        "name": "Marc Kupietz",
        "email": "kupietz@ids-mannheim.de",
        "time": "Sat Aug 15 15:38:36 2026 +0200"
      },
      "message": "Vendor reveal.js 5.2.1 (from 5.1.0)\n\nContains the upstream 5.2.x feature set, most notably the lightbox\n(data-preview-image/data-preview-video opens media full-size in an\noverlay), controls: \"speaker-only\", search API extensions and\nspeaker-view fixes. The package\u0027s local additions are carried over\nunchanged: IDS theme (ids.css/ids.scss), extra theme fonts,\nchalkboard/customcontrols/menu plugins, and the 1280x720 default\nslide size (patched in js/config.js and the dist bundles).\n\nAlso fixes a pre-existing fork bug (unrelated to the upgrade): the\nslidechanged Highcharts resize hook in default.html now checks that\nHighcharts exists, no longer throwing in decks without highcharter.\n\nDocs: README (Rmd + rendered md) gained a short Lightbox section,\nNEWS.md notes the library bump.\n\nVerified: examples/ids.html and examples/simple.html re-render and run\nerror-free through all 13/5 slides (Reveal.VERSION \u003d 5.2.1); lightbox\nopens on click and closes with Esc in a dedicated test deck.\n\nChange-Id: I0751129dfb0c9d20b56241377905876314a26011\n"
    }
  ]
}
