2009年11月30日 星期一

北橫北宜兩日遊



第一天 新竹-北橫-宜蘭 160公里


一年多前,第一次騎到羅浮時,看到宜蘭98公里的牌子,我就告訴自己,總有一天要這麼一路騎到宜蘭。前幾個星期,喬伊問我會不會去小Sunny的婚禮,他要從宜蘭過去。去不去小Sunny的婚禮對我來說不是什麼重要的事(對不起啦,小Sunny),但是廿八號喬伊人在宜蘭,這就很重要了。我厚著臉皮跟說要去他家住,於是宜蘭之行就這麼定案啦!

因為晚上還要趕到台北吃喜酒,要在下午四點前到宜蘭,時間上有點趕,所以本來計劃早上四點出發,但前一晚太晚睡了,我多賴了一個小時的床,拖到五點半才出門,反正趕不趕得上小Sunny的婚禮不重要啦(真的對不起啦!小Sunny)五點半天還沒亮,一路摸黑騎到羅馬公路的路口,路上已經有三三兩兩的自行車騎士出來運動了。

就這麼一路騎到關西,天也漸漸亮了,天空看起來陰陰的,風也有點大,一邊暗自禱告千萬不要下雨一邊沿著羅馬公路向上攀爬。到石門水庫南邊時,看到大壩方向有一道彩虹。騎了這麼多次羅馬,第一次看到這樣的美景,覺得今天真是幸運。隨後又在羅馬公路最後的下坡前,看到基督光灑在羅浮的小鎮上,這時開始後悔為什麼沒有帶相機出門。

一路下滑到羅馬公路終點,稍作休息後,開始未知的旅程。此時已經快九點了,天氣似乎有好轉的跡象,再加上一路上看到平常看不到的美景,覺得今天真是我的Day,當時天真的以為說不定就這麼順順地一路騎到宜蘭。

前一晚先看過地圖,台七從羅浮到巴陵大約廿多公里,路還算好走。過了巴陵後則是廿公里的連續上坡,一直到明池為止,明池海拔一千廿公尺左右,應該是北橫的最高點。因為沒騎過北橫,再加上隔天還要騎回新竹,必需保留體力,所以計劃在北橫上每十公里就休息一次,直到過了明池後再一口氣滑到北橫出口。

在北橫上,又看到基督光三次,慶幸今天運氣真是不錯的同時,殊不知今天的好運都浪費在這無關緊要的地方上了。過了巴陵後,坡度開始變陡,我也漸漸不能維持原先十公里休息的計劃,先是五公里提前落地,到後來是每兩公里就要下來喘口氣,一路苦撐到明池後,以為一切苦難終於結束了,萬萬沒想到,真正的災難才正要開始。

過了明池,遇上了大霧。能見度只有幾公尺,右邊的山壁是隱約可見,但左邊道路邊界外是懸崖還是樹林就不得而知了。更糟的是霧厚的像是整個人泡在水裡一樣,再加上下坡吹風,身子冷到忍不住抖了起來。而且路面溼滑,車子幾乎煞不住。剛才爬坡時,必需每幾公里就下來讓腳休息一下,現在則是每幾公里必需下來讓手休息一下。低溫使得體力流失得特別快,第一次覺得下坡比上坡辛苦,一度想放棄回頭,但想想已經騎了一百公里,回頭就要再騎一百公里,繼續往前只要再騎六十公里就到宜蘭,只好咬著牙繼續苦撐。反正再來也沒有上坡了,過了這段路,除非摔車,應該不會有更糟的事發生了。然後,我就摔車了...

在滑過太平山管制區附近,不知是已經習慣霧氣,還是霧真的變小了,感覺車有比較好騎了,我也慢慢加快速度,到了大概在北橫八十公里附近的一個髮夾彎,在出彎前突然冒出了一台白色CRV,因為山壁阻擋了視線,在入彎時完全沒看到對方,我們又都行駛的太靠內側,出彎的那一剎那,我們幾乎要撞個正著,CRV的車主大概是因為太過驚嚇,還錯把方向盤往左打,我一度以為我會被擠下山崖。就在這千鈞一髮之際,我進入了子彈時間、零的領域,從車道外側閃過了白色惡魔的攻擊,可惜我終究不是救世主尼歐也不是風見隼人,就在剛會過車,以為順利逃過一劫時,車尾突然擺了一下,這次我再也維持不了平衡,車就這麼倒了下去,因為路面溼滑再加上下坡的速度,我滑行了好幾公尺才停下來。忍著疼痛爬了起來,CRV的車主看我人站了起來,就當沒事一樣揚長而去,別說下車看一下情況,連車窗都不曾搖下。早知道我就躺在地上裝死騙他下來,不過,要是他看我倒地不起,會不會直接倒車送我一程呢(驚)。悻悻地看著白色惡魔離去,我開始檢視身上的傷痕,這時後面來了一台小客車,車主很好心地停了下來,問我有沒有事。所幸身體只有左腿擦傷,車子雖然煞把全歪了,坐墊磨破了,但都還不致於影響騎乘。我跟小客車上的人表示我還可以騎,謝謝他們的關心後,繼續未完成的旅程。

