mirror of
https://github.com/BoostIo/Boostnote
synced 2025-12-13 01:36:22 +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) {
|
||||
return encodeURI(title.trim()
|
||||
.replace(/[\]\[\!\"\#\$\%\&\'\(\)\*\+\,\.\/\:\;\<\=\>\?\@\\\^\_\{\|\}\~]/g, '')
|
||||
.replace(/\s+/g, '-'))
|
||||
.replace(/\-+$/, '')
|
||||
import diacritics from 'diacritics-map'
|
||||
|
||||
function replaceDiacritics(str) {
|
||||
return str.replace(/[À-ž]/g, function(ch) {
|
||||
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