尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
在 SiYuan 中流畅编辑阿拉伯语:RTL 从右到左排版实战
在 SiYuan 中流畅编辑阿拉伯语RTL 从右到左排版实战【免费下载链接】siyuanAn open-source, privacy-first, self-hosted knowledge workspace where humans and AI agents work together 开源、隐私优先、自托管的知识工作空间让人与智能体在此协作项目地址: https://gitcode.com/GitHub_Trending/si/siyuan在 SiYuan 中录入阿拉伯语段落与列表方向常与预期相反。SiYuan 是开源、自托管的隐私优先知识工作空间原生支持 RTLRight-to-Left从右到左编辑。读完本文你将能开启全局 RTL 模式、按选区调整方向并处理混排边界。 开启 RTL 全局模式全局开关决定整篇笔记的默认书写方向适合内容以阿拉伯语为主的笔记库。在外观设置中打开全局开关打开设置→外观找到从右到左书写开关其描述为“将内容以从右到左的方式进行渲染”。开关状态写入配置项editor.rtl编辑器重载后整篇生效再次关闭即恢复默认从左到右。下面这段注册代码定义了该开关保存动作直接回写editor.rtl配置group.switch(editor.rtl, { title: window.siyuan.languages.rtl, desc: window.siyuan.languages.rtlTip, save: (value) editorConfigApi.patch(editor.rtl, value), });源码位置app/src/config/tabs/appearanceTab.ts配置字段定义见 app/src/types/config.d.ts。确认 rtl 类名的生效位置开启后编辑器初始化阶段会给根元素追加rtl类名所有方向相关样式都挂在这一类下主题开发者也靠它判断 RTL 方向// 启用 RTL 时给 .protyle 元素添加 .rtl 类名方便主题开发者判断 RTL 方向 if (window.siyuan.config.editor.rtl) { this.protyle.element.classList.add(rtl); }源码位置app/src/protyle/index.ts。 按选区控制单块方向阿拉伯语笔记里夹杂英文段落或代码时逐块设置方向比全局开关更精细。用块级菜单切换方向选中目标块可多选未选中任何块时作用于当前光标所在块。在块操作菜单中点击 RTL 图标项选中块的direction被设为rtl表格与 HTML 块会分别写到table与protyle-html元素上。反向恢复选 LTR 项清除字体样式项可一并清空direction与textAlign。菜单项的核心逻辑如下对每个选中元素回调方向设置{ id: rtl, icon: iconRtl, label: window.siyuan.languages.rtl, accelerator: window.siyuan.config.keymap.editor.general.rtl.custom, click: () { this.genClick(nodeElements, protyle, (e: HTMLElement) { // ……表格、HTML 块有分支处理此处省略 e.style.direction rtl; }); } }源码位置app/src/protyle/gutter/index.ts。为 RTL 绑定快捷键打开设置→通用→快捷键在编辑器 → 通用分组找到rtl项。当前版本该项默认值为空未绑定任何组合键需自行设置例如 CtrlShiftR。绑定后在编辑区按键所有选中块会被批量写入方向。快捷键匹配与批量写入逻辑if (matchHotKey(window.siyuan.config.keymap.editor.general.rtl.custom, event)) { let selectElements: HTMLElement[] Array.from( protyle.wysiwyg.element.querySelectorAll(.protyle-wysiwyg--select)); if (selectElements.length 0) { selectElements [nodeElement]; } updateBatchTransaction(selectElements, protyle, (e: HTMLElement) { e.style.direction rtl; }); }源码位置app/src/protyle/wysiwyg/keydown.ts。理解 RTL 默认样式阅读列表与表格的 RTL 规则全局rtl类下列表符号右移、子块改用右缩进表格在未手动指定左对齐时自动右对齐.protyle-wysiwyg [data-node-id].li [data-node-id] { margin-right: 34px; margin-left: 0; } .protyle-wysiwyg [data-node-id].li::before { right: 17px; left: auto; } .b3-typography table:not([style*text-align: left]) { margin-left: auto; }源码位置app/src/assets/scss/protyle/_content.scss标题与段落的direction: rtl声明在同文件 L10-L18。用自定义 CSS 微调间距若阿拉伯语行距、引用块右侧留白不合习惯可在设置→外观页的自定义 CSS 输入框中追加覆盖规则例如.protyle.rtl .protyle-wysiwyg blockquote { padding-right: 1em; }规则只写在本地外观配置里无需改动仓库内的样式源文件。⚠️ 常见异常与处理现象按 RTL 快捷键没有任何反应原因rtl与ltr两个快捷键在默认键位表中值为空串事件处理只匹配你自定义绑定的组合键rtl: {default: , custom: }, ltr: {default: , custom: },源码位置app/src/constants.ts。解法到设置→通用→快捷键中为rtl绑定一个不与已有键位冲突的组合键后再试。现象批量改方向后想整体还原原因菜单与快捷键的方向修改通过updateBatchTransaction对全部选中块批量写入属于一次可撤销的事务。解法按一次 CtrlZ 即可整批还原或选中这些块后使用清除字体样式菜单项它会清空textAlign与direction两个内联样式app/src/protyle/gutter/index.ts。现象RTL 段落里的英文代码被自动反转原因这是浏览器 Bidi双向文本算法对 LTR 语段的正常处理并非 SiYuan 缺陷。解法代码块与纯英文段落保持 LTR不在块菜单中对它们设 RTL确需混合时逐块用 LTR 项收回方向。相关资源全局开关注册app/src/config/tabs/appearanceTab.ts编辑器 rtl 类名注入app/src/protyle/index.tsRTL 样式总集app/src/assets/scss/protyle/_content.scss块级菜单 RTL/LTR 项app/src/protyle/gutter/index.ts快捷键处理app/src/protyle/wysiwyg/keydown.ts打开设置→外观切换一次从右到左书写再选中一个段落用块级菜单的 RTL 项试一遍两种粒度的差异马上就能感受到。【免费下载链接】siyuanAn open-source, privacy-first, self-hosted knowledge workspace where humans and AI agents work together 开源、隐私优先、自托管的知识工作空间让人与智能体在此协作项目地址: https://gitcode.com/GitHub_Trending/si/siyuan创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
RELATED

