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年9月14日 星期五

OS X 選單列crash的問題

自從我的Air升上Mountain Lion,OSX 選單列就一直Crash,滑鼠滑過去,彩球狂轉,

有時候還會錯亂,害我看錯時間,讓我有幾個早上遟到的不明不白。

我問了好幾天google,才找到解決方法,原來是systemuiserver的問題,

要解決這個問題,其實不難,只要下以下指令,就能重開systemuiserver:

 

killall -KILL SystemUIServer

 

不過,就算重開systemuiserver過不久還是會有可能當掉,

所以,可以透過刪除~/Library/Preferences/com.apple.systemuiserver.plist

檔案可以在以下資料夾看到:

OS X crash

如果找不到資料庫(Library),可以在finder點擊"前往",然後選擇"前往資料夾",如下圖:

 

螢幕快照 2012 09 12 下午12 13 03

接著, 輸入~/Library,如下圖:

螢幕快照 2012 09 12 下午12 13 19

按下"前往"之後,就可以看到資料庫,接下來的步驟就如之前說的一樣啦。

 

參考網址:

https://discussions.apple.com/thread/3882591?start=0&tstart=0

http://forums.macrumors.com/showthread.php?t=1435028

2012年9月10日 星期一

Lion上透過螢幕共享切換遠端的space

以往,我在snow leopard用螢幕共享連線的時候,都會用選單列上的space選項切space,如下圖紅色箭頭所示:

Switch space sl

但是,自從升上了Lion後,space的選項就無法顯示在選單列上,所以每當我用螢幕共享連到Lion的時候,就沒辦法切換Space,

不能切換space,那很多事情都不能做了,所以,這個問題一直困擾著我,後來我終於找個方法切換space。

其實很簡單,就是找到Dock中的Mission Control,點擊Mission Control的icon,如下圖:

Switch space

如此,切換space的畫面就跑出來啦~~

如果Dock上沒有Mission Control的話,請到應用程式中,找到Mission Control,然後把它移到Dock上。

2012年9月3日 星期一

DialNow 網路電話撥法國手機每分鐘只要0.001歐元

