標籤:

為什麼 LaTeX 的命令以不便盲打的反斜桿開始?


因為你指法不好。

---

抖機靈結束。我把 QWERTY 鍵盤上不需要按 shift 鍵就能打出來的所有 ASCII 標點符號給你列出來,從上到下從左到右總共 11 個符號:

` - = [ ] ; " , . /

現在你看,成對的方括弧肯定不能用做命令轉義符,佔用數學符號 - = / 當然也不合適(TeX 是為數學排版設計的),佔用英文行文常用的四個標點 ; " , . 更不行。

還剩下誰?對,就剩下 ` 和 這兩個符號了。` 是歐洲語言常見的抑音符但不單用,反斜線在英文中也很少用到,都不常用,從符號本身來講都可行。現在你來考慮:

  • 鍵盤上 ` 是左手小指挺遠, 是右手小指挺遠。你選左還是右?
  • 鍵盤不一定需要區分左右引號但排版需要區分。" 表示撇號、右引號是無疑了,你讓誰表示前引號?

---

TeX allows any character to be used for escapes, but the 「backslash」 character 『』 is usually adopted for this purpose, since backslashes are reasonably convenient to type and they are rarely needed in ordinary text.

我沒有說什麼新東西,只是把上面的話說得細了一點而已。補充一下上面的前半句,TeX 是可以修改命令的開始符號的,只要修改一個字元的 catcode 為 0,它就立即可以當成反斜杠來用。但在 TeX 的各種格式中,修改這一符號的都很少,唯有 GNU texinfo 格式選用了符號 @,大家可以感受一下。

事實上,在設計者眼中,反斜線的常用程度還不如一些常用命令,所以輸入反斜線是 ackslash,而 \ 留做其他命令。

Reverse slashes (backslashes) are fairly uncommon in formulas or text, and \ is very easy to type; it was therefore felt best not to reserve \ for such limited use. Typists can de ne \ to be whatever they want (including ackslash).


你們沒有考慮過鍵盤布局的因素么……

大回車鍵盤上的 很難按,但是小回車鍵盤就沒有問題了。至少在盲打的時候誤觸的概率會降低很多。如果你連小回車鍵盤上的 的位置都要抱怨的話,我想問你怎麼不抱怨退格鍵的位置。


因為作者用的是美式鍵盤,而標準美式鍵盤中這個鍵挺好按的,比普通鍵更寬,在退格鍵正下方。

類似的例子比如有vi為什麼以:這種難按的需要按shift的鍵作為命令的開頭,因為vi作者用的鍵盤,冒號是直接按鍵,根本不需要shift。


你用用 perl ,知道 用 $ 開頭是什麼感覺....


我覺著是因為在所有不常用的按鍵里他是最好按的。


從按鍵頻率來看,寫LaTeX(其實是LyX)時已經變成了右手小指放在「」左手小指放在Tab,為什麼a-z不好盲打的結構了。


推薦閱讀:

從軟體工程上來說,LaTeX 爛不爛?
用LaTeX編寫習題集有哪些宏包可以使用?
為什麼Latex輸出的PDF文檔是空白的?
LaTeX 輸入矩陣裡面的元素時,使用 dfrac 後,發現字母有重疊怎麼辦?

TAG:LaTeX |