刀筆契刻︰nano 編輯

如果設想以『』字為觀,其中『一豎』就是文本,而那個『』── ──,就是當下所『』。人的眼界受限於框,就像編輯軟體也有個『視窗』一般。術語上,編輯軟體的這個視窗叫做『文本窗口』text window。在這個框中,一個一個『文字符號』,依序排列,可以用著『行列』定位,以至我們可以說哪個字在哪行哪列。人們的目光總有個『焦點』,聚焦在一個特定的『位置』,就是編輯軟體上的『游標』,指示著現下的『這個字』。如此說來,一個編輯軟體需要提供哪些『功能』去完成『新創』或『修改』文本,也就不難設想了。有人說,這個行列的想法,大概只適合文字界面吧,要是圖形界面的話,比方說眼前的『這篇』文章,就更本不適用。其實你只要把行列的概念,推廣成笛卡爾座標系就行了。這樣你可以用『點定位』的不只是文字,它是圖形又何妨。然而裡頭基本的想法還是一樣的。對今天的使用者來說,『所見即所得』的文字處理程式想法,一點也不會陌生,它會『排版』而且能『呈現』出一樣的所得之所見到各種輸出裝置 ──『螢幕』、『印表機』、『網頁』…──。那麽一個簡單的文本編輯軟體又怎麽看待文本的『排版』呢?標點符號標示著文句的意義,卻不代表著最終呈現出的『一行』或是『一列』,比如說『詩詞』上斷開句子文意呈現。所以就需要一個方法來處理排版上的這個『換行』── 排版上的『分界』,這是一行的終結 End Of  Line,另一行將起『新行』符號的由來。然而這個控制符號卻引起了一場史稱『Teletype Model 33 ASR』事件︰

220px-Teletype_with_papertape_punch_and_reader

傳說於 1963 年時,這台電動打字機,打字頭由行末回到行首── 回車 Carriage Return ── 需要它個字』的時間,而移動紙張的滾輪,移動一行距離 Line Feed,只需『個字』的時間,所以軟體程式設計師為了配合著它的運作節奏,只得用 EOL = CR + LF 剛好兩個字的時間,來標示排版上的新行符號

此後,到底該用什麼代表 EOL 就各吹各的調了。直到如今頻果的 CR、\r,微軟的 CR+LF、\r\n,以及 Unix 的 LF、\n,成為三種主流,持續影響著文本於不同作業系統間的往來時,都必須要轉換 EOL 符號一事。雖然許多『跨平台』的軟體,比方騛罿 Python 讀檔案時能自動轉換,對於可執行的文本命令檔來說,最好還是注意這個問題。如果你稍稍留意,這些又稱作 ASCII 控制碼的 CR 和 LF 符號,在文本編輯時是『看不見』的,它的作用是文本呈現的『控制』,並不屬於文本的『文義』之中,雖然用於排版時,或表現出作者對『美觀』的要求,因有著一定『風格』的意思。由於它的『看不見』,作用又有點像『文言虛詞』,在一般程式語言裡稱這些看不見的叫做 white-space,或許可以譯作『留白』。

nano 10^{-9} 短小精練的文本編輯程式,非常合適在終端機命令列上使用,作者志在取代 pico 10^{-12},曾說︰完全『錯映錯bug-for-bug 般的模擬著相容於 pico。就像傳聞 Wine 的作者們 ── 在 Linux 上跑 Windows 程式的模擬器 ── 當被問到『為什麼』某某軟體不能跑時,回答的感慨一樣︰看來我們只能製造相同的錯誤』,才能解決這個問題。是為求問題解決,不得不吞下的這杯苦酒!!奈文編輯器 nano text editor 的完整使用者文件,可以到使用 nano 文本編輯器之處閱讀,在此我們將只介紹於 Raspbian 上的基本用法︰

nano 上的命令主要是以 Ctrl 為起首配上一個『表意』的字元來表達,比方 Ctrl  + O  的組合健,代表一個  OverWrite 蓋寫『…檔案名稱』的存出命令。另一是以 Alt 作起頭也配上一個表意字元的,在 nano 中常用來表示『選項開關之用,例如 Alt  + P  的組合健,啟用『顯示空格 開啟/關閉』。此處說的這個 Alt 鍵就是 Ctrl  + G  Guide 指南 ── nano 程式中的線上備忘指南裡所說的 Meta 鍵之一 ──,它在 Raspbian 的 預設值;而其他的預設項可見於 /etc/nanorc  一檔。雖然此處用的表意字元,同於指南都是用英文的『大寫』符號,事實上,奈文編輯器並不區分大小寫,所以不需要用  Ctrl  + Shift   +  g  這種打法,縱使要用也行,因為這不過是 nano 文件寫法慣例吧。

當使用 『nano 《檔案名稱》』命令時,如果沒有這個檔名,新創它;如果已有這個檔案,打開它。

【移動反白游標】︰

上一行; 下一行; 前一字; 後一字。

【刪增游標所在處的字】︰

反白游標所在處,打入的字,將插入在這個游標之前;假如要刪除游標當下的字,可以用 Delete 鍵;如果想刪除游標之前的字,可以用 Backspace 鍵。

【剪貼文字】︰

當你在圖形視窗環境下使用視窗版終端機的程式命令列時,滑鼠是個好幫手,你可以方便的使用『剪貼』功能,它能夠將『拷貝Copy 的文句,把它貼到反白游標所在處之前

【讀寫檔案】︰

前面已經提過了要將檔案寫出,你可以用 Ctrl  + O  的命令;然而如果你想在反白的游標之前,插進另外一個檔案就得要用 Ctrl  + R   Read 讀取這個命令了。

【結束離開】︰

Ctrl  + X  EXit 出口

文化的傳承依賴著『刀筆契刻的傳播』,今天的世界,也許不是發明『造紙術』的漢朝蔡倫所能預想的吧!!