Commit Graph

94 Commits

Author SHA1 Message Date
Estevao Soares dos Santos
63d949f731 feat(metadata): add support for embedded metadata
A simple metadata parser can be useful in markdown documents.
This commit introduces the feature, with the following syntax:

--- or ««« at tstart of the document,
(optionally) followed by a alphanumeric format identifier
followed by key value pairs separated by a colon and a space
followed by --- or ÂÂÂ

Also, adds methods for retrieving the parsed metadata, namely:

getMetadata() and getMetadataFormat

Closes #260
2017-12-10 07:15:09 +00:00
Estevao Soares dos Santos
a8427c9423 feat(completeHTMLOutput): add option to output a complete HTML document 2017-12-10 04:49:24 +00:00
Estevao Soares dos Santos
21194c8a03 fix(literalMidWordAsterisks): no longer treats colon as alphanumeric char
Closes #461
2017-11-17 15:23:23 +00:00
Estevao Soares dos Santos
dd7efb5a8a test: small test refactoring 2017-11-16 18:34:02 +00:00
Estevao Soares dos Santos
084b819b14 feat(underline): add EXPERIMENTAL support for underline
Syntax is:
```
__double underscores__
or
___triple unserscores___
```
Keep in mind that, with this option enabled, underscore no longer
parses as `<em>` or `<strong>`

Closes #450
2017-10-24 16:46:40 +01:00
Estevao Soares dos Santos
5b8f1d312f feat(emoji): add emoji support
Add unicode emoji support to showdown. To enable this feature,
use `emoji: true` option. A list of supported emojis is
available here: https://github.com/showdownjs/showdown/wiki/Emojis

Closes #448
2017-10-24 13:44:49 +01:00
Estevao Soares dos Santos
ff26c08904 feat(rawPrefixHeaderId): add option to prevent showdown from modifying the prefix
Setting this option to true will prevent showdown from modifying the
prefix. This might result in malformed IDs (if, for instance, the " char is
used in the prefix). Has no effect if prefixHeaderId is set to false.

Closes #409
2017-08-06 18:19:46 +01:00
Estevao Soares dos Santos
1791cf0ebf feat(rawHeaderId): Remove only spaces, ' and " from generated header ids
This option removes only spaces, ' and " from generated Header IDs,
replacing them with dashes. This might generate malformed IDs.

Closes #409
2017-08-06 17:45:04 +01:00
Estevao Soares dos Santos
8f05be7788 fix(literalMidWordAsterisks): fix option no longer treat punctuation as word character
Closes #398
2017-08-05 02:52:03 +01:00
Estevao Soares dos Santos
51e46933a4 fix(tablesHeaderId): fix missmatch of option name
In code, the option appeared both as 'tableHeaderId' and 'tablesHeaderId',
although only the first form had effect. In documentation was referenced
as 'tablesHeaderId'.
Option is now fixed in code to reflex the documentation and table parser
accepts both forms, with and without an s.

Closes #412
2017-08-04 20:19:15 +01:00
Estevao Soares dos Santos
5a5aff6721 feat(backslashEscapesHTMLTags): backslash escapes HTML tags
Add support for HTML tag escaping with backslash

Closes #374
2017-06-02 04:48:53 +01:00
Marinin Tim
94c570a9d8 feat(customizeHeaderId): add option for customizing header ids
It’s useful for non-Latin texts, where header might be, for example, in Russian, but user wants id to be in English. This feature allows user to set id for header manually, using curly braces:

    ## Привет, мир {hello-world}

Closes #383
2017-06-01 02:35:42 +01:00
Estevao Soares dos Santos
6fbc072c2c fix(HTML parsing): fix HTML parsing issues with nested tags
Deeply nested HTML tags and recursive tags broke the HTML parser.

