Repository navigation
Releases: florianlotte/markdown-paged-studio
Releases · florianlotte/markdown-paged-studio
Release list
Markdown Paged Studio v1.30.0
Added
- An outline of the headings next to the editor (the first button of the editor bar, Ctrl+Shift+O, or
View → Toggle Outline in the desktop app): every heading of every file with its number, a filter above,
the heading that holds the cursor marked, and a click that puts the cursor on the heading. On phones it
covers the editor and closes on a choice. - The problems of the render are counted in the toolbar, next to the page count: a diagram Mermaid cannot
draw (with the line of its syntax error), a formula KaTeX refuses, an image the library does not have, a
reference to nothing. Each entry of the list leads to the line in the editor. - A document without text shows a card over its pages that says what to do, with a button to the editor.
Changed
- The custom CSS is edited in a code editor with line numbers, CSS colours and its own undo history, instead
of a plain text area.
Full Changelog: v1.29.0...v1.30.0
Markdown Paged Studio v1.29.0
Changed
- The code of the studio is split into smaller modules (the form, the exports, the image library, the
notices and the menus apart fromui.js; the source attributes, the diagrams, the code colours and the
schema apart frommarkdown.jsandconfig.js), with one keyboard handler for every menu and one guarded
access to the browser storage. Every button of the markup says it is a button. Unit tests cover the schema,
the translations and the shortcuts, and a straytest.onlyfails the CI.
Full Changelog: v1.28.0...v1.29.0
Markdown Paged Studio v1.28.0
Added
- On a phone a tap on a diagram or an image opens its tools, a second tap closes them, and the resize
handle is sized for a finger. - A removed file comes back from its toast (Undo, ten seconds) instead of asking a native confirmation.
Changed
- Under 760 px the toolbar keeps one row: sidebar toggle, page count, Edit | View, Export and the ⋯ menu,
where Import… now lives; the pages are fit in one column there, whatever the layout and zoom chosen on
a desktop. - The settings drawer of a phone is a modal dialog: the focus goes in and stays, Escape or the close button
puts it away and gives the focus back to the toggle. - The notice banner lies over the top of the workbench, under the toolbar, instead of pushing the editor and
the pages down; a long notice scrolls.
Full Changelog: v1.27.0...v1.28.0
Markdown Paged Studio v1.27.0
Added
- An Insert menu above the editor writes an example of a table, an image (chosen files, added to the
library), a diagram, a formula, an alert, a footnote, a page break or a table of contents at the cursor; an
empty file shows a prompt that names it. - The date has a Today button and a date picker, both writing the date the way the document language
writes it. - The document language is chosen by its name; any other BCP 47 tag is typed under "Other…".
- Margin presets (Narrow, Normal, Wide, or Custom) and a "Same on all sides" box.
- The logo is dropped on a zone or chosen from it; once set, a thumbnail with Replace and Remove.
Changed
- The settings are grouped by intent, in groups that fold and stay folded: Document (title, author, date,
language), Cover (switch, template, accent, logo) and Images (with the count of the library and of the
missing names) under Content; Headers and footers, Numbering, Code and stylesheet under Design; Paper and
Margins under Page. The examples of the long check box labels moved to a hint under the field.
Full Changelog: v1.26.0...v1.27.0
Markdown Paged Studio v1.26.0
Added
- A welcome tour opens on the first visit: six short panels on how the studio works, with Previous and Next
arrows and a "Don't show this again" box; the ⋯ menu (Welcome tour) and Help → Welcome Tour in the desktop
app show it again. - Every file tab has a menu (right-click, a long press, Shift+F10 or the Menu key): Rename, Move left, Move
right, Download and Remove, with their shortcuts. - When the tabs overflow, a shadow shows on the side where tabs are hidden, the mouse wheel scrolls the strip
and a list button offers every file. - Tooltips of the studio show on keyboard focus as well as on hover, and carry the shortcut of the control; the
entries of the Export and ⋯ menus show their shortcut too. - A Keyboard shortcuts panel lists everything the keyboard and the mouse can do:
?outside a text field,
the ⋯ menu, or Help → Keyboard Shortcuts in the desktop app. - The row of the file tabs says where the document lives: "Saved in this browser · just now" after each autosave, and
"Not saved" in red when the browser storage is full or disabled; its tooltip points to PDF with project. - In the browser, Ctrl+Shift+E exports the PDF with the project and Ctrl+B hides or shows the sidebar, as the
desktop menus do.
Full Changelog: v1.25.0...v1.26.0
Markdown Paged Studio v1.25.0
Fixed
- A render interrupted by a newer edit stops at once: Paged.js 0.4.3 resumes a stopped render, which kept
paginating long documents in the background after every keystroke. - Renaming a file or switching the interface language no longer paginates the document again.
- A full or disabled browser storage is reported once, in a banner, instead of silently losing the autosave or
the images; an image database that never opens no longer stalls the first render. - A tall image is scaled down on upload like a wide one (3600 px at most); the quality of the downscaling is set
to high. - Errors of the file loaders, of the exports and of the image upload are shown in the banner instead of vanishing
in the console; a print window whose document fails to build is closed. - Only one export runs at a time: a second click, menu command or Ctrl+P during an export is ignored.
- Desktop: the PDF export gets more time as long as pages keep coming (10 minutes at most); expired write tokens
are purged; the developer tools entry is left out of release builds. - The "Missing image" box follows the language of the document.
- A margin typed beyond 0–80 mm is clamped at once, as an imported one is, instead of reaching the layout.
- Desktop: the PDF save dialog proposes the title of the document instead of
document.pdf. - Between 761 and 1000 px the toolbar stacked its actions and pushed Export out of the window: under 1100 px
the view controls now take a row of their own and the actions stay in reach.
Added
docs/ux-review.md: a UX review of the studio, its findings by priority and the lots that follow.
Changed
- Formulas, diagrams and code colours are applied in one pass over an inert fragment, with the coloured code
blocks cached; Paged.js is loaded for the first render, which halves the entry bundle. - The notice banner replaces every blocking
alert(); an export started while the preview still renders waits
for it instead of failing. - MCP: the image and output folders are compared as real paths, so a symbolic link cannot lead outside them; the
headless browser fetches nothing (a remote image stays a reference); KaTeX runs with expansion and size limits. - A zip is read up to 256 MB in total; the editor and the tests share
src/util.js(lazy,clamp). - Documentation split: the README presents the studio and links to
docs/writing.md(the writing guide),
docs/exports.md(saving, exports, reopening) anddocs/architecture.md(pipeline, project layout, workflows);
CONTRIBUTING.md holds the scripts and the rules of the code base. The MCP descriptions, the Markdown support
page and the French translations of the search panel are brought up to date, and the sample document shows an
alert, a formula, a table caption and cross-references. - Reset leaves the toolbar for a ⋯ menu, as "Reset the document": it applies at once, without a dialog, and
a toast undoes it for ten seconds, images included. - The status line only shows the page count: a thin progress bar under the toolbar replaces "Rendering…", the
confirmations of the exports ("PDF saved with its project", the print dialog notice) are a toast that goes
away by itself. - The Import .css and Default CSS buttons sit above the stylesheet, in reach without scrolling; the
"Pagination" card of the Page tab gives way to a hint about the room the header and the footer need in the
margins. - Focus rings and the focused field border are at 3:1 or more on every surface, in both themes, as the line
numbers of the editor;prefers-reduced-motionstops the sweeps and spins of the studio.
Security
- The custom stylesheet and the header fields can no longer end the
<style>element of an export or of the print
window: a</style>in an imported project could inject markup there.escCssString()also escapes<and
every kind of line break. - Desktop: the navigation guards apply to every window, the print windows and the hidden PDF worker included.
- Docker: nginx sends
Content-Security-Policy: frame-ancestors 'none'; object-src 'none'; base-uri 'none'and
hides its version.
Full Changelog: v1.24.0...v1.25.0
Markdown Paged Studio v1.24.0
Added
- A Prettify button above the editor formats the current file with Prettier (loaded on demand): one space
after#,-lists,_emphasis_, aligned tables, one blank line between blocks. Formulas, labels, page breaks
and the other syntax of the studio are kept, and Ctrl+Z reverts the formatting.
Full Changelog: v1.23.0...v1.24.0
Markdown Paged Studio v1.23.0
Changed
- The HTML export and the Markdown attached to the PDF are named after the title, like the other exports
(document.htmlanddocument.mdbefore). - Mermaid 12.2 and KaTeX 0.18 (one copy in the build), and the other dependencies updated within their ranges.
- The CSS contract of the document is one file,
docs/css-contract.md, included in the README and served by the MCP
server; the MCP README no longer repeats the Markdown syntax of the README. - Documentation brought in line with the studio: the browser draws the PDF with project, formulas and definition
lists are supported, the project layout lists every module, the desktop menu names, the release steps and the
MCP tool description are complete, and the CSS contract names.toc-list,.has-captionandspan.ref-missing.
Full Changelog: v1.22.4...v1.23.0
Markdown Paged Studio v1.22.4
Changed
- The
.mddownload of the editor bar is named after the title, like the PDF, when the document has one
file (document.mdbefore); among several files, each keeps its own name.
Full Changelog: v1.22.3...v1.22.4
Markdown Paged Studio v1.22.3
Fixed
- Mermaid labels:
<b>,<strong>,<i>and<em>format the text, which was drawn with its tags, and
any other HTML tag is dropped while its text stays (labels are SVG text, where only<br>was understood).
Full Changelog: v1.22.2...v1.22.3