星期一, 7月 02, 2007

Wine / Crossover Office 中文設置

EDIT: 2007/11/05
重新整理了內容並另發新文,不想浪費時間的請直接看這篇


連續下了幾天雨, 今天難得放晴, 就是有點熱。我想我是喜歡晴天的, 看到陽光人就份外開心, 總想著向外面跑, 能來個效遊, 睡睡草地就更滿足了。

假期的第四天了, 到目前為止都是在搞電腦及興趣, 正事一件都沒有, 今天就搞定了 Crossover Office。雖然算是一個 linux 信徒, 也總是有一些拋不開的 Windows 軟件, 因為 M$ Office, Internet Explorer, ConvertZ... 選用 crossover 而不用 wine 是基於向易求的原則。其實年多前我就開始用 wine, 那時 wine 還沒現在成熟, 網上流傳的資料也較少, 所以也不是設置得很好, 能湊著用而已。雖然現在用的是 crossover, 但設置方法完全適用 wine, 只要找到相對應的設定檔。

1. UTF-8 環境下使用 wine / crossover 非常遲鈍
這方面大陸網友 huangjiahua 有了較理論的說明, 見這裡 。解法方法有二, 一是刪掉 XLC_LOCALE 裡不必要的 GBK/BIG5 區段, 檔案位置是:
/usr/share/X11/locale/zh_TW.UTF-8/XLC_LOCALE


另外一個方法是增加欠缺的 GBK/BIG5 字體。這個方法煩複得多, 所以我用了第一招, 如果有興趣可以參考 huangjiahua 的原文。

2. 停用 anti-alias
anti-alias 可以柔化 truetype 字型在小字體時斷斷續續的線條, 這本來是件好事, 但現在 uming (AR PL ShanHeiSun Uni) 及 opendesktop-fonts (AR PL New Sung) 的小字體已經內置 bitmap, 比 anti-aliased 出來的好得多又不模糊, 所以可以放心停用此特性。

2a) 終端機下輸入: $ ~/cxoffice/bin/cxrun
2b) 選好目標 bottle, 然后輸入 regedit
2c) 增加/修改以下兩項:
[HKEY_CURRENT_USER\Software\Wine\X11 Driver]
"ClientSideAntiAliasWithRender" = "N"
"ClientSideAntiAliasWithCore" = "N"

* 如果沒有 X11 Driver 目錄可以自行加上。
** wine 的話據說可以在終端機下輸入: $ wine regedit 就能編輯登錄檔
*** 也可以直接編輯~/.wine/ 目錄下相應的 user.reg & system.reg

3. 設置預設字體 & 字體大小
實在搞不清楚 wine / crossover 是基於什么準則去決定字體的先后次序。剛安裝好 crossover 時, 中文字要不就是楷體, 要不就是方塊 (不能顯示)。還好 linuxsir.org 的 Archetype 提示了可以通過 "IconTitleFaceName=字體" 指定預設字體, 相關設定檔是 ~/.cxoffice/bottlename/drive_c/Windows/win.ini。修改/加入以下內容:
[Desktop]
IconTitleFaceName=AR PL New Sung
menufontsize=13
messagefontsize=13
statusfontsize=13
IconTitleSize=13

** wine 的話是 ~/.wine/drive_c/windows/win.ini

第一行指定 AR PL New Sung 為預設字體, 用 Windows 本身的新細明體的話可以改成這樣 "IconTitleFaceName=MingLiU"。字體名稱也可以用中文表示, 如 "IconTitleFaceName=文鼎PL新宋" 或 "IconTitleFaceName=新細明體"。其下4行都是指定字體大小, 我覺得13的大小看得最舒服, Windows 新細明體的使用者要留意該字體在13大小時是沒有 bitmap 的, 結果字體將出現線條斷續的現像, 所以應該設為12或14, 或者轉用免費的 uming 或 opendesktop-fonts。

crossover 的文件指出也可以通過 registry 來指定字體大小, 方法是更改:

