Releases: iamgio/quarkdown
Development build
Full Changelog: https://github.com/iamgio/quarkdown/commits/latest
v1.9.2
v1.9.1
What's Changed
- fix: fix misaligned math formulas in boxes by @iamgio in #195
- fix: fix line numbers and first-line indentation of code blocks spanning across different pages by @iamgio in #196
- fix: allow setting only one dimension (width/height) of the page size by @iamgio in #197
- fix: don't constrain table of contents height in slides PDF by @iamgio in #198
Full Changelog: v1.9.0...v1.9.1
Sponsors
v1.9.0
Main features and changes
VS Code extension & language server
The official Quarkdown extension for VS Code has finally arrived!
Based on the brand-new language server, the extension provides syntax highlighting, user-first completions, in-editor live preview, documentation browsing, diagnostics, and much more.
Install the extension from the marketplace to get started.
This version (1.9.0) or above needs to be installed before the extension is enabled.
Β
Live preview optimization
The architecture behind live preview has been redesigned and the experience should now be smoother and more reliable, as you can notice in the previous demo.
For more detailed information about the architecture, check out Inside Quarkdown - How does live preview work?.
Β
Added sticky bottom anchor to preview
If the page is scrolled to the very end while in preview, hot reload will let the new scroll position stick to the end of the new document as well.
Β
Preview browser selection
The new -b
or --browser
option for quarkdown c
gives control over what browser should be opened when -p
or --preview
is used.
Accepted values:
default
(default)none
chrome
chromium
firefox
edge
(Windows only)
The same option also applies for quarkdown start
, with none
as a default.
The --open
flag was removed (now -b default
).
Browser paths are looked up at specific fixed locations by the bootstrap script
and set in BROWSER_<name>
environment variables. Overriding them will set the desired path.
Β
PDF sandbox is now disabled by default on Linux
Until now, --pdf-no-sandbox
was required on most Linux distributions, and not specifying it would cause the PDF export to fail.
Sandbox is now disabled by default on Linux (via the QD_NO_SANDBOX
environment variable).
Β
Improved stdlib documentation
The quality of stdlib documentation, available at quarkdown.com/docs and within the VS Code extension, has been vastly improved with more details and examples.
Β
Fixed 'Input line is too long' error on Windows
Fixed an error that would prevent Quarkdown from launching on Windows if it's loaded from long paths, due to a Windows-specific length constraint.
Β
Breaking changes
- (Only for third-party tools) The endpoint for live preview is now
localhost:<port>/live
instead of the formerlocalhost:<port>
, which now serves static resources only.
What's Changed
- feat(build): add Dockerfile by @iamgio in #177
- feat(cli): allow browser launcher selection by @iamgio in #182
- feat: let preview stick to the end of the document by @iamgio in #183
- fix(build): fix 'Input line is too long' startup error on Windows by @iamgio in #178
- fix: escape dot (
.
) in range parsing by @iamgio in #184 - feat: language server by @iamgio and @FrancescoRocca in #180
- perf!: optimize live preview by @iamgio in #188
- fix(pdf): fix stale page margins in slides PDF by @iamgio in #190
- fix(interaction): fix "NPM executable cannot be found at 'npm'" when
.npmrc
is present by @iamgio in #191
New Contributors
- @FrancescoRocca made their first contribution in #27
Full Changelog: v1.8.0...v1.9.0
Sponsors
v1.8.0
Main new features
Footnotes
Quarkdown introduces footnotes via three different syntaxes:
-
Some text[^: some note]
-
Some text[^note: some note] and some other text[^note]
-
Some text[^note] [^note: some note]
Subdocuments
Quarkdown becomes closer than ever to a knowledge management tool! Linking to a Quarkdown document will generate a navigable subdocument. And you can even visualize the graph via .subdocumentgraph
!
[My subdocument](my-subdoc.qd)
Speaker notes
The .speakernote
function can be used to add speaker notes to the speaker view of your Quarkdown slides. Press S
to enter speaker view, or export your notes to PDF.
Landscape view
The .landscape
function makes it trivial to display some wide landscape content in a portrait page, ideal for printing.
What's Changed
- feat: footnotes by @iamgio in #121
- feat(slides): add speaker notes by @iamgio in #166
- fix(mermaid): fix arrows being hidden by @iamgio in #171
- feat(stdlib): add
.br
function for line break by @iamgio in #172 - feat: subdocuments & links by @iamgio in #173
- feat: add
.landscape
function for transposed content by @iamgio in #176
Full Changelog: v1.7.0...v1.8.0
Sponsors
v1.7.0
What's Changed
- fix: fix misaligned formulas in blockquotes by @iamgio in #145
- feat(stdlib): add
.css
and.cssproperties
by @iamgio in #146 - feat: font size configuration by @iamgio in #147
- feat: custom font family configuration by @iamgio in #148
- feat: add text transformation properties to
.container
by @iamgio in #149 - perf(pdf): launch Puppeteer in shell headless mode by @iamgio in #150
- fix: fix math equations letting content overflow out of their page in paged documents by @iamgio in #151
- fix: fix error thrown when exporting to PDF with output directory not yet created by @iamgio in #152
- fix(mermaid): improve Mermaid diagrams auto-scaling by @iamgio in #154
- fix: center table captions by @iamgio in #156
- feat(bootstrap)!: assume Puppeteer's browser is installed. No longer set
PUPPETEER_EXECUTABLE_PATH
by @iamgio in #157
Full Changelog: v1.6.3...v1.7.0
Sponsors
v1.6.3
What's Changed
- fix(postrenderer): fix overridden line height and letter spacing not being applied to tight list items by @iamgio in #138
- feat(postrenderer): derive list margins and spacing from paragraph spacing (
.paragraphstyle spacing:{x}
) by @iamgio in #139 - fix(mermaid): improve Mermaid diagrams auto-scaling by @iamgio in #141
- feat: apply indentation to lists in Chinese documents by @iamgio in #140
- fix(postrenderer): fix table of contents sometimes overflowing the paged content area by @iamgio in #142
Full Changelog: v1.6.2...v1.6.3
Sponsors
v1.6.2
What's Changed
- fix: excessive justification in lists spanning over different pages by @iamgio in #125
- feat: Chinese font by @iamgio in #127
- feat: Chinese-specific paragraph style by @iamgio in #129
- fix(theme): wrong code span size by @iamgio in #130
Full Changelog: v1.6.1...v1.6.2
Sponsors
Shoutout to our new sponsor: @imogenxingren. Thank you for your contribution!
v1.6.1
What's Changed
- fix(wrapper): Output variable name instead of value by @alerque in #103
- chore(cli): make
c
alias forcompile
by @iamgio in #110 - fix(html): accept non-ascii characters in IDs (fixes wrong page index in ToC when non-ascii headings are present) by @iamgio in #113
- feat(cli): add
--out-name
by @iamgio in #111 - fix(i18n): fix Japanese translations by @sanoakr in #117
- perf(lexer): optimize regex caching, with up to 50% speed up by @iamgio in #118
New Contributors
Full Changelog: v1.6.0...v1.6.1
Sponsors
v1.6.0
Breaking Changes
-
With v1.6.0, Quarkdown becomes package-manager-friendly. It will no longer download Puppeteer on its own and, instead, it requires its availability in advance. See PDF export for further information.
Manual installation becomes more complex, hence installing Quarkdown via package managers or install scripts is now the suggested and trivial way to use the software. You can find more information in the Installation section of the README.
-
The standard extension has been changed from
.qmd
to.qd
because of conflicts with Quarto. It's not a breaking change per se, but please make sure you adopt the correct extension especially if your project is public.
What's Changed
- refactor: migration to Sass by @iamgio in #91
- Add chinese translations by @heerheer in #92
- feat: add page content borders by @iamgio in #95
- perf: add full package manager support by @iamgio in #101
- chore: change extension from
.qmd
to.qd
by @iamgio in #90
New Contributors
Full Changelog: v1.5.1...v1.6.0