顯示具有 [文書軟體]--Latex 標籤的文章。 顯示所有文章
顯示具有 [文書軟體]--Latex 標籤的文章。 顯示所有文章

2012年10月13日 星期六

latex也可以追踪修訂--latexdiff+git

相信愛用latex的朋友們,對latex想必是又愛又恨吧,愛的是他強大的排版功能和完善的數學方程式,而恨的則是latex沒有內建追踪修訂功能,無法和其他共同作者編寫同一份文件的時候,追踪彼此所修改的內容,甚至是在revise論文的時候,也不容易追踪自己所修的內容。

的確,latex本身沒有內建追踪修訂,不過大家也不用因此而氣餒,方法總是人想出來的,沒有原生的解決方法,還是有外掛的方式可以達成追踪修訂的目的!

沒錯,latexdiff就是為了此目的而生的script,該script使用perl語言所寫成,在灌好MacTek或是MikTex之後,就內建的一個小程式。

使用的方法很簡單,只要輸入以下指令:

latexdiff old.tex new.tex > diff.tex

其中,old.tex是舊版本的檔案,new.tex是新版本的檔案,而diff.tex則是兩個檔案的差異,也就是追踪修訂的原始檔。接著,我們只要編譯diff.tex,就能得到diff.pdf,該pdf檔就會包含新舊版本的差異啦。

如下圖:

 

螢幕快照 2012 10 13 下午8 04 43

紅色刪除線為前一版本中被刪除的內容,藍色下底線的文字則是新版本中加入的內容,一目了然,跟word的追踪修訂一樣清楚,而且就算是演算法也能呈現前後版本的不同,如下圖:

螢幕快照 2012 10 13 下午8 08 30

此外,要注意的是,文章中的圖檔和所使用到的style檔,都必須和diff.tex放在同一個資料夾中,才能正常編譯成功。因為diff.tex中,只有包含old.tex和new.tex之間文字內容的差異,圖案是不會包含進來的,除非改了圖檔的檔名。

參考文章:

http://www.peteryu.ca/tutorials/publishing/latexdiff

 

Latexdiff+Git

原則上,單單使用latexdiff就已經滿足大部份人的需求了。不過,latexdiff有一個缺點,就是他只能辨識一個檔案的差異。如果,大家跟我一樣,習慣將不同章節寫在不同的檔案中,並且使用\include,將章節引入進主要的tex檔。那文件的變動都在其他檔案中,而主文件中跟本不會有任何異動,這樣latexdiff跟本就無法檢查出新舊內容的差異。這可怎麼辦呢?總不能每個章節產生一個diff檔,然後再自行整合所有的diff檔,聽起來就是一個大工程,勞心又耗時。

沒錯,我的心聲,Google大神都聽進去了,他也知道這是一件麻煩事,所以讓我找到了Yngve's blog,這位物理博士生,遇到了和我一樣的困擾,而且他還用git來維護他的論文,所以,他自己寫了一個shell script (稱作latexbatchdiff),同時可以偵測多個檔案的變動,還可以利用git,在不同的論文版本中,追踪論文的不同點。而且,他還分享了他寫的script,無私地讓大家使用,實在是太佛心來啦。大家可以到他所建立的專案中下載 :

http://gitorious.org/latexbatchdiff/

當然也可以用git直接下載回來用:

git clone git://gitorious.org/latexbatchdiff/latexbatchdiff.git

 下載回來之後,會在latexbatchdiff資料夾下看到兩個.sh檔,其中,install.sh是安裝檔,執行install.sh之後,該script會詢問你一些問題,像是使用何種版本控制軟體,我是用git,所以,回答git,接著會問你:

Want to create new command for difftool.latex This will overwrite the existing command, is this OK? (y/n)

這裡我回答y,因為他只會覆寫git的設定,不會影響整個系統,為什麼我這麼確定呢?因為我也很擔心程式有沒有漏洞在裡面,所以兩個程式我都trace過了,不用擔心,可以安心使用。而且這個install.sh只是根據你系統的設定,將他寫的latexbatchdiff.sh複製到~/.local/bin/,所以並沒有任何問題。

執行完之後,還必須自行編輯~/.profile,加入

export PATH=/Users/hdj/.local/bin:$PATH

安裝流程如下圖:

螢幕快照 2012 10 14 上午12 30 02 2

完成以上設定之後,就大功告成啦。

可以使用以下指令執行:

latexdiff-git ebc3e0 master.tex parts/introduction.tex parts/results.tex

其中,ebc3e0是git中版本的編號,master.tex是主要的tex文件,而後面兩個則是各章節的tex檔,在latexbatchdiff中,如果要檢查每一個章節,就必須列出所有的章節檔名。如果只有一個文件的話,就不用填入後面的章節檔。此外,如果沒有填入版本編號,latexdiff-git會自行和最後一個commit的版本比較。latexdiff-git執行完之後,會自動開啟一個master-diff.pdf,這個檔案就是修訂追踪的檔案啦。

