charconvert 中英字符转换
选中内容后,在中文标点和英文标点之间互相转换。
使用
js
const options = {
plugins: ['charconvert'],
toolbar: 'charconvert',
}菜单
点击工具栏按钮后弹出下拉菜单:
- 中文转英文:把选区中的中文标点转换为英文标点
- 英文转中文:把选区中的英文标点转换为中文标点
中文转英文
| 中文符号 | 英文符号 |
|---|---|
, | , |
。 | . |
; | ; |
: | : |
? | ? |
! | ! |
( | ( |
) | ) |
【 | [ |
】 | ] |
《 | < |
》 | > |
引号特殊处理
中文转英文时,中文弯引号 “” / ‘’ 不转换,但会单独包裹字体:
html
<span style="font-family: 'Times New Roman', system-ui;" data-font-source="cn-en">“</span>同时,选区中的直引号会被先转成中文弯引号,再包裹字体:
| 原符号 | 转换结果 |
|---|---|
" | “ 或 ”(按开闭状态) |
' / ' | ’(不判断开闭,全部转为右单引号) |
" | “ 或 ”(按开闭状态) |
跳过区域
公式(mjx-container、script、style 等)和 ruby 标签内的内容不会进行标点转换,也不会被设置字体。
英文转中文
| 英文符号 | 中文符号 |
|---|---|
, | , |
. | 。 |
; | ; |
: | : |
? | ? |
! | ! |
( | ( |
) | ) |
[ | 【 |
] | 】 |
< | 《 |
> | 》 |
引号特殊处理
英文转中文时,直引号会按开闭状态转换为中文弯引号:
| 原符号 | 转换结果 |
|---|---|
" | “ / ” 交替 |
' | ‘ / ’ 交替 |
同时会移除之前中文转英文时生成的 data-font-source="cn-en" 字体包裹 <span>,把引号恢复为普通文本节点。
注意事项
- 转换前需要先选中目标内容,未选中时菜单项无效。
- 公式和
ruby区域在标点转换和设置字体时都会被跳过。 - 英文转中文时,如果选区位于
data-font-source="cn-en"的 span 内部,该 span 也会被移除。