在這裡我要替白色惡魔平反一下。其實我也不是完全沒錯,我們兩人過彎時車速都太快,也太靠內側了。所以紅白相間的公路車和穿著紅色外套的我對CRV車主來說應該也是三倍速的紅色彗星吧!(笑)

繼續下滑了一段路,到了比較空曠的地方,我把車停到路邊,拿出修車工具,把煞把調了回來。因為出了事故,我已無心趕路,打電話給喬伊說我可能趕不及到宜蘭,請他不要等我。不過,有情有義的喬伊說沒關係我等你。其實當時我是比較希望聽到他說,沒關係我開車去接你...

稍作休息後,因為小氣的喬伊不肯開車來接我,我只好繼續趕路啦。沒多久,就到了北橫出口,看到台七甲的路牌時,我忍不住歡呼了起來。出了北橫後,沿著台七繼續往宜蘭推進。本以為經過北橫的摧殘,到宜蘭境內時會沒力前進。沒想到一路上都能維持在三十以上的速度,這樣看來說不定可以補回之前浪費掉的時間,準時到宜蘭市區。但是人生是充滿著但是的...

過了泰雅大橋後,台七線有一處大坍方,整條路都不能走了,旁邊開了一條替代道路,這條替代道路應該是臨時開的吧,沒有鋪柏油,連水泥都沒有,整條路泥濘不堪,公路車是沒辦法在上面騎的。我只好下來牽車,也不知走了多久,後面來了一輛貨車。好心的車主廖先生問我要不要搭便車。因為實在不知道這泥巴路有多長,我就毫不客氣地上了他的車。結果我其實快走完替代道路了,但我決定裝傻,即便車子已駛回台七,我還是賴在廖先生車上不肯下來,還拿了他一顆橘子。直到他要駛離台七,我才依依不捨地下了車。臨走前塞了一條巧克立給廖先生的小朋友,好減輕我的載重。 XD

附帶一提廖先生是做地熱米銷售的,我不知那是什麼米,但聽起來很酷。店就在三星有名的卜肉店附近。廖先生的名片上還有GPS座標,一整個有合到喬伊這個GPS控的tone。要不是還要趕路,我應該會跟廖先生回家背一包地熱米去給喬伊當伴手禮吧。

跟廖先生分開後,一路狂飆到宜蘭市區,到了台七和台九的交接口,總算完成了今天的路程。打電話給喬伊請他來接我,才發現有十多通來電未接,原來喬伊還是提前出來接我了,當我打給他時,他人已經進到北橫。大概是我在廖先生車上時跟他錯過的吧。喬伊真是大好人啊~ 可惜他已經結了婚,而且他不是母的,不然為了表示感激,我應該會把他娶回家養他一輩子。

上了喬伊的車,一路飆回他家,洗了澡,換了衣服,再一路飆到台北去參加小Sunny的喜宴。酒席很好吃,新娘很好看,但是和騎車無關,我懶得多作描述。酒足飯飽後,回到宜蘭,熄燈睡覺。

第二天 頭城-北宜-新竹 130公里


昨天喬伊剛接到我時,在車上喬伊嫂問我明天還要騎嗎? 我想也不想地大喊我要坐火車回家!但是人生有但是不完的但是...

第二天醒來覺得昨天摔車的傷口不再那麼痛了,似乎不會影響騎車。下了樓,整理了一下車子,車的狀況雖然不是很好,但看起來要再騎回新竹好像也不是什麼難事。不過昨天實在被明池的霧嚇到了,所以改變計劃,改走北宜回去。人就是這麼賤,昨天在北橫上一邊爬坡一邊罵自己為什麼要這樣自虐,今天在北宜山腳下就又躍躍欲試,想爬爬看北宜。騎自行車爬山有點像在玩自由落體或是大怒神,坐上去時你一定會後悔為什麼要上來,但下去後你一定會想再上去一次。