[HKEY_CURRENT_CONFIG\Software\Fonts]
"LogPixels"="0x00000060(96)" ;預設大小
;"LogPixels"="0x000000078(120)" ; 覺得字體大小的話可以試試這個

** 注意這是二選一的設定, ";" 表示註解

4. 設定替代字型
完成以上幾步后, 基本上中文顯示已經很理想了, 但當系統找不到指定字體時還是會出現方塊字, 所以個別字體還要預先設定好替代。
[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"MS Shell Dlg"="AR PL New Sung"
"MS Shell Dlg 2"="AR PL New Sung"
"System"="AR PL New Sung"
"MingLiU"="AR PL New Sung"
"PMingLiU"="AR PL New Sung"
"simsun"="AR PL New Sung"
"Songti"="AR PL New Sung"


** 留意上面的描述是區分大小寫。

5. 中文輸入法
好像說 scim 跟 wine / crossover 都有一些相容性問題, 但我用的 gcin 一切正常也自然不懂得解決, 各位看倌如遇到問題請自行到各大討論區找找解決方法吧。

6. 補充資料
據說 mfc42.dll, msvcp60.dll, riched20.dll, riched32.dll 可以增加兼容性, 詳見此討論貼。然后下面是幾張截圖供參考。

(1) 這是預設的顯示效果。



(2) 這是 uming 12 大小



(3) 這是 uming 13 大小

星期五, 6月 29, 2007

發黃的照片 依稀的記憶



今天也真是閒著, 坐在窗邊, 看著窗外雨來了, 雨停了, 雨再下, 雨又停.... 丟了工作, 可以專心地想想自己的事, 想著我認識的人們, 想到了很久很久的以前。記憶中的人叫黃秋, 少說也有15年沒見了, 現在只可以憑藉照片加感覺來想像著她的面容。

15年過去了卻一直掂記著, 時不時想起, 為什么? 我一直認為, 人的記憶固之然是基於事實, 但人最后記著什么, 忘掉什么是沒有原因也不由自己決定的。記不起是什么時候開始跟黃秋說起話來了, 是二年級嗎? 她是一個經驗老師的孫女, 有點影响力的, 別的同學都說她有點嬌縱, 所以無論在男或女的圈子裡都不是很討人喜歡。我自已並不討厭她, 跟她算是比較多說話的, 但也就這樣而己。到了四年級, 男同學們認為男女應該有別, 為了不讓同學取笑我也就沒有跟她太多說話了。而讓我一直在意的, 是五年級時發生的一件事。

那時我們都是12歲左右, 開始對異性發生興趣的年紀, 但還是幼稚得很, 總是用反叛的行為來讓人注意自己的階段。那天一個自小跟我打架大的男同學, 不知什么原因碰撞上了黃秋, 還惹怒了她。於是一班男同學便湧了上去, 有的是看熱鬧, 有的是要插上一口, 我也趁了上去。不像其他人, 黃秋都是跟他們對罵著的, 在我也講了幾句欺負的說話后, 她停了口, 看了看我, 伏下哭了。不肯定是想像的還是真實, 那時她很委屈的樣子。當時我雖然不明所以然, 也知道過份了。后來想起, 像是明白了什么, 我是不是該人家失望了?

多年來一直在意, 一直念念不忘, 起初不敢去弄明白, 后來移民來了香港, 再回去時已經找不到黃秋了。15年過去, 現在就算再碰上也認不出對方了。遺留下來的這份記憶, 這份歉意還是我想像的重要嗎?

閒來想想舊事



今天是離職后第一天, 三年過后, 一下子放下了所有責任的感覺真是輕松, 可以一口氣睡到早上十點半。下午上不成深圳, 本來是要找同事吃飯的; 又沒什么好做, 下午便在家收拾東西, 也可以整理一下公司帶回來的雜物。

雜物堆中有一本紅色的小本子, 打開一看, 不就是4年前還在漁護署時的工作日記嗎? 其中有一句口號一直記著這么多年。

你地好, 中秋節快樂, 我地係自然環境推廣大使。請你地幫手保持效野公園清洁, 離開時, 請將垃圾放到垃圾槽內, 不要留在地上, 多謝合作。

那是第一次到城門水塘外勤的口號, 正是中秋節當晚。在漁護署那裡確實有過一段很愉快的時光, 因為那份不像工作的工作。每天都一大堆人聚在一起, 記得總共有200多人, 分成了不同的小隊。工作本身沒有壓力, 最初是野外求生訓練, 后來都是每天在山上跑, 對本來就喜歡行山的我們, 也就是每天都在玩, 不像工作。

以一份工作來看當時的人工是很低的, 也就$4000, 不像樣的工作。還好每天都呆在山上, 省下了午飯的錢, 工餘也沒有什么昂貴的消遺, 還是勉強能跟支出平衡。就這樣短短的2個月, 卻留下了讓人掂記著一輩子的感動。

星期日, 6月 17, 2007

Gnome 2.18 ...... done!!

Gnome 2.18 亦推出了一段時間, 現在 2.18.2 也出來了。不像以前, 這次沒有嘗新的興趣, 是因為 2.18 本來就沒什么特點, 也因為 ebuild 長時間被 hard masked, 也可能是看了一連串的 The Road to KDE 4, 風頭被一下子完全給蓋過了。

有說 2.18 展現了 incremental improvement, 但對於次世代的 KDE 4, 這些都不算什么了。KDE 在次世代版本的開發上走前了不少步, 早前放出了 alpha 的 Live CD {趁機推一下, LinuxTOY是一個很不錯的中文 Linux 資訊網 :)}, KDE 4 確實很令人期待。 我一直相信 KDE 的功能及穩定比 Gnome 完善, 特別是對於 Gnome 2.2 及更早期的版本, 但我受不了 KDE 3 很像 Windows 的預設界面, 及那些甜得發膩的主題/圖示....

