mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-13 17:56:25 +00:00
improve slug by replacing diacritics and removing unwanted characters
This commit is contained in:
@@ -1,6 +1,17 @@
|
|||||||
module.exports = function slugify (title) {
|
import diacritics from 'diacritics-map'
|
||||||
return encodeURI(title.trim()
|
|
||||||
.replace(/[\]\[\!\"\#\$\%\&\'\(\)\*\+\,\.\/\:\;\<\=\>\?\@\\\^\_\{\|\}\~]/g, '')
|
function replaceDiacritics(str) {
|
||||||
.replace(/\s+/g, '-'))
|
return str.replace(/[À-ž]/g, function(ch) {
|
||||||
.replace(/\-+$/, '')
|
return diacritics[ch] || ch;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = function slugify (title) {
|
||||||
|
let slug = title.trim()
|
||||||
|
|
||||||
|
slug = replaceDiacritics(slug)
|
||||||
|
|
||||||
|
slug = slug.replace(/[^\w\s-]/g, '').replace(/\s+/g, '-')
|
||||||
|
|
||||||
|
return encodeURI(slug).replace(/\-+$/, '')
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user