第一部・認識爾雅 / 1.1

這個編輯器在做什麼

爾雅是一套跑在終端機裡的文字編輯器,也是三十年前 DOS《漢書》文書系統的 Rust 重生。動手改任何設定之前,先花十分鐘看清楚它管到哪、不管什麼,以及一份文件從開啟到存檔會經過哪些畫面。

閱讀時間 約 10 分鐘 對象 全體使用者 先備知識 無 版本 v1.0 ・ 2026-08-26
1.1.1

這本手冊怎麼讀

四個部分、十四章,不必從頭讀到尾。

手冊分成四部:第一部講觀念與安裝(爾雅是什麼、怎麼裝、畫面怎麼看)、第二部講基本編輯(開檔、打字、搜尋、復原)、第三部講進階功能(編碼、大型檔案、十六進位、雙欄比對)、第四部是設定與附錄(改快捷鍵、換語言、查表)。

編號規則是「部-章」,例如 3.4 是第三部第四章;章裡面的小節再加一碼,例如本節是 1.1.1。內文寫「見 4.1」就是叫你翻到第四部第一章,左邊選單點得到。

三種讀法

  • 第一次用爾雅:把第一部 1.1 到 1.3 讀完,再讀 2.1(開檔與儲存)。四章讀完就能正常工作了。
  • 已經會用其他編輯器:直接看 1.3(畫面)與 4.4(快捷鍵一覽),需要什麼再回頭翻。習慣 nano 或 vim 的人記得先看 4.1,換一套按鍵配置比重新學快得多。
  • 只是臨時要開一個檔來看:1.2.5 講怎麼啟動,1.3 講畫面,Ctrl+X 離開。三分鐘。
搜尋怎麼用

左上角的搜尋框(或按 ⌘K / Ctrl+K)會做兩件事:一是把本章內文的關鍵字標成黃色,按 Enter 逐一跳過去;二是列出其他章節裡談這個主題的篇章,直接點就跳過去。畫面示意圖上的字也在搜尋範圍內。

手冊裡出現 Ctrl+S 這種標示代表按鍵,~/.config/erya/keymap.toml 這種灰色標示代表檔案路徑或指令。要注意的是爾雅的快捷鍵可以整套換掉(見 4.1),手冊一律以內建的 Erya Terminal Safe 預設配置為準;如果你換過配置,實際按鍵請以畫面第二列的提示列與 F1 說明為準——那兩個地方顯示的永遠是你當下真正在用的鍵。

這份手冊描述「現況」

內容依照目前的程式碼撰寫,不寫規劃中的功能,也不寫「應該要怎樣」。看到某個功能在手冊裡被標成「預設沒有綁按鍵」或「這個模式下不支援」,那就是現在的實際狀況。

1.1.2

爾雅在做什麼、不做什麼

一句話:它是一套跑在終端機裡、為中文文件而寫的文字編輯器。

爾雅 Erya 的名字取自「爾,近也;雅,正也」,是三十年前 DOS 上《漢書》中文文書系統的 Rust 重生。它以規格驅動、文件先行的方式從零重寫,不含原《漢書》的任何原始程式碼或資產,與原開發團隊也沒有隸屬關係。

它跑在終端機裡(Terminal、iTerm2、Windows Terminal、SSH 連線都算),啟動之後佔滿整個視窗,離開之後把視窗還原成原本的樣子。畫面長這樣:

爾雅 Erya │ [報告.txt] 附錄.md
F1 說明 Ctrl+S 儲存 Ctrl+W 搜尋 Ctrl+R 取代 Ctrl+B 矩形選取 Ctrl+K 剪行 Ctrl+X 離開
第一章 專案背景   本專案自二〇二六年三月啟動,目標是把既有的   文件系統整批轉成純文字格式,並保留原有的   編碼與換行慣例。目前已完成第一階段。 ~ ~
報告.txt │ 5:24 │ 插入 │ UTF-8 │ LF
已儲存 報告.txt
圖 1.1.1 爾雅的主畫面。上面兩列、下面兩列是固定的框架,中間才是你的文件;示意圖上反白的那一格是游標的位置。每一列各代表什麼,1.3 會逐列拆開講。
爾雅做這些爾雅不做這些
開啟、編輯、儲存純文字檔 排版、字型、粗體斜體(它不是 Word)
UTF-8/UTF-8 BOM/Big5/GBK/Shift_JIS 的偵測與轉換 UTF-16、UTF-32 等寬字元編碼(開啟時會直接回報不支援)
多頁籤、搜尋取代、復原重做 分割視窗、同時看同一個檔的兩個地方
依副檔名自動語法高亮 語法檢查、自動完成、跳到定義(它不是 IDE)
TOML/YAML/JSON 的格式化 其他語言的格式化(不會呼叫外部工具)
十六進位檢視與二進位檔案的位元組編輯 反組譯、結構解析(它不是 010 Editor)
雙欄檔案比對與差異互抄 三方合併、版本控制整合(沒有 Git 功能)
64 MiB 以上大檔的唯讀閱讀與 log 跟隨 在大型檔案模式下編輯內容
常用語與按鍵巨集 外掛、腳本語言、套件管理
最常見的誤會