最近,閃光人在法國深造,但是宿舍目前還沒提供網路,對外的聯絡的管道,只有從台灣帶過去的手機,因此,所有的大小事只能靠手機溝通,電話費就好像水龍頭開關沒關好,淅瀝花啦地一下就用掉大筆費用。因此,小弟不得不去找尋便宜地通話方案,花了二三天的時間,總算是不負眾望,找到了一家相當便宜的管道,讓我打法國的手機,連續打個一二個小時也不會心疼。
不知道大家有沒有打電話到法國的經驗,基本上,在我個人的印象中,打國際電話必需花上大筆的鈔票,而且還要一堆複雜的轉接手續,有時還可能要跟阿斗仔講要撥的當地號碼為何。 當然,這是我小時候還在用撥接的時代,如今打國際電話已經簡單很多,只要電話直撥當地號碼加國碼,就能撥出去,只是費用還是滿貴的,無法讓在遠方的親友暢所欲言,以表無盡的思念。 如今,隨著科技的進步,各家電信業者提供不少優惠的方案,如中華電信的009和019,費率可以參考中華電信,009每6秒1.6NTD,019每分鐘10.4NTD,感覺只比國內手機貴一點點,似乎是個不錯的方案。
不過,近年來網路voip盛行,相當多的網路電話業提供優質的通話品質和相對低廉的通話費用,例如頗舉盛名的Skype,記得五年前去加拿大開會的時候,我還是用Skype打去訂房的, 算是相當方便,而且打市話的話,費用也是相當便宜,那打去法國的手機費用要多少呢? 相關的費率可以到Skype官方網站查詢,原則上,打法國手機每分鐘6.7533NTD,還要加上接通費3.907NTD,所以,只要打超過一分鐘的電話,就會比中華電信的019還要划算。小弟二話不説,400元就花下去,反正Skype是家大公司,用省的點數還可以留著打其他國家,而且手機上還有Skype的app,隨時想打法國就打。 不過,換來的結果是,400元最多也只能打58分鐘,按照我個人的使用量,一天不到,就用完了,這可怎麼得了,一天400元,一個月就12000元,這樣的通話費用,還是太誇張了,連打三個月,可以燒掉一張去法國的機票。
接著我找到了一位法國留學生的文章,他推薦了幾家voip業者,打法國的費率都比skype還要便宜,還有每個月熱線吃到飽的方案,看起來相當佛心,讓遠距的情侶們可以毫無顧忌地聯繫感情。 我將她推薦的業者列在下方,供大家參考:
ippi
每分鐘0.1254€ (約4.64NTD)
提供包月熱線,每個月24.95€,打法國手機,星期一至五的9am~18pm免費,方案説明可參考ippi官網
vopium 每分鐘0.1€ (約3.7NTD)
nonoh 每分鐘0.06€ (約2.22NTD)
參考來源:
http://8bargain.blogspot.tw/2011/10/skypevoip.html
http://8bargain.blogspot.tw/2011/10/vopium.html
http://8bargain.blogspot.tw/2010/06/voipnonoh.html
就以上的費率來講,nonoh的每分鐘最划算,不過ippi所提供的包月熱線,可以讓我在法國的上班日隨便打,實在是太誘人了,看到這裡我很衝動地去申請了ippi的帳號,信用卡也拿了起來,就在輸入卡號的那個moment,我好奇地查了一下nonoh這家公司,想知道為什麼他可以把價錢壓這麼低,而且甚至可以免費打台灣的市話。
原來,nonoh是由BetaMax所擁的voip業者,BetaMax其實是一家由行銷專才所組成的德國公司,本身並沒有voip技術,不過BetaMax接管了一家瑞士的傳統電話公司--Finarea SA,用很低廉的通話費來吸引不同國家的使用者進來使用voip的服務,就連skype都不得不承認他們開出來的費率相當便宜。
與其説nonoh是voip業者,不如説他是BetaMax底下的一個品牌,BetaMax擁有將近60個不同voip公司,分別在不同的國家用不同的費率推廣,其實骨子裡都是用同一套系統,必須要注意的是,BetaMac旗下的品牌,會不定期修改其費率,像nonoh之前打台灣市話不用錢,但是最近去看,已經變成每分鐘0.025€。看起來有好處也有壞處,好處是,只要能在60個品牌中,找到對自己最有利的通話費用,就可以用接近免費的方法打國際電話,壞處是必須在不同的品牌下,申請不同的帳號,例如Jay這個帳號在nonoh已經申請過了,在easyvoip中,就需要選擇另一個帳號。
BetaMax旗下的品牌可到以下連結找尋:
就在我一個一個點開查看各品牌的費率之後,皇天不負苦心人,總算讓我找到最划算的費率,每分鐘0.001€(約0.037NTD),天啊,比skype便宜了170倍,以後打不到怎麼辦,而且不收接通費用,第一眼看到,我還以為他網頁打錯了,跟之前apple和dell犯的錯一樣。 其實我個人看到這樣的費率,一開始也不是很相信,一度覺得是詐騙集團吧,一直到做了以上這些課功之後,才漸漸相信,這是該公司的策略,或許過幾個月費率就調漲回來,所以好服務不用嗎? 好啦,寫了這麼久,總算進入我們的主題,該品牌就是DialNow -- www.dialnow.com費率可以到這裡查看。 目前我已經用paypal存了10€進去,他會收0.75€的手續費,這樣算起來也差不多是400台幣,剛好是我存到skype的費用,用skype,我只能打58分鐘,用dialnow打法國手機我可以打10000分鐘,這真的是差很大。不過,再次提醒大家,費率還是有可能會變動,打其他的國家也不一定會比較便宜,存錢進去前,最好再次確認,費率是否對自己有利。
2012 09 09 dialnow
或許改天有空再寫一篇dialnow的教學文,或是寫一個簡單的小程式,幫大家找詢各國家最便宜的費率,先不説這麼多了,我要去把我的10000分鐘先用完再説。
參考文章:
http://www.businessweekly.com.tw/webfineprint.php?id=22504
http://itblog-2.osslab.co.cc/index.php?load=read&id=12
http://barlino.blogspot.tw/2006/04/zyxel-ip-phone-voipstuntco_114457691624694124.html
http://markusgoebel.blogspot.tw/2007/09/wtf-is-betamax-voip.html

2012年8月30日 星期四

Textmate 2 成為開源軟體