參考資料:

.gitignore http://eothred.wordpress.com/2010/11/07/latexdiff-and-git/

 

Git簡易教學

同場加映一些git的簡易教學,以免過一陣子,連自己都忘了怎麼用><

首先是在論文的資料夾中建立倉儲:

git init

接著發佈一個init版本 

git add .

git commit -a -m "Init"

 

假設我們修改了一些檔案,然後又發佈了一個新的版本,我們可以用git log看看我們各版本的資訊,如下圖:

Git

在這個例子中,假設我要追踪a3c110這個版本和目前版本的差異,我可以下:

latexdiff-git a3c110 master.tex

如果在刪除檔案時,有東西不小心誤刪了,我們可以用以下指令回到最近的版本:

git reset --hard HEAD

 

2012年10月4日 星期四

製作灰階版的eps圖

大概一年多前,為了滿足某篇conference的要求,費了一番心血才將論文輸出成灰階,
當時,我只是將pdf另存成灰階的版本,用這偷吃步的方法,暫時混了過去,有興趣的朋友可以參考使用預覽程式將PDF轉成灰階文件
果然,沒想到最近又有review要求,要把所有圖片都轉成灰階的,之前那招可就不管用啦,
因為這次是將彩色的eps圖轉灰階的eps圖,不像之前只要求pdf檔。

這可怎麼辦呢?不用擔心,辦法是人想出來了,總是有人也遇過同樣的問題吧~~
沒錯,果然有好心人寫好了程式,底下我提供兩種方式給大家參考。

第一種方法 pscol

我們可以使用pscol這個用perl寫的小程式將原本彩色的eps轉成灰階的版本。
首先要到以下網址找到下載連結或是點這裡直接下載:



如果點開來,直接開啟成網頁的話,請自行另存檔案,檔名為pscol。
接著將pscol和要轉的檔案,放置在同一個資料夾。
假設要轉的彩色eps檔案為input.eps,請輸入以下指令:

$ eps2eps input.eps output.eps
$ pscol -0gray output.eps gray.eps

其中,第一步先用eps2eps將input.eps修圖,eps2eps主要的功用是將留白的部份切除,我發現有些圖檔,如果不先用eps2eps先修過一遍的話,pscol是無法正常將eps轉成灰階的。
接著使用pscol將中繼檔output.eps轉成灰階圖,gray.eps即為灰階的eps檔。

原則上,pscol可以在unix-like的作業系統中使用,windows的話,我自己就沒有試用過,因為他是用perl寫的,如果沒有灌perl的話,可能就不能使用了。


參考網址:


第二種方法 轉成pdf

pscol有二個缺點,第一個是因為用eps2eps將留白切除時,很有可能會切掉不是空白的部份,造成圖檔的某個部份不見了,這個問題還滿嚴重,不過也不是每一張圖都會出現這種情況。第二個是有些圖轉成灰階時,圖像完全失真,整個黑黑的一片,無法辨認出原始圖的樣子,如果有遇到以上兩種情況,只能用以下介紹的第二種方法轉。

其實,用第二種方法最為保險,因為他是先將eps輸出成pdf,再將pdf轉為灰階,接著再把pdf轉回eps,基本上,不需要另裝軟體,只需原本Mac電腦中有latex即可,而且還須要參考我之前寫過的文章-- 使用預覽程式將PDF轉成灰階文件。。
步驟如下:

1 開啟eps檔,自動轉成pdf。
2 將pdf另存gray tone的pdf-- g.pdf
3 將g.pdf轉成ps
     $ pdf2ps g.pdf g.ps
4 將g.ps轉成eps
     $ ps2eps g.ps


輸出的g.eps就是灰階化後的檔案。
這個方法我只在Mac上使用過,其他作業系統或許也有相對應的解法。


以上兩種eps轉灰階的方法,供大家參考,需要用到的時候,還真希望能有一鍵轉檔的程式。



2012年8月27日 星期一

Mac上使用Sublime text 2編寫Latex文件

文書編輯器對程式工程師而言,無疑是很重要的吃飯工具,
好的文書編輯器可省下大量coding時間,加速完成工作的時間。
而我個人偏好的編輯器是vim和textmate,
在Server的環境中,Vim無需滑鼠就能發揮強大的效率,相當簡潔又有力。
在個人電腦上,因為我是Mac的使用者,所以Textmate當然是首選編輯器,並且用Textmate撰寫latex文件,也是我購買Mac主要動力之一。

