| 1 | # Notebook packages |
| 2 | |
| 3 | OneNote 2010's Save As offers a page and a section as a OneNote 2010 section (`.one`), 2007 |
| 4 | section, PDF, XPS or single-file web page, and a notebook as a OneNote Package (`.onepkg`), PDF |
| 5 | or XPS. Observed in a lab clone on 2026-10-01: |
| 6 | |
| 7 | - `native/Lab.onepkg` is OneNote's package of a notebook of two sections and a recycle bin: an |
| 8 | LZX (2^18-byte window) cabinet of the TOC and sections at their paths, the bin left out though |
| 9 | the TOC keeps its entry; each file written anew, with no `guidAncestor` or `crcName`. |
| 10 | - A section or page saved as a section is a file of its own identity, outside any notebook, |
| 11 | which OneNote then opens among Open Sections. |
| 12 | - Unpack Notebook (opening a package) asks for the name (the package's), colour (the package's) |
| 13 | and folder, writes each file with a new identity and version, places it under its folder's |
| 14 | TOC, and lists it anew beside its stale entry. |
| 15 | - Show Unread Changes, Mark as Read and what is unread live in OneNote's local cache, not in the |
| 16 | notebook's files or the registry. |
| 17 | |
| 18 | `candidate/Packed.onepkg` and `candidate/Unpacked` are what |
| 19 | `a_notebook_packs_and_unpacks_as_onenote_packs_one` in `crates/notebook/tests/package.rs` |
| 20 | exports with `NOTEBOOK_PACKAGE_EXPORT`: Snowbound's MSZIP package of a notebook with a section |
| 21 | group, and the notebook Snowbound unpacked from it. `onenote-unpacked` is OneNote 2010 unpacking |
| 22 | Snowbound's package through its Unpack Notebook dialog; `cold` is a fresh OneNote 2010's read of |
| 23 | Snowbound's unpacked notebook, every file left as written. `save-as/candidate` holds Save As's |
| 24 | copy of a section and section of a page as `save_as_writes_copies_outside_the_notebook` exports |
| 25 | them with `NOTEBOOK_SAVE_AS_EXPORT`; `save-as/cold` is OneNote 2010 opening their folder, which |
| 26 | adopts them (new identities, placed) and reads each page. `tools/test_notebook_package.py` |
| 27 | checks them all without a VM. |