2008年12月8日 星期一

跨行查帳也要錢哦

前幾天想要試試看BOA的卡可不可以用
就上Chase的ATM玩了一下
昨天上網線上查了我BOA的餘額
沒想到查一次就扣兩塊美金
哇~~
實在有扯到
感覺被吃錢了..><
下次記得不要亂玩ATM啦

2008年12月7日 星期日

重返UCB

沒想到一年之後我又回到了UC Berkeley
這次轉了好幾趟飛機才到
實在是好辛苦哦
不過感覺自己的坐飛機的經驗值又增加了不少
以後就算是自己一個人出國應該不會搭錯機啦
出了SFO都沒有人來接機
一整個覺得好空虛 ><
只好自己搭Bart到UCB
快一年沒搭Bart了
研究了一陣子才恢復記憶
路上還被加拿大來的華人搭訕
因為他第一次來舊金山
我就很好心的告訴他如何搭乘和轉車
雖然我也是邊看地圖邊猜的
總算是沒丟臉
還知道怎麼搭Bart

到了UCB之後
Jason和Joshua很熱心的來幫我拉行李
總算是還有點良心丫
大致上UCB的景像都沒有變
只是有些商家已經換人
而且大概是我剛從紐奧良過來
所以看到路上的黑人也都不怎麼怕
跟第一次來到這個城市的感覺差好多
一點都不擔心自己會迷失方向
不過我還真的沒想過自己會再來到UCB
有一種很熱悉的感覺
我只會在這邊待個三天
無法好好再次體驗美國的生活
而且還有很多事情要完成
大概連買紀念品的時候都沒有了吧..><

2008年11月29日 星期六

準備出發前往紐奧良

我要去參加GlobeCom 2008啦
待會8點多的飛機
真讓人睡不著
深怕自己少帶了什麼東西
美國..我又來啦!!

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年10月8日 星期三

利用Google AJAX Libraries API 載入Jquery

之前看到了幾篇評論Google AJAX Libraries API的文章
http://planet.nccucs.org/2008/05/28/266/
http://pctao.org/2008/05/29/235/
http://funp.com/t206281#p=206281

其主要的優點是可以讓使用者不用再重新下載二次函式庫
這樣可以節省流量和增快開啟網頁的速度
所以當要自己試用看看看啦

主要是參考Google code的官方網站:
http://code.google.com/apis/ajaxlibs/
http://code.google.com/apis/ajaxlibs/documentation/index.html#jquery

主要是在head中加入以下幾行

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
// Load JQuery
google.load("jquery", "1.2.6");
google.setOnLoadCallback(function() {

});
</script>


並且用google.setOnLoadCallback 取代 $(document).ready
這樣就不用把jquery的函式庫存在自家的主機上了

2008年9月1日 星期一

will_paginate使用心得

延續之前的文章
http://hdj-berkeley.blogspot.com/2008/08/scaffold.html
如果我們要將大量資料分類成好幾個分頁
就可以用現在的套件will_paginate

首先在model裡增加search的條件

# models/product.rb
def self.search(search, page)
paginate :per_page => 5, :page => page,
:conditions => ['title like ?', "%#{search}%"],
:order => 'title'
end

這裡的title是依照你想要的排序自己選取的
也可以改為id

接著增加controller的條件
將變數傳回給viewer

# products_controller.rb
def index
@products = Product.search(params[:search], params[:page])
end


最後修改products/index.rhtml
讓分頁呈現在網頁上
<%= will_paginate @products %>


這樣就大功告成啦

主要參考:
http://railscasts.com/episodes/51

其它參考網址:
http://iceskysl.1sters.com/?action=show&id=307&page=1
http://iceskysl.1sters.com/?action=show&id=42&page=1
http://www.ruby-lang.org.cn/forums/thread-985-1-1.html
http://www.j-kanban.com/bbs/thread-3690-1-1.html

2008年8月29日 星期五

使用scaffold心得

通常初學者在學習使用ror的時候都會使用scaffold來幫助建構出網頁的框架
但是從rails 2.0開始ror就沒有內建scaffold的套件啦
所以必須另外安裝動態scaffold

ruby script/plugin install http://dev.rubyonrails.com/svn/rails/plugins/scaffolding/


又因為動態scaffold會用到內建分頁,而內建分頁功能也被拿掉成為外掛
所以要安裝pagination

ruby script/plugin install svn://errtheblog.com/svn/plugins/classic_pagination


