adamzap / showdown Goto Github PK
View Code? Open in Web Editor NEWThis project forked from showdownjs/showdown
JavaScript port of Markdown (from http://attacklab.net/showdown/)
License: Other
This project forked from showdownjs/showdown
JavaScript port of Markdown (from http://attacklab.net/showdown/)
License: Other
Showdown -- A JavaScript port of Markdown ========================================= Showdown Copyright (c) 2007 John Fraser. <http://www.attacklab.net/> Original Markdown Copyright (c) 2004-2005 John Gruber <http://daringfireball.net/projects/markdown/> Redistributable under a BSD-style open source license. See license.txt for more information. What's it for? -------------- Developers can use Showdown to: * Add in-browser preview to existing Markdown apps Showdown's output is (almost always) identical to markdown.pl's, so the server can reproduce exactly the output that the user saw. (See below for exceptions.) * Add Markdown input to programs that don't support it Any app that accepts HTML input can now be made to speak Markdown by modifying the input pages's HTML. If your application lets users edit documents again later, then they won't have access to the original Markdown text. But this should be good enough for many uses -- and you can do it with just a two-line `onsubmit` function! * Add Markdown input to closed-source web apps You can write bookmarklets or userscripts to extend any standard textarea on the web so that it accepts Markdown instead of HTML. With a little more hacking, the same can probably be done with many rich edit controls. * Build new web apps from scratch A Showdown front-end can send back text in Markdown, HTML or both, so you can trade bandwidth for server load to reduce your cost of operation. If your app requires JavaScript, you won't need to do any Markdown processing on the server at all. (For most uses, you'll still need to sanitize the HTML before showing it to other users -- but you'd need to do that anyway if you're allowing raw HTML in your Markdown.) Browser Compatibility --------------------- Showdown has been tested successfully with: - Firefox 1.5 and 2.0 - Internet Explorer 6 and 7 - Safari 2.0.4 - Opera 8.54 and 9.10 - Netscape 8.1.2 - Konqueror 3.5.4 In theory, Showdown will work in any browser that supports ECMA 262 3rd Edition (JavaScript 1.5). The converter itself might even work in things that aren't web browsers, like Acrobat. No promises. Known Differences in Output --------------------------- In most cases, Showdown's output is identical to that of Perl Markdown v1.0.2b7. What follows is a list of all known deviations. Please email me if you find more. * This release uses the HTML parser from Markdown 1.0.2b2, which means it fails `Inline HTML (Advanced).text` from the Markdown test suite: <div> <div> unindented == broken </div> </div> * Showdown doesn't support the markdown="1" attribute: <div markdown="1"> Markdown does *not* work in here. </div> This is half laziness on my part and half stubbornness. Markdown is smart enough to process the contents of span- level tags without screwing things up; shouldn't it be able to do the same inside block elements? Let's find a way to make markdown="1" the default. * You can only nest square brackets in link titles to a depth of two levels: [[fine]](http://www.attacklab.net/) [[[broken]]](http://www.attacklab.net/) If you need more, you can escape them with backslashes. * When sublists have paragraphs, Showdown produces equivalent HTML with a slightly different arrangement of newlines: + item - subitem The HTML has a superfluous newline before this paragraph. - subitem The HTML here is unchanged. - subitem The HTML is missing a newline after this list subitem. * Markdown.pl creates empty title attributes for inline-style images: Here's an empty title on an inline-style ![image](http://w3.org/Icons/valid-xhtml10). I tried to replicate this to clean up my diffs during testing, but I went too far: now Showdown also makes empty titles for reference-style images: Showdown makes an empty title for reference-style ![images][] too. [images]: http://w3.org/Icons/valid-xhtml10 * With crazy input, Markdown will mistakenly put `<strong>` or `<em>` tags in URLs: <a href="<*Markdown adds em tags in here*>"> improbable URL </a> Showdown won't. But still, don't do that.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.