爾雅沒有「自動存檔」,也沒有離開時的暫存還原。沒有按過 Ctrl+S 的內容只活在記憶體裡。它會在你關頁籤或離開時攔下來問你要不要存(見 2.1.8),但如果整個終端機被關掉、SSH 斷線、機器當掉,未存的內容就是沒了。

1.1.3

和 vim、nano 有什麼不一樣

最短的答案:不用背模式,而且中文是第一等公民。

終端機編輯器不缺,爾雅想解決的是很具體的一組問題:中文文件在終端機裡常常對不齊、編碼常常轉壞、舊檔案常常是 Big5。所以它在幾件事上跟其他編輯器不一樣。

爾雅vimnano
要不要切模式不用。打開就能打字要。指令模式/插入模式不用
怎麼知道能按什麼第二列永遠列著常用鍵,F1 有完整清單要先學底下兩列列著常用鍵
中文編碼自動偵測,狀態列常駐顯示,F7 直接轉要下指令設 fileencoding不處理
全形對齊依終端欄寬計算,全形字算兩欄大致可以大致可以
Emoji 與組合字依 Unicode 字素叢集移動與刪除視版本而定常會拆開
矩形選取內建,可填字、可整塊搬有(Ctrl+V 區塊模式)沒有
雙欄比對內建 F4要開 vimdiff沒有
十六進位內建 Ctrl+P要接 xxd沒有
改快捷鍵一份 TOML,附十二套現成配置vimrc(很強但要學)nanorc(有限)
如果你原本就在用 nano 或 vim

keymap/ 目錄裡附了 nano、vim、emacs 三套配置,還有 VSCode、Visual Studio、IntelliJ、Eclipse 與 macOS 版本。按 F2 選一套按 Enter 就換過去了,不必改設定檔(見 4.1.3)。

1.1.4

系統全景:五塊功能

爾雅的每一個畫面都可以歸到這五塊其中之一。

① 編輯 打字、選取、剪貼 搜尋與取代 復原與重做 矩形選取 常用語與巨集 每天在用的就是 這一塊 詳見第二部 ② 檔案 檔案對話盒 多頁籤 儲存與另存 外部變更偵測 大型檔案唯讀 開進來與寫回去 的每一件事 詳見 2.1、3.2 ③ 文字格式 編碼偵測與轉換 LF/CRLF 換行 語法高亮 TOML/YAML/JSON 段落重新編排 中文文件最常 卡住的那些事 詳見 3.1 ④ 檢視工具 十六進位檢視 二進位位元組編輯 雙欄檔案比對 差異左右互抄 即時日誌跟隨 平常用不到, 要用時很省事 詳見 3.3、3.4 ⑤ 設定 按鍵配置 配置編輯器 介面語言 按鍵說明 設一次就 很久不用動 詳見第四部
圖 1.1.2 五塊功能。第①②塊是每天都會碰到的,第③塊在處理舊檔案時最有感,第④塊平常用不到但需要時很難用別的工具替代,第⑤塊設一次就好。

要注意:這五塊沒有選單可以點。爾雅沒有下拉式功能表,所有功能都靠快捷鍵叫出來。找不到某個功能時,按 F1 開啟完整按鍵說明,那份清單就是功能總表(見 1.3.8)。

1.1.5

一份文件的一生

從開啟到寫回磁碟,會經過這五站。

① 開啟 命令列帶檔名 或 Ctrl+O ② 判斷型態 文字/大檔/二進位 順便偵測編碼 ③ 編輯 打字、搜尋、取代 最多 100 步可復原 ④ 轉格式 F7 編碼、F8 換行 (要不要都可以) ⑤ 儲存 Ctrl+S 先寫暫存再換掉 編輯的整段期間,爾雅都在盯著磁碟上的原檔有沒有被別人改掉 乾淨的文件自動重新載入;已經改過的文件會先問你(見 2.1.7) ②判斷型態的結果會決定接下來能做什麼:二進位檔進不了文字編輯,大型檔案不能改內容
圖 1.1.3 一份文件的一生。第②站是分岔點:一般文字檔走完整流程,超過 64 MiB 的走唯讀模式(3.2),不是文字的走十六進位(3.3)。
  1. 開啟。啟動時在命令列後面接檔名,或在編輯器裡按 Ctrl+O 叫出檔案對話盒。同一個路徑如果已經開在某個頁籤,爾雅會直接切過去,不會重複開兩份(2.1.1)。
  2. 判斷型態。爾雅會先看檔案多大、前 8 KiB 有沒有 NUL 位元組,再決定用哪一種模式打開,同時把編碼猜出來(3.1.1)。
  3. 編輯。一般文字檔在這裡度過大部分時間。每個頁籤各自保有自己的游標位置、搜尋條件與最多 100 步的復原紀錄(2.4.1)。
  4. 轉格式(可略過)。要把 Big5 舊檔轉成 UTF-8、或把 CRLF 換成 LF,就在存檔前按 F7/F8。轉換不會立刻寫檔,是在下一次儲存時才生效(3.1.2)。
  5. 儲存。Ctrl+S 會先寫到同目錄的暫存檔、再原子換掉原檔,Unix 上還會保留原本的檔案權限(2.1.6)。
