Package Exports
- @vuepress-denaro/vuepress-plugin-permalink-pinyin
- @vuepress-denaro/vuepress-plugin-permalink-pinyin/lib/node/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@vuepress-denaro/vuepress-plugin-permalink-pinyin) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
vuepress-plugin-permalink-pinyin
🎉 A VuePress plugin which convert Chinese title to transliterate permalink.一个 VuePress 插件,将中文标题转换为音译永久链接.
Usage
- Install
# npm
npm install @vuepress-denaro/vuepress-plugin-permalink-pinyin
# yarn
yarn add @vuepress-denaro/vuepress-plugin-permalink-pinyin- Update
pluginsin.vuepress/config.js
js
const { permainkPinyinPlugin } = require('@vuepress-denaro/vuepress-plugin-permalink-pinyin')
module.exports = {
plugins: [
permainkPinyinPlugin({
lowercase: true, // Converted into lowercase, default: true
separator: '-' // Separator of the slug, default: '-'
}),
],
}ts
import { permainkPinyinPlugin } from '@vuepress-denaro/vuepress-plugin-permalink-pinyin'
import { defineUserConfig } from '@vuepress/cli'
export default defineUserConfig({
plugins: [
permainkPinyinPlugin({
lowercase: true, // Converted into lowercase, default: true
separator: '-' // Separator of the slug, default: '-'
})
]
})Configurations
/**
* Ignore a list of strings untouched
* @example tr('你好,世界', { ignore: ['你'] }) // 你 Hao , Shi Jie
*/
ignore?: string[];
/**
* Replace a list of string / regex in the source string with the provided target string before transliteration
* The option can either be an array or an object
* @example tr('你好,世界', { replace: {你: 'You'} }) // You Hao , Shi Jie
* @example tr('你好,世界', { replace: [['你', 'You']] }) // You Hao , Shi Jie
* @example tr('你好,世界', { replace: [[/你/g, 'You']] }) // You Hao , Shi Jie
*/
replace?: OptionReplaceCombined;
/**
* Same as `replace` but after transliteration
*/
replaceAfter?: OptionReplaceCombined;
/**
* Decides whether or not to trim the result string after transliteration
* @default false
*/
trim?: boolean;
/**
* Any characters not known by this library will be replaced by a specific string `unknown`
* @default ''
*/
unknown?: string;
/**
* Whether the result need to be converted into lowercase
* @default true
*/
lowercase?: boolean;
/**
* Whether the result need to be converted into uppercase
* @default false
*/
uppercase?: boolean;
/**
* Custom separator string
* @default '-'
*/
separator?: string;
/**
* Allowed characters.
* When `allowedChars` is set to `'abc'`, only characters which match `/[abc]/g` will be preserved.
* Other characters will all be converted to `separator`
* @default 'a-zA-Z0-9-_.~''
*/
allowedChars?: string;
/**
* Fix Chinese spacing. For example, `你好` is transliterated to `Ni Hao` instead of `NiHao`. If you don't need to transliterate Chinese characters, set it to false to false to improve performance.
*/
fixChineseSpacing?: boolean;