參考來源:
http://blog.pbg4.org/2007/12/20/upgrade-to-rails-2-0-2

因為靜態scaffold的用法與之前的不一樣了
所以如果要使用scaffold來配置你的網頁
必須按照底下的格式使用
ruby script/generate scaffold ModelName [field:type, field:type]

舉個例子
ruby script/generate scaffold product title:string description:text image_url:string

接著就可以到http://your_host/product/
觀看你新架好的網頁

參考來源:
http://topic.csdn.net/u/20070513/22/5931d7c7-7451-4cc3-9dc5-ca3afbb0cae8.html

此外,有在看"agile web development with Rails 2/e"的人可以參考底下網址:
http://agilewebror2.blogspot.com/2008/08/chapter-6.html
他有探討rails 2.0的一些改變

2008年8月26日 星期二

在vim上開發ruby on rails

要讓vim看的懂ruby
其實只要下載ruby.vim就可以了
不過vim的功能可沒有這麼簡單而己哦
只要配合rails.vim和project.vim
就可以讓你的vim瞬間變成功能超強的IDE
可以參考
http://blog.roodo.com/poga/archives/2667806.html

底下是自己安裝的心得
因為我是在Ubuntu 8.04下使用
所以我主要是將檔案存在我自己的家目錄下

step1 下載 rails.vim

請先下載 rails.vim
下載完解壓縮到~/.vim/底下

step2 下載project

接著下載 project
一樣解壓縮到~/.vim/底下

接著就可以開個ruby的檔試試看啦
詳細的操作方法請到參考下列網頁

參考網址:
http://blog.ntut.idv.tw/2007/12/fbsd-vim-ruby-on-rails.html
http://wiki.rubyonrails.org/rails/pages/HowtoUseVimWithRails
http://www.upulife.com/leo/?p=191
http://lightyror.thegiive.net/2007/06/vim-ruby.html
http://devpoga.wordpress.com/2008/02/05/vim-rails/
http://yueguangyuan.javaeye.com/blog/57263

2008年8月24日 星期日

Ubuntu 8.04灌ruby on rails

參考來源:
https://help.ubuntu.com/community/RubyOnRails

Step1 安裝Apache
首先安裝Apache
在commond line底下輸入
sudo apt-get install ruby-full build-essential apache2 apache2-mpm-prefork apache2-prefork-dev


Step2 安裝RubyGems 1.1.0
目前gems已經出到1.2.0了
之前有人說1.2.0有些許的問題
不過我測試的結果 似乎可以直接使用了
指令如下
wget http://rubyforge.org/frs/download.php/38646/rubygems-1.2.0.tgz
tar xzvf rubygems-1.2.0.tgz
cd rubygems-1.2.0
sudo ruby setup.rb
sudo ln -s /usr/bin/gem1.8 /usr/bin/gem
sudo gem update --system


升級完了之後再灌rails
sudo gem install rails
sudo gem install passenger
sudo passenger-install-apache2-module


Step3 修改apache設定檔

最後在/etc/apache2/httpd.conf
加入
LoadModule passenger_module /usr/lib/ruby/gems/1.8/gems/passenger-2.0.3/ext/apache2/mod_passenger.so
PassengerRoot /usr/lib/ruby/gems/1.8/gems/passenger-2.0.3
PassengerRuby /usr/bin/ruby1.8



寫了幾個測試程式
一直出現
No such file or directory - /tmp/mysql.sock

這是因為Rails 預設會去找 /tmp/mysql.sock 檔,
不過 Debian 或者 Ubuntu 上的 Mysql 卻不是在/tmp/底下,
通常是在 /var/run/mysqld/mysqld.sock,
所以需要改 database.yml,
如下:
development:
adapter: mysql
socket: /var/run/mysqld/mysqld.sock
database: test_development
username: xyz
password: xxxx
host: localhost

這樣改完就可以看到測試的程式

參考來源:
http://blog.roodo.com/syshen/archives/2143083.html

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

在latex 插入eps檔

由於IEEE要求所有的圖都必須是向量圖
所以,只好乖乖的把所有的圖轉成eps檔
什麼是eps檔呢?
其實我也不是很清楚
有興趣的人可以參考
http://forum.slime.com.tw/post1791992-3.html