身為一個Mac使用者,Textmate好像是必備的軟體之一,
不過,一直以來,Textmate高貴的價錢也是其主要門檻之一,
要價39歐元一套的軟體,真的不是普通的貴,而且Mac電腦限定。
所以,以往Mac界有一個笑話: Textmate其實不貴,貴的是你要先買一台Mac電腦。
不過Textmate有一堆好用的bundle是程式開發者所必需的工具,可以加速開發的速度,其實還滿值得購入的。

當然,如果你不想花大錢買Textmate,你現在有另為一個選擇,那就是去下載Textmate 2!!
奇怪,如果Textmate都要39歐了,Textmate 2不是應該要更貴嗎?
不 不 不,Textmate 2現在不用錢!!!
因為Textmate的開發者,這個月很佛心地將Textmate的下一代軟體Textmate 2 釋出,並以開源碼的方式,歡迎大眾下載來修改和試用。
所以,大伙可以安心的去下載Textmate 2來使用,甚至可以將Textmate 2 port到其他的平台。


有興趣開發的朋友,可以到Github下載原始碼
https://github.com/textmate/textmate

當然一般的使用者可以直接下載編輯器執行檔,不用再自己compile,不過檔案不定期更新。
Github 執行檔下載:
https://github.com/textmate/textmate/downloads

個人試用的結果還不錯,可以直接支援中文,不用再像以往一樣,要自行找尋中文字型,還要忍受醜醜的字型。相當推薦大家試用。

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月24日 星期五

如何查詢SCI期刊論文?

投稿SCI期刊論文,是國內研究生必需具備的能力之一
但是,要如何知道要投稿的期刊有沒有收入SCI之中呢?
這個問題相信很多朋友都想知道吧~~
其實我個人也花了點心思在這個問題上,費了不少時間。

好在我找到了研究生2.0的文章:

如何查某期刊是否為SCI、SSCI Journal?


該篇文章有詳細描述如何找尋SCI和SCIE的方法,個人覺得最直覺的方法就是直接上官網找尋,查詢的方法就是點選以下任一連結,輸入期刊全名,或是ISSN,就可以知道該期刊有沒有收入該資料庫。

為了方便大家,就將連結整理如下:


查SCI:

查SCIE:

此外,有些學校也接受EI (Ei Engineering Village)的文章,所以,大家也可以透過以下連結,連到EI的官方網站查詢:

查EI


最近,我無意間發現了一個整理相當完整的網站,可以查詢SCI期刊,還有投稿者的心得分享,如初審周期,投稿難易,甚至還有一個特殊的功能,幫你分析你的文章,並推薦適合的期刊,算是滿方便的期刊助手,有興趣的朋友,一定要去看看:

http://www.medsci.cn/sci/?action=search


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年7月3日 星期二

英文語料庫

最近看了一系列廖柏森博士出版的"英文論文寫作不求人",
其內容主要是説明,目前網路上可以取得英文教學網頁,
其中,最值得參考的,我個人覺得是英文語料庫,個人在寫作中,最常遇到的問題就是知道某個單字的意思,可是不能百分之百確定該單字的搭配詞為何。
當然,英文文章看的不夠多也是主因之一><

為了確認自己的用法是正確的,最常做的,就是上Google scholar看看有沒有人這樣用。
不過Google scholar有一個缺點,有些論文不是英文語系的研究人員寫的,即使真的有人用,也有可能是誤用,所以查出來的結果,還是要自行斟著。

好在,廖老師的書中提到了多個國內外英文語料庫,可以供大家參考,相信學術單位提供的語料庫,有一定程度的保障,尤其很多文章是出自於知名的雜誌,相信其用語是相當的道地。

底下筆記了國內外英文語料庫,供大家參考,也給自己留做備份之用:

Tango
http://candle.fl.nthu.edu.tw/collocation/webform2.aspx

Care
http://candle.fl.nthu.edu.tw/care/

Must
http://miscollocation.appspot.com/


單字片語檢索系統
NTNU Web Concordancer:


Totalrecall 關鍵詞檢索


美國現代英文語料庫



此外,廖老師的書中,也有提到一些線上英文論文教學,在這裡也一併記下供大家參考,希望大家能用的上:

MITOpenCource

University Writing Center


想當然耳,這些連結放在這裡不用,英文是不會進步的啦,一定要點進去仔細研究,才會有突破性的發展,你説是不是啊!!