前天 sync 完 portage 后看到了 2.18.1 的 ebuild, 想來也有幾個月沒有更新了, 就來了個 # emerge -uDav world。於是由前天開始一直 emerge 到昨晚才完成, 因為個別套件的問題其中有不少時間都浪費了。無論如何漫長的等待是值得的, 不是因為螢幕飛逝的編譯訊息好看, 是發現 2.18 改善了效能, 本來龜速的 gedit, gnome-terminal, gthumb 現在速度都還可以, 這感覺比什么功能特點更令 人興奮 :)

就這樣, 繼續期待 KDE 4 :)

星期五, 6月 15, 2007

zenwalk on old laptop ....... done!!

上回講到在一台舊手提電腦上安裝 win2k 的不愉快經驗, 這次則是嘗試一下 Linux。既然是這么舊的配備, 桌面環境只能向 XFCE 求了。由於一直都在用 Gnome, XFCE 其實是個外行, 因此這個求輕盈桌面之旅一點也不簡單。

花了兩天進行資料搜索, 首先找到 zenwalk 這個基於 slackware 的發行版。利用 VirutalBox 模擬了個 128mb 記憶體的環境來比較, 同是 XFCE, zenwalk 比 xubuntu 流暢太多了!!! 這就是KISS(Keep It Simple, Stupid) 的優勢?! 后來也發現了 KateOS, 感覺跟 zenwalk 很相近, 都是以 XFCE 為主要的桌面環境, 這裡 KateOS 官方有個比較。zenwalk 的速度我滿意了, 理論上能直接使用 slackware 的套件, 也由於官方文件比較豐富便選擇了 zenwalk。

跟安裝 win2k 一樣, 問題就在於沒有光碟機。因為是 Linux, "想必" 更麻煩了, 這是我最初的想法。原來只是我個性保守, 一時接受不了新概念, 雖然看懂了文件還是固執地認為自己不明白... 有關文件見這裡, 中文譯本見這裡

簡單來說就是利用 grub4nt 引導並啟動本來的 iso 映像檔。這裡假設了目標電腦上有一個可運作的 DOS/Windows 系統, 否則又將是另一個故事了。

1. 安裝 GRUB for NT
既然 laptop 本身安裝了 win2k 也就適合用 grub4nt, 相信這也最有意義的因為現在最普及的也就 win2k/xp。