原則上,有以上兩種編輯器,已經可以滿足我coding和撰寫Latex的需求,
不過Textmate有幾個小缺點,就是更新慢,先天上對中文的不支援(另灌字型就可以顯示中文,但還是怪怪的),雖然聽説Textmate 2已經可以正常支援中文並且開放原始碼,
不過,目前還沒看到有人分享心得,有機會再找時間試試看。

有鑑於以上幾個小缺點,我決定試試看另一套軟體--Sublime test 2,
Sublime test是近期相當活躍的軟體,支援Textmate的bundle,直接支援中文輸入,靈活度夠和外掛也多,而且還是跨平台的,可以在Mac、Linux和Windows上運行。
有著這麼多的優點,真的是讓人無法拒絕,一時手癢的我,當然是馬上去下載來試試看啦~~

使用上,沒什麼大問題,不過Sublime text 2原生沒有直接支援latex的編譯,需要另行下載套件latextools,這也是本篇文章誕生的主因,因為安裝latex外掛也是有一點點小撇步的。以下一一為大家說明如何安裝:

Step 1 安裝Sublime text 2

第一步當然是去Sublime text 2官方網站下載軟體:
http://www.sublimetext.com/2
由於我是使用Mac的作業系統,所以我是下載OS X的版本回來安裝。


Step 2 安裝Package control

