mirror of
https://github.com/purocean/yn.git
synced 2026-08-31 01:55:43 +08:00
chore: switch wording back to cj
Agent-Logs-Url: https://github.com/purocean/yn/sessions/703b9a8c-555d-4e96-ac90-fdb0a5991ce5
This commit is contained in:
committed by
GitHub
parent
e1af0ebe62
commit
84d130e111
+1
-1
@@ -131,8 +131,8 @@
|
||||
"markdown-it": "^14.1.0",
|
||||
"markdown-it-abbr": "^2.0.0",
|
||||
"markdown-it-attributes": "^1.2.0",
|
||||
"markdown-it-cj-friendly": "0.1.1",
|
||||
"markdown-it-container": "^4.0.0",
|
||||
"markdown-it-cjk-friendly": "2.0.2",
|
||||
"markdown-it-emoji": "^3.0.0",
|
||||
"markdown-it-github-alerts": "^0.3.0",
|
||||
"markdown-it-mark": "^4.0.0",
|
||||
|
||||
@@ -395,14 +395,13 @@ const schema: SettingSchema = ({
|
||||
group: 'render',
|
||||
required: true,
|
||||
},
|
||||
'render.md-cj-friendly': {
|
||||
'render.md-cjk-friendly': {
|
||||
defaultValue: false,
|
||||
title: 'T_setting-panel.schema.render.md-cj-friendly',
|
||||
title: 'T_setting-panel.schema.render.md-cjk-friendly',
|
||||
type: 'boolean',
|
||||
format: 'checkbox',
|
||||
group: 'render',
|
||||
required: true,
|
||||
needReloadWindowWhenChanged: true,
|
||||
},
|
||||
'render.text-autospace': {
|
||||
defaultValue: false,
|
||||
|
||||
@@ -100,13 +100,15 @@ test('tokenize and normalize rules attach source, tokens, and line marks to env'
|
||||
expect(env.eMarks[0]).toBe(7)
|
||||
})
|
||||
|
||||
test('cjk friendly plugin is only applied when the render setting is enabled at startup', async () => {
|
||||
const src = '**该星号不会被识别,而是直接显示。**这是因为它没有被识别为强调符号。'
|
||||
test('cjk friendly plugin can be toggled at render time', async () => {
|
||||
const src = '**这应该被识别为强调。**这是后续文本。'
|
||||
const { markdown } = await loadMarkdown()
|
||||
|
||||
const { markdown: plainMarkdown } = await loadMarkdown()
|
||||
expect(plainMarkdown.renderInline(src)).toBe(src)
|
||||
expect(markdown.renderInline(src)).toBe(src)
|
||||
|
||||
mocks.settings.set('render.md-cj-friendly', true)
|
||||
const { markdown: cjFriendlyMarkdown } = await loadMarkdown()
|
||||
expect(cjFriendlyMarkdown.renderInline(src)).toContain('<strong>该星号不会被识别,而是直接显示。</strong>')
|
||||
mocks.settings.set('render.md-cjk-friendly', true)
|
||||
expect(markdown.renderInline(src)).toContain('<strong>这应该被识别为强调。</strong>')
|
||||
|
||||
mocks.settings.set('render.md-cjk-friendly', false)
|
||||
expect(markdown.renderInline(src)).toBe(src)
|
||||
})
|
||||
|
||||
@@ -4,7 +4,7 @@ import MarkdownItSup from 'markdown-it-sup'
|
||||
import MarkdownItMark from 'markdown-it-mark'
|
||||
import MarkdownItAbbr from 'markdown-it-abbr'
|
||||
import MarkdownItAttributes from 'markdown-it-attributes'
|
||||
import MarkdownItCjFriendly from 'markdown-it-cj-friendly'
|
||||
import MarkdownItCjkFriendly from 'markdown-it-cjk-friendly'
|
||||
import MarkdownItMultimdTable from 'markdown-it-multimd-table'
|
||||
import { triggerHook } from '@fe/core/hook'
|
||||
import { HELP_REPO_NAME } from '@fe/support/args'
|
||||
@@ -17,6 +17,10 @@ import { RULE_NAME as HASHTAG_RULE_NAME } from '@fe/plugins/markdown-hashtags/li
|
||||
* Markdown-it instance
|
||||
*/
|
||||
export const markdown = Markdown({ linkify: true, breaks: true, html: true })
|
||||
const defaultInlineState = markdown.inline.State
|
||||
MarkdownItCjkFriendly(markdown)
|
||||
const cjkFriendlyInlineState = markdown.inline.State
|
||||
markdown.inline.State = defaultInlineState
|
||||
|
||||
/**
|
||||
* Register a Markdown-it plugin.
|
||||
@@ -35,6 +39,7 @@ markdown.render = (src: string, env: RenderEnv) => {
|
||||
markdown.options.breaks = getSetting('render.md-breaks', true)
|
||||
markdown.options.linkify = getSetting('render.md-linkify', true)
|
||||
markdown.options.typographer = getSetting('render.md-typographer', false)
|
||||
markdown.inline.State = getSetting('render.md-cjk-friendly', false) ? cjkFriendlyInlineState : defaultInlineState
|
||||
|
||||
const enabledRules: string[] = []
|
||||
const disabledRules: string[] = []
|
||||
@@ -55,9 +60,6 @@ markdown.use(MarkdownItSup)
|
||||
markdown.use(MarkdownItMark)
|
||||
markdown.use(MarkdownItAbbr)
|
||||
markdown.use(MarkdownItAttributes)
|
||||
if (getSetting('render.md-cj-friendly', false)) {
|
||||
markdown.use(MarkdownItCjFriendly)
|
||||
}
|
||||
markdown.use(MarkdownItMultimdTable, {
|
||||
multiline: getSetting('render.multimd-multiline', true),
|
||||
rowspan: getSetting('render.multimd-rowspan', false),
|
||||
|
||||
@@ -447,7 +447,7 @@ export interface BuildInSettings {
|
||||
'render.md-emoji': boolean,
|
||||
'render.md-sub': boolean,
|
||||
'render.md-sup': boolean,
|
||||
'render.md-cj-friendly': boolean,
|
||||
'render.md-cjk-friendly': boolean,
|
||||
'render.multimd-multiline': boolean,
|
||||
'render.multimd-rowspan': boolean,
|
||||
'render.multimd-headerless': boolean,
|
||||
|
||||
@@ -443,7 +443,7 @@ const data = {
|
||||
'md-typographer': 'Enable some language-neutral replacement + quotes beautification',
|
||||
'md-sup': 'Enable sup syntax: 29^th^',
|
||||
'md-sub': 'Enable sub syntax: H~2~O',
|
||||
'md-cj-friendly': 'Enable CJK-friendly emphasis parsing',
|
||||
'md-cjk-friendly': 'Enable CJK-friendly emphasis parsing',
|
||||
'md-emoji': 'Enable emoji syntax: :smile:',
|
||||
'list-collapsible': 'Enable collapsible lists - Click to collapse/expand nested lists',
|
||||
'multimd-multiline': '[markdown-it-multimd-table]: Enable multiline syntax',
|
||||
|
||||
@@ -444,7 +444,7 @@ const data: BaseLanguage = {
|
||||
'md-typographer': 'Включите некоторые языковые замены + улучшение кавычек',
|
||||
'md-sup': 'Включить надстрочный синтаксис: 29^th^',
|
||||
'md-sub': 'Включить подстрочный синтаксис: H~2~O',
|
||||
'md-cj-friendly': 'Включить CJK-совместимый разбор выделения',
|
||||
'md-cjk-friendly': 'Включить CJK-совместимый разбор выделения',
|
||||
'md-emoji': 'Включите синтаксис эмодзи: :smile:',
|
||||
'list-collapsible': 'Включить складывание списков - Нажмите, чтобы свернуть/развернуть вложенные списки',
|
||||
'multimd-multiline': 'Включить многострочный синтаксис [multimd]:',
|
||||
|
||||
@@ -434,7 +434,7 @@ const data: BaseLanguage = {
|
||||
'md-typographer': '启用排版美化,如 (c) -> ©',
|
||||
'md-sup': '启用上标语法: 29^th^',
|
||||
'md-sub': '启用下标语法: H~2~O',
|
||||
'md-cj-friendly': '启用 CJK 友好的强调解析',
|
||||
'md-cjk-friendly': '启用 CJK 友好的强调解析',
|
||||
'md-emoji': '启用 Emoji 语法: :smile:',
|
||||
'list-collapsible': '启用列表折叠 - 点击折叠/展开嵌套列表',
|
||||
'multimd-multiline': '[markdown-it-multimd-table]: 启用 multiline 语法',
|
||||
|
||||
@@ -434,7 +434,7 @@ const data: BaseLanguage = {
|
||||
'md-typographer': '啟用排版美化,如 (c) -> ©',
|
||||
'md-sup': '啟用上標語法: 29^th^',
|
||||
'md-sub': '啟用下標語法: H~2~O',
|
||||
'md-cj-friendly': '啟用 CJK 友好的強調解析',
|
||||
'md-cjk-friendly': '啟用 CJK 友好的強調解析',
|
||||
'md-emoji': '啟用 Emoji 語法: :smile:',
|
||||
'list-collapsible': '啟用列表折疊 - 點擊折疊/展開嵌套列表',
|
||||
'multimd-multiline': '[markdown-it-multimd-table]: 啟用 multiline 語法',
|
||||
|
||||
@@ -5079,6 +5079,11 @@ get-caller-file@^2.0.1, get-caller-file@^2.0.5:
|
||||
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e"
|
||||
integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==
|
||||
|
||||
get-east-asian-width@^1.4.0:
|
||||
version "1.5.0"
|
||||
resolved "https://registry.yarnpkg.com/get-east-asian-width/-/get-east-asian-width-1.5.0.tgz#ce7008fe345edcf5497a6f557cfa54bc318a9ce7"
|
||||
integrity sha512-CQ+bEO+Tva/qlmw24dCejulK5pMzVnUOFOijVogd3KQs07HnRIgp8TGipvCCRT06xeYEbpbgwaCxglFyiuIcmA==
|
||||
|
||||
get-intrinsic@^1.0.2, get-intrinsic@^1.1.1:
|
||||
version "1.1.1"
|
||||
resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6"
|
||||
@@ -6720,10 +6725,12 @@ markdown-it-attributes@^1.2.0:
|
||||
resolved "https://registry.yarnpkg.com/markdown-it-attributes/-/markdown-it-attributes-1.2.0.tgz#1f3403fb7bd510c6ca4eeaa58c4106313f643234"
|
||||
integrity sha512-FDdqndq26KbWrO9ymFz7JyhnxXMP4vmPek7iAMNuQlfvgxO7zeAU8JfARzqcUYBiqsTc+H7wa9ybhIZVKAAWug==
|
||||
|
||||
markdown-it-cj-friendly@0.1.1:
|
||||
version "0.1.1"
|
||||
resolved "https://registry.yarnpkg.com/markdown-it-cj-friendly/-/markdown-it-cj-friendly-0.1.1.tgz#d255d2621f1b17c17b6329f9b824e6443d43d279"
|
||||
integrity sha512-2zD9UltBqLJppIdtWpmslEygOQ4kRLgdznRHVzVJiAfFurUWEQ5UUyN+wD5ZJzZtiLit6MaRpnw20boRFwEeFQ==
|
||||
markdown-it-cjk-friendly@2.0.2:
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/markdown-it-cjk-friendly/-/markdown-it-cjk-friendly-2.0.2.tgz#4397a33c822334fb4e3c17010410b3394478c9b0"
|
||||
integrity sha512-KXCl6sd129UqkAiRDb+NcAHrxC9xRa2WsGIsMMvtp2y1YlbeIaNYzArX2zfDoGhOjsyNMfJrGO7xGBss27YQSA==
|
||||
dependencies:
|
||||
get-east-asian-width "^1.4.0"
|
||||
|
||||
markdown-it-container@^4.0.0:
|
||||
version "4.0.0"
|
||||
|
||||
Reference in New Issue
Block a user