Notes On Latex: lshort chapter 1

Warning: 我是在Ubuntu系統上學習使用LaTex, 下面的code和command也是隻針對Ubuntu的, 其他系統未嘗試.


Latex的由來

Tex

  • 發音 Tech, 所以呢, X的沒有s音發出.
  • 由神一樣的Donald Knuth發明. 他在1977年開始實現TEX引擎, 目的是爲了讓自己出版的書排版好看(他非常擔心當時落後的排版技術會影響到自己的書. 猜測是鉅作The Art of Computer Programming)
  • 現在使用的Tex引擎是經過完善後發行的.

LaTex

  • 發音 Lay-techLah-tech.
  • 由另一個神一樣的Leslie Lamport在Tex引擎上開發而來.

注意了, Knuth, Lamport, 兩個圖靈獎獲得者.

Basics

Latex基本格式與語法

作爲程序員, 這個不需要解釋.

對空白字符的處理

  1. Tab與空格都被當成空格處理
  2. 多個空格當成一個空格處理
  3. 忽略行首的空格
  4. 一次換行(即一次Enter) 被當作一個空格處理
  5. 一個空白行(兩次Enter) 看作是一個段落的結束.

這裏寫圖片描述

特殊符號

以下符號被LaTex保留, 如果直接輸入, 不僅看不到符號本身, 還很有可能導致一 些奇怪的事情發生.

# $ % ^ & _ { } ~ \

如果要顯示這些符號, 需要加上轉義符:
這裏寫圖片描述
比較特殊的是轉義符\本身, 不能通過\\來輸出, 而是\textbackslash

LaTex命令

\command[optional parameter]{parameter}
  1. 由轉義符開始
  2. command裏只有字母, 且大小寫敏感
  3. 以非字母結束, 例如空格, 數字, 括號

註釋

同matlab一樣, 使用百分號註釋:
這裏寫圖片描述
若註釋很長, 可以使用verbatim包和\comment命令:

 \usepackage{verbatim} 

這裏寫圖片描述
但是在公式內部不好使.

文件結構

文檔元信息/環境配置:
1. 每個文件必須以 命令\documentclass{...}開始,  用於指定文件(內容)類型
2. 然後是樣式命令
3. 接着是要導入的包:`\usepackage{…}`

文檔主體(body):
1. 所有的文件內容需要寫在下面兩個成對命令之間

\begin{document} 
% body contents
\end{document}

\end{document}命令之後的所有內容都會被忽略.
不得不說, 跟HTML很像啊!

Hello, Latex

1 . 新建一個文本文檔, 命名hello_latex.tex, 寫入代碼:

\documentclass{article}
\begin{document}
Hello, LaTex!
\end{document}

2 . 使用latex編譯:

latex hello_latex.tex

可能需要執行兩次. 然後, 得到hello_latex.dvi文件

3 . 將dvi轉換成pdf

dvipdf hello_latex.dvi

4 . 查看dvi文件:

evince hello_tex.dvi

evinceUbuntu系統自帶的pdf瀏覽器, 可以直接打開dvipdf文件. 所以evince hello_tex.pdf也是OK的.
打開後長這個樣子:
這裏寫圖片描述

詳細說明

documentclass

\documentclass[options]{class}

告訴編譯器你要寫什麼類型的文件.
常用的class有以下幾個:
這裏寫圖片描述

options的作用是對class的行爲進行定製, 多個參數間用逗號連接. 例如:

\documentclass[11pt,twoside,a4paper]{article}

含義是: 創建article類型的文檔, 使用11號基礎字號, 雙列, A4打印.
常用的class options:
這裏寫圖片描述

packages

暫時略過, 後面有單獨章節.

page styles

使用\pagestyle{style}可以指定所有頁面的格式, latex自定義了三種page style:
這裏寫圖片描述
也可以使用\thispagestyle{style}單獨指定當前頁的style.

常見的文件

使用latex時會碰到很多文件類型, 仍然不翻譯了, 截圖.
先是源文件:
這裏寫圖片描述
這裏寫圖片描述
然後中間/輸出文件:
這裏寫圖片描述

包含多個源文件

  • \include{filename}: 另起一頁包含這個文件裏的內容
  • \includeonly{filename,filename,. . . }: 使用了這個命令之後, 只有這個範圍之內的\include纔有效
  • \input{filename}: 不會另起一頁, 直接包含.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章