1a) grub4nt 是沒有 installer 的, 但所需的 grldr & menu.lst 都包裝在 grub4dos 裡面, 所以首先要下載 grub4dos

1b) 將壓縮包裡的 grldr & menu.lst 放置到 C:\ 下(Windows 根目錄)

1c) 修改/加入以下項目到 C:\boot.ini, 目的是要用 ntldr 啟動 grub4nt
C:\grldr="Start GRUB"

* boot.ini 需移除系統/隱藏/唯讀屬性才能編輯 C:\> attrib c:\boot.ini -s -h -r
** 完成編輯後可以可以這樣還原C:\> attrib c:\boot.ini +s +h +r
*** winxp 的話可以更簡單一些: 控制台 > 系統 > 進階 > 啟動及修復 > 設定 > 編輯

2. 準備 Linux 啟動文件及光碟架構

2a) 首先下載 zenwalk installer iso, 注意是要 Standard CD, 不是 LiveCD。

2b) 將 iso 內的 kernel 及 ramdisk 放置到 C:\, 版本 4.6.1 的位置如下:

/kernels/ata/bzImage
/isolinux/initrd.img


* 留意 zenwalk 使用了新的 libata 系統, 無論 pata 或是 sata 都是 /dev/sdx
** 如果是 scsi 硬碟需用 /kernels/scsi/bzImage 的 kernel

2c) 將完整的 iso 解壓並放置到 zenwalk kernel 可以存取的分割區根目錄, 如 fat32, ext2, ext3 。我這裡就放到了 sda5 的 fat32 系統。

3. 編輯 C:\menu.lst, 也就是 grub4nt 的設定檔


title Install Zenwalk
kernel (hd0,0)/bzImage root=/dev/hda5
initrd (hd0,0)/initrd.img


* hd0,0 是安裝 grub4nt 的分割區, 也就是 Windows 那個
** hda5 是存放著 iso 目錄的那個分割區

4. 啟動及安裝
一切就緒就可以重啟嘗試進入 linux 系統, 如果設定無誤的話將如 cdrom 啟動一樣出現 zenwalk 的安裝程序。否則請根據畫面提示鎖定問題, 是找不到 kernel 或是 root 位置不正確, 然後逐一修正。有 grub使用經驗的都知道 grub 支援 tab completion, 利用這個功能可以即時告訴 grub正確的設定, 從而省去重新進入 Windows 編輯的時間。

不像 cdrom 啟動, 到這步時還不能繼續安裝程序, 因為還先要掛載放置了 iso 內容的那個分區, 讓系統認為真的有 cdrom 一樣。一般來說只要切換到其它 terminal 就可以 mount, 但不知道為什么 Ctrl+Alt+F1 至 F6 不能用, 結果只好先離開安裝程式, 然後再 mount :

$ mount -t vfat /dev/sda5 /zensetup
** /zensetup 是我建立的目錄, 這個掛載目錄必需在根目錄才行,否則 chroot 后便找不到

完成後以 # zenwalk setup 重新進入安裝程式, 之後除了在安裝來源時選擇 "Install from a pre-mounted directory" 並指明相應路徑外, 真的跟 cdrom 安裝沒有兩樣了。這方面官方的安裝指引說得很詳細, 需要看中文的 linuxsir.org 這篇文章。

** 我這裡還有一個問題, 可能是我的分區比較雜亂, 安裝程式不能正確偵測並將 lilo 寫到 mbr, 結果當然是不能啟動。最後只好再一次利用 grub4nt 啟動 installer 環境, chroot 到已安裝的 zenwalk系統, 手動設定並確保 /etc/lilo.conf 設置無誤後利用 #lilo -v 寫 mbr。zenwalk wiki 也有一篇修覆 lilo 的文章可供參閱。

5. 後記及其他
雖然花費了不少時間, 慶幸的是發現了zenwalk 這個可愛的 distro, 也感受了 KISS 的特點, 值得。雖然說 arch 及 gentoo 運行速度或者更理想, 但考慮到快速上手, zenwalk 還是更好的選擇。

