「TeXBook筆記」修訂間的差異
Tankianting(討論 | 貢獻) |
Tankianting(討論 | 貢獻) |
||
(未顯示同一使用者於中間所作的 12 次修訂) | |||
行 3: | 行 3: | ||
講plainTeX的書。讀這本書建議搭配 ''TeX for the Impatient'' 這本書,查詢 plainTeX指令或變數的定義。 | 講plainTeX的書。讀這本書建議搭配 ''TeX for the Impatient'' 這本書,查詢 plainTeX指令或變數的定義。 | ||
\show\controlSequence | \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字元分類如下: | |||
{| 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 | |||
| < delete > | |||
| 不合法字元(invaild) | |||
|} | |||
{ } $ & # ^ _ % ~ 不能用一般字元的寫法,原則上要加脫逸字元\_、\$等,但是\用<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個空白字元。