相关推荐

AI科研编程核心应用场景与发展趋势解析

AI科研编程核心应用场景与发展趋势解析

很多研究生在做科研时都会遇到“没有灵感”的问题:论文看了不少,却不知道研究方向怎么选;有了一个想法,又担心已经有人做过;想写开题报告,却不知道如何把零散的想法整理成具体问题。现在,AI工具…

📅 2026/9/22 16:01:35
Upscayl 简体中文界面上线:三步切换语言,AI 升图不再看英文菜单

Upscayl 简体中文界面上线:三步切换语言,AI 升图不再看英文菜单

Upscayl 简体中文界面上线:三步切换语言,AI 升图不再看英文菜单 【免费下载链接】upscayl 🆙 Upscayl - #1 Free and Open Source AI Image Upscaler for Linux, MacOS and Windows. 项目地址: https://gitcode.com/GitHub_Trending/up/ups…

📅 2026/9/12 6:17:13
用两台 MacBook 跑更大模型:DwarfStar 流水线并行完全指南

用两台 MacBook 跑更大模型:DwarfStar 流水线并行完全指南

用两台 MacBook 跑更大模型:DwarfStar 流水线并行完全指南 【免费下载链接】ds4 DeepSeek 4 Flash and PRO local inference engine for Metal, CUDA and ROCm 项目地址: https://gitcode.com/GitHub_Trending/ds4/ds4 DwarfStar 是一款专为 DeepSeek V4 Fla…

📅 2026/10/8 16:17:11
MORE NEWS

更多资讯

📰

装修物业要电工证?实操考试心里没底怕挂科,先搞清楚含金量

装修物业要电工证?实操考试心里没底怕挂科,先搞清楚含金量 实操考试心里没底怕挂科,这是很多准备报考电工证的学员最真实的声音。尤其是针对装修物业这一块,很多人搞不清电工证到底有没有必要, 含金量…

📰

十堰换电工证值不值得考?别再被中介坑了

十堰换电工证值不值得考?别再被中介坑了 不知道去哪报名怕被中介坑?十堰换电工证值不值得考?现在电工证越来越重要,但很多人对流程和风险一知半解,稍不注意就可能被套路,甚至影响职业生涯。这篇文章就从南阳卧龙区劳务班组负责人的角度出发,帮你全面梳…

📰

江苏盐城考电工证真实经历:工地太忙没时间复习怎么办?

江苏盐城考电工证真实经历:工地太忙没时间复习怎么办? 工地太忙根本没时间复习考试,这是大多数一线施工人员的共同困扰。我身边好几个同事就是一边在工地抢工期,一边准备特种作业操作证考试,结果总是差那么一口气。今天我就从 江苏盐城考电工证…

📰

福州考电工证需要多久?工地太忙根本没时间复习考试,郑州报考避坑指南来了

福州考电工证需要多久?工地太忙根本没时间复习考试,郑州报考避坑指南来了 工地太忙根本没时间复习考试,这是很多一线施工人员的真实写照。特别是在福州这样工程项目集中的城市,电工证的需求量大,但很多人因为工作强度大、时间紧,对考电工证的时间和流程…

📰

李云龙电工证考试真题与备考技巧:2026河南最新政策下的实战指南

李云龙电工证考试真题与备考技巧:2026河南最新政策下的实战指南 证书过期了不知道怎么复审延期?这是很多电工从业者遇到的现实问题,尤其是在2026年河南最新政策出台后,很多人对特种作业操作证的复审流程和时间安排感到困惑。别急,本文从安阳项目…

📰

电工证太难考?慈溪浒山考电工证的真实经历告诉你怎么搞定

电工证太难考?慈溪浒山考电工证的真实经历告诉你怎么搞定 工地太忙根本没时间复习考试,这几乎是每个一线施工人员的真实写照。尤其是刚从学校出来的应届生,面对慈溪浒山考电工证的流程,心里没底、手头没谱。但现实就是,…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