由於 zenwalk 沒有內建合適的中文字型, 第一次啟動時的中文還真吓人。得益於 fontconfig 架構, 只要安裝好中文字型, 設定好 fontconfig (我是直接拿 ubuntu那個來用的) , 簡朴又不缺實用的中文桌面就出現了。

最後, 此文得以實現全靠一眾熱心網友的文章, 這裡僅列出幾個供參考 :
1. Install GNU/Linux without any CD, floppy, USB-key, nor any other removable media
2. zenwalk安裝筆記
3. 利用 GRUB4DOS 安裝 Linux
4. SlackWare10.1從(硬盤)安裝到配置(包括升級)全過程


最最後, 口講無憑, 還是自己看看設好的 zenwalk 是什么樣子吧 :)


星期二, 6月 12, 2007

我的旅行專用 laptop

從同事那裡得到一台舊手提電腦, 真的很舊了...
- P3-600MHz
- 128MB RAM
- 12GB HD
用來做作日常用途確實太慢, 加上電池在充滿的狀能也只用用5分鐘左右, 極其量也只是一台流動的桌面電腦而已。然而, 作為我的旅行電腦還是很適合的, 一來壞了不可惜, 本來也沒其它用途; 二來去掉了沒用電池后只有1.4KG左右, 不算重。本來有計劃要加 RAM, 原來已經沒有剩餘的插槽了, 不能加只能換, 想到只能以128MB替換64MB, 到底還是不花算也就作罷。

這樣的配備裝 win2k 就最好不過了。其實對於流動用途來說, win2k 比 Linux 確實有更大的便利性。但因為對 Linux 的深厚情義結(我想我並不是一個 Linux 人, 如果套用到這個道理的話), 也不能不裝上一個 Linux 系統。12GB的硬碟, 裝了win2k, 再裝 Linux, 大概還有6GB左右剩餘, 不多, 用來放放相片還是可以的。

安裝 win2k 的過一點也不順利, 由於沒有光碟機, 只能以開機片引導再硬碟安裝。我從來沒有像這天一樣覺得自已這么笨, 但我確實用了近4個小時才把 win2k 安裝好。主要問題是鍵入 winnt 安裝指令后便出現 "Setup was unable to install Windows Boot Loader..." 的錯誤, 很多個小時后才知道是 winme 的開機片不支援, 以 sys.com c: 一行指令證實了。改用了 win98 的開機片就沒問題了。結果到安裝完成一刻為止, 看看時間已經是午夜兩點了, 真笨! 想不到安裝 win2k 可以花掉一整個晚上。

星期日, 6月 10, 2007

Lonely Won't Leave Me Alone

剛才流了點眼淚, 現在的我很好, 學懂了哭, 這是個不簡單的成長。又倒了一杯啤酒, 這種感覺真痛快!

林子祥的 "千憶個夜晚", 現在是 "Lonely Won't Leave Me Alone"

by Glenn Medeiros

Why do I seem to be caught up inside a dream
All my life it's always been my shadow and me
Over my shoulder there's always a voice somewhere
Saying I never should try to set my heart free
I wish that love would come and take me in her arms
Show me what I've never known
Where I could hold someone words like right and wrong
Just fade away like yesterday

Lonely won't leave me alone
Lonely won't leave me alone
Why tell me why won't even let me fall in love
Oooooh everywhere I go always by my side lonely won't let me fall in love

I try and say I love you but the words won't come through
In my eyes see all the tears and sad memories
Why can't I start out new and leave that old feeling too far behind
I guess that lonely needs company around each bend of road
I'm thinking that in time there will be that rainbows end
But when I follow those self illusions
I find that it's only lonely and me again
 
Lonely won't leave me alone
Lonely won't leave me alone
Why tell me why lonely just keep my heart out of touch
Oooooh everywhere I go always by my side lonely won't let me fall in love
 
Only lonely and me again only lonely and me again
Lonely won't let me fall in love

Only lonely and me again only I wish that love would come
Lonely won't leave me alone and take me home lonely...
Lonely won't let me fall in love