不管知不知道eps是什麼,現在的重點是如何將我原來的圖檔轉成eps
其實網路上有很多人在討論如:
http://office.microsoft.com/zh-tw/publisher/HP062079971028.aspx
http://blog.bs2.to/post/icq/12551
http://jrgemini.blogspot.com/2008/07/epslatex.html

原則上,都是用使用內建的印表機,將要輸出的圖檔列印出來,
,然後記得勾選「列印至檔案」這個選項,然後按下列印,
接著會出現一個對話框,詢問檔案要儲存的地方,這樣就可以得到一個ps檔

咦!!怎麼會是ps檔!!!
沒錯,因為由印表機的driver印出來的檔案就是ps檔,如果要得到eps檔必須再使用其他的軟體轉。
以下提供三種轉檔的方法:

方法一 使用GSview
首先用GSview打開剛才儲存的ps檔,接著點選File>PS to EPS
然後就會出現一個對話框,詢問你要不要自動裁切圖檔或是自己設定bounding box
建議是自己設定bounding box,這樣輸出的eps檔就可以直接引入latex中

但是我自己測試的結果,latex compile出來的ps檔看到圖案,不知道是因為我的圖檔太大還是什麼其它的原因,所以只好再找其它的方法

方法二 使用Adobe writer
這個方法其實有點笨,但是轉出來的eps檔latex可以讀,所以不失為一個好方法。
首先開啟Adobe 8 professional,接著匯入剛才儲存的ps檔,匯入之後,adobe會把他轉成PDF檔。
PDF檔!!!沒錯用這個方法就是必須將ps檔轉成pdf檔,然後再轉存eps檔,是不是很麻煩丫。
而且轉出來的eps檔還比較GSview轉出來的還要大。
此外,因為它沒辦法自己設定bounding box,所以,轉出來的eps檔會比較大,而且還有不必要的空白。

方法三 使用Gimp
Gimp是一款open source的繪圖軟體,所以可以把之前jpg、png或是其它的圖檔轉存成eps檔。
這樣就不用把剛才的png檔轉成ps檔啦。有時候用Adobe轉出來不好的檔案,可以用Gimp轉或許有不同的效果。

以上就是我測試過轉eps的三種方法
有了eps檔就可以在latex中插入符合IEEE格式的圖檔啦

首先在latex前文區
要加入
\usepackage{graphicx}

接著在本文中插入圖片
\begin{figure}
\centering
\includegraphics[bb= x1 y1 x2 y2, width=0.3]{XXX.eps}
\caption{This is test!}
\label{fig:test}
\end{figure}

compile完之後就可以在你的pdf檔看到圖檔啦。
延申閱讀:
http://www.math.sinica.edu.tw/www/tex/latex_graphic.jsp
http://aqery.org/blog/?p=241
http://blog.pixnet.net/keejko/post/8686660
http://cbir.spaces.live.com/blog/cns!BA142C20617AEAA1!864.entry
http://philosopherandromeda.wordpress.com/2008/07/13/latex-%E5%8A%9D%E5%AD%A6%E7%AF%87/

2008年6月8日 星期日

Blog中引用程式碼的方法

有時候在Blog中會寫一些程式的心得或是設定檔的配置
如果文章中可以配合一些文字方塊的運用
會讓讀者更清楚理解文章的內容
所以適當的運用引用程式碼是必需的

其實可以參考的文章相當的多,已經有太多人寫過類似的教學,如以下網址所示:
http://synnwang.blogspot.com/2006/11/blog.html
http://klcintw4.blogspot.com/2006/11/blog-post_03.html
http://grandsights.blogspot.com/2007/04/blogger.html

參考了大家之後,我在自己的範本中加入了

CODE {
display: block; /* fixes a strange ie margin bug */
font-family: Courier New;
font-size: 8pt;
overflow:auto;
background: #f0f0f0 url(http://polin2005.googlepages.com/BG_CODE.gif) left top repeat-y;
border: 1px solid #ccc;
padding: 10px 10px 10px 21px;
max-height:200px;
line-height: 1.2em;
}

CMD {
display: block; /* fixes a strange ie margin bug */
font-family: Courier New;
font-size: 8pt;
overflow:auto;
color: #ccc;
background: #000 url(http://polin2005.googlepages.com/BG_CMD.gif) left top repeat-y;
border: 1px solid #ccc;
padding: 10px 10px 10px 21px;
max-height:200px;
line-height: 1.2em;
}


之後只要在程式碼的前後加上

<code>程式碼</code>

就可以看到程式引用的方塊了