1.1.6

三種人、三條路線

先確認你是哪一種,再決定要讀哪幾章。

寫中文文件的人

用爾雅寫稿、整理筆記、處理舊文件

  • 開檔、頁籤、儲存
  • 搜尋取代、復原
  • 編碼與換行轉換
  • 段落重排、常用語

路線:1.2 → 1.3 → 2.1~2.4 → 3.1

在伺服器上改設定檔的人

SSH 進去改 conf、看 log、比對兩份設定

  • 命令列選項與環境變數
  • 語法高亮與 TOML/YAML/JSON 格式化
  • 大型檔案與 log 跟隨
  • 雙欄比對兩份設定檔

路線:1.2 → 1.3 → 2.1 → 3.1 → 3.2 → 3.4

想把它調成順手的人

要改快捷鍵、換語言、或給團隊統一設定

  • 十二套內建按鍵配置
  • 按鍵配置編輯器與另存
  • 設定檔放哪裡會被讀到
  • 介面語言與自訂翻譯

路線:1.3 → 4.1 → 4.2 → 4.4

一個人身兼多角是常態。如果三種都是你,建議照第一部、第二部的順序走一遍,第三部與第四部等需要時再翻。

1.1.7

先記住這六件事

看完全書會再遇到,但先在這裡放著。

  1. 沒有自動存檔。爾雅不會幫你偷偷存檔,也沒有崩潰還原。Ctrl+S 是唯一寫入磁碟的動作(2.1.5)。
  2. 離開是 Ctrl+X,不是 Ctrl+C。Ctrl+C 在預設配置裡是「複製」,不是中斷程式。真正的離開鍵是 Ctrl+X,關頁籤是 F11(2.1.3)。
  3. 快捷鍵可以整套換掉,所以手冊寫的不一定等於你按的。畫面第二列與 F1 顯示的永遠是你當下真正在用的鍵(4.1)。
  4. 編碼與換行是「下一次儲存」才生效。按 F7/F8 只是換掉狀態列上的標示,檔案要等你存檔才真的變(3.1.2)。
  5. 有三種模式不能編輯內容。大型檔案唯讀模式、十六進位檢視(對文字檔而言)、串流二進位檔案。狀態列會直接寫出來你在哪一種(3.2、3.3)。
  6. 矩形選取和自動換行不能同時用。兩者的座標系統會打架,所以爾雅讓它們互斥;開著一個時想開另一個,會被訊息列擋下來(2.2.5)。
1.1.8

名詞去哪一章看

本章出現過的詞,詳細說明在這些地方。完整清單見 4.4.8。

名詞一句話解釋詳見
頁籤同時開著的多個檔案,每個各自記得游標與復原紀錄。2.1.3
提示列畫面第二列,永遠列著目前這個畫面能按的鍵。1.3.3
狀態列倒數第二列,顯示檔名、行欄、模式、編碼與換行格式。1.3.5
訊息列最後一列,操作結果與確認問題都出現在這裡。1.3.6
按鍵配置一份把「動作」對應到「按鍵」的 TOML,可以整套換。4.1
字素叢集螢幕上看起來是一個字的單位,可能由好幾個碼位組成。2.2.3
矩形選取選一個長方形範圍,可以填字,也可以整塊搬動。2.2.5
大型檔案模式64 MiB 以上自動進入的唯讀閱讀模式。3.2
十六進位檢視把文件攤成位元組看,一般文字檔是唯讀的。3.3
二進位檔案含 NUL 或無法解碼的檔案,開啟時直接進位元組檢視。3.3.5
暫存副本雙欄比對時的工作檔;沒套用之前原始檔不會變。3.4.1
常用語收錄起來重複插入的字串,存成 JSON。2.4.3
巨集錄下來重播的一串按鍵,存成 JSON。2.4.6
原子儲存先寫暫存檔再換掉原檔,中途斷電也不會半截。2.1.6