mirror of
https://github.com/showdownjs/showdown.git
synced 2024-03-22 13:30:55 +08:00
fix(ghCompatibleHeaderId): improve the number of removed chars
This commit is contained in:
parent
150a5cd3ff
commit
d499feb2aa
|
@ -189,7 +189,7 @@ var defaultOptions = showdown.getDefaultOptions();
|
|||
|
||||
* **noHeaderId**: (boolean) [default false] Disable the automatic generation of header ids. Setting to true overrides **prefixHeaderId**
|
||||
|
||||
* **ghCompatibleHeaderId**: (boolean) [default false] Generate header ids compatible with github style (spaces are replaced with dashes, ][&~$!@#*()=:/,;?+'.%\ chars are removed) (since v1.5.5)
|
||||
* **ghCompatibleHeaderId**: (boolean) [default false] Generate header ids compatible with github style (spaces are replaced with dashes and a bunch of non alphanumeric chars are removed) (since v1.5.5)
|
||||
|
||||
* **prefixHeaderId**: (string/boolean) [default false] Add a prefix to the generated header ids. Passing a string will prefix that string to the header id. Setting to `true` will add a generic 'section' prefix.
|
||||
|
||||
|
|
BIN
dist/showdown.js
vendored
BIN
dist/showdown.js
vendored
Binary file not shown.
BIN
dist/showdown.js.map
vendored
BIN
dist/showdown.js.map
vendored
Binary file not shown.
BIN
dist/showdown.min.js
vendored
BIN
dist/showdown.min.js
vendored
Binary file not shown.
BIN
dist/showdown.min.js.map
vendored
BIN
dist/showdown.min.js.map
vendored
Binary file not shown.
|
@ -23,7 +23,7 @@ function getDefaultOpts(simple) {
|
|||
},
|
||||
ghCompatibleHeaderId: {
|
||||
defaultValue: false,
|
||||
describe: 'Generate header ids compatible with github style (spaces are replaced with dashes, &~$!@#*()=:/,;?+%\\\'. chars are removed)',
|
||||
describe: 'Generate header ids compatible with github style (spaces are replaced with dashes, a bunch of non alphanumeric chars are removed)',
|
||||
type: 'string'
|
||||
},
|
||||
headerLevelStart: {
|
||||
|
|
|
@ -63,7 +63,8 @@ showdown.subParser('headers', function (text, options, globals) {
|
|||
.replace(/~T/g, '')
|
||||
.replace(/~D/g, '')
|
||||
//replace rest of the chars (&~$ are repeated as they might have been escaped)
|
||||
.replace(/[&~$!@#*()=:/,;?+'.%\\]/g, '')
|
||||
// borrowed from github's redcarpet (some they should produce similar results)
|
||||
.replace(/[&+$,\/:;=?@"#{}|^~\[\]`\\*)(%.!'<>]/g, '')
|
||||
.toLowerCase();
|
||||
} else {
|
||||
escapedId = m.replace(/[^\w]/g, '').toLowerCase();
|
||||
|
|
|
@ -1,2 +1,3 @@
|
|||
<h1 id="some-header">some header</h1>
|
||||
<h1 id="some-header-with--chars">some header with ~!@#$&*()=:/,;?+'.\ chars</h1>
|
||||
<h1 id="some-header-with--chars">some header with &+$,/:;=?@\"#{}|^~[]`\*()%.!' chars</h1>
|
||||
<h1 id="another-header--with--chars">another header > with < chars</h1>
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
# some header
|
||||
|
||||
# some header with ~!@#$&*()=:/,;?+'.\ chars
|
||||
# some header with &+$,/:;=?@\"#{}|^~[]`\\*()%.!' chars
|
||||
|
||||
# another header > with < chars
|
||||
|
|
Loading…
Reference in New Issue
Block a user