其他的參考來源:
http://people.tamu.edu/~civilboy/Learning/WritingRcs.htm

Fujifilm X10 試拍

最近因為要幫閃光找一台適合的相機,做了一大堆功課,
其實小弟本來對相機的要求沒有那麼講究,只要能拍的出影像,留下回憶,就很開心了。
所以iPhone內建的小相機對我而言,就已經很足夠了。
不過,自從跟友人借了台LX5出遊,才深深體驗到,原來不是個人的拍攝技巧的問題,而是相機的問題,好的相機真的差很大,相片拍起來就是比iPhone本身的小相機好上幾百倍><

所以,為了留下閃光青春美麗的一面,不敗一台好的相機,真的不行~~
一想到好相機,很多人心中浮現的,應該是貴鬆鬆的單眼相機,
但是,出遊帶著大包小包的,真的很不方便,一台隨身相機才是適合我們家閃光的風格。

找著找著,發現了Fujifilm的X10,這台相機有著濃濃的復古風,350g的重量,拿起來不會感到任何負擔,真的是完美的隨身機~~~
一直以來,個人就還滿喜歡Fujifilm的發色,相當飽合,相片看起來,很有感覺,拍夜景的時候,還能拍出令人激賞的星芒。
當然,外型也很適合走文藝青年路線的閃光~~~(大心)
而且X10的光圈是從f2~f11,範圍廣,可以微調東西也多,真是值得收藏的經典相機丫~~

雖然前陣子鬧出了白盤的問題,但是六月初的時候,Fujifilm已經更新了感光元件,解決了可怕的白盤現象,這個消息一公佈,小弟二話不説,馬上就去敗了一台給閃光~~


先來幾張X10的獨照~~
Fujifilm X10 

Fujifilm X10 掀蓋照
X10的外型一整個經典,讓人想多看他幾眼,保証帶在身上,一定是眾人的目光所在丫。
底下是幾張用X10從新加坡拍回來的試拍照:

 Istana Park一隅
福康寧公園一隅
路邊的野花不要採~~照照總可以吧~~看看X10的發色,真的很滿意~~景深也夠,直接輸出JPG,不用特別後製,就很鮮艷了~~


從魚尾獅公園照金沙酒店
用X10拍金沙酒店看起來更加壯觀,有廣角果然不一樣~~
至於夜景的部分,令人擔心白盤問題似乎已解決了,所以就沒看到奇怪的景象啦~~

從金沙酒店57樓往下拍Marina Bay
這個view真的是沒話説,整個海灣都在腳底下。

金沙酒店57樓游泳池
無邊際泳池,可惜是美女走光圖~~一個人都沒有><,想要去的朋友,請記住,該泳池假日及前一天開到11點,一般日開到10點,不要學我,只顧著拍夜景,結果沒游到,超囧的~~

從金沙酒店照魚尾獅公園
呼應前幾張從魚尾獅公園拍上來的照片,小弟當然也要拍一張從金沙酒店拍下去的夜景啦~

聖淘沙的魚尾獅
最後來一張Santosa 上的魚尾獅,雖然不會噴水,不過可以坐電梯上去,眺望整個Santosa。



最後,附上X10的中文繁體説明書連結,供大家參考,如果不小心把説明書丟了,網路上還是下載得到哦~~
http://www.fujifilm.com.hk/downloadandsupport/pdf/index/x/fujifilm_x10.pdf

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月3日 星期四

Mac上安裝Google drive

Google 這幾天新發表了一項產品-Google Drive,聽説足可比擬Dropbox,一樣可以自動同步電腦上的文件,並且還可以用google doc 開啟文件,聽起來真的是很威很強大。

這項整合性的新產品,真的是挺誘人的,可以將線上的文件下載回來,已有在使用Gmail的朋友,一定要去試用看看:


想當然,小弟本在實驗的精神,加上近期比較有空閒,就順勢來安裝看看Google drive在Mac上是否有什麼過人之處。

不過,在Mac上的安裝過程中,最後一步遇到了一個嚴重的問題,如下圖:


後來發現,原來是安裝過程之中,Google的程式沒有幫你自動建立一個"Google Drive"的資料夾,所以才會導致程式無法自動Sync,產生了錯誤。

