Skip to content

中日韓文排版指南

VMark 包含一套全面的中文、日文和韓文排版規則。這些工具有助於在混用中日韓文與拉丁字元時保持一致的版面。

快速開始

使用 格式 → 中日韓文格式化文件,或按 Alt + Mod + Shift + F 格式化整份文件。

若只需格式化選取範圍,請使用 Mod + Shift + F


格式化規則

1. 中日韓文與拉丁文間距

自動在中日韓文與拉丁字元/數字之間加入空格。

格式化前格式化後
学习 Python 编程学习 Python 编程
共 100 个共 100 个
使用 macOS 系统使用 macOS 系统

2. 全形標點

在中日韓文語境中將半形標點轉換為全形。

格式化前格式化後
你好,世界你好,世界
什么?什么?
注意:重要注意:重要

3. 全形字元轉換

將全形字母和數字轉換為半形。

格式化前格式化後
12341234
ABCABC

4. 括號轉換

在包圍中日韓文內容時,將半形括號轉換為全形。

格式化前格式化後
(注意)(注意)
[重点]【重点】
(English)(English)

5. 破折號轉換

將雙連字符轉換為正確的中日韓文破折號。

格式化前格式化後
原因--结果原因 —— 结果
说明--这是说明 —— 这是

6. 智慧引號轉換

VMark 使用 堆疊式引號配對演算法,能正確處理:

  • 縮寫: 如 don'tit'sl'amour 等縮寫會被保留
  • 所有格: Xiaolai's 保持不變
  • 英呎英寸: 如 5'10"(英呎/英寸)的測量值會被保留
  • 年代: 如 '90s 等縮寫會被識別
  • 中日韓文語境偵測: 包圍中日韓文內容的引號使用彎引號/角括號
格式化前格式化後
他说"hello"他说 "hello"
"don't worry""don't worry"
5'10" tall5'10" tall

啟用角括號選項時:

格式化前格式化後
"中文内容"「中文内容」
「包含'嵌套'」「包含『嵌套』」

7. 省略號標準化

統一省略號格式。

格式化前格式化後
等等...等等...
然后... 继续然后... 继续

8. 重複標點

限制連續的標點符號數量(可設定上限)。

格式化前格式化後(上限=1)
太棒了!!!太棒了!
真的吗???真的吗?

9. 其他清理

  • 多個空格壓縮:多个 空格多个 空格
  • 移除行尾空白
  • 斜線間距:A / BA/B
  • 貨幣間距:$ 100$100

受保護的內容

