「TeXBook筆記」修訂間的差異

出自Tan Kian-ting的維基
跳至導覽 跳至搜尋
(未顯示同一使用者於中間所作的 4 次修訂)
行 77: 行 77:


TeX只有16fonts
TeX只有16fonts
==Ch5 Grouping==


{  }:group character
{  }:group character
行 112: 行 114:
\eject跳出頁面
\eject跳出頁面


== Ch7 TeX如何讀取輸入文字 ==
輸入的行和輸出的行不相關。
* \n如空白
* 兩個空白於一列如同一個空白
* 空行表示段落結束
* 本章和次章講述非常首先的環節,TeX如何處理資料。
* TeX對文字有15分類,將ASCII 256字元分類如下:
{| class="wikitable"
|-
! 類號
! 範例
! 說明
|-
| 0
| \
| 脫逸字元
|-
| 1
| {
| 群組頭
|-
| 2
| }
| 群組尾
|-
| 3
| $
| 數學切換
|-
| 4
| &
| 表格定位
|-
| 5
| [\n]
| 換行
|-
| 6
| #
| 函數參數
|-
| 7
| ^
| 上標
|-
| 8
| _
| 下標
|-
| 9
| < null >
| 忽視字元
|-
| 10
| <半形空白>
| 空白字元
|-
| 11
| [A-Za-z]
| (一般字母)
|-
| 12
| 其他字元
| 其他字元
|-
| 13
| ~
| active character
|-
| 14
| %
| 註釋字元
|-
| 15
| &lt; delete &gt;
| 不合法字元(invaild)
|}
 { } $ &amp; # ^ _ % ~ 不能用一般字元的寫法,原則上要加脫逸字元\_、\$等,但是\用<code>\backslash</code>
\^ 和 \~表diacritics於字母。
每一個character除了control sequence都是token,包含1個空白字元。




[[category:資訊]]
[[category:資訊]]

於 2025年1月2日 (四) 17:27 的修訂

講plainTeX的書。讀這本書建議搭配 TeX for the Impatient 這本書,查詢 plainTeX指令或變數的定義。

\show\controlSequence 可以查詢controlSequence(姑且可理解為指令)的定義。

Ch1

講命名TeX的緣由

Ch2

講字元的輸入用法

kerning/ligature 自動啟用

kerning:VA中間自動adjust縮小間隙

ligature:合字(differ的iff)

  • \thinspace
  • \lq:英文左雙引號
  • \rq:英文右雙引號


Ch3, 4

\xxx 是control sequence,比如:

  • control word:\input␣MS(␣代表半形空白字元,下同)
  • control symbol:\+符號+字母(不空白)


  • \␣:指1個空格
  • \␣\␣:指2個空格

連續空格代表同一個空格

\TeX␣\␣Ignore \TeX後面接空格以示區隔;\␣指空白

plainTeX有900以上指令,300+左右是Primitive不能細分的

\show\sl 回傳

\sl=macro:

\fam\slfam\tensl

  • \slfam: slanted math mode font
  • \tensl: 10 pt slanted
  • \rm 羅馬體
  • \sl slanted
  • \it italic
  • \tt monospace
  • \bf bold font

the {\bf bold} font,中間的{}指定group

\/:義大利體修正


一個特例:{\bf f\/}

=>方能正確顯示出來

\temrm: set to 10pt roman \ninerm: set to 9pt roman

兩個都是字型變數

字型大小改變,會在基線上安排位置

\font\cs=外部字型

TeX只有16fonts

Ch5 Grouping

{ }:group character

{}定義在裡面的不會跑到外面

{\TeX}這樣可以避免吃掉空白的字元

或是\TeX{},{}是空群組

\centerline{要置中的文字}

{\it xxx},不會弄得外面也是義大利體

Ch6

(running TeX)

TeX有互動命令列

輸出log

\hrule 水平線

\vskip 1pt(6pt, .5cm,...) 垂直間距

\centerline

\sl

.~空白不換行

\vfill 充滿一頁

\eject跳出頁面

Ch7 TeX如何讀取輸入文字

輸入的行和輸出的行不相關。

  • \n如空白
  • 兩個空白於一列如同一個空白
  • 空行表示段落結束
  • 本章和次章講述非常首先的環節,TeX如何處理資料。
  • TeX對文字有15分類,將ASCII 256字元分類如下:
類號 範例 說明
0 \ 脫逸字元
1 { 群組頭
2 } 群組尾
3 $ 數學切換
4 & 表格定位
5 [\n] 換行
6 # 函數參數
7 ^ 上標
8 _ 下標
9 < null > 忽視字元
10 <半形空白> 空白字元
11 [A-Za-z] (一般字母)
12 其他字元 其他字元
13 ~ active character
14 % 註釋字元
15 < delete > 不合法字元(invaild)

 { } $ & # ^ _ % ~ 不能用一般字元的寫法,原則上要加脫逸字元\_、\$等,但是\用\backslash

\^ 和 \~表diacritics於字母。

每一個character除了control sequence都是token,包含1個空白字元。