For releases, please visit the project releases page.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Updated crossnote to version 0.9.11.
- Enabled the preview zen mode by default.
- Updated
mermaid
version to the latest11.4.0
.
Updated crossnote to version 0.9.10.
- Added
.mdx
to the defaultmarkdownFileExtensions
.
- Updated
mermaid
version to the latest11.1.1
. - Updated
katex
version to the latestv0.16.11
.
- Fixed a scroll sync bug.
Updated crossnote to version 0.9.9.
- Fixed a bug of link redirection in preview by @byte-clown
- Fixed Long sidebarToc does not display completely by @moonlitusun
- Removed the
text
as the default language selector for code block.
- Updated flake.nix and node.js to 20.
Updated crossnote to version 0.9.8.
- @moonlitusun sidebarToc supports local caching
- @oneWaveAdrian updated the
mermaid
version to the latest10.9.0
.
- Fixed [BUG] #tag is treated as Header 1
- Fixed [BUG] toml code block support is not very good
- Fixed [BUG] If URL encoding is used, the preview cannot be displayed.
Updated crossnote to version 0.9.7.
- Fixed rendering
vega-lite
inReveal.js
slide: #1880 - Removed one github-dark background css attribute: shd101wyy/crossnote#344
Updated crossnote to version 0.9.6.
- Updated mermaid.js to the latest version 10.6.0.
- Fixed importing file with spaces in the path: #1857
- Fixed a bug of updating the vscode
workbench.editorAssociations
: #1860
Updated crossnote to version 0.9.5.
- Fixed of bug of rendering the KaTeX math expression: #1853
Updated crossnote to version 0.9.4.
- Updated fontawesome from version 4.7 to version 6.4.2 (Free).
A list of available icons can be found at: https://kapeli.com/cheat_sheets/Font_Awesome.docset/Contents/Resources/Documents/index - Updated WaveDrom to the latest version 3.3.0.
-
Changed the markdown parser process to be like below. We removed the
onWillTransformMarkdown
andonDidTransformMarkdown
hooks as these two caused the confusion.markdown ↓ `onWillParseMarkdown(markdown)` ↓ markdown ↓ **crossnote markdown transformer** ↓ markdown ↓ **markdown-it or pandoc renderer** ↓ html ↓ `onDidParseMarkdown(html)` ↓ html, and then rendered in the preview
-
(Beta) Supported to export the selected element in preview to .png file and copy the blob to the clipboard:
- Fixed a bug of importing files that contains empty heading: #1840
- Fixed a bug of rendering inline math in image name: #1846
- Fixed a bug of parsing inline code: #1848
Updated crossnote to version 0.9.2 and version 0.9.3.
-
Added
ID
button to copy the element id to clipboard: -
Supported to import section of markdown by header id:
@import "test.md#header-id" or ![](test.md#header-id) or ![[test#header-id]]
- URL fragments on image links do not load: #1837
- Supported matplotlib-type preview for other Python tools like
pipenv
: shd101wyy/crossnote#332 - Fixed jump to header from link like
[link](test.md#header-id)
. - Better handling of source map for importing files.
This MPE version reduced the VS Code version requirement to 1.70.0 or above.
Updated crossnote to version 0.9.0 and 0.9.1.
- Added two more syntaxes to import files in addition to the
@import
syntax. Please note that these syntaxes only work on new lines. For example, they won't work within list items.- Use the image syntax but with other file extensions:
![](path/to/file.md) ![](path/to/test.py){.line-numbers} ![](path/to/test.js){code_block=true}
- Use the wikilink syntax but with other file extensions:
![[file]] ![[path/to/test.py]]{.line-numbers} ![[path/to/test.js]]{code_block=true}
- Use the image syntax but with other file extensions:
- Fixed a header id generation bug #1833
- Fixed parsing block attributes from curly bracket when
enableTypographer
is enabled #1823 - Fixed the bug of not rendering the
@import
file: - Fixed rendering
vega
andvega-lite
. Also fixedinteractive=true
attribute forvega
.
Please note this version requires VS Code 1.82.0 or above.
Updated crossnote to version 0.8.24.
- Improved the handling of
[toc]
: #1825 - Supported to set env variables in paths of configuration: #1826
- Fixed the footer style: #1822
- Fixed the bug of generating the header id: #1827
- Fixed the bug of
@import
files that contains unicode characters: #1823 - Now use node.js 18 for the project.
Updated crossnote to version 0.8.23.
- Fixed exporting reveal.js presentation.
Updated crossnote to version 0.8.22.
Special Thanks to @mavaddat for creating the awesome extension logo for MPE in this pull request 🎉 We finally have a beautiful logo for MPE.
Updated crossnote to version 0.8.20 and 0.8.21.
-
Supported prefix in front of Kroki diagram types #1785.
So now all diagrams below will get rendered using Kroki:```kroki-plantuml @startuml A -> B @enduml ``` ```plantuml {kroki=true} @startuml A -> B @enduml ```
-
Improved the source map handling for
@import "..."
syntax.
- Exporting files no longer includes the source map.
- Fixed some Reveal.js presentation related bugs:
- Both the
style.less
fromMarkdown Preview Enhanced: Customize Css (Global)
and thestyle.less
fromMarkdown Preview Enhanced: Customize Css (Workspace)
will now be loaded. Thestyle.less
fromMarkdown Preview Enhanced: Customize Css (Workspace)
will have higher priority. - Fixed the bug where deleting config files from workspace did not update the preview.
Updated crossnote to version 0.8.19.
- Deprecated the
processWikiLink
inparser.js
. Nowcrossnote
handles how we process the wiki link.
We also added two more options:wikiLinkTargetFileExtension
: The file extension of the target file. Default ismd
. For example:[[test]]
will be transformed to[test](test.md)
[[test.md]]
will be transformed to[test](test.md)
[[test.pdf]]
will be transformed to[test](test.pdf)
because it has a file extension.
wikiLinkTargetFileNameChangeCase
: How we transform the file name. Default isnone
so we won't change the file name.
A list of available options can be found at: https://shd101wyy.github.io/crossnote/types/WikiLinkTargetFileNameChangeCase.html
- Reverted the markdown transformer and deleted the logic of inserting anchor elements as it's causing a lot of problems.
The in-preview editor is not working as expected. So we now hide its highlight lines and elements feature if the markdown file failed to generate the correct source map. - Fixed the bug that global custom CSS is not working.
Updated crossnote to version 0.8.17 then version 0.8.18.
-
📝 Supported in-preview editor that allows you to edit the markdown file directly in the preview 🎉.
This feature is currently in beta.
When the editor is open, you can pressctrl+s
orcmd+s
to save the markdown file. You can also pressesc
to close the editor. -
Deprecated the VS Code setting
markdown-preview-enhanced.singlePreview
.
Now replaced bymarkdown-preview-enhanced.previewMode
:-
Single Preview (default)
Only one preview will be shown for all editors. -
Multiple Previews
Multiple previews will be shown. Each editor has its own preview. -
Previews Only 🆕
No editor will be shown. Only previews will be shown. You can use the in-preview editor to edit the markdown.🔔 Please note that enable this option will automatically modify the
workbench.editorAssociations
setting to make sure the markdown files are opened in the custom editor for preview.
-
-
Added two new VS Code commands
Markdown Preview Enhanced: Customize Preview Html Head (Workspace)
andMarkdown Preview Enhanced: Customize Preview Html Head (Global)
, which will open thehead.html
file for you to customize the<head>
of the preview. -
Supported to set attribute to image and link, e.g.:
![](path/to/image.png){width=100 height=100}
-
Improved the markdown transformer to better insert anchors for scroll sync and highlight lines and elements.
Added more tests for the markdown transformer to make sure it works as expected. -
Added the reading time estimation in the preview footer ⏲️.
-
Added
Edit Markdown
menu item to the context menu of the preview, which offers two options:- Open VS Code Editor Open the markdown file in VS Code editor.
- Open In-preview Editor Open the markdown file in the in-preview editor.
-
Updated the mermaid version to the latest
10.5.0
-
Updated the
katex
version to0.16.9
. -
Added the API website: https://shd101wyy.github.io/crossnote/
- Fixed the font size of the
github-dark.css
code block theme. - Fixed the anchor jump bugs: #1790
- Fixed list item style bug: #1789
- Fixed a data race bug that caused the preview to hang.
Updated crossnote to version 0.8.16
- Added
head.html
config file to allow you to include custom HTML in the<head>
of the preview. This could be useful for adding custom CSS or JavaScript to the preview.
- Fixed the
none.css
preview theme bug #1778. - Fixed the bug of copying texts in preview #1775.
- Added
<code>
in<pre>
while rendering code blocks in preview.
Updated crossnote to version 0.8.15
- Added the
includeInHeader
option, which allows you to include custom HTML in the<head>
of the preview. This could be useful for adding custom CSS or JavaScript to the preview.
- Fixed the bug of missing the backlinks on the
vue.css
theme. - Fixed the back to top button. #1769
Updated crossnote to version 0.8.14
- (Beta) Added the bitfield diagram support. Supported both
bitfield
andbit-field
code fences. #1749```bitfield {vspace=100} [ {name: 'IPO', bits: 8}, { bits: 7}, {name: 'BRK', bits: 5, type: 4}, {name: 'CPK', bits: 1}, {name: 'Clear', bits: 3, type: 5}, { bits: 8} ] ```
- Fixed the
vue.css
theme bug that caused the missing scroll bar in the preview. Also fixed a context menu bug for selecting thevue.css
theme.
https://github.com/shd101wyy/crossnote/releases/tag/0.8.13
- Fixed rendering MathJax in preview shd101wyy/crossnote#311.
- Fixed the preview background color shd101wyy/crossnote#312.
- Added error message when failed to parse the YAML front-matter. Also escaped the HTML rendered in the front-matter table in preview. shd101wyy/crossnote#312.
Fixed the extension for https://vscode.dev. Will migrate vsce publish to GitHub action.
Fixed reading file as base64
-
Complete rewrite of the webview, and improved the UI. 🌐💅
-
Backlinks supported in the preview. Clicking the bottom right link icon will display the backlinks. This feature is currently in beta and might not be stable yet.
If you want the backlinks to be always on in the preview, you can enable the setting:"markdown-preview-enhanced.alwaysShowBacklinksInPreview": true,
-
Updated reveal.js to the latest
4.6.0
.
We will further improve the markdown-it parser and we might remove the pandoc parser support. You can still use the pandoc export. This will not be affected. 📝✂️
We will add in-preview editing capability in the future. 🖋️
We will also add the backlinks graph view. 📈
-
⭐ Added
markdown-preview-enhanced.markdownFileExtensions
config that allows users to specify the file extensions for preview. -
🌟 Supported pandoc-like code blocks, for example:
``` {.python} def add(x, y): return x + y ``` ``` {.mermaid} graph LR A --> B ```
The first class in the
{...}
will be regarded as thelanguage
.
- Refactored some crossnote code.
0.7.2 is a breaking update! And yes, it might break many things and introduce more bugs. But don't worry, we'll fix them! 😅
-
MPE is now available on VSCode for the Web 🥇 Yes, you can now use MPE in your browser. But some features are limited, like exporting files and code chunks, which are disabled in the browser environment. I am writing this CHANGELOG right now in vscode.dev using the MPE extension 😃.
-
The
mume
library, which powers MPE, is now renamed as crossnote. This is a complete refactor of the project. We will support more features like backlinks and in-preview editor in the future.- Now you can have a
.crossnote
directory for configuring the MPE extension for your workspace. In VSCode, running the commandMarkdown Preview Enhanced: Customize CSS (Workspace)
will automatically generate several configuration files for you. There is also a global.crossnote
directory located at~/.crossnote
if you are using Windows, or$XDG_CONFIG_HOME/.crossnote
or~/.local/state/crossnote
if you are using *nix. The global configuration has lower priority than the workspace one. 🛠️
- Now you can have a
- Fixed Issue 1736
- Fixed Issue 1737 🚗
- Fixed the puppeteer export: shd101wyy/crossnote#299
- Replaced BabyParse with PapaParse: shd101wyy/crossnote#298
-
🆕 Added
editor-light
,editor-dark
,system-light
,system-dark
class names to the preview panel. -
✨ Reduced the size of the bundled vscode MPE extension from 40mb to 8mb.
-
➕ Supported to configure:
markdown-preview-enhanced.mathjaxV3ScriptSrc
,markdown-preview-enhanced.plantumlJarPath
, andmarkdown-preview-enhanced.krokiServer
. -
🔰 Updated @shd101wyy/mume to version 0.7.8.
-
🤖 Completely refactored the
mume
project. It's not done yet, but it's a good start. The next release will be a major release.- 🎉 Now use the esbuild to bundle the project.
- 🎉 Better support of both commonjs and esm.
- 🔧 Replaced tslint with eslint.
-
📰 Removed the
plantuml.jar
file from themume
project. Now you need to download the plantuml.jar file manually from here.- If you are using
mume
, you will need to passplantumlJarPath
to themume.init({})
. - If you are using VSCode, you can set the
markdown-preview-enhanced.plantumlJarPath
option in the VSCode settings.
- If you are using
-
🗑 Removed
ditaa.jar
file from themume
project. Also removed the native support of rendering ditaa diagrams. But you can now use Kroki to render theditaa
diagrams. -
🗑 Removed rendering the
js-sequence-diagram
andflowchart.js
charts. -
🎉 Updated
MathJax
to V3.MathJax
V2 is no longer supported. -
🎉 Added Kroki support to render diagrams. This is a beta feature. For example:
```ditaa {kroki=true} +--------+ +-------+ +-------+ | | --+ ditaa +--> | | | Text | +-------+ |diagram| |Document| |!magic!| | | | {d}| | | | | +---+----+ +-------+ +-------+ : ^ | Lots of work | +-------------------------+ ```
-
🎉 Updated
mermaid
to version10.4.0
, and supported rendering zenuml chart usingmermaid
. -
🎉 Updated
vega
to the latest version5.25.0
. -
🎉 Updated
vega-lite
to the latest version5.14.1
. -
🎉 Updated
cheerio
to the latest version1.0.0-rc.12
. -
🎉 Updated
prismjs
to the latest version0.12.9
. -
🎉 Updated
viz.js
to the latest version3.1.0
.
-