整理完車子,就跟喬伊一家人到頭城市區去吃大腸麵線。話說宜蘭人好像很喜歡把大腸麵線當早餐吃。多年前,去羅東朋友家玩,也是吃麵線當早餐。吃完早餐,逛了一下市場,順便準備一下補給品。中間還偷偷抱了一下喬伊的寶貝兒子。上次見到他時,光是坐在我旁邊就哭著要逃走。這次就乖乖地給我抱啦~果然小孩和女人一樣,玩久就是你的!(大誤)

在這裡要再次謝謝喬伊爸,因為第二天補給品的錢都是喬伊搶著用他爸的錢付的。

回到喬伊家,整理了一下行李,準備出發。喬伊還牽了一台腳踏車陪我騎到北宜路口。一進到北宜,馬上就是著名的九彎十八拐,因為休息了一晚,再加上經過昨天北橫的震撼教育,感覺九彎十八拐沒特別難騎,就這麼一路向上爬,在轉了幾個彎後,開始往山裡面走,以為再來就看不到宜蘭了,心裡喊著再見了宜蘭,沒想到轉個彎蘭陽平原又出現在眼前,同樣的事發生了三四次,一整個有被宜蘭纔上甩不掉的感覺。一直騎到石牌,過了縣界,才真正的告別了宜蘭。

過了石牌,就是一路下滑啦~到這裡路上的車友開始變多了,看著別人吃力地向上爬,其實會有一種莫名的快感。唉,我這個人的心地真是扭曲啊!一路滑到坪林後,又是上下起伏的路線。有幾次遠遠看到險昇坡的路標,心裡稍稍吃驚了一下,但騎近一看,7% 200公尺...心裡罵了一聲,看!200公尺的坡就不用標了吧...就這麼一路上上下下來到新店,看了一下時間十二點多,隨便找了一家Seven補給了水和食物。在捷運站附近轉到了110縣道,再一路上上下下地接到台三,然後就一路往南朝關西前進。騎在台三上老實說還滿無聊的,沒什麼風景好看,路邊也沒什麼美眉或檳榔西施。因為實在太無聊了,會忍不住抽起車來想早點騎完。就這麼站站坐坐地一路順順地騎到了關西。到了關西,算是回到了家的前院了。看了一下時間才四點,於是在關西的7-11坐了下來,好好地休息了一下,看著夕陽發了一會呆。休息了半個小時,再慢慢地沿著118騎到竹北,之後再轉回新竹,結束了兩天的行程。

回到家,先打電話給喬伊報平安。洗了個熱水澡後,出去買了一個小pizza回來給自己慶祝一下。北橫騎過了,再來要挑戰哪裡呢?我一邊吃著pizza,一邊在Google Map 上尋找下一個目標。

附註:一開始貼的圖是Gundam(白色惡魔) v.s. 夏亞的 Zaku (紅色彗星)。最近迷上宅女日記。於是效法羞昂,在文章最前頭貼一張莫名其妙的圖。

2009年2月12日 星期四

ATI fglrx Driver

為了讓NB和外接螢幕有不同的解析度,搞了兩天

1.安裝原廠的 fglrx driver, 為了避免和 apt 混淆, 不要把 ati 的 driver 轉成 deb (雖然可以在 aptitute 裡設成hold, 但不知為什麼, apt 還是會誤判有可以升級的package, 要是不小心就會升回原來的 driver)

2.修改 xor.conf, 可以用 aticonfig 來改, 比較省事, 範例:

Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "aticonfig-Screen[0]-0" 0 0
Screen "aticonfig-Screen[0]-1" 1024 0
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
EndSection

Section "Monitor"
Identifier "aticonfig-Monitor[0]-0"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection

Section "Monitor"
Identifier "aticonfig-Monitor[0]-1"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection

Section "Device"
Identifier "aticonfig-Device[0]-0"
Driver "fglrx"
BusID "PCI:1:5:0"
EndSection

Section "Device"
Identifier "aticonfig-Device[0]-1"
Driver "fglrx"
BusID "PCI:1:5:0"
Screen 1
EndSection

Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-0"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection

Section "Screen"
Identifier "aticonfig-Screen[0]-1"
Device "aticonfig-Device[0]-1"
Monitor "aticonfig-Monitor[0]-1"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
EndSubSection
EndSection

Section "ServerFlags"
Option "Xinerama" "on"
EndSection

3. 把/usr/lib/xorg/modules/amdxmm.so 改名或刪掉, 不然 X window 在啟動時會 crash, 查網路上的討論如果不 load amdxmm.so 會不能用 XV, 應該還好

4. 重開 X window 就大功告成啦