因此,解決的方法很簡單,只要自已在家目錄中建立一個"Google Drive"資料夾,剛剛的錯誤就可以迎刃而解啦~~~







最後,大家可以看看各家雲端硬碟的評比:
http://chinese.engadget.com/2012/04/24/google-drive-vs-the-competition-dropbox-skydrive-icloud/

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

2012年1月10日 星期二

[影音] Set Fire To The Rain

前陣子ICRT狂點播的一首歌--set fire to the rain
第一次聽的時候沒有特別在意其歌詞,單純只是覺的這首歌很power,旋律很動人,
仔細看了歌詞一篇,才發現他是首很感人的歌,
很適合在夜深人靜的時候,細細地品味。
分享給大家~~~





我找到了一個翻的很棒的歌詞,供大家參考~~
歌詞來源:
http://hanatan731.blogspot.com/2011/06/adele-set-fire-to-rain.html


I let it fall, my heart
我讓它墜落 我的心 
And as it fell, you rose to claim it
當它下墜時 你領走了它
It was dark and I was over
這世界是如此黑暗 我已毫無希望
Until you kissed my lips and you saved me
直到你吻上我的唇 成了我的救贖
My hands, they were strong, but my knees were far too weak
我的雙手 是如此堅強 但這雙腳 卻是如此不堪一擊
To stand in your arms without falling to your feet
只能站上你的雙臂 提防自己不墜落到你的腳邊

But there's a side to you that I never knew, never knew
但你卻有另外一面 是我不曾知曉,不曾知曉
All the things you'd say, they were never true, never true
你所說的一言一語 那都不是真的,不是真的
And the games you'd play, you would always win, always win
你所玩的每局遊戲 你總是那贏家,是那贏家

But I set fire to the rain
而我在雨中 燃起了火苗
Watched it pour as I touched your face
眼看它流下 當我碰觸你的臉龐
Well, it burned while I cried
當它焚燒著 我卻止不住這淚水
'Cause I heard it screaming out your name, your name
就因我聽見 它吶喊著你名字,你名字

When laying with you I could stay there
當我和你躺在一起,我想讓時間停在這一刻
Close my eyes, feel you here forever
閉上我的雙眼,感受你就在這裡,永遠永遠
You and me together, nothing is better
你和我在一起,再也沒有更美好的事物

'Cause there's a side to you that I never knew, never knew
因你有著另外一面 是我不曾知曉,不曾知曉
All the things you'd say, they were never true, never true
你所說的一言一語 那都不是真的,不是真的
And the games you'd play, you would always win, always win
你所玩的每局遊戲 你總是那贏家,是那贏家 

But I set fire to the rain
而我在雨中 燃起了火苗
Watched it pour as I touched your face
眼看它流下 當我碰觸你的臉龐
Well, it burned while I cried
當它焚燒著 我卻止不住淚水
'Cause I heard it screaming out your name, your name
只因我聽見 它吶喊著你名字,你名字
I set fire to the rain
而我在雨中 燃起了火苗
And I threw us into the flames
就將我和你 投入那火焰之中
When we fell, something died
當我們殞落 有些事物悄然逝去
'Cause I knew that that was the last time, the last time
因為我明白 那將會是最後一次 最後一次 

Sometimes I wake up by the door
有時我 會依著門扉醒來
That heart you caught must be waiting for you
我的心 早已被你緊緊抓住 只能夠為你空等
Even now when we're already over
就算此刻 我們的關係就快要結束
I can't help myself from looking for you
我也無法 克制自己尋找你的渴望

I set fire to the rain
而我在雨中 燃起了火苗
Watched it pour as I touch your face
眼看它流下 當我碰觸你的臉龐

Well, it burned while I cried
當它焚燒著 我卻止不住淚水
'Cause I heard it screaming out your name, your name
只因我聽見 它吶喊著你名字,你名字
I set fire to the rain 
而我在雨中 燃起了火苗
And I threw us into the flames
就將我和你 投入那火焰之中
When we fell, something died
當我們殞落 有些事物悄然逝去
'Cause I knew that that was the last time, the last time
因為我明白 那將會是最後一次 最後一次


Oh, no
Let it burn, oh
Let it burn
Let it burn
就讓它燃燒
就讓它燃燒吧
Related Posts Plugin for WordPress, Blogger...