2008年6月3日 星期二

[賀] TinyOS 教學文件被收入TinyOS Docs

一陣子沒寫跟TinyOS相關的文章啦
今天隔壁實驗室的學弟跟來跟我說
"你的TinyOS安裝教學被人放在TinyOS的docs啦"
聽到這個消息,我嚇了一大跳
馬上到
http://docs.tinyos.net/index.php/Main_Page#Installing_TinyOS
看看這個小道消息是不是真的

果然這個頁面裡真的有個chinese version
但是點開來居然是簡體的
http://hi.baidu.com/vvfang/blog/item/e2dfa4126bd9adcdc3fd789c.html
不知是該開心還是該憂心
開心的是自己的文章可以被人家認可
憂心的是自己的文章看的人不多
反而是被人翻成簡體中文才變的比較多人看
大概是台灣做WSN人太少了
所以我自己寫的文章沒什麼人看

或許我該感謝weiwei(轉錄我文章的朋友)
他讓我的文章受到大家的重視
也讓我知道我的文章還是有人在看..哈哈
(有點沒動力去更新ubuntu 8.04上灌tinyos了..囧)

2008年5月25日 星期日

使用eclipse編輯latex

本來是想找用java寫的latex編輯器的
不小心找到eclipse的外掛
只要有eclipse就可以編寫latex啦
還挺方便的
只是compiler還是要先灌好才行哦
texlipse 和lapse都是eclipse的外掛

官方網址:
http://texlipse.sourceforge.net/
http://eclipse-latex.sourceforge.net/index.php?target=1

不過,好像texlipse比較有在更新
最近的更新日期為25.11.2007
他的說明也比較完善
http://texlipse.sourceforge.net/manual/

線上latex 數學方程式編輯器

線上也可以編輯數學方程式哦!!!

使用latex編輯數學方程式相當的容易
那如果需要將編好的方程式show在網頁上該怎麼辦呢?
網路上應該會有人寫好 將latex的方程式compile成圖檔
之後就可以將這個圖檔放在網頁上
不過 小弟找一個更方便的方法
sitmo提供了一個網頁版所見即所得的latex方程式編輯器

http://www.sitmo.com/latex/

相當不錯用
底下貼一個範例給大家看看









還算ok吧

參考文件:
http://blogs.sun.com/yongsun/entry/a_cool_latex_equation_online

2008年4月29日 星期二

Beamer -- 使用Latex做簡報的好工具

說到編輯簡報
大家第一個想到應該是powerpoint
但是如果你的簡報內容是一堆數學式子
三四百個矩陣和運算式
用powerpoint內建的方程式編輯器打個二三十個就快吐了
滑鼠拉來拉去看起來很容易上手
但是輸入的速度真的是太慢

所以我想到了Latex
Latex善於處理數學符號
使用Latex輸入數學符號應該是會快很多
那到底有沒有人拿他作簡報呢?

果然有一堆高手使用Latex做簡報
其中比較好用的是"beamer"
而且很好上手
打簡報就像寫網頁一樣
非常容易

說明網頁如下
http://latex-beamer.sourceforge.net/

如果是用MikTex
可以Browse package 下載

如果要更換簡報的樣式可以修改
\usetheme{Warsaw}
將Warsaw改成你要的樣式
所有的樣式放在
C:\Program Files\MiKTeX 2.7\tex\latex\beamer\themes\theme

可以自己選擇自己喜歡的樣式或者自己更改

參考網址:
http://homepage.mac.com/yenlung/WebWiki/BeamerPresentation.html
http://heather.cs.ucdavis.edu/%7Ematloff/beamer.html
http://www.scribd.com/doc/28011/beamer-guide

2008年4月2日 星期三

在latex中 去掉 bookmark 的方法

由於某些conference 要求pdf中不能有bookmark
所以上傳paper時,系統會要求重新上傳

為了解決這個問題,
只要在前文之中加入

\usepackage[bookmarks=false]{hyperref}

再重新compile一次
所有的bookmark就會去掉了

參考資料:
http://209.85.175.104/search?q=cache:wSBy_a_4wE0J:bbs.ctex.org/viewthread.php%3Ftid%3D42883+bookmark+latex&hl=zh-TW&ct=clnk&cd=10&gl=tw&client=firefox-a
http://acevery.cnlog.org/2006/12/latexpdfbookmark_1.html
Related Posts Plugin for WordPress, Blogger...