AMD 原廠的 amdccle (ATI Catalyst Control Center) 除了 clone 和 big screen 外還有 Single 可以選, 選 Single 就可以兩個螢幕設定不同的解析度, 再 enable Xinerama 就和 big screen 一樣讓程式可以從一個螢幕拖到另一個螢幕, 不過這樣一來 xrandr 就不能用了, 要換解析度的話, 都要重新啟動 X Window。

2008年8月10日 星期日

Using Phonon with Qt

Phonon 是一支 KDE 的 multimedia 的 API。在 Qt 的文件中,也有提及這個API。無奈 Debian 的Package 設定不夠完善,即使裝完該裝的套件,也不能直接使用。

  1. 安裝 libphonon-dev, phonon, phonon-backend-gstreamer
  2. ln -s /usr/lib/kde4/plugin/phonon_backend  /usr/lib/qt4/plugin/phonon_backend

  3. 在做完 qmake -project後, 編輯 project.pro, 加上
     QT += phonon

    也可以直接加在 /usr/share/qt4/mkspecs/default/qmake.conf 裡, 一勞永逸。


另外, coding 時, 不能像Qt Assistant 裡介紹的那樣, 直接
#include <phonon>

必須一個個地 include /phonon 裡會用到的 head file

2008年8月5日 星期二

Get Program Return Value in C/Bash Shell

在 C shell 裡以 $status 取得執行檔的回傳值 (Bash 則是 $?)

Example:
test.c:

#include <stdio.h>
#include <stdlib.h>
int main (int argc, char **argv)
{
return strtol(argv[1], NULL, 10);
}


test.csh

#!/bin/csh
./a.out $1
set rev=$status
if ( $rev == '0' ) then
echo "a.out returns 0."
else
echo "a.out returns $rev."
endif

2008年8月4日 星期一

我在山頂聽見海浪聲

換了新鬧鐘,但調錯時間,鬧鐘整整慢了一個小時,所以今早也就晚了一個小時起床,然而我完全沒發現,還是和平常一樣,換上運動服,帶上MP3,出門騎腳踏車運動去。路上只覺得奇怪,怎麼天比平常亮,路上的車怎麼比平常多,直到我騎到中興路、學府路的交叉路口,停下來等紅綠燈時,才發現已經快九點了,這下可有趣了,因為現在人已在離家最遠的地方,不管是馬上折返,還是依平常的路線繼續騎下去,花的時間會是差不多的。所幸今天老闆出差不會進辦公室,所以我決定還是依平常的路線繼續騎下去。:P

轉進學府路, 開始進入山區,就這麼一路往上爬,爬到最高點時,MP3正好放到有里知花唱的涙のキッス,背景音樂的海浪聲,和眼前的山景正好形成強烈的對比,別有一番趣味。


(找不到有海浪聲的版本,請大家自行想像)

第一次知道有里知花這個歌手,是在一個論壇裡,看到一位網友留言說他在有里知花的歌裡聽到了海浪聲,當時我覺得很好奇,什麼樣的音色會讓人聯想到海浪,於是就去找了她的歌回來聽,這才知道她唱的涙のキッス是以海浪聲加上吉他為配樂,那位網友指的海浪聲該不會就是這個吧 orz ... 不過清新的嗓音佐以吉他伴奏,遠處傳來陣陣海浪聲,有里知花的涙のキッス的確讓人耳目一新。(這裡有原唱桑田大叔的影片給大家比較:_請按我_)另外我也很喜歡有里知花的 I cry:



補記:
老闆今天雖然出差,但他今天早上還是先進了辦公室一趟,所以我上班遲到還是被抓包了。

2008年7月27日 星期日

Vim TOhtml