建議使用Package control來安裝latextools,以方便之後的維護。
要安裝Package control,請先開啟Sublime text 2的console,
開啟方式為  ctrl+`
接著在console中輸入:

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'

如下圖,輸入完以上指令之後,重啟Sublime text 2,package control就安裝好了。
在console中輸入指令

底下列出一些Package control的參考資料供大家參考:


Package control安裝教學
http://wbond.net/sublime_packages/package_control/installation
http://parseflo.at/post/transfer-textmate-2-to-sublime-text-2/

Package control使用説明:
http://wbond.net/sublime_packages/package_control/usage



Step 3 安裝latextools


接下來,重頭戲來啦,我們要正式安裝latextools。
首先,我們可以透過Preferences中,找到Package control的選項,
點選之後,會在編輯器中出現一個選單。
在選單中,找到install package並點選它。
步驟如下圖:


然後會出現一個package搜尋畫面,在輸入框中打上latextools,找到我們要安裝的軟外掛,並且點選安裝,如下圖所示。


這樣latextools就安裝完成了啦,按下cmd + b 就能編譯latex,編譯完之後就會跳出pdf。

其他細部的使用説明可以參考:
https://github.com/SublimeText/LaTeXTools




其它參考資料:
textmate vs sublime 2
http://tagsoup.github.com/blog/2012/03/04/textmate-vs-sublime-2/

Sublime text 使用教學

2012年8月2日 星期四

latex2pdf 快速編譯程式

工欲善其事,必先利其器,相信大家都知道用latex寫論文, 不用再煩惱那些令人傷透腦筋的排版問題。 不過,Latex也是有一點點門檻需要跨過,那就是編譯的問題!! 其實,編譯也不是什麼大問題,原則上,大部份的軟體都有內建編譯的快鍵,不需知道什麼指令,也可以快速編譯latex,但如果想自行手動編譯,則可能就要自己記住那些編譯的流程,

像是compile latex,接著compile bibtex,再compile bibtex,再compile latex,再compile latex。 好像繞口令一般,相當的繁瑣。

為什麼會特別提到手動編譯呢?因為大部份linux和Mac上的快速編譯都沒有支援內嵌字型,為了要解決這個惱人的問題,非自行手動編譯不可。如果不知道解決方法的朋友,可以先參考如何通過IEEE PDF eXpress check?
當然,如果每次編譯latex都要打這麼多指令,相信過不了多久,連我都不想用latex寫論文了。
所以,身為一個懶懶的研究生,當然要寫一個快速編譯的小程式,加速工作的效率啦。
不過,這程式也不是什麼偉大的作品,只是一個方便個人使用的小程式,如果能造福各位latex同好,也就足夠了。因此,latex2pdf這個script就這樣誕生啦!!
 
接下來,我們直接進入主題,説明一下如何使用latex2pdf:
 

Step 1 下載script檔

 
首先到連到下載連結:

http://latex2pdf-script.googlecode.com/files/latex2pdf.sh

下載完請將latex2pdf.sh放置於主要的tex檔的同一個資料夾內。

 

Step 2執行script檔

要執行這個script 檔,首先要先將修改latex2pdf.sh的權限,將該檔案改為可執行,先開啟一個終端機,切換到該資料夾,假設我們檔案放置在~/Desktop/latex2pdf/,可以用以下指令切換目錄,並且修改權限:

$ cd ~/Desktop/latex2pdf/ $ chmod 755 latex2pdf.sh

接著,假設主要的tex檔為IEEE.tex,我們可以使用以下指令執行:

$ ./latex2pdf.sh IEEE.tex

然後就會看到一大堆編譯的指令,如果tex檔本身沒有任何問題的話,就會正常編譯出一個pdf檔,和一堆有的沒有log檔。

如下圖所示:

Latex2pdf教學

當然,如果你不想加那些有沒有的參數,我還寫另一個功能,只要將latex2pdf.sh改成和主tex檔同一個檔名(但副檔名不同),就可以直接執行不用加參數,指令如下:

$ mv latex2pdf.sh IEEE.sh

$ ./IEEE.sh

範例如下圖:

Latex2pdf2教學

大致上就是這麼簡單,以後再也不用記那些落落長的指令,只要將這個script檔放在你的論文同個資料夾內,就能快速編譯你的latex檔啦!!

當然,如果使用上有什麼問題,或是有什麼意見,也歡迎大家留言。

2012年5月6日 星期日

Latex中也有simpsons的符號可以使用

大家應該看得出來,小弟這陣子有關latex的文章變多了,
沒錯,最近比較常用latex,因為都在寫論文(自以為用功 ><),所以,需要用到很多Latex的技巧。

雖然整天都在寫論文,還是要忙裡偷閒一下,耍耍阿宅的浪漫,讓論文也可以有些變化在裡頭。


首先,讓我們在論文中加一點卡通人物吧!!!
今天的主角是Simpsons,沒錯,就是些頭都長的怪怪的家庭~~
要怎麼將我們今天的主角加到文章之中呢?
照慣例一樣是很簡單不到5分鐘就能上手,(雖然我自己研究了一個小時,慘~~~),
真的很簡單啦,只是我自己搞錯了方向,走錯了冤枉路,才會浪費那麼多的時間。

首先到CTAN網頁下載simpsons.sty,網址如下:

http://tug.ctan.org/tex-archive/usergrps/uktug/baskervi/4_4/

也可以直接點這個連結下載

請大家一定要記住,只要下載simpsons.sty就可以,我是把所有的檔案一個一個下載回來之後,才發現,只要下載simpsons.sty就能使用,也因此浪費時間在下載檔案。

下載的simpsons.sty,要記得放在tex文件的同一層。
然後在preamble的地方加入:

\usepackage{simpsons}
接著在內文中加入
Many thanks to \Bart, \Marge, and \Homer, who help me finish this project.
This work was supported under the National Science Council Grants XXX-XXX-X-XXXXX.

其中\bart就是覇子,其他的人物,大家就自己猜猜看啦~~
Compile出來的結果就如同下圖:
這篇致謝有沒有很特別呢~~


最後,場外加映另一個小玩意,就是讓你的文件沾上咖啡印~~
沒錯,就是要弄髒你的論文,反正就是另外一種無用的打發時間的小外掛。

一樣地,到下列網頁下載coffee.sty:
http://hanno-rein.de/archives/349

下載之後,
在然後在preamble的地方加入:

\usepackage{coffee}
然後在想弄髒的那一頁中,加入
\coffee{3} 

接著你就會發現,你的論文真沾上咖啡漬了!,是不是真的很無用啊~~
當然,如果你不喜歡這個形狀的咖啡印,你還有其它三種選擇,有興趣的朋友,可以自行去試試看,在這裡,我就賣個關子,讓各位看倌,自己去發現新大陸吧~~~


參考來源:
http://divisbyzero.com/2010/07/13/coffee-stains-and-the-simpsons-in-your-latex-document/

2012年5月4日 星期五

Latex引用網頁URL

引用文獻,一直以來就是Latex的強項,只要將需要引用的資料,置放於文件之中相對應的位置,Latex就會自動為該索引點編號。正因為Latex有此強大的功能,所以,省去了研究人員不少校對的時間,這也是小弟如此推廣Latex的主因之一。

近期,小弟剛好引用了許多URL的參考文獻,忽然發現URL居然都變成了亂碼,無法正確地顯示,困擾了我一陣子。
後來,讓我找到了一個好用的套件-- "URL",沒錯,套件名稱就叫做URL,他可以讓你引用的URL文獻正常的顯示,不再出現擾人的亂碼!!
好東西,不用用看嗎?趕快來試試看吧!!!


使用方法很簡單,首先在preamble 的地方加入

\usepackage{url}

之後在bib檔中用下列方式加入reference:


@misc{STEVE_HANNA2010,
 Title = {Cloud Security Questions?},
 year = {2010},
 note={\url{http://cloudcomputing.sys-con.com/node/1330353}}
 }

需要注意的地方是,note裡要用\url{}將要參考的文獻加入,而且,項目也需要使用misc,這樣URL才能正常顯示。


參考來源:
http://www.kronto.org/thesis/tips/url-formatting.html

2012年5月2日 星期三

Excel匯出Latex表格 - excel2latex

昨天才剛寫完如何使用Matlab匯出矩陣,馬上就有熱心人士提供另一個方法產生latex表格。
其主要的應用方法是將Excel的表格latex,這樣可以將Excel的資料匯出成latex表格,並且可直接貼在論文上。

其實我之前就嘗試的在Mac上用excel2latex,但是看起來是不可行,遇到一些Bug,
今天我改用Windows上的Office 2007,就可以正常使用,不會遇到什麼大問題。

話不多説,下載來源如下:
http://www.ctan.org/tex-archive/support/excel2latex/
或是直接點擊下載zip檔連結

至於如何使用呢?很簡單,解壓縮該Zip檔案,並用將Excel2LaTeX.xla用excel開啟。
開啟之後就會在Excel的增益集中看到"Convert table to latex"。

以下我們用一個簡單的4*3表格說明,

如果我們想將這個4*3的表格匯出成latex,
只要按下增益集中"Convert table to latex",
就會跑出一個視窗,接著可以將latex的資料複製在剪貼簿上。



接著就可以將資料貼在論文中啦~~
瞧~就是這麼簡單,可以省去大量時間在刻表格數字上啦!!
這樣就沒藉口説latex好難使用啦~~~



Matlab 矩陣 轉成 latex格式

在Latex上編輯表格一直以來都是我中心的痛,
一想到要重新輸入一大堆數字,心情整個很差,
尤其是大表格,動不動就是5*10個欄位,打完數字,半天都過去了。

懶得動手的我,當然要找找看有沒有好方法,可以將數字直接轉成tex檔。
找來找去,最後發現Matlab原來可以將矩陣直接轉成latex,實在是太佛心了,
剛好我有一些程式也是用Matlab跑的,這樣就可以直接將實驗的數據輸出成latex~~

假設我們有一個3*3矩陣L如下:



只要輸以下指令,就能將矩陣匯出成Latex

>> s = sym(L);
>> v = vpa(s,5); # 指定數字的精度
>> latex(v)



Matlab跑出來的結果


參考來源:
http://desk.stinkpot.org:8080/tricks/index.php/2006/03/insert-a-matlab-matrix-into-latex-automatically/

2012年3月10日 星期六

[Latex]將圖表放置於文章的最後--使用Endfloat

最近忙著趕論文,都沒什麼時間寫Blog,
不知不覺已經兩個多月沒發文,
真的是時光飛逝啊~~

雖然忙歸忙,有一些心得還真的是不吐不快~~
這陣子準備投稿的論文中,在基本的準備需求中,提到了以下條件:
"figures and tables should be placed at the end of manuscript"
中文的意思是,要將圖表放在圖表的最後,
這真的是強人所難,用Latex compile 完,就是標準的文章格式,
沒想到這編輯可能為了方便檢閱,要我們將圖表置底。
這問題可難倒我了,本來是不想理他,想硬著頭皮闖關,
但是就在我百思不得其解的時候,幸運的天使降臨啦~~~

就是他--Endfloat

這個小外掛可以將圖表放置於文章的最後,還能在原本的圖表的位址留下一行註解,
提醒讀者,原來圖表的所在,相當的實用,如下圖。



加入的方法很簡單,只要在Tex文件的最前面加入
\usepackage[nolists,tablesfirst]{endfloat}

只要打入這一行,圖表就會放在最後了。

其中,
nolists  表示不顯示清單
tablesfirst 表示先顯示表格

其它詳細的使用説明,請參閱:
http://www.fi.infn.it/pub/tex/doc/orig/endfloat.pdf

參考來源:
http://www.latex-community.org/index.php/know-how/280-formatting-latex-articles-for-biology-journals

2011年9月22日 星期四

EMF 轉EPS

不知道使用Windows的朋友們,在寫Latex的時候,會不會很煩惱圖檔轉換的問題呢?
還記得我第一次用Latex投稿的時候,為了符合IEEE的要求,花了很多時間把圖檔轉成eps。
有時候還很笨的將Visio上的圖轉成png,然後再轉eps,
把原本漂亮的向量圖,轉成失真的圖檔,完全就是削足適履的行為。

現在,有看到這篇文章的朋友有福了,你再也不用做這樣的蠢事了,
因為Lyx的團隊提供了一個EMF轉EPS的程式,讓你可以直接把Windows的向量中繼檔轉換成EPS。

下載連結如下:
http://wiki.lyx.org/Windows/MetafileToEPSConverter

有了這套程式,再成沒有藉口不用Latex寫論文啦~~~

2011年8月31日 星期三

如何通過IEEE PDF eXpress check?

不知道各位朋友在投上IEEE的會議論文之後,興高采烈地準備上傳修正好的pdf,
有沒有遇到過IEEE PDF eXpress check殘酷的檢查。

例如:
Font Times-Italic, Times-Roman, Times-BoldItalic, Times-Bold, Helvetica, Courier is not embedded

看到這樣的訊息,表示PDF內沒有嵌入這些字型,所以,該份文件無法通過檢查,
這個時候怎麼樣呢?放棄不投了嗎?不可能啊,只不過是PDF文件的問題,有那麼嚴重嗎?

不用擔心,只要按照以下步驟一個一個key in,這個問題就能解決啦,

latex file.tex
bibtex file
latex file.tex
latex file.tex (Now we have file.dvi)
dvips -Ppdf -G0 -tletter file.dvi (Now we have file.ps)
ps2pdf -dCompatibilityLevel=1.4 -dPDFSETTINGS=/prepress file.ps file.pdf (Now we have file.pdf)

目前這個方法在Linux和Mac OSX都可以使用,Windows我就不知道了。


參考連結:
http://mohamednabeel.blogspot.com/2009/10/fixing-font-not-embedded-issue-to-pass.html

2011年3月9日 星期三

NTUST thesis Latex範本 v1.5 release

最近在PTT的latex版上,有人在討論各校的latex論文範本,
剛好就提到了我一年前和同學改寫的範本,
當年發佈的v1.4版必需使用pdflatex編譯,
中文的支援度還算堪用。

隨著科技的進步,latex也跟著進步,
現在有熱心的同學Saiba將原本的文件改寫成xelatex的版本,
中文的支援度更加強大,
還有很多新的功能,
待各位朋友細細的體會。
所以,在這裡,我們正式發表

NTUST thesis V1.5

希望可以幫助有需要的朋友,加速寫論文的時間。

下載網址:

http://code.google.com/p/ntust-thesis/downloads/list

2010年5月9日 星期日

移除MacTex 2008

一陣子沒碰latex了,Mactex 2009都出了好一陣子了,我都沒有發現(偷懶中~~),
趁著這幾天比較有空,就下載了MacTex 2009下來安裝,
但是MacTex總是如此的肥大,灌完要2G多,
而且安裝程式也不會幫你把MacTex 2008移除,
所以,就必須要自行手動移除。

=== 請注意 ===
我自己是先移除才灌MacTex 2009的,如果你是先灌了新版的2009,
我不敢保証以下步驟會不會誤刪2009需要的檔案,有任何疑問,請自己參閱官網:
http://www.tug.org/mactex/uninstalling.html

移除的步驟如下:

Step 1 移除主要函式庫

請在終端機下輸入以下指令:

$ cd /usr/local/texlive
$ open .

接著就會開啟一個Finder,如果還沒有灌MacTex 2009的話,裡面會有兩個資料夾 2008 和 texmf-local,
原則上2008這個資料夾是可以刪掉的,裡面是MacTex 2008的函式庫,
而texmf-local則是你之前安裝的字型之類的資料夾,如果有需要,可以留下來,
我個人是刪掉,因為沒有灌過什麼字型之類的東西。

Step 2 移除GUI應用程式

所有的圖型介面應用程式都存放在/Applications/TeX底下,所以可以將這個資料夾整個移到垃圾桶;還有/Applications/Utilities裡面的i-Installer也可以刪除。

Step 3 移除其他雜七雜八相關的套件設定

我將一些可能可以刪的目錄和檔案條列如下:

/Library/TeX
這個資料夾理論上是可以刪的,不過官網有說明,如果你個人有灌其他版本的latex,這個資料夾就不一定能刪,請自行考量。

/Library/PreferencePanes/TeX Distribution
這個檔案是系統偏好設定裡面的設定檔,應該也是用不到。

Step 4 移除Ghostscript和Convert
這裡我沒有真的移除這兩個套件,不過官網指出,這些套件可以使用MacTex 2009的安裝包移除。首先點開MacTex 2009安裝包,再點選“File” > "Show Files",接著就會看到安裝過的檔案和其位置,然後就可以到相對應的資料夾將其刪除。

大致上就是這樣啦,我刪除完MacTex 2008之後,再安裝2009,
目前為止沒有什麼大問題,而且發現Latexit原來是內建的程式,害我之前還另外新裝了一個,看來可以把多裝的給砍掉啦~~

2010年1月16日 星期六

在Keynote上使用Latex編寫方程式

最近使用keynote做簡報的時候發現,
我非常需要輸入一些數學方程式,
我第一個想法就是使用latex,
但是,我又希望能在Keynote裡面直接使用latex的數學符號,
所幸,我找到了 Latexit ~~
可以到下列網址下載:
http://www.apple.com/downloads/macosx/math_science/latexit.html
http://pierre.chachatelier.fr/programmation/latexit_en.php

Latexit 不像Powerpoint中的方程式編輯器,
他沒辦法直接在Keynote裡頭點兩下修改,
但是他提供了另一個方法:

1.將Latexit上寫好的方程式拖拉到Keynote上,這樣會將Latexit產生的PDF貼在Keynote上。
2.如果要修改剛剛拖拉過來的方程式,只需要將這個PDF點選起來,並複製。
3.切回Latexit,並且貼上剛才複製的PDF,Latexit就可以重新讀取這個方程式。


參閱連結:

http://www.uoregon.edu/~noeckel/Keynote.html


依照上列的步驟就能輕鬆的修改數學方程式啦,
要注意的是,一定要從Latexit拖拉過去的方程式才能修改,
其它方法產生的就不行了。

如果論文本身就是Latex寫的,
數學式子就不用重打一次了,
又可以省編寫簡報的時間啦~~

2009年4月1日 星期三

Latex-suite macro和基本指令的使用方法

在介紹完Latex-suite的安裝之後
http://hdj-berkeley.blogspot.com/2008/08/gvimcompile-latex.html

讓我來說明一些常用的指令

\ll compile latex
\lv 開啟compile完的檔案

預設是開啟dvi檔
如果想要開啟pdf檔
可以在C:\Program Files\Vim\vimfiles\ftplugin\tex.vim裡加入

let g:Tex_ViewRule_pdf = 'pdfopen --file'


有人將指令寫成了一個小抄,有興趣可以下載回來使用
http://users.physik.fu-berlin.de/~goerz/blog/wp-content/uploads/2008/09/vimlatexqrc.pdf


此外,底下舉一個使用macro的範例
假設我要寫一個表格
只要在輸入模式下打ETE
就會跑出以下內容:


\begin{table}
\centering
\begin{tabular}{<+dimensions+>}
<++>
\end{tabular}
\caption{<+Caption text+>}
\label{tab:<+label+>}
\end{table}<++>


其中的<++>是需要自己修改的欄位
可以使用ctrl+j切換
相當的便利

參考來源:
http://icespot.blogsome.com/2005/05/16/vim-latex-marco-%E7%AE%80%E6%98%8E%E6%8C%87%E5%8D%97/
http://vim-latex.sourceforge.net/documentation/latex-suite.html#latex-macros

2008年11月1日 星期六

Latex 在caption中如何換行

有的時候我們需要用大量的文字來說明一個圖案
則在caption中換行是很重要的
但是,在caption中換行不是單純的使用\\就可以的
必須在前面加一個\protect
也就是說
要換行的時候
就要這樣寫

\caption{Jay is good. \protect \\ However, Jay is not my type}


這樣才能達到換行的動作

參考來源:
http://bbs.ctex.org/viewthread.php?tid=38369

Latex 在方程式中換行

一般在文件中換行只要加入\\
但是如果要在方程式中換行就沒有這麼簡單啦
比較容易的方法是使用align
而且還可以有對齊的效果

可以參考:
http://edt1023.sayya.org/tex/latex123/node11.html

但是如果所編寫的方程式比較複雜可能就會出現以下錯誤訊息:
Package amsmath Error: Erroneous nesting of equation structures

這個時候就要使用aligned
如底下的範例所示:

\begin{equation*}
\left.\begin{aligned}
B’&=-\partial\times E,\\
E’&=\partial\times B - 4\pi j,
\end{aligned}
\right\}
\qquad \text{Maxwell’s equations}
\end{equation*}

2008年10月31日 星期五

在Textmate下compile有eps的文件

在Textmate下compile有eps的文件的時候會出現以下錯誤訊息:
LaTeX Error: Unknown graphics extensions: .eps
然後圖檔也無法顯示在PDF中

主要是因為在使用pdflatex會出現問題
所以解決的方法是按照以下步驟compile
latex myfile.tex && dvips myfile.dvi -o myfile.ps && ps2pdf myfile.ps
最後才compile成latex
不過已經有現成的package可以使用
只要加入以下package就可以compile過啦

\usepackage{pstricks}

參考來源:
http://blog.derjohng.com/2008/03/28/latex-error-unknown-graphics-extensions-eps/
http://henrik.nyh.se/2006/10/textmate-latex-bundle-and-compiling-to-pdf-via-ps

2008年8月19日 星期二

讓你的Gvim也可以compile latex

回國之後我都是用Texmaker編寫我的論文,但是Texmaker用起來總是卡卡的
讓人覺得好像看得很不順眼,而且他的spell checking 也不是很直覺
用起來一整個不順,拼錯字了自己也不知道

後來我發現原來Gvim有內建拼字檢查,這真的是我的救星丫
反正我本來就滿習慣用vim的,而且vim本身就滿好用的
對我來說真的是個好消息

不過還有一個問題就是編好的latex檔要怎麼compile丫??
難不成還要我再開texmaker compile剛才用vim編寫好的tex檔嗎?
當然不用啦
只要灌好vim-latex這個套件
我的Vim就可以幫我compile剛編好的tex檔

Vim-latex的官方網站:
http://vim-latex.sourceforge.net/

安裝有四個步驟:
Step1

先到
http://vim-latex.sourceforge.net/index.php?subject=download&title=Download
下載vim-latex套件

Step2
下載回來之後解壓縮到 C:\Program Files\Vim\vimfiles\

Step3
修改你的
C:\Program Files\Vim\_vimrc
加入

" REQUIRED. This makes vim invoke Latex-Suite when you open a tex file.
filetype plugin on
" IMPORTANT: win32 users will need to have 'shellslash' set so that latex
" can be called correctly.
set shellslash
" IMPORTANT: grep will sometimes skip displaying the file name if you
" search in a singe file. This will confuse Latex-Suite. Set your grep
" program to always generate a file-name.
set grepprg=grep\ -nH\ $*
" OPTIONAL: This enables automatic indentation as you type.
filetype indent on
" OPTIONAL: Starting with Vim 7, the filetype of empty .tex files defaults to
" 'plaintex' instead of 'tex', which results in vim-latex not being loaded.
" The following changes the default filetype back to 'tex':
let g:tex_flavor='latex'


不過我自己試的結果
好像有沒有加這一行都沒有差耶
請參考
http://vim-latex.sourceforge.net/documentation/latex-suite/recommended-settings.html
這樣設定完就可以看到Gvim上多了一些選項可以點選,像是latex常用的符號之類的東西

================================================
灌好vim-latex之後,只要在常態模式之下按\ll
vim就會自動幫你compile你的tex檔
但是它預設是compile成dvi檔
如果想到得到pdf檔
可以點選 TeX-suite > Target format
將dvi改成pdf

不過這樣compile出來的pdf檔圖片會顯示不出來
最好是依序compile dvi > ps > pdf
當然我不會想自己手動這麼作
只要自己新增一個
C:\Program Files\Vim\vimfiles\ftplugin\tex.vim

並在裡面加入

let g:Tex_FormatDependency_pdf = 'dvi,ps,pdf'
let g:Tex_CompileRule_dvi = 'latex --interaction=nonstopmode $*'
let g:Tex_CompileRule_ps = 'dvips -Ppdf -o $*.ps $*.dvi'
let g:Tex_CompileRule_pdf = 'ps2pdf $*.ps'


之後要compile成pdf的時候,就只要按下\ll
一切就完成啦

此外如果想要預設compile成pdf檔的話
只要再剛才的
C:\Program Files\Vim\vimfiles\ftplugin\tex.vim
檔案中加入

let g:Tex_DefaultTargetFormat = 'pdf'


預設產生的檔案就是pdf檔啦
不用每次開檔還要重新設定

參考來源:
http://vim-latex.sourceforge.net/documentation/latex-suite/customizing-latex-suite.html
http://vim-latex.sourceforge.net/documentation/latex-suite/compiler-dependency.html
http://vim-latex.sourceforge.net/documentation/latex-suite/customizing-compiling.html

================================================
此外,如果想要自行設定Windows 的 Gvim 背景色彩
可以參考:
http://blog.longwin.com.tw/archives/000056.html

2008年8月14日 星期四

設定圖檔的bounding box

之前已經提過如何在latex中插入eps圖檔
http://hdj-berkeley.blogspot.com/2008/08/latex-eps.html

要是我插入的圖檔檔案太大了怎麼辦呢?
很簡單,在引入時圖檔時設定好這張圖的bound box就OK啦
\begin{figure}
\centering
\includegraphics[bb= x1 y1 x2 y2, width=0.3]{XXX.eps}
\caption{This is test!}
\label{fig:test}
\end{figure}

其中的x1,y1就是圖檔左下的坐標,x2,y2是圖檔右上的坐標。
所以只要設定好這四個參數就可以繪出你想要的範圍。
但是,要怎麼知道這四個參數呢?
最簡單的方法就是用GSview打開你的eps圖檔,把滑鼠移到你想要裁切的左下角,
這個時候GSview的下方就會出現他的坐標,同理,就可以得到他右上角的坐標。

延申閱讀:
http://www.jijiao.com.cn/TeX/FAQs/00000013.htm
http://www.physics.ohio-state.edu/~faqomatic/fom-serve/cache/105.html
Related Posts Plugin for WordPress, Blogger...