[心得] 跌跌撞撞學LaTeX (三)我們是由字元組成的

看板LaTeX (論文排版)作者 (我不想當好人,但...)時間15年前 (2010/03/18 11:28), 編輯推噓2(202)
留言4則, 4人參與, 最新討論串1/1
3 More TeX, please. 範例 2.1編譯成功後,螢幕右半邊會出現預覽程式,裡面顯示由我們的輸 入產生的pdf 檔。 先解釋一下為何我們輸入三行,輸出只有一行? 首先,在TeX 系統裡,在一行內凡是% 之後的所有字,都被視為註解,程 式會直接忽視,不會出現在輸出裡。所以範例 2.1的第一行:〔% 第一件 差事〕,就是註解。* 例如我們輸入:〔We have 100% probability to win.〕,輸出的文件只 會出現:〔We have 100〕 ,% 之後的都被系統當成註解,忽視了。如果 我們的TeXwork 程式有按上一節所述設定,% 之後的文字都是紅色。 除了% 之外,還有許多特殊符號有特別的涵義,使用上需要注意;因此, 我們要問:「身為新手,我如何知道一個特殊符號有特殊用法?難道只能 單純地trial & error 嗎?」 打開dos 環境,為了避免檔案管理上的問題,先切換到適當的工作目錄, 然後輸入tex 。如果安裝沒問題,你會看到以下的顯示:** -------------------------------------------------------- This is TeX, Version 3.1415926 (MiKTeX 2.8) ** -------------------------------------------------------- 可以看到**後面跟著一個閃爍的游標。先在游標處輸入〔\relax〕,這個 特殊指令。*** 如果是第一次執行tex ,會看到系統開始處理一些事情,並且跑出一堆訊 息。等工作結束後,會看到原本的兩個〔**〕變成〔* 〕。然後我們輸入 〔\show $ 〕,會出現如下訊息:**** -------------------------------------------------------- > math shift character $. <*> \show $ ? -------------------------------------------------------- 接著先按一下<enter> 讓? 變回* ,再試試看輸入〔\show `〕: -------------------------------------------------------- > the character `. <*> \show ` ? -------------------------------------------------------- 比較一下這兩段訊息,即使還不太明白其確切涵義,但很明顯地可以看出 $ 是有其他作用的特殊符號,而` 就只是個` 而已。用這個方法可以找出 絕大多數符號的意義與作用。(之所以說絕大多數,是因為如果我們試著 輸入:〔\show % 〕會發現沒有反應。因為tex 還是會把% 註解掉。) 那麼,當我們真的需要輸出% 的時候該怎麼辦?先看範例 2.1的第三行: 〔\end〕。 在TeX 裡,倒斜線\ 開頭的那一組字代表指令,TeXwork 裡頭會用藍色顯 示。先前我們用的\relax、\show 都是指令,用來告訴tex 做一些特別的 事情;而這裡的\end也是指令,顧名思義它的作用就是告訴tex :「一切 都結束了!」 所以當我們想結束dos 環境下的tex 程式時,首先當然可以用暴力法,直 接點掉dos 視窗;也可以在* 游標狀態下輸入:〔\end〕。***** 所以聰明的你大概已經在猜:「是不是想輸入% 的時候,前面加個\ 就可 以了?」 在試驗這個想法之前,不妨先在tex 程式裡找一下\%的涵義: -------------------------------------------------------- *\show \% > \%=\char"25. <*> \show \% ? -------------------------------------------------------- 對照一下ASCII 表,可以看到37代表% ,而25就是16進位的37;所以我們 很幸運地猜對了。****** 因此先前的那句:〔We have 100% probability to win.〕,只要改成: 〔We have 100\% probability to win.〕 就會100%正確。 * 可以在註解裡輸入中文,不代表TeX 可以這麼輕易地處理中文! 註解裡的中文只是方便自己,實際上都被TeX 忽視了。 ** 預設目錄是:〔C:\Documents and Settings\使用者名稱> 〕, 我們可以用〔cd 目錄名稱 〕來切換到我們想要的位置。但如果 工作目錄處於另一個硬碟分區,比如說,系統在c 而目標在d , 還要先輸入〔d:〕才能切換過去。 *** \relax的意思就是告訴tex 程式:「請稍息。」 **** 後面我們會解釋**、* 、? 在tex 程式裡各自的作用。 ***** 第三種方法是在? 游標下輸入大寫的X 。? 游標狀態對於除錯很 重要,以後會再談到。 ****** ASCII 定義了最基礎的電腦內碼,把二進位資料轉成對應符號。 對照表在網路上隨便搜尋都找得到。雖然大多數情況下,〔 \特 殊符號〕確實會輸出那個符號,但是也有許多例外;比較安全的 做法還是去tex 程式查一下。 -- 我想盡量把每一篇都控制在一百行內,但又希望講得能讓「電白」也懂, 所以每一篇的實質內容會有點少,請多包涵! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.236.100 ※ 編輯: rogerli 來自: 114.33.236.100 (03/18 12:46)

03/18 14:14, , 1F
等等 version "3.1415926"? 這是MikTeX開的玩笑嗎
03/18 14:14, 1F

03/18 14:20, , 2F
是Knuth定的。
03/18 14:20, 2F

03/18 14:54, , 3F
每次更新版本 就在圓周率後面加小數位
03/18 14:54, 3F

03/25 21:23, , 4F
正好最近在學!! 大大加油~ 讓我學快點XD
03/25 21:23, 4F
文章代碼(AID): #1BePtGAs (LaTeX)
文章代碼(AID): #1BePtGAs (LaTeX)