過去在blog上若遇到要寫原始碼, 總是自己以 html tag 一行行改寫, 寫久了, 難免感到不便, 所以 survey 了一下, 找到以 vim 利用 tohtml.vim自動轉碼的方法。
  1. 安裝 vim-script (主要是需要 tohtml.vim)
  2. 在 /etc/vim/vimrc.local 加入

    let html_use_css=1

    這是為了產生以ccs控制版面的 html code.
  3. 在 Blogger 的 template 加入 css 的 source code

    .Constant { color: #ff6060; }
    .Statement { color: #0000ff; }


使用範例:
:10,40Tohtml, 把第十到第四十行轉成 html

tohtml.vim 也可以轉出 XML
:let use_xhtml = 1

:help tohtml for more details.

2008年7月24日 星期四

Evince 日文顯示問題

在安裝了 xpdf-japanese 後就可以看到日文的 PDF, 但不知什麼原因, 並不是所有的文件都看得到日文字, 大概是字形設定有誤吧, Anyway, 在胡亂測試後, 找到下面這個解法。
  1. 安裝 xpdf, xpdf-japanese
  2. 下載 poppler-data-0.2.0.tar.gz 安裝 poppler-data
  3. 解開後
    make install datadir=/usr/share
  4. 編輯 /etc/fonts/conf.d/60-latin.conf 在<prefer>內加入日文字形
    <alias>
      <family>serif</family>
        <prefer>
          <family>Bitstream Vera Serif</family>
          ...
          <family>Kochi Mincho</family>
        </prefer>
      </alias>

Evince 中文顯示有問題的朋友,應該可以比照辦理。

References

2008年7月23日 星期三

Debian on the Fujitsu S2210

換了工作,也換了一台新的NB,因為工作的需要,得在NB上灌Linux,照舊寫個summary,方便日後參考。

這次還是灌 Debian, 大部分的安裝還是和以前一樣, 沒什麼特別的地方, 唯獨顯示晶片和無線要自己編譯kernel module, 所幸這部分並不難, 而且 apt 上都有 source 套件, 不需另外下載。

Video
安裝系統時,安裝程式會自動安裝 ati 的 driver, 並做好相關的設定, 就一般使用而言, 這樣已經足夠了。但自動安裝的環境不支援硬體的3D功能, 不幸的是, 小弟的工作會用到 3D 加速, 解決的方法有二, 第一是重編 mesa, 讓它只使用 software render, 第二種方法就是重編 kernel module, 讓module 支援 3D, 在這裡, 小弟選擇爽度較高的第二種方法:

  1. 因為要重編 module, 所以要先建立編譯 kernel的環境(安裝 gcc, linux-header 等族繁不及備載)
  2. 安裝 fglrx-modules-2.6.686, fglrx-control, fglrx-source
  3. 到 /usr/src 解開 fglrx.tar.bz2, 解開壓縮後到裡面執行 ./make.sh 就會自動編譯 fglrx.ko
  4. 把編譯好的 fglrx.ko copy 到 /lib/modules/2.6.25-2-686/nonfree/fglrx/ 取代原本的 module
  5. 把 /etc/X11/xorg.conf.fglrx-0 改成 xorg.conf

其實這個 flow 並不是最正確的做法, fglrx-module 應該是不用裝的, xorg.conf 裡有很多設定是不需要的, 但這個 flow 應該是最簡單的方法。

Dual Display
fglrx 似乎不支援 randr, 所幸 如果在載入 fglrx 時, 如果 detect 到 D-sub 有接, 會自動切到 clone mode, 作簡報時還滿方便的, 也可以在 xorg.conf 中強制指定

Option "DesktopSetup" "clone"

man fglrx for more details.

Wireless
S2210 的 wireless 是 Atheros 的 AR242x 系列, madwifi 有支援, 但需要自行編譯 kernel module:
  1. 安裝 madwifi-tool 和 madwifi-source 兩個套件

  2. 編譯 module
    1. 到/usr/src 解開 madwifi.tar.bz2
    2. 到 /usr/src/modules/madwifi/script/ 執行
      ./madwifi-unload
      ./find-madwifi-modules.sh $(uname -r)
    3. 到 /usr/src/modules/madwifi/ 執行
      make; make install
      所有的 driver 會裝到 /lib/module/$(uname -r)/net


  3. 載入 kernel module

    modeprobe ath_pci

    dmesg 看一下, 如果有下面這樣的error
    wifi%d: unable to attach hardware: 'Hardware revision not supported' (HAL status 13)
    表示無線模組被 disable 了, 最簡單的方法是重新開機,如果reboot無效, 就先進 windows 一次, 再回到 Linux。這一次 module 應該會自動載入, iwconfig 應該會看到 wifi0 和 ath0,如果有表示kernel module 載入無誤。

  4. 連上 AP
    ifconfig ath0 up
    iwconfig ath0 essid "<ESSID>" key <key number>

    如果要連上 DHCP server

    dhclient ath0

  5. 最後再 /etc/network/interfaces 加入
    iface ath0 inet static
    pre-up /sbin/iwconfig ath0 essid "<ESSID NAME>" key <key number>
    address 168.95.1.1
    netmask 255.255.255.0
    gateway 168.95.1.254

    這樣就可以用 ifup ifdown 來控制無線網卡

ACPI
把 user 加入 powerdev 的 group 就可以用 gnome-power-manager 來 suspend/ hibernate, 螢幕的亮度可以用 Function key 來調整, LID 也可以正常運作, 總之把使用者加入 powerdev 的 group 後,人生就變彩色的了。

待解決的問題:
因為這些問題, 不大影響日常工作, 所以暫時先擱著:
  • ACPI, function key 可以調整LCD的亮度, LID也可以正常運作, 但 suspend 有問題, 無法進入 suspend mode
  • Multimedai key, S2210 上方有一排多媒體按鍵, 有人寫了 driver 放在網路上, 但我懶得試... :p


Reference
Wifi:
MadWifi 'First Time User' HOWTO

Problem during the boot: "wifi%d: unable to attach hardware: 'Hardware revision not supported' (HAL status 13)"

2008年7月22日 星期二

Nvidia Driver Complains Xen Is Not Supported

之前一直都是用 debian 提供的 nv driver. 但因為最近工作的關係, 需要 3D 加速, 於是到 Nvidia 的網站下載 driver, 不過, 沒想到 Debian 裡 Linux kernel 2.6.25 竟然是內建support Xen 的... 偏偏 Nvidia 的 driver 不支援 support Xen 的 kernel... 挖哩咧~ 所幸在 nvnew.net裡找到下面這個解決方法:

cd /lib/modules/`uname -r`
grep CONFIG_XEN . -Rl | xargs -i sed -i -e 's/CONFIG_XEN/CONFIG_LUPO/g' {}
export IGNORE_XEN_PRESENCE=1
sh NVIDIA-Linux-x86-169.12-pkg1.run


Reference:
nVidia drivers on Debian Lenny with 2.6.25-2 kernel

2008年7月20日 星期日

Connect Bluetooth Mouse at Boot Time

Add device to hcid.conf
Edit "/etc/bluetooth/hcid.conf". Add following lines:

device <Bluetooth Address> {
name "<Device Name>"
}

Your can get the bluetooth address and device name by "hcitool scan"

Pair device
hidd --search

Connect at boot time
Edit "/etc/default/bluetooth". Change

HIDD_ENABLED=0

to

HIDD_ENABLED=1


All set! Restart your computer.

Reference:
HOWTO: Logitech Bluetooth Mouse & Keyboard

2008年7月1日 星期二

ForwardX11 in SSH

By default, ForwardX11 is not assigned. Modify /etc/ssh/ssh_config or ~/.ssh/config to make ForwardX11 enabled.

PS. There is also a X11Forwarding in sshd_config, but by default, it is set to "yes".

2008年6月3日 星期二

剔銀燈(與歐陽公席上分題)

范仲淹

昨夜因看蜀志。笑曹操、孫權、劉備。用盡機關,徒勞心力,只得三分天地。屈指細尋思,怎如共、劉伶一醉。

人世都無百歲。少癡騃、老成尫悴。只有中間,些子少年,忍把浮名牽系。一品與千金,問白髮、如何迴避。

2008年6月1日 星期日

Alone Again



Gilbert O'Sullivan

In a little while from now,
If I'm not feeling any less sour
I promised myself to treat myself
And visit a nearby tower,
And climbing to the top,
Will throw myself off
In an effort to make it clear to who
Ever what it's like when your shattered
Left standing in the lurch, at a church
Where people 're saying,
"My God that's tough, she stood him up!
No point in us remaining.
May as well go home."
As I did on my own,
Alone again, naturally

To think that only yesterday,
I was cheerful, bright and gay,
Looking forward to, but who wouldn't do,
The role I was about to play
But as if to knock me down,
Reality came around
And without so much as a mere touch,
Cut me into little pieces
Leaving me to doubt,
All about God and His mercy
For if He really does exist
Why did He desert me
In my hour of need?
I truly am indeed,
Alone again, naturally

It seems to me that
There are more hearts
Broken in the world
That can't be mended
Left unattended
What do we do? What do we do?

Now looking back over the years,
And what ever else that appears
I remember I cried when my father died
Never wishing to have cried the tears
And at sixty-five years old,
My mother, God rest her soul,
Couldn't understand, why the only man
She had ever loved had been taken
Leaving her to start with a heart
So badly broken
Despite encouragement from me
No words were ever spoken
And when she passed away
I cried and cried all day
Alone again, naturally
Alone again, naturally

2008年5月12日 星期一

The Final Countdown


剩三個星期... 不奢望能逆轉勝,但求能進入延長賽...

2008年5月8日 星期四

漁父

蘇軾

漁父飲,誰家去。魚蟹一時分付。酒無多少醉為期,彼此不論錢數。

漁父醉,蓑衣舞。醉裏卻尋歸路。輕舟短棹任斜橫,醒後不知何處。

漁父醒,春江午。夢斷落花飛絮。酒醒還醉醉還醒,一笑人間今古。

漁父笑,輕鷗舉。漠漠一江風雨。江邊騎馬是官人,借我孤舟南渡。

2008年4月29日 星期二

Remember the Name



Fort Minor

You ready?! Let's go!
Yeah, for those of you that want to know what we're all about
It's like this y'all (c'mon!)

This is ten percent luck, twenty percent skill
Fifteen percent concentrated power of will
Five percent pleasure, fifty percent pain
And a hundred percent reason to remember the name!

Mike! - He doesn't need his name up in lights
He just wants to be heard whether it's the beat or the mic
He feels so unlike everybody else, alone
In spite of the fact that some people still think that they know him
But fuck em, he knows the code
It's not about the salary
It's all about reality and making some noise
Making the story - making sure his clique stays up
That means when he puts it down Tak's picking it up! Let's go!

Who the hell is he anyway?
He never really talks much
Never concerned with status but still leaving them star struck
Humbled through opportunities given despite the fact
That many misjudge him because he makes a living from writing raps
Put it together himself, now the picture connects
Never asking for someone's help, or to get some respect
He's only focused on what he wrote, his will is beyond reach
And now it all unfolds, the skill of an artist

This is twenty percent skill
Eighty percent fear
Be a hundred percent clear cause Ryu is ill
Who would've thought that he'd be the one to set the west in flames
And I heard him wreck it with The Crystal Method, "Name Of The Game"
Came back dropped Megadef, took em to church
I like bleach man, why you had the stupidest verse?
This dude is the truth, now everybody's giving him guest spots
His stock's through the roof I heard he's fuckin' with S. Dot!

This is ten percent luck, twenty percent skill
Fifteen percent concentrated power of will
Five percent pleasure, fifty percent pain
And a hundred percent reason to remember the name!

They call him Ryu, he's sick
And he's spitting fire
And mike got him out the dryer he's hot
Found him in Fort Minor with Tak
What a fuckin' nihilist porcupine
He's a prick, he's a cock
The type woman want to be with, and rappers hope he get shot
Eight years in the making, patiently waiting to blow
Now the record with Shinoda's taking over the globe
He's got a partner in crime, his shit is equally dope
You wont believe the kind of shit that comes out of this kid's throat

Tak! - He's not your everyday on the block
He knows how to work with what he's got
Making his way to the top
He often gets a comment on his name
People keep asking him was it given at birth
Or does it stand for an acronym?
No he's living proof, got him rocking the booth
He'll get you buzzing quicker than a shot of vodka with juice
Him and his crew are known around as one of the best
Dedicated to what they do and give a hundred percent

Forget Mike - Nobody really knows how or why he works so hard
It seems like he's never got time
Because he writes every note and he writes every line
And I've seen him at work when that light goes on in his mind
It's like a design is written in his head every time
Before he even touches a key or speaks in a rhyme
And those motherfuckers he runs with,
The kids that he signed?
Ridiculous, without even trying,
How do they do it?!

This is ten percent luck, twenty percent skill
Fifteen percent concentrated power of will
Five percent pleasure, fifty percent pain
And a hundred percent reason to remember the name!

This is ten percent luck, twenty percent skill
Fifteen percent concentrated power of will
Five percent pleasure, fifty percent pain
And a hundred percent reason to remember the name!

2008年4月10日 星期四

Setup Eclipse CDT with Cygwin

本來在安裝 Eclipse、CDT、cygwin 後,要把 cygwin/bin 的路徑設到系統環境變數 Path 中,CDT 才能找得到 gcc。但是... 我就是不想動我的環境變數... 稍微試了一下,看有沒有辦法在不更動環境變數的形況下,正常使用CDT。結論是這個想法是可行的,但還是乖乖設定環境變數比較省事。

設定的方法如下:
  • 在 Toolbar 上點選 Window -> Preferences
  • 在 Preferences 對話窗中點選 C/C++ -> Environment,加入環境變數 Path, 其值為 cygwin/bin 的路徑

只要在此加入環境變數就可正常compile程式,但cygwin compile 出來的執行檔需要 cygwin1.dll 才能執行,所以雖然可以正常compile,但 Eclipse 的 console 無法正確執行compile好的程式。在不更動系統環境變數的前提下,最簡單的做法就是把 cygwin1.dll 複製到 系統 Path 或 Project 的工作目錄中,但再一次地,我就是不想複製檔案,所幸這仍然有解
  • Toolbar 上點選 Run -> Open Run Dialog
  • 在 Run 的對話窗中點選 C/C++ Local Application -> ProjectName.exe, 在右側點選 Environment分頁,一樣加入 Path 的環境變數。

做到這裡可以正常執行Build完的程式了,但還不能Debug...
不能Debug 的主因有二,一是 Eclipse找不到 gdb.exe 二是在 Debug 的過程中, Eclipse 再度找不到 cygwin1.dll (啊不是都已經設環境變數了嗎!? 吼~~)
  • 在 Toolbar 上點選 Run -> Open Debug Dialog
  • 在 Run 的對話窗中點選 C/C++ Local Application -> ProjectName.exe, 在右側點選 Debugger 分頁
  • 在 Debugger 分頁中設定 GDB debugger的位置:
    Drive:\PATH\TO\gdb.exe
  • 給定一GDB command file,並在 command file加入
    path /cygdrive/drive/path/to/cygwin/bin

這樣一來,就可以正常地Debug了...

雖然找到設定的方法,但我最後還是決定把 cygwin 加到系統 PATH 裡...做人還是不要太搞怪的好...

References:
Debugging with GDB

2008年3月31日 星期一

Make Gmail as Default Email Client

把下面這個 Script 設成預設的電子郵件軟體即可。

#!/bin/sh
firefox https://mail.google.com/mail?view=cm\&tf=0\&to=`echo $1 | sed 's/mailto://'`

另外,在Windows下安裝Gmail Notifier 或 Google Talk 都可以把Gmail設成預設的郵件軟體。

Reference:
Set Gmail as Default Mail Client in Ubuntu

2008年3月29日 星期六

Sync PocketPC with Evolution

今天花了些功夫研究如何同步 PDA 手機 和 Gnome 的 PIM, Evolution。最後雖然能成功同步,但在PDA裡中文的資料同步到 Evolution後全變成空白... 唉...非英語系使用者的悲哀... Anyway, 還是把同步旳步驟記下來,以備日後參考。

安裝軟體
synce-multisync-plugin
synce-dccm
synce-serial
librra-tools

optional:
synce-gnomevfs

synce 的 package 在Debian裡被拆的亂七八糟,而且套件間的相依性也做的不是很好,小弟也是試了好久,才找齊所需的套件。

設定連線
  1. 載入 ipaq module
    >>modeprobe ipaq

  2. 接上 PDA cardle

  3. 若沒有問題,在console下打
    >>dmesg
    應該會看到:
    usb 5-5.2: new full speed USB device using ehci_hcd and address 15
    usb 5-5.2: configuration #1 chosen from 1 choice
    ipaq 5-5.2:1.0: PocketPC PDA converter detected
    usb 5-5.2: PocketPC PDA converter now attached to ttyUSB0
    若沒有出現上述message, 可試著在載入 ipaq module 時加上 vender id 和 device id的參數。

  4. 以 root 的帳號設定 synce 連線
    >> synce-serial-config ttyUSB0

  5. 以一般 user 的帳號啟動 dccm
    >>synce-dccm

  6. 以 root 的帳號建立 synce 連線
    >>synce-serial-start

到這裡若沒問題PDA應該已和電腦連上線。可以在console下打 pstatus 試試看是否看得到 PDA的資訊。

和 Evolution 同步
  1. 以一般 user 的帳號設定 partnership
    >>synce-matchmaker create [1|2]
    若兩個index都被佔滿了可先以
    >>synce-matchmaker clear [1|2]
    清除設定

  2. 開啟 multisync (在 console 下開可以看得到較多的 runtime message, 有助於尋找問題)

  3. 新增 synchronization pair
    plugin 一個選 SynCE Plugin 一個選 Ximan Evolution 2 (先後順序不重要)

  4. 在 Ximan Evolution 2 的 Plugin options 中選擇要同步的Calendar, Addressbook, 及 Task ( 預設是No,所以一定要進去選,網路上的論壇都建議在 Evolution 中為 PPC 另外建一個 Calendar or addressbook)

  5. 若一切設定無誤,按下 Sync 按鈕就會開始同步。

MultiSync 有點笨,大概是因為 PDA 上資料的 timestamp 較舊的關係,第一次同步時,不會把資料從PAD複製到Evolution中。論壇上有人說可以按 ReSync 解決這個問題(ReSync的按鈕可在 option中設定是否顯示,預設是不會顯示的)。不過我測試的結果是按了 ReSync會讓 MultiSync crash。 也不知道是不是因為資料裡有中文的關係。

結束連線
  1. 關閉 Multisync
  2. 在 console下下
    >>killall -HUP synce-dccm

References
HP Ipac Pocket PC Setup
HOWTO: Pocket PC Syncing with Evolution

PS1. dpkg小提示: dpkg -L 可顯示該package內含的檔案
PS2. 之後又試了一下, 在zh_TW.utf8下 MultiSync 甚至打不開... 看來MultiSync 的中文support做的不好, 下次或許可以改以 opensync 來試試。