Closes #357, closes #387
2017-05-28 17:20:07 +01:00
Estevao Soares dos Santos
813f832160 fix(openLinksInNewWindow): encode _ to prevent clash with em
Closes #379
2017-04-25 22:13:27 +01:00
Estevao Soares dos Santos
71acff5757 fix(excludeTrailingPunctuationFromURLs): fix weird character when this option with simplifiedAutoLinks
Closes #378
2017-04-23 02:14:56 +01:00
Estevao Soares dos Santos
1bca88f8fa test: add several testcases 2017-04-23 02:04:13 +01:00
Estevao Soares dos Santos
f3dff7b0cf Merge branch 'master' into develop 2017-04-23 01:59:53 +01:00
Miguel Laginha
5bec8f9e9a feat(literalMidWordAsterisks): add option for mid word asterisks
Implements feature similar to ignoring midword underscores but with asterisks. The main use case is ignoring cursing.
2017-04-05 16:25:20 +01:00
Estevao Soares dos Santos
50235d6951 feat(openLinksInNewWindow): add option to open all links in a new window
Closes #362, #337, #249, #247, #222
2017-03-31 00:25:40 +01:00
simo
3e22fc658c Reset options before switching to a flavor (#365)
fix(flavors): reset options before switching to a flavor
2017-03-30 23:17:10 +01:00
Estevão Soares dos Santos
c6ac36d9f2 test(appveyor): add appveyor testing
Add testing on windows environment
2017-03-05 05:08:52 +00:00
Estevao Soares dos Santos
5c50675cca fix(simpleAutoLinks): URLs with emphasis/strikethrough are parsed
correctly

When a user enters a URL with emphasis or strikethrough, the html output
were incorrect.
Now, URLs inside emphasis or strikethrough are parsed corerctly

Closes #347
2017-02-26 19:13:52 +00:00
Estevao Soares dos Santos
f641a7de90 fix(prefixHeaderId): make prefixHeaderId string be parsed along the generated id
If an invalid prefix was passed (a string with spaces, for instance),
the string would be added as is. This ould generate invalid ids.
Also, this makes `prefixHeaderId` option play nicely with `ghCompatibleHeaderId`, since they will
follow the same escaping rules when both options are enabled.
2017-02-06 05:37:49 +00:00
greenkeeper[bot]
b5e46fdb8d Update dependencies to enable Greenkeeper 🌴 (#335)
adapt code to updated dependencies
2017-01-31 05:46:25 +00:00
Estevao Soares dos Santos
ab54933b16 release 1.6.3 2017-01-30 22:40:55 +00:00
Estevao Soares dos Santos
e18be38995 test: add test for simpleLineBreak and pre tags 2017-01-30 18:11:13 +00:00
Estevao Soares dos Santos
24d47d7c68 fix(strikethrough): allow escapinging tilde char
Since tilde is now used as a magic markdown character,
in strikethrough syntax, we need to enable escaping it.

Closes #331
2017-01-28 23:54:28 +00:00
Estevao Soares dos Santos
ed6a687013 bump package.json 2017-01-28 02:53:25 +00:00
Estevao Soares dos Santos
4613260cdf refactor: create horizontal rules own subParser 2017-01-28 02:17:19 +00:00
Estevao Soares dos Santos
ef7d0ec7a9 test: use new performance test file 2017-01-28 02:04:50 +00:00
Estevao Soares dos Santos
fea64bdd3c test: add tests for helper functions
Closes #167
2017-01-28 01:19:07 +00:00
Estevao Soares dos Santos
32a4cee258 chore: update chai 2017-01-27 22:07:55 +00:00
Estevao Soares dos Santos
0b32a95efd chore(performance): update performance testing 2017-01-27 20:53:47 +00:00
Estevao Soares dos Santos
5190b6a41f fix(simplifiedAutoLink): fix missing spaces before and after email addresses
Space char before and after the linked email address is no longer dropped
with "simplifiedAutoLink" option enabled.

Closes #330
2017-01-27 19:25:46 +00:00
Estevao Soares dos Santos
90c52b83e7 feat(encodeEmail): add option to enable/disable mail obfuscation
Prior to version 1.6.1, emails would always be obfuscated through dec and hex encoding.
This option makes it possible to disable this.
2017-01-27 19:03:37 +00:00
Estevao Soares dos Santos
b6513fadb9 release 1.6.0 2017-01-09 02:38:24 +00:00
Estevao Soares dos Santos
f3b86f06cc feat(CLI): add -q (quiet) and -m (mute) mode to CLI
-q supresses all normal messages from the output, but still reports errors.
-m mutes all messages, even errors.
2017-01-09 02:26:24 +00:00
Estevao Soares dos Santos
e3521bd8fa refactor(CLI): refactoring of CLI code 2017-01-09 02:08:23 +00:00
Estevao Soares dos Santos
0eaf1050c7 feat(getFlavor): add getFlavor method to showdown and Converter
With this new method, you can check what type of base flavor showdown is currently set
to run as.
2017-01-08 19:09:12 +00:00
Estevao Soares dos Santos
f2671c0cc7 feat(ghMentions): add support for github's @mentions
Closes #51
2017-01-06 04:33:12 +00:00
Estevao Soares dos Santos
b1c458a762 fix(simpleLineBreaks): fix simpleLineBreaks option not working with non-ASCII chars and markdown delimiters
The option simpleLineBreaks was not working with non-ASCII characters such as chinese characters and
when lines started or ended with markdown delimiters such as `*` or `~`

Closes #318, #323
2017-01-06 03:51:12 +00:00
Estevao Soares dos Santos
db97a90d5b feat(ghCompatibleHeaderId): generate header ids compatible with github
style

Github replaces spaces with dashes and removes a bunch of characters
from generated header ids ][&~$!@#*()=:/,;?+'.\
This feature implements this.

Closes # 320, closes #321
2016-12-30 19:01:44 +00:00
Estevao Soares dos Santos
bba9722ad4 test: add more performance tests 2016-12-23 10:07:14 +00:00
Estevao Soares dos Santos
43ff0b643e test: add performance tests 2016-12-23 09:29:58 +00:00
Estevao Soares dos Santos
ed4c33fe4e fix(simpleLineBreaks): fix simpleLineBreak option breaking lists html
When option was enabled, `<br />` tags where being added wrongfully
between `<li>` tags, which resulted in malformed html. This commit
prevents this behavior.

Closes #316
2016-12-20 23:57:10 +00:00
Estevao Soares dos Santos
5d19877590 feat(requireSpaceBeforeHeadingText): option to make space between # and header text mandatory
Credit: @nikz [Nik Wakelin](https://github.com/nikz)

Closes #277
2016-12-17 06:01:15 +00:00
Estevao Soares dos Santos
d2fc2a0c5c feature(excludeTrailingPunctuationFromURLs): excludes trailing punctuation from auto linked URLs
Closes #266, #308
2016-12-01 15:25:46 +00:00
Estevao Soares dos Santos
0942b5e87d feature(simpleLineBreaks): parse linebreaks as <br />
This option enables linebreaks to always be treated as `<br />` tags
without needing to add spaces in front of the line, the same way GitHub does.

Closes #206
2016-11-30 18:04:17 +00:00
Estevao Soares dos Santos
0be39bccae feat(disableForced4SpacesIndentedSublists): option that disables the requirement of indenting nested sublists by 4 spaces 2016-11-11 08:15:24 +00:00
Estevao Soares dos Santos
0cc55b07ee fix(simplifiedAutoLink): fix simplified autolink to match GFM behavior
Using the simplifiedAutoLink option does not return the expected GFM behaviour when parsing links without a http prefix.
Previously, `www.google.com` would be parsed into `<a href="www.google.com">www.google.com</a>`.
With this fix, showdown behaves like GFM, and the result is `<a href="http://www.google.com">www.google.com</a>`

Closes #284, closes #285
2016-08-19 19:12:25 +01:00