以下內容 不受 格式化影響:

  • 程式碼區塊(```
  • 行內程式碼(`
  • 連結 URL
  • 圖片路徑
  • HTML 標籤
  • YAML 前置資料
  • 反斜線跳脫的標點(例如 \, 保持為 ,

技術結構

VMark 的 拉丁文 Span 掃描器 會自動偵測並保護技術結構,防止標點轉換:

類型範例保護
URLhttps://example.com所有標點保留
電子郵件user@example.com@ 和 . 保留
版本號v1.2.31.2.3.4小數點保留
小數3.140.5小數點保留
時間12:301:30:00冒號保留
千位分隔1,0001,000,000逗號保留
網域example.com小數點保留

範例:

格式化前格式化後
版本 v1.2.3 发布版本 v1.2.3 发布
访问 https://example.com 获取访问 https://example.com 获取
温度是 3.14 度温度是 3.14 度

反斜線跳脫

在任何標點前加入 \ 可防止轉換:

輸入輸出
价格\,很贵价格,很贵(逗號保持半形)
测试\.内容测试.内容(句號保持半形)

設定

中日韓文格式化選項可在設定 → 語言中設定:

  • 啟用/停用特定規則
  • 設定標點重複次數上限
  • 選擇引號樣式(標準或角括號)

情境式引號

啟用 情境式引號 時(預設):

  • 包圍中日韓文內容的引號 → 彎引號 ""
  • 包圍純拉丁文內容的引號 → 直引號 ""

這樣既能保留英文文字的自然外觀,又能正確格式化中日韓文內容。


中日韓文字距

VMark 包含專用的中日韓文字距功能,透過在字元之間加入細微間距來提升可讀性。

設定

設定 → 編輯器 → 字體排印 → 中日韓文字距 中設定:

選項說明
關閉0無字距(預設)
細微0.02em幾乎不可察覺的間距
輕微0.03em輕微間距
一般0.05em大多數使用情境的建議值
寬鬆0.08em較明顯的間距

運作原理

  • 對中日韓文字元段落套用 letter-spacing CSS
  • 排除程式碼區塊和行內程式碼
  • 在所見即所得和匯出的 HTML 中均有效
  • 對拉丁文字或數字無影響

範例

無字距:

这是一段中文文字,没有任何字间距。

0.05em 字距:

这 是 一 段 中 文 文 字 , 有 轻 微 的 字 间 距 。

差異雖然細微,但在較長的段落中能提升可讀性。


智慧引號樣式

VMark 可在中日韓文格式化時自動將直引號轉換為排版正確的智慧引號,支援多種引號樣式。

引號樣式

樣式雙引號單引號
彎引號"text"'text'
角括號「text」『text』
書名號引號«text»‹text›

堆疊式配對演算法

VMark 使用精密的堆疊式演算法進行引號配對:

  1. 分詞:識別文字中所有的引號字元
  2. 分類:根據上下文判斷每個引號是左引號還是右引號
  3. 縮寫偵測:識別縮寫(don't、it's)並保留
  4. 英呎英寸偵測:識別測量值(5'10")並保留
  5. 中日韓文語境偵測:檢查引號內容是否包含中日韓文字元
  6. 孤立引號清理:優雅處理不成對的引號

範例

格式化前格式化後(彎引號)
"hello""hello"
'world''world'
it'sit's
don'tdon't
5'10"5'10"
'90s'90s

縮寫中的撇號(如「it's」或「don't」)會被正確保留。

在游標處切換引號樣式

無需重新格式化整份文件,即可快速切換現有引號的樣式。將游標置於任意引號對內,按 Shift + Mod + ' 切換。

簡單模式(預設):在直引號與偏好的樣式之間切換。

格式化前格式化後再次格式化
"hello""hello""hello"
'world''world''world'

完整循環模式:依序循環四種樣式。

步驟雙引號單引號
1"text"'text'
2"text"'text'
3「text」『text』
4«text»‹text›
5"text"(回到起始)'text'

巢狀引號:當引號巢狀時,此指令切換 最內層 包圍游標的引號對。

智慧偵測:撇號(don't)、英呎英寸(5'10")和年代縮寫('90s)永遠不會被視為引號對。

TIP

在設定 → 語言 → 中日韓文排版 → 引號切換模式中,可在簡單模式和完整循環模式之間切換。

設定

在設定 → 語言 → 中日韓文排版中啟用智慧引號轉換。你也可以從下拉選單中選擇偏好的引號樣式。


中日韓文角括號轉換

啟用 中日韓文角括號 時,包圍中日韓文內容的彎引號會自動轉換為角括號。

支援的字元

角括號轉換在引號內容包含 中文字元(中日韓統一表意文字 U+4E00–U+9FFF)時觸發:

內容類型範例是否轉換?
中文"中文"「中文」
含漢字的日文"日本語"「日本語」
純平假名"ひらがな"✗ 保持為 "ひらがな"
純片假名"カタカナ"✗ 保持為 "カタカナ"
韓文"한글"✗ 保持為 "한글"
英文"hello"✗ 保持為 "hello"

提示: 若日文文字只含假名,請手動使用角括號 「」,或在內容中包含至少一個漢字。


測試段落

將此未格式化的文字複製到 VMark,並按 Alt + Mod + Shift + F 進行格式化:

text
最近我在学习TypeScript和React,感觉收获很大.作为一个developer,掌握这些modern前端技术是必须的.

目前已经完成了3个projects,代码量超过1000行.其中最复杂的是一个dashboard应用,包含了数据可视化,用户认证,还有API集成等功能.

学习过程中遇到的最大挑战是--状态管理.Redux的概念. . .说实话有点难理解.后来换成了Zustand,简单多了!

老师说"don't give up"然后继续讲"写代码要注重可读性",我觉得很有道理.

访问https://example.com/docs获取v2.0.0版本文档,价格$99.99,时间12:30开始.

项目使用的技术栈如下:

- **Frontend**--React + TypeScript
- **Backend**--Node.js + Express
- **Database**--PostgreSQL

总共花费大约$200美元购买了学习资源,包括书籍和online courses.虽然价格不便宜,但非常值得.

預期結果

格式化後,文字將如下所示:


最近我在学习 TypeScript 和 React,感觉收获很大。作为一个 developer,掌握这些 modern 前端技术是必须的。

目前已经完成了 3 个 projects,代码量超过 1000 行。其中最复杂的是一个 dashboard 应用,包含了数据可视化,用户认证,还有 API 集成等功能。

学习过程中遇到的最大挑战是 —— 状态管理。Redux 的概念... 说实话有点难理解。后来换成了 Zustand,简单多了!

老师说 "don't give up" 然后继续讲 "写代码要注重可读性",我觉得很有道理。

访问 https://example.com/docs 获取 v2.0.0 版本文档,价格 $99.99,时间 12:30 开始。

项目使用的技术栈如下:

  • Frontend —— React + TypeScript
  • Backend —— Node.js + Express
  • Database —— PostgreSQL

总共花费大约 $200 美元购买了学习资源,包括书籍和 online courses。虽然价格不便宜,但非常值得。


套用的變更:

  • 加入中日韓文與拉丁文間距(学习 TypeScript)
  • 轉換為全形標點(,。!)
  • 標準化全形數字(3→3,1000→1000,200→200)
  • 雙連字符轉換為破折號(-- → ——)
  • 省略號標準化(... → ... )
  • 套用智慧引號,保留撇號(don't)
  • 技術結構受保護(https://example.com/docs,v2.0.0,$99.99,12:30)