The Mikado pheasant (Syrmaticus mikado) is a gamebird in the pheasant family Phasianidae of the order Galliformes, gallinaceous birds. Sometimes considered an unofficial national bird of Taiwan (along with the Swinhoe's pheasant and Taiwan blue magpie), a pair of Mikado pheasants and Yushan National Park, one of the areas it is known to inhabit, is depicted in the 1000 dollar bill of the Taiwanese dollar.
from wikipedia
Starting from version 1.4.0, we'll pick one species from the endemic species of Taiwan as version name. Is there anyone still remember we've once used type of coffee as our version name? It's time to revive that good convention, but this time we don't need coffee to stay up all night. π€
It has been over 200+ commits since our last release. Read on to learn about what's new in this version. π»
You can now manipulate markdown tables easily with CodiMD's new markdown tools. The markdown table toolbar would show up when you're editing a markdown table. You can do operations like creating new a row/column, moving row/column, or adjusting table alignment by the toolbar.
You can even create a table with keyboard shortcut!
This functionality is built on top of @susisu's markdown-table-editor
module, you can read through the code in PR #1300.
markdownlint is a tool to lint Markdown, created by David Anson. In this version, we integrate markdownlint right in CodiMD's markdown editor. This feature is off by default. You can turn in on by clicking the light bulb(π‘) in the status bar.
The light bulb in status bar:
For CodeMirror users who also want to integrate markdownlint in your service, you can take a look at PR #1257.
Learn the syntax to use them:
Thanks @chulkilee for contributing the PlantUML syntax β€οΈ
You can also specify your own PlanUML instance:
Environment Variable | config.json | Example Value | Description |
---|---|---|---|
CMD_PLANTUML_SERVER | plantuml.server |
https://www.plantuml.com/plantuml |
The URL of PlantUML instance |
Learn more about configuration here.
You can create collapsible content with new spoiler container syntax:
And create HTML ruby tag easier than before:
We refactored our current emoji library - emojify.js with TypeScript, and add a new emoji set from AOSP with the help of emoji-data npm module.
Looks more modern now, doesn't it? π
@pastleo made two slide mode plugins for CodiMD: Elapsed time bar and Spotlight. Big thinks to him. β€οΈ You can see the usage and their implementation details in PR #1162 and #1169
Realtime module (realtime.js
) is always being the core foundation of CodiMD. In this version, we've done a lot on this over 3k+ lines module. Splitting modules and reorganizing the connection lifecycle, these changes help CodiMD more reliable, more testable, and resolves some underlying problems. π
Read through the changes in PR #1228.
During this version, we enabled Heroku Review Apps feature in the CodiMD repository. This provides CodiMD contributors and our team to review and test pull request with more confidence.
Supply enterpriseURL
in your config.json
or set CMD_GITHUB_ENTERPRISE_URL
environment variable.
Learn more about configuration here.
CodiMD now supports three different styles of header link. Take 3.1. Good Morning my Friend! - Do you have 5$? this header for example, CodiMD would generate link id as follows:
type | result | description |
---|---|---|
keep-case |
31-Good-Morning-my-Friend---Do-you-have-5 |
Default |
lower-case |
31-good-morning-my-friend---do-you-have-5 |
|
gfm |
31-good-morning-my-friend---do-you-have-5 |
It works like 'lower-case', but making sure the ID is unique. 1st appearance:31-good-morning-my-friend---do-you-have-5 2nd appearance: 31-good-morning-my-friend---do-you-have-5-1 3rd appearance: 31-good-morning-my-friend---do-you-have-5-2 |
Learn more about the configuration here.
You can now configure default break style for your CodiMD instance:
config.defaultUseHardbreak : true (default) |
config.defaultUseHardbreak : false (CommonMark flavored) |
---|---|
You can stil set the break style explicitly in YAML meta.
chance.animal()
to generate random guest name #1245These pull requests came from CodiMD community, thank you guys for being here and making CodiMD awesome β€οΈ
{"status":"forbidden"}
response #1211 (@gndu91)Contribute to translations: