Comments (3)
Here is a fix: turn punctuation (except _
) to -
, then remove consecutive, leading or trailing -
(defun markdown-toc--to-link (title count)
"Given a TITLE, return the markdown link associated."
(format "[%s](#%s%s)" title
(->> title
downcase
(replace-regexp-in-string "[^_[:alnum:]]" "-")
(replace-regexp-in-string "-+" "-")
(replace-regexp-in-string "^-" "")
(replace-regexp-in-string "-$" ""))
(if (> count 0)
(concat "-" (number-to-string count))
"")))
from markdown-toc.
Hello,
Thanks for the report and the proposal fix.
I don't think deal with the leading or trailing _
are needed though.
This can be seen as typos. And the author can simply remove those.
Cheers,
from markdown-toc.
@ardumont there may be legitimate reasons for a title to start with underscore. Eg someone is documenting some system variables or functions...
If github removes it, so should you
from markdown-toc.
Related Issues (20)
- Always start TOC on first column HOT 4
- Symbol's function definition is void: markdown-imenu-create-index HOT 3
- Not working on emacs 24.5 HOT 5
- Make `markdown-toc--header-toc-title` customizable HOT 3
- markdown-imenu-create-nested-index function definition is void HOT 4
- Need to insert empty line before TOC header HOT 2
- The comment mentioning how to regenerate the markdown TOC should mention which package the function is from (this one) HOT 4
- Please add a prefix to test-helper.el to avoid conflicts with 68 other packages HOT 2
- Lines starting with # in code sections are treated as headings HOT 1
- strip links from headings HOT 1
- generating toc for a big file requires jumping to the end (markdown-toc-generate-toc: Wrong type argument: consp, 148688) HOT 2
- Proposal: Implement the same API as other toc generators HOT 5
- How to follow the link in TOC? HOT 4
- 0.1.3 depends on unreleased s.el, and Package-Requires needs to be corrected HOT 4
- update TOC on save HOT 2
- Wrong type argument: consp, nil HOT 6
- Can't load markdown-toc mode or call any functions
- Generate TOC does not respect heading levels. HOT 9
- `markdown-toc--to-link` need remove the un-ascii char
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from markdown-toc.