google code-beautifer

星期一, 12月 31, 2007

管理grub 開機啟動程式

grub 是近代Linux 最常見的開機啟動程式,可以作多重開機,如一個windows加
兩個不同版本的Linux (兩個不同版本Linu可以共用 /home 跟 /usr/local) 。
重裝系統要是動到MBR的話,只要用liveCD 開機再把grub 重新寫到MBR 就可以了。

以Mandriva Linux為例,有裝winodws 2000 跟以後的winodws 系列都是在
/boot/grub/menu.lst 多加這一項就可以選擇由windows 開機:

title windows
root (hd0,0)
makeactive
chainloader +1

要注意的是64 bit 的系統雖然可以混用 32 bit軟體,但是grub核心要是裝的是64bit 的,就只得用64 bit 的LiveCD 來進行更新grub。目前我所知道的64 bit LiveCD 只有Mandriva one 2007 spring,可以在這裡找到:
ftp://mdk.linux.org.tw/pub/mandrake-linux/official/iso/2007.1/

重新寫入grub到MBR 按下面步驟操作:

先用LiveCD 開機,假如liveCD 沒有把系統磁碟 mount 起來,就要自己手動掛
載。沒有登入超級使用者的話記得要 su 。

然後用 chroot /mnt/系統根目錄掛載點
的方式來變更系統根目錄,假設系統根目錄/dev/hda2 掛載在 /mnt/hda2,那就先下達
chroot /mnt/hda2
再下達
grub
就會看到系統提示從 # 變成 grub>
然後
grub> root (hd0,1)
這個是指定系統根目錄位置,因為起點是從0 算起,所以數字會是比 /dev/hdx
的 x 小一
grub> setup (hd0)
這個把grub 寫上去 hd0 的MBR
最後在grub> 下達
quit

重開機後就大功告成了

近年來Mandriva 又替 grub 加上gfxmenu 的漂亮外觀。用法是在 /boot/grub/menu.lst 前面跟 timeout 那些參數並列。如
gfxmenu (hd0,2)/boot/gfxmenu
要是搬移系統根目錄到不同分割區時,要記得一並更動這裡的參數值

星期日, 12月 30, 2007

設定(X)Emacs中文環境參數

1.1 版

前言


在已完善中文化的Linux 系統如Mandriva 2008上跑big5跟utf8中文已不成問題。不過這兩個編碼系統都不夠好。要在Linux上跑CCCII等大字集編碼還有一段路,還是有必要仔細研究一下Emacs對中文設定(X)Emacs中文環境參數,這樣可以用Emacs來作大字集編碼中文的發展測試平台。

這裡針對討論近年來3個版本討論: xEmacs 21.5 及 Emacs22.0.50, Emacs 22.1.5 (支援unicode)。其中 Emacs 22.1.5是在Mandriva 新版(2008)上的測試結果(locale 設定: LANG=zh_TW.UTF-8)。其他是直接引用舊版的測試結果,應該是Windows上的Emacs。我不太確定當初locale 設定,我猜是LANG=zh_TW(意思就是big5)。Emacs以後的23 版的結構應該跟22.1接近,這裡專注在這個版本討論。

基本設定


Mule 在 win32 build 的 xEmacs 21.5 及 Emacs 22.0.50(跟之後) 都有內建。
查看設定值可由選單中選 Edit->MultiLingual "Mule"->Describe CurrentCoding system
( XEmacs 21.5 在 在選單 Options->Advanced (Customize) ->Emacs-> Environment-> I18n->mule
Emacs 22.0.50 在 Options->Customize Emacs->Top level CustomizationGroup -> Environment -> I18n -> mule)

  • Coding system for saving this buffer:
  • Default coding system (for new files):

兩者預設值都是 ISO8 -- iso-2022-8
Emacs 22.1.5 在這裡就看不到這兩個變數,我猜測是因為支援unicode造成的改版,實際上是否移到別的地方,或者可否自行在起始檔(如.emacs) 加入選項,還待研究。

Emacs 22.1.5相關的重要變數有

  • Keyboard Coding Syste (預設值: nil)
  • Default Input Method (設定值: chinese-py-punct-b5)
  • Current Language Environment (設定值: Chinese-BIG5)
  • Utf Translate Cjk Unicode Range (預設值: Cons-cell:
    Integer: 11904
    Integer: 55203
    Cons-cell:
    Integer: 65280
    Integer: 65519
  • Utf Translate Cjk Mode (預設值: t)
  • Utf 8 Compose Scripts (預設值: nil)
  • Enable Multibyte Characters (預設值: t)
  • Selection Coding System (預設值: compound-text-with-extensions)
  • Unibyte Display Via Language Environment (預設值: nil)
  • Describe Char Unicodedata File (預設值: )
  • Leim (預設值: )

XEmacs 21.5 相關的重要變數有

  • Current Language Environmen
  • Default Input Method


Emacs 22.0.50相關的重要變數有

  • Keyboard Coding Syste (預設值: cp950)
  • Default Input Method (預設值: chinese-py-punct-b5)
  • Current Language Environment (預設值: Chinese-BIG5)
  • Utf Translate Cjk Unicode Range (預設值: )
  • Utf Translate Cjk Mode (預設值: t)
  • Utf 8 Compose Scripts (預設值: nil)
  • Enable Multibyte Characters (預設值: t)
  • Selection Coding System (預設值: utf-16le-dos)
  • Unibyte Display Via Language Environment (預設值: nil)
  • Describe Char Unicodedata File (預設值: )
  • Leim (預設值: )

星期六, 12月 29, 2007

用 convmv 來轉檔名編碼

在某些情況下,Mandriva 安裝系統時會在家目錄下產生這些子目錄:
文件/
音樂/
桌面/
嚙賞面/
下載/
影片/
圖片/
看起來不錯,但是要是一開始地區設定成台灣但沒有把utf8的編碼選項打開的話,這些檔名會用big5 編碼產生,之後localedrak換成 utf8環境時,系統不會自去轉這些檔名編碼。

要將big5 碼檔案的檔名轉為 utf-8 碼這個問題可用 convmv 來解決,convmv 可對檔案名或目錄名進行轉碼。在 MDV 2008 中有收錄convmv 的RPM,安裝後就可執行 convmv

convmv --help 會顯示使用的方法及參數。比如 -f 及 -t 參數,代表了 from 及 to (來源/目的編碼)的意思。想要知道convmv支援那些編碼呢,可輸入:

convnv --list

就會顯示支援的編碼了,一般我們用的是 big5-eten 及 utf8 這兩個格式。


要顯示轉換一個檔名的編碼(如 big5 轉 utf8)的測試結果可用:

convmv -f big5-eten -t utf8 我的檔案名稱

要真的進行轉換的話,需加上 --notest 這個參數。如:

convmv -f big5-eten -t utf8 --notest 我的檔案名稱

要更改多於一個檔名的編碼話,最好將想轉換的檔案先備份到一個目錄下再轉換,然後執行如

convmv -f big5-eten -t utf8 --notest 我的工作目錄名稱/*

有多層目錄的話,可附加遞迴參數 -r 。

有時 convmv 在轉碼時可能會誤認認為已轉過碼,而不進行轉碼工作,像這個
嚙賞面/ 我就轉不出來。這時可試試加上 --nosmart 這個參數來強制轉換,如:

convmv -f big5-eten -t utf8 --notest --nosmart 我的檔案名稱

延伸閱讀
gnome 桌面上的"位置"如何設定

星期四, 12月 27, 2007

在 X-windows 上測試LCD 壞點

MS windows 上測試LCD 程式一大堆,但在X-windows 上測試LCD要麼辦?目前還沒找到完美的方案,不過這個非常接近了。
http://jasonfarrell.com/misc/deadpixeltest.php
只需要瀏覽器就行了。

看看什麼時候x-windows 會有像quickgamma 這樣的免費程式就好了

星期日, 12月 16, 2007

垃圾堆1

v1.0
Dev 16 2007

自由開放文件/軟體/教育跟Web 2.0 之可貴,在於集眾人之力,不同人見事有不同立場也在所難免,不過只要秉持君子之爭,揖讓而昇,下而飲,也都無所謂。

但是有些人自我膨脹的厲害。話不投機就算了,大不了我不要跟他來往但這些人還把別人的客氣當隨意,忍讓當默認,在自己網路地盤抹黑謾罵我不說,還故意找上門來挑釁。
這些挑釁謾罵的言論不值的浪費那些願意跟我一起成長的讀者的時間,不過為了保存歷史起見,特地開設一個垃圾堆區放這些言論。供好事者觀看台灣的挑釁謾罵文化。沒空就別浪費在這上。


-----------------------------------------------------------
這篇是
gnome 桌面上的"位置"如何設定
http://shelandy.blogspot.com/2007/10/gnome.html
某人的回應,網路資料如恆河沙數,沒有人能看完,我可沒有強迫中獎。有人譏諷我沒料,卻一天到晚盯著我看,不是自打嘴巴就是偷窺狂。他自己一手掌大權管理的論壇不好好經營,成不了大事卻來怨別人來轉移眾人注意力,這不是跟執政黨手法如出一轍?好事者可以去cle.linux.org.tw 的論壇看看這半年來的發展就知道了。


匿名 提到...

文章別放在網路就不會被看到了,放到網路就無所謂偷看。

兩手空空的人說別人沒有牛肉,還真是很可笑呀!

我有沒有玩自由軟體沒關係,你還要繼續針鋒相對的話,奉陪!


--
李果正
2007年10月26日 上午 4:11
---------------------------------------------------------

星期六, 12月 15, 2007

Zaurus 中文資源站

(原於 2007-5-8發表於http://www.palmislife.com/thread-76432-1-2.html )

Zaurus 是一台好機器,雖然停產了,但我個人覺得未來還有可為,只是會用其他的硬體形式出現(比如說Eee PC)。就像當初Next 電腦的架構在新一代的Mac OS 上重現。以前有很多義工對Zaurus 做了很多中文資源的貢獻,要是就此散失會是很可惜的,何況還有不少人還在用Zaurus 。

我最近把籌備兩年的 電腦 l10n 正體中文社群資訊網骨幹建立起來,除了推動各式各樣的中文資源開發跟分享外外,有一個對大家都有益的是程式介面翻譯reusability的問題跟解決聯合方案,這個可以藉由查詢前人的中文資源來加速翻譯的速度。這已經獲得包括台灣 mozilla, fedora ,...等各社群的支持,我希望Zauzus 的社群也能共襄盛舉。
比如說中文化的 PO/MO 檔,這些對Zaurus 網友有用的資料,對Linux或其他平台的開放軟體也是有挹注。分享出來可以達到魚幫水,水幫魚的加成效果。這個網站是建在台灣的學術網路上,所以沒有後顧之憂,可以做一個長期的存放場所。

Zaurus 的部份在
http://l10n.fsftw.org/zaurus/
要是您有資料願意分享,請跟我聯絡

星期五, 12月 14, 2007

免費掃毒軟體

基本上Linux 上沒啥病毒問題。有人問到Windows上免費的掃毒軟體,avast ,antivir 還不錯。http://www.av-comparatives.org/定時有評比。

Avira 的AntiVir 個人使用免費。這裡有中文簡易安裝資料,看圖說故事,小孩也會
http://pcr.tnc.edu.tw/~yh/antivir-ez/

試用的結果,AntiVir 目前比Avast 嚴密一些,不過假警報的案例也偏高,(結果常常更動,不需太在意)。Avast有中文介面。此外AntiVir還有Linux 版,我覺得在Linux 平台上掃毒會比較安全

星期四, 12月 13, 2007

(X)Emacs字體設定

Emacs


~/.emacs


(setq default-frame-alist
'(
(font . "-*-fixed-medium-r-normal-*-15-*-*-*-c-*-*-*") ;; 設定每一次開新的視窗(frame in Emacs) 都設定此一字型集
(height . 50)
;(width . 80)
(foreground-color . "Black")
(background-color . "Snow1")
(cursor-color . "Red")
)
)


Xemacs



在 Options -> Font size 下選完大小(比如說15pt)
再於Options -> 按 Save Options to Init File

~/custom.el 就會多出下的設定


(custom-set-faces
'(default ((t (:size "15pt" :family "Fixed"))) t))


當然也可以自行更改 ~/custom.el 裡的內容 但這只會更動選單以外的字體

星期三, 12月 12, 2007

跨平臺 設定使用Mozillia/FireFox

V 1.1

書籤


fireFox 1.5之後版本理論上可以用 LDAP 的 Roaming 設定或 webDEV作syncmarks。對一般人可能太不方便。 放到FTP 上可能比較方便。Linux 上 proFTP 或 Window 上的 WarFTP 都還不錯。但現在還不提供加密的ftp。

在War FTP上

  • 每一個使用者必須有一個「家目錄」,往往「根目錄」也就設為「家目錄」。這得在目錄顯示上用按老鼠右鍵把他打開
  • 使用者預設是無法FTP login 這得用老鼠在紅點上double click把他打開



  • 在Window 中文版上的階層是
    書籤(Bookmarks)->個人工具列書籤
  • 在 Mandriva Linux 上 連類似 "個人工具列書籤"的英文字眼都沒有

所以建議全改成英文的folder名稱,省得麻煩

Portable Firefox


問題是一但走出到電腦不是自己管的地方,如學校共用機房,機關公司辦公
室....這下就完蛋。一個補救的方式是乾脆自己帶一個隨身碟裝可攜性的firefox。

星期二, 12月 04, 2007

Cygwin 中文環境指南

很多東西靠虛擬機器作事還是不便,Cygwin 可以在windows 上執行unix 原生環境。不知道為何cygwin 很久沒更新了。下面舊資料還是很有參考價值的。

英文使用手冊


位於
http://www.cygwin.com/cygwin-ug-net/cygwin-ug-net.html

Cygwin安裝法:



  1. 連至 www.cygwin.com 下載 setup.exe
  2. 執行 setup.exe
    (註 見安裝技巧)
  3. 選取下載套件(必須要能連上Internet),
  4. 安裝套件
    (註 最好選取 All user)
  5. 點按 Cygwin 的 icon 圖示即可執行此一 Cygwin 環境。
    (註 視窗大小可由icon 圖示右點按 選取調整字型 及佈置)
  6. 執行 Cygwin

安裝Gnome


cygnome2.sourceforge.net 計劃停止,併入cygwin官方發行

  • 我的case 安裝gnome 1.4套件會跟 gnome 2.x 衝突 建議擇一而終

安裝技巧



  • 讓 cygwin 使用超過 128M 記憶體
    預設最多使用 128M RAM. 可用regedit.exe 在
    HKEY_CURRENT_USER\Software\Cygnus Solutions\Cygwin\
    新建一個 DWORD 名叫 "heap_chunk_in_mb" 其值為記憶體最大值 (in Mb)
    注意是 hex/decimal.
    見 http://sources.redhat.com/ml/cygwin/2001-04/msg00141.html
  • 中文字形
    待續...

如何在CYGWIN裡輸入中文


console部分


cygwin 在console下可以用windows 的原生輸入法 xemacs 即可輸入中文
測試環境

  • 中文Windows 2000
  • cygwin 1.5.7-1
  • rxvt 2.7.10-3

到Home目錄(通常是c:\cygwin\home\your login name\)在 .inputrc 檔案用文字編輯器加入下列指令:
set meta-flag on
set convert-meta off
set output-meta on
# set input-meta on
在 .bashrc檔案加入下列指令 (csh 或 tsch 使用者請參照語法自行修改)
export LESSCHARSET=latin1
alias ls="ls --show-control-chars"
alias crxvt='rxvt -fm "細明體-16" -fn "細明體-16" -km big5 -e bash --login -i'
存檔後重新進入後就可以輸入中文了

RXVT


直接執行 RXVT, 字形會變亂碼 改執行 crxvt (之前在.bashrc 加上的alias) 就沒問題了

X視窗


在 Gnome Panel 中 icon 的參數目前無法輸入中文 可改用下列參數
rxvt -fn MingLiu-16 -tn rxvt-cygwin-native -km big5 -e bash --login -i

一些常用的重要資訊



  • M$ window ao磁碟的 如c: 對應到 /cygdrive/c/
    但跳到 c: 也可用
    cd c:
  • 檢視packge:
    cygcheck 的作用類似於 linux 上的rpm 或 dpkg

星期一, 12月 03, 2007

streamtuner: 收聽網路電臺媒體的好工具

我覺得Smooth Jazz是長時間工作聽音樂很好的選擇,音樂串流索引SHOUTcast上很多Smooth Jazz電臺bitrate都有128 bit 。其實跟聽自己電腦上的MP3 是沒有差別的。我喜歡用streamtuner 來收聽網路電臺音樂。其實streamtuner只是個音樂串流的索引閱覽器,但是支援在國外流行的SHOUTcast 音樂串流索引,絕大部分的音樂類型像Jazz 古典,鄉村....都有眾多的電臺選擇。

streamtuner預設使用的音樂媒體播放器是xmms ,實在是老舊了一點。不過只拿來聽電臺音樂其實也還好。這兩者在Mandriva Linux 上都有現成的RPM ,安裝很容易。我曾試過用xmms 的新生代如Adacious來搭配streamtuner ,沒有成功。好像不太好搞。萬一xmms因故當掉的話,後面可能就跑不出來,這時後到家目錄下把 .xmms/xmms.m3u 這個檔殺掉通常就行了,xmms自己會重建。

以前還想辦法去給媒體播放器編網路電臺清單,現在乾脆就倚賴用streamtuner。反正電臺這麼多,聽不喜歡隨手就切換到下一個電臺。而且不用擔心網路電臺清單會失效,streamtuner會去抓最新的清單。音樂串流索引除了SHOUTcast 外,也可以支援Xiph。life365目前還沒試出來。不過除了收聽網路電臺,streamtuner也支援播放本地電腦上的媒體檔案。也支援電臺書籤。

beep-media-player-2其實也支援 SHOUTcast 電臺索引,不過我覺得沒有比streamtuner+ xmms 整合來的好,此外Rex 之前也替streamtuner做了streamtuner hinet電台外掛,不過我沒時間特別聽臺灣的電台,就不知道現在的情況。不過streamtuner不用外掛就可以聽台灣鄉愁網路電台,比起那些替執政者作爪牙造謠生事的電台,這個電台算是很棒的。一不小心聽到包美聖
唱的"那一盆火"時後面李建復合音的聲音,一時還頗有白頭宮女話當年的感慨。

順帶提一下,我配合xmms 用的佈景主題是aqua_x ,並非我是蘋果迷,而是用這種清爽的佈景主題在高解析度螢幕看起來會比較不吃力。推薦一下。

延伸閱讀
在Houston聽廣播電台

星期日, 12月 02, 2007

vnc 使用設定

vnc 可以設定在客戶端跟伺服器端用不同的解析度。比如在Linux伺服器端
/etc/sysconfig/vncservers
下設定
VNCSERVERS="display:username:-geometry:X解析度xY解析度"

比如說
VNCSERVERS="1:南線專案:-geometry:1152x864"

這裡X解析度xY解析度跟伺服器端實質的解析度無關。
我曾在1280x1024上的客戶端螢幕試過了像1152x884這樣的非一般性解析度。不成。

要注意的是VNC 的密碼保護跟所謂的"南線專案"的機密保護都只是個騙外行人的笑話,只對知識程度不高的人有用,別太當真。要真正保護安全,NX 是比較好的選擇。

星期日, 11月 25, 2007

本土自由軟體新專案 -- 南線專案

政府每每為了選舉,喊了一堆口號,其中不乏包括自由軟體的願景,大把錢也砸下去,但到底作出來多少?很多人心中有個大問號。真正有在作事的,往往是自立更生,到國外的網路服務下如google code,sourceforge 去為本土的自由軟體發展奮鬥,雖然這些人都不把本土掛在嘴上。

雖然我也已學著要去國外的網路服務下自立更生很久了。但像我這麼愛臺灣的台客,怎能不捧台客的場?所以除了之前作的那些專案外,我決定要在自由軟體鑄造場建立一個神祕專案(不可大聲宣揚,免得被啊多仔偷學了),名為:

南線專案
這是本土319 bit 彩色加密開放原始碼專案,對特定色彩會有鑑別性,只有透過綠色媒體才有辦法對加密文字解碼。 可針對敏感文字如內線交易,假文件,SOGO,三井宴,...自動加密成為一般人無法識別的不定長度中性文字,如北一女,甲君,愛臺灣,本土政權...。功能廣泛,非常適用於知識程度不高的人民。

專案內容目前還在演化中,歡迎鄉民們共襄盛舉。最後成果不管拿來作嘿嘿嘿電話加密,或是給清涼圖片加密都很好用。可是觸犯法律請自行負責。除非你能享有憲法第五十二條賦與的刑事豁免權,請不要輕易以身試法。

免責條款:
本專案係供台客免費使用,但使用本計劃產生的結果對您資料或本人信譽要是有任何傷害,本專案所有成員一概不負責。本計劃名稱或內容若要是與任何實際或虛擬專案雷同,則純屬巧合,概不負責。

有圖有真相:

星期六, 11月 24, 2007

歷史文件: 自由軟體 Funding Agency - 收爛攤

下面是4年前 Mon, 27 Oct 2003 14:22:22 -0600 (CST)在SLAT-talk 論壇上發
表的文章。照網友ghost原來的回信照登。當時被視為異類,對照該社團現在的發展,由此不難理解到社群健全對發展開放/自由軟體的重要,要是社群變成少數人的一言堂,再好願景理想的社群都會淪為名利/權力鬥爭的臭水溝。

看過這段歷史後,就不難瞭解,就算某人在某社群不玩跳到他處去另起山頭了,
要是整體社群沒有對組織改革的覺醒,還是成不了事的。所以會有"乃特"當初在諸多眾人不爽ICOS ,獨自力挽狂瀾推出受到好評的COSCUP ,到今天反而被某人準備興訟這檔事。

有興趣"乃特. 馮"他這邊的說法的人可參考:
COSCUP 2007 會後更新
或是他網站blog上其他更勁爆的消息

其他怨男怨女怨怨怨...參考
http://blog.gslin.org/archives/2006/08/11/686/
http://blog.markplace.net/marks_place/9/2006/10/24/148
http://blog.dragon2.net/2006/10/29/374.php
http://xuite-joke.blogspot.com/2006/10/coscup-2006.html

---------- Forwarded message ----------
Date: Mon, 27 Oct 2003 14:22:22 -0600 (CST)
From: 某人的舊電子郵件信箱
Reply-To: slat-talk@softwareliberty.org
To: slat-talk@softwareliberty.org
Cc: 軟自協 公開論壇
Subject: *****SPAM***** [SLAT-talk] Re: Re: [SLAT-talk] 自由軟體 Fundi ng
Agency - 收爛攤


On Tue, 21 Oct 2003, ghost wrote:

> > 斃了!我竟然沒有收到過下面這封信...
> > 難怪我看不懂 PFL 為什麼說:不要一竿子打翻一船人...
> >
> > --------------------------------------
> > Kuo-Chieh Ting wrote:
> >
>> > > 我一直在強調在建立良善的自由軟體預算政策 而不在學術界/ 政府主事機關有沒有分贓
>> > > 分贓嚴不嚴重 圈內人自然心知肚明 不用我這個外人評論
>> > > 沒有分贓 自然不受好的政策束縛 我只是不想淪為空談 替民意代表作作功課罷了
>> > >
>> > > 軟體自由協會的人都是這樣的態度對待社群朋友的建言嗎?
>> > >
>> > > 幽靈兄:都是你害我 好意心平氣和出來建言 結果一直被人誤解我的重點
>> > > 爛攤子你自己收吧
>> > > 你提到投書資訊與電腦的事 我寫信去問了 不過要是我被人硬劃成為光會開砲
>> > > 抨擊學術界/ 政府主事機關有沒有分贓的人士的話 這場戲就玩不下去了
>> > >
>> > > 我對自由軟體產業的完整看法會陸續更新放在我的blog
>> > > http://www.cs.uh.edu/~kcting/blog/ 上 有心人請自行參閱
>> > >
>> > > 有有心人 請注意好心的Andrew 於4 Oct 2003 18:44:47 在
>> > > http://list.softwareliberty.org/pipermail/slat-talk/2003-October/004090.html
>> > > 替我加上我原文沒有的小標題
>> > >
>> > > 有有有心人 請注意 07 Oct 2003 12:15:36在
>> > > http://list.softwareliberty.org/pipermail/slat-talk/2003-October/004170.html
>> > > 上 無視於稍早Ghost於06 Oct 2003 15:51:40在
>> > > http://list.softwareliberty.org/pipermail/slat-talk/2003-October/004145.html
>> > > 比較完整的列出我之前的建言( 附議Andrew 但沒列出Andrew自行加上的小標題)
>> > > 只提到Andrew自行加上的小標題 完全迴避我原文的預算政策重點
>> > >
>> > > 我早該聽舞蹈老師的話去練瑜珈和太極 身段太硬就是死的這樣難看 :-(
> >
> > -----------------------------------
> >
> > 先回答你上面這封信的問題:
> >
> > 1.好吧,爛攤子我來收,要是爛掉了,就全部推到垃圾集中區等垃圾車來收,反正我都不要了.
> > 2.對待社群朋友的建言?
> >  大家勉強都算社群朋友吧,把大官府軟體自由協會拖下水就太沉重了.
> >  (這個大官府真是 `~<>?!@#$%^ )
> >  不過...
> >  大家都有意見不同,想法不同的地方,所以我總是有最壞是"各自努力"的心理建設.
> >  話說回來,每個組合都有意見不合爭論不休的時候
> >  (list history 出現過很多,你不妨找一找,看一看當成消遣...)

這攤子收也太晚了吧 :-)一堆軟體自由協會朋友都早已跳出來講話 大哥您是真沒看到還是拿我消遣?其中以果正兄談的社群內資源取得及分配問題最一針見血
我對基金會或社團定位並無預設立場 但如現狀不改變 我會傾向支持基金會運作

我知道幾位都是好意維護自由軟體社群的向心力 但假如協會裡有人從作朋友變調到玩遊戲
總要有個遊戲規則 ( 依稀記得新黨最初的理想性就是被少數黨內大老用各種名目玩掉的,
以致於今天... Well我只是舉例啦 請不要說我強迫對號入座芸芸...)

我沒有拖軟體自由協會下水
一. 我就事論事 以非會員對協會裡成員的討論誠意質疑 不用"軟體自由協會的人"表稱
難道用"軟體自由協會的鬼"來表稱? (您老當然是唯一的例外)
二. 說(英)文解(中)字: "都"在中文裡可作英文裡always/often/mostly修飾用 也可當all修飾用
有人硬要套用後者 又把疑問句當肯定句來自我對號入座 我也沒辦法

這件事我該說的都說了 只希望大家到此為止 不要浪費大家時間在陪他人玩遊戲
落實在討論社群的願景及實行細節比較要緊 喜歡自我對號入座的朋友恕不奉陪

既然大哥自稱您骨頭硬 那我大膽來提 就下面大方向來討論 何如?
有膽就別走 可別像麥香雞...

以軟體自由協會為名 向政府募四千萬(其實是等著被打折到三千五百萬)
其中三千萬用於轉成立果正兄所擬基金會 方向於本土自由軟體發展規劃及整合
一千萬作下一代CLE/CLDP 基礎發展實際工作經費 (細節包括之前我們討論作 字型
轉換表...等) 成果皆具體由自由分享執照公開與全國文教工商及政府機構分享
以帶動整體社會資訊素養及產業轉型,....

基本上 我不願浪費時間在陪他人玩文字遊戲 有人誠心以待 我自然竭其所能以報
不然兄弟各自登山 我也見多了....我們來看看下面會怎樣發展下去吧

> > 3.你真的要投到資訊與電腦的話,跟我講一下,我來想辦法跟他們打個招呼,問他們意見怎樣.

資訊與電腦是大哥您建議的耶!你是鬧著玩的嗎? 我電子郵件十月六號就送出去了詢問還沒回音
我是不太確定對方的誠意 下一步就看你的咯!
黃泉路?免了吧 真要到那一天 我非同志也 比較喜歡有女鬼陪 :-)

> > 4.那你作者欄不妨加上我吧,陪你走上黃泉路,這樣有伴不錯吧 : )

> > 5.你身段太硬?有我的死人骨頭硬嗎?
> >
> > 回完了,來收爛攤...
> > 有意見的,自己加上去吧,我 overloading ,要 shutdown 送修升級了...
> >
> > ps:下面這個網址很多文字檔我都不能看 > < > > http://www.cs.uh.edu/~kcting/blog/opencontent/opensource/

那個是暫用blosxom架的blog 要用支援cookie的瀏覽器,
得先進 http://www.cs.uh.edu/~kcting/blog/ 才能往下瀏覽
blog我還是菜鳥 所以write back 等plugins 全不會動,... 正待有心人指點....

> >
> > -------------------------------------
> >
> > 這些東西,越來越難整理了...

基本上都是我在唱獨腳戲 要是月底沒有具體的訴求目標 何必強求現在就作結論?
重點是社群要自己討論出我們要的東西 現階段討論面要廣才有意義
下面的沒太多新東西 我暫且先回幾個零碎問題 其餘待有人提出新東西再後詳...

> >
> > 應該是過去一兩個月來,涉及政府及政府推廣計畫的討論中,比較重要的部分...
> >
> > 1.OSSF 可以有的作為:
> >
> > 臺灣社群要作大東西 中文介面的合作式開發除蟲回報系統是一定需要的
> > 政府應支援個專案把一套合作式開發除蟲回報系統(如 IssueZilla)詳細中文化
> > (包括文件和經理人才訓練)
> >
> > PS:反正 OSSF 本來就要有這東西不是嗎?
> > http://www.openfoundry.org/

openfoundry 算是5200萬經費運用裡比較有看頭的 不過愛之深責之切
既然已有 sourceforge 可以讓英文好的發展者用以發表 臺灣社群對
openfoundry 就要有比較高的本土化要求
有些東西不是擺在那裡就算數了 見之前我對openfoundry 的公開建議
希望他們真的會替台灣社群著想 而不是像其他機關又閉門造車
10月八號我回函openfoundry涂小姐及馬兒(兄?)tcliou (兄?)
在他們回應正式運作前我不便進一步評論

> > 2.社群有些的需求應被滿足:
> >
> > 有些重要工作是相關於軟體但非編纂程式碼
> > 如mapping table, document template, teaching/technical document,
> > 屬於opencontent, not opensource,...
> >
> > PS:誰該怎樣做以滿足這社群對這個議題的需求?

期中考提示: 美國NSF甚至有長期贊助電視節目的例子...


> > 3.政府應該扶助早就在做各種努力的社群,組織乃至於個人,而不是分錢給"只會開口要錢"的機關團體
> >
> > A.
> > 政府真有計畫經費要灑 是不是什麼單位可以把它承包下來 買幾顆硬碟作raid0+1/5
> > 把舊的 CLDP, study-area 之類的網站已建的文件作翻修基礎 外加文件索引的建立作未來目標
> > 剩的錢請人慢慢翻譯尚未有的文稿 這樣效率會比COSA 瞎從頭搞 來的好的太多吧
> >
> > B.
> > 以我們看到的內容 oss.org.tw 對自由軟體社群成果分享的效益擴散
> > 遠不如 www.linuxfab.com
> > 至少 linuxfab 有個超大的分類論壇供社群討論開放原碼軟體,而且經營甚久
> >
> > 要嘛 oss.org.tw 在年底前要作的比 linuxfab 還要好
> > 不然預算應該拿去補助 linuxfab.
> >
> > C.
> > 成立一個像「自由軟體/開放源碼辦事處」用來發放死人骨頭的單位,
> > 作為一個撥經費的單位 "Funding Agency",
> > 開放讓自由軟體社群來申請計畫 (如作字型、作轉碼表、作 HOWTO...etc),
> > 由這個中心來補助。
> >
> > http://list.softwareliberty.org/pipermail/slat-talk/2003-October/004181.html
> >
> > PS:當然最大的問題是:誰可以來審社群來提的計畫?
> > 我可以負責來送申請書,審的人不給我就罵誰 : ) <=不要當真,我很膽小... 這又落入人治至上的思維 但臺灣人治的水準實在 ... 所以我一直強調 要建立具體自由軟體政策及執行監督審計守則來校正 見之前對TCA linux portal 的示範批評及相關論述 > > 4.努力建立起政府對開放原始碼正確的觀念,使不被奸商誤導.
> >
> > A.
> > 強調建立社群聯繫對開放原碼軟體工業的重要:
> > 許多嵌入式系統廠商以為把linux 放到產品上而不管社群 顧客就會跑來 這是錯的
> > 遠見的哈電族及 Sharp 的 linux PDA 未能擴大市場就是一個例子
> >
> > ps:台北市電腦公會 Linux 促進會的阿里山日出計畫呢?是不是如出一轍?
> > http://list.softwareliberty.org/pipermail/slat-talk/2003-October/004074.html

我只問一句 這裡有誰去了嗎? 沒人去這個阿里山日出計畫就是白提了
社群要看的比他們遠 有太多更重要的事要作了 不用跟著他們跳腳
批評背後要有我們自己的一套經營策略支撐才會有力

幽靈兄要是有心 與其花時間在批評大家不太理的阿里山日出計畫
何妨提一個年度計劃預計表給大家讓大家有個具體時程概念參考 至少是以月為單位
火力可以比較集中

什麼時候預定開ICOS?有哪些要早在之前就要請大家協調的?
什麼時候在北中南開Linux群英會
什麼時候在北中南開linux體驗日(我們一般在美國都叫install fest 安裝華會)
什麼時候列預算 過去有誰拿了 ,....

有哪些機構媒體可以聯絡? Pchome, pcoffice, hopenet, dr linux, ../
四台加公視TVBS,.../中時, 聯合,../linux fab, cosa, TCA linux, III,
tnc,nici,研考會,教育部, 國科會.../那個立委,.../

這些全是重要的事 好像沒人理

沒有目標 行程 鎖定對象 我覺得都是在這裡亂放炮練中打 浪費時間
我寧願去寫程式還比較積極

(offtopic: 我之前提到要有人來整理資料 有人代回道 協會已有了全職的工程師
但跟我所預期的好像有點差距 舉例而言 我之前提了要求cccii.org
的資源十月九號發函到今天還沒人理我...更別提上面所建議的
要台灣有個健康的自由軟體未來 大家捲袖子自己來吧!)

> > B.
> > 不反對商業型態的開放原碼軟體 但政府不要掛羊頭賣狗肉 用自由軟體為名來作分贓的動作
> > oss.org.tw 很明顯應正名 oss.gov.tw "開放原碼軟體"網站之流
> >
> > ps:這我就真的不知道了,明明寫了經濟部工業局委辦了,還要弄個 .org.tw 的網址,
> >   這到底表示什麼?網站做爛了跟政府無關?政府不敢對國人說:台灣政府支持 FS/OSS?
> >
> >                             ghost 03'10/21
> >
> > --
> >
> > *請支持並參與 Freenix 伺服文件撰寫驗證計畫
> > http://www.freenix-server.info
> >
> > --
> >
> > 得 即 高 歌 失 即 休
> > 任 多 悲 愁 也 悠 悠
> > 青 松 影 裡 朦 朧 睡
> > 燕 飛 無 樓 月 已 鉤
> >
> >       風起雲湧II-幽靈
> >
> >
> > _______________________________________________
> > SLAT-talk mailing list
> > SLAT-talk@softwareliberty.org
> > https://list.softwareliberty.org/mailman/listinfo/slat-talk
> >

星期四, 11月 22, 2007

emacs-mule 內建中文輸入法 (v1.2)

v1.2 星期四, 一月 5, 2008

(v1.1 星期四, 十一月 22, 2007
v1.0 於 星期二 十月 19, 2004 12:22 pm 發表在
http://cle.linux.org.tw/forum/viewtopic.php?t=132)

quail


用quail選定輸入中文,在Emacs 下是在
Options->"Mule (MultiLingual Environment)->
在xEmacs 下是在
Edit->MultiLingual "Mule"->

xemacs-mule


下面是目前 xemacs-mule內建中文輸入法
在系統沒有裝中文輸入法的情況下,依然能在xemacs-mule用quail輸入中文。特別對實驗性的中文需求,如在新的作業系統或新的中文大字集環境,這點讓emacs 的內建中文輸入變成很重要。我會在這個主題下陸續討論相關的技術問題

chinese-4corner 四角號碼
chinese-array30 行列30
chinese-b5-quick 簡易
chinese-b5-tsangchi 倉頡
chinese-cns-quick 簡易
chinese-cns-tsangchi 倉頡
chinese-ctlaub 劉錫祥式粵音
chinese-ecdict 英漢辭典
chinese-etzy 倚天注音
chinese-punct-b5 標點符號
chinese-py-b5 拼音
chinese-py-punct-b5拼音及標點符號
chinese-qj-b5全角
chinese-zozy 零壹(標準)鍵盤注音
chinese-egg-pinyin
chinese-egg-zhuyin

衍生閱讀


skk 跟egg是其他兩個輸入法,非日文的資料不多,Wnn的繁體字輸入時需要 Chinese CNS character sets 這裡有一點消息

星期一, 11月 19, 2007

多重(X)emacs設置

一台機器上會有多少版本 ((X)emacs的設置?

  • 原生 win32 build Xemacs 及 emacs : 2
  • cygwin build Xemacs 及 emacs : 2
  • Linux Xemacs 及 emacs : 2
2+2+2 =6!
不過這都可以共用一個 fat32檔案系統下的 設置檔(etx2/3 或 NTFS 會有一些唯讀,...之類的麻煩)。不過在kernel 2.6.20出來後,ntfs-3g 應該就比較沒有問題了。小心的話可以讓 xemacs, emacs 設定共通部分寫在 .emacs,而且共用local-site lisp 目錄來放使用者自行加裝的套件。

  • 原生 win32 Xemacs 會在 C:\Documents and Settings\使用者名稱\.xemacs\custom.el裏
  • 原生 win32 Emacs 則是在C:\Documents and Settings\使用者名稱\Application Data\.emacs裏

參考

星期日, 11月 18, 2007

uft8 中文Linux 環境用 emacs處理Big5文件

emacs新版(22/23) 已經把utf8加入了。而且也有了gtk 支援,下面的技巧還是適用

假設是用了支援mule的新版emacs (non-mule xemacs 出不來)
在終端機下這樣執行:
#LC_LANG=utf8.tw_Big5 emacs

但 gnome 桌面上的icon不能這樣直接執行 . 變通方式是在
/usrl/local/bin 下做個script 姑稱之 emacs-21.4-BigInUtf8env
內容正如上所示
然後讓 gnome 桌面上的icon執行
/usr/local/bin/emacs-21.4-BigInUtf8env

(註: 原發表於CLE: 星期二 一月 10, 2006 1:11 pm
http://cle.linux.org.tw/forum/viewtopic.php?t=739)

星期日, 11月 11, 2007

用Emacs 開發C 程式 第三部分:cscope整合

用Emacs 開發C 程式 第三部分:xcscope整合

xcscope 可以讓emacs搜尋變數的過程更簡便。

比如說找變數 i ,直接用 ^S 會找死人 (i被太多變數包含了),用正規表達式找 \bi\b 又不太方便,xcscope 會把所有引用到變數 i的block 跟行號在另一個視窗*cscope*全部列出來,在*cscope*視窗中把鼠標移到其中想要跳過去查看的那一行,按滑鼠中鍵,主程式視窗列表就會跳到對應的那一行。

安裝:


rpm沒有包入contrib下的檔,所以去抓 tar ball 來用。而且要在.emacs 裡加入

(load-file "/usr/local/cscope-15.6/contrib/xcscope/xcscope.el")
(require 'xcscope)


使用


emacs在載入 C 程式時就會啟用 csope "模式",
xcscope會在當下工作的目錄裡產生cscope.out存放交互連結資料

xcscope在emacs 主選單下有以下選項
Find symbol (d) 列出所有參考到此符號物件的程式行
Find global definition (g)
Find global definition no prompting (G)
Find functions calling a function: (c) 列出所有呼叫此函式的程式行
Find called functions: (C) 列出所有被此函式呼叫的函式
Find text string:
Find egrep pattern
Find a file:
Find files #including a file:

上面這些命令可以用以 C-c s 開頭的按鍵來執行,如Find symbol是 C-c s s跟emacs 的increamental 搜尋不一樣的地方在於,xcscope會另外開一個緩衝區叫*cscope*把所有符合搜尋條件的結果作索引一次全列出來,

比較好的方式,應該是在C 程式緩衝區可以直接用滑鼠鍵叫出 scopse 選單,然後選搜尋選項。根據http://linux.die.net/man/1/xcscope的說法,可以用pop-up (button 3)menus 叫出 xcscopse 選單。問題是沒有一個叫cscope-mode 的東西,所以在C 程式緩衝區裡無法用Ctl 滑鼠右鍵叫出cscope顯示選單。只能在%cscope%緩衝區下針對有列出來的符號用滑鼠叫出cscope顯示選單。

對於這個問題有一個解決的方式是去 ~/.emacs 下自行定義類似這樣的全域鍵盤定義。要充分發揮Emacs 各個元件的功能,善用控制鍵/滑鼠是不可或缺的一環,參考Emacs / X window 鍵盤滑鼠定義

同樣支援 cscope的有cscope-fu, ecsope, 跟bscope。bscope號稱比xcscope.el好。

參見
CScopeAndEmacs
用Emacs 開發C 程式

星期六, 11月 10, 2007

Emacs / X window 鍵盤滑鼠定義

要充分發揮Emacs 各個元件的功能,善用控制鍵/滑鼠是不可或缺的一環。

當常常用emacs 寫作開發程式做某特定動作,就要按一大串鍵會減低效率。有一個解決的方式是去 ~/.emacs 下自行定義全域鍵盤控制鍵/滑鼠定義。不過要作到自行定義,要先瞭解整個環境是如何定義鍵盤的:

Emacs 控制字首定義


控制字首可以放在"任何"一般字元前,甚至滑鼠動作前,其中可以用下面簡寫

M- (meta)
C- 或 ^(control )
S- (shift)
A-(alt)
H- (hyper)
s- (super)
字首順序是可變換的 (M-C-x 跟 C-M-x 是一樣的意思)
可以用多次如 3*<right>跟<right><right><right>是一樣的意思
function 鍵字首可以寫到角括號裡, C-<down> 跟 <C-down> 是一樣的意思

X 視窗鍵盤定義


在我的鍵盤(PC105鍵盤)上
Alt鍵定義成 meta鍵
左視窗鍵定義成 super 鍵
右視窗鍵定義成兩層定義,第二層定義為Multi 鍵(一般所謂的 compose)
選單鍵定義成 Meta-X

其實還有Scroll Lock跟 Caps Lock 跟 SysRq。除了opera, 跟 virtual console ,...外 Scroll lock 跟 SysRq幾乎是沒用的廢物,雖不便澈底改變定義,不過也許卻適合在emacs挪用成其他定義。

要是要去X 視窗改定義的話是在/etc/X11/xorg.conf 下改動

Section "InputDevice"
Identifier "Keyboard1"
Driver "Kbd"
Option "XkbModel" "pc105"
Option "XkbOptions" "compose:rwin"
EndSection

設定是在選項
Option "XkbOptions" "新動作定義:原鍵盤設定"
如Option "XkbOptions" "ctrl:nocaps"
很多人把capsLock 當成 Ctrl,我覺得很浪費,因為可以拿來當別的鍵用

假如想要看當前鍵盤原始定義檔,執行
xkbcomp $DISPLAY
就會產生以 server-0_ 開頭的檔案如
server-0_0.xkb

Emacs 滑鼠鍵定義


滑鼠左鍵:選擇
滑鼠中鍵:貼
滑鼠右鍵:標示區間
Shift 滑鼠左鍵: 跳出 Font 選單(相當於Emacs 主選單->Options->Set Font/Fontset)
Shift 滑鼠中鍵: 呼叫 dird ,在檔名字串上按Shift 滑鼠中鍵可開啟這個檔
Shift 滑鼠右鍵: 沒有定義(這應該可以拿來自行定義常用的動作)
Ctl 滑鼠左鍵:跳出緩衝區選單供切換
Ctl 滑鼠中鍵:跳出文字顯示選單供更動顯示選項(相當於Emacs 主選單->Edit->Text Properties)
Ctl 滑鼠右鍵:應不同的緩衝區模式會有不同的回應。
在%cscope%緩衝區下執行會跳出cscope顯示選單供更動顯示選項(在HTML 或 C,... mode 就會跳出相對於Emacs 主選單->HTML/SGML/C模式的選單)

Alt 滑鼠鍵: 視窗管理(跟emacs無關)

Alt 滑鼠左鍵:拉動視窗
Alt 滑鼠中鍵:調整視窗長寬度,這在剛用C-x 5 2 啟動某視窗可是預設的長寬太小時很有用。要是嫌ecb 左邊frame 寬度佔去的比例太大,可以在緩衝區回應視窗裡去拉動分隔線調整比例。
Alt 滑鼠右鍵:視窗動作管理目錄(也包含前二者)

自行定義Emacs 全域鍵盤定義


全域鍵盤定義,有幾種不同寫法。在
XEmacs 與 Emacs傳統上 (version 19)用
(define-key global-map [(control f9)] 'cscope-find-global-definition)
(define-key global-map [(ctrl f9)] 'cscope-find-global-definition)
(define-key global-map [(meta f7)] 'cscope-find-global-definition-no-prompting)

XEmacs 與 Emacs兩者較新版(version >20)寫法
(define-key global-map (kbd "C-") 'forward-word)

Emacs 獨有的寫法
(define-key global-map [C-right] 'forward-word)

不過要小心自行定義不要跟別的套件定義打架。比如說
C-F3到C-F6,C-F8,F3到F8跟F11已被Xref定義過了。F1, F2, F10 被Eamcs 定義過了
有幾個X 視窗相關的鍵盤定義也要注意,如
X-windows
Ctl-Alt-F1 到F12
Metacity (無論有 Compiz 與否)
Alt-Tab, Alt-SPACE, Alt-F1,Alt-F2,Alt-F4,Alt-F5,Alt-F7到 Alt-F10,
Ctl-Alt-Tab, Ctl-Alt-d, Ctl-Alt+L, Ctl-Alt-加上左右上下鍵,
Ctl-Alt-SHIFT-加上左右上下鍵, PRINT, Alt-PRINT
Alt-ESC, Ctl-Alt-ESC (但在Emacs 被重新定義了)
Compiz 3D
Ctrl + Alt + 左鼠左鍵在桌面上拖曳, Super + 老鼠右鍵 , super + 老鼠
滾輪向上滑, Super + 老鼠滾輪向下滑, Ctrl+Alt+向下鍵按著不放,Ctrl+Alt按著不放+左右方向鍵

功能鍵剩下
F9,F12
shift-F1, shift-F5, shift-F7,
C-F1,C-F2,C-F7,C-F9到C-F12
M-F3, M-F6, M-F11, M-F12
super F1到F12

延伸閱讀


metacity 桌面管理員預設鍵盤快速鍵用法
Compiz 3D 桌面的使用設定
CapsKey
Emacs key binding help page
An Unreliable Guide to XKB Configuration

星期五, 11月 09, 2007

The Core Pocket Media Player (TCPMP)

The Core Pocket Media Player (TCPMP)是Palm OS上開放原碼的多媒體播放器,比起Sony 內建的播放器好太多了,支援多種格式如
Audio codecs:
Mpeg 1 LayerIII, Ogg Vorbis, Musepack, Wav(Adpcm, uLaw) AC-3
Video codecs:
DivX, XviD, MS-Mpeg4-V3, Mpeg-1
圖片:
MJPEG, JPG, PNG,TIFF
Containers:
AVI (*.avi), Matroska (*.mkv, *.mka), MP4 (*.mp4, *.m4a), Ogg Media (*.ogg, *.ogm)

安裝使用建議
1. 將TCPMP主檔及所有Plugin檔放入MS pro 卡或SD/CF卡內 的/PALM/Launcher/內
2. Sony的palm PDA要去http://aibohack.com/clie/modclieaud.htm 下載MCA v2.05 (檔案名稱:MCA2_05.prc)來提供Palm OS 5.2的音效。安裝後,還要到System Settings 設定裡的「MCA2」選項去啟動Install,指定某個應用程式使用MCA來做聲音處理。之後才會有聲音。
3. 把多媒體檔放入MS pro 或 CF卡 內自建資料夾內,這樣TCPMP就可播放。

惟一美中不足的是播放清單沒有好的介面。若偶爾還是要用Sony 的播放器聽音樂,那還是乖乖把音樂檔放到/PALM/Programs/MSAUDIO/內

使用以下這段影片在CLie TG-50 (200Mhz) 測試 0.72RC1
http://picard.exceed.hu/samples/RL_LQB_320x176_256_64.avi
得到以下數據
Average speed 149.65

benchmark FPS 35.92
benchmark time: 1:41.209

original FPS 24.00
original time: 2:31.459

以這個CPU 的速度而言,算是了不得的。我在Linux 上測,原檔案影音是同步的,但在 TG-50 上 就會有影音同步問題。裝了sonyhhe plugin/打開override AVI timing based on audio 也沒用,不知道是不是CPU 不夠力。但聽音樂是絕對沒問題的。 理論上要讓他跑的順一些,還可以用UDMH 或超頻之類的手段,不過我沒時間去試了。

http://forum.palmislife.com/viewthread.php?tid=47801&extra=&page=1
跟這裡
http://blogs.shintak.info/articles/4567.aspx
有一些benchmark 資料

星期一, 10月 29, 2007

Linux 的Palm及Zaurus Big5/Unicode同步解決方案

Palm OS5上面的中文是Big5,而MAC OS X /Windows XP系統上是Unicode,Evolution也是。直接拿PC 上的unicode 給Zaurus 有潛在的風險,見mfhsieh 寫的[分享] Zaurus 的 UTF-8 編碼

Palm跟Linux同步可以用jpilot 或Evolution + pilot-link (pilot-link 純粹是一個同步的管道)。jpilot則是自成一格的軟體,好處是可以在輸出時選編碼。

我偏好用Evolution,除Linux 外,不但支援Mac OS X,還有win32 版(2.8.簡易安裝版Calendar 好像還沒完成,不過現有2.16自行安裝版)。Mozilla 計劃的Thunderbird+lignting 的方案現階段還不成熟,就暫不考慮。但要把 pilot-link的Big5/Unicode同步搞定。pilot-link裡libpisync/util.c 裡面有這一段

#define PILOT_CHARSET "CP1252"

/***********************************************************************
*
* Function: convert_ToPilotChar
*
* Summary: Convert any supported desktop text encoding to the Palm
* supported encoding
*
* Summary: Convert from Palm supported encoding to a supported
* desktop text encoding. The Palm charset is assumed to
* be CP1252. This default can be overridden by the
* 'PILOT_CHARSET' environment variable.

所以暴力法就是在/etc/profile 下強迫
export PILOT_CHARSET=BIG5
讓輸出同步資料時編碼轉Big5。(注意BIG5大小寫)。其實應該可以用script來作。

這基本上是叫用 iconv ,所以我相信在zaurus 上,只要把這個port 到
KO/Pi(KDE Pim/Platform-independent)
http://sourceforge.net/projects/kdepimpi/
Zaurus 就可以同步Big5資料
不過我猜測可能要給glibc 瘦身,加入
/usr/lib/gconv/BIG5.so
/usr/lib/gconv/UTF-16.so
/usr/lib/gconv/UTF-32.so
/usr/lib/gconv/UTF-7.so
/usr/lib/gconv/UNICODE.so
這些檔...

目前Palm行事曆,連絡人,todo跟Evolution同步都沒問題,但在Evolutiong上的備忘錄(memo)摘要跟描述要完全一樣,不然無法同步。(palm 的備忘錄欄位較少)

星期六, 10月 27, 2007

Sony palm PDA 的軟體安裝跟其他PDA 基本比較心得

有人給我一台 Palm OS5 的舊clie TG-50 ,但是沒有安裝光碟,我在sony台灣網站上找不到軟體下載。感謝PALMisLIFE上網友MailCone 及mfhsieh 提供資訊我才順利完成軟體安裝。這篇是對那些熱心網友的回應。除了基本比較心得外,也對下一代PDA作一些推測。將分段刊出


基本軟體安裝

其中大部分的軟體需要去www.sonyclie.org 找,再針對個別需要Sony 美國的技術支援網下載換裝新版。

但www.sonyclie.org 需要寄電子郵件給管理員才拿得到帳號密碼。其中有原廠CD 的 iso 如tg50.iso,及個別的zip 如 SonyCliePC.zip。

原廠CD 的 setup.exe 程式會去執行 Palm desktop for Clie'.msi
Windows XP 會因為codepage 不同的緣故會找不到法文字母 e' 的檔名。直接跳過setup.exe,直接去執行 Palm desktop for Clie'.msi 是可以的。此外安裝完了時不會顯示正確的完成百分比。只有過一陣子強迫結束程式,重開機。

所以我改裝SonyCliePC.zip中的Clie Organizer for PC (1.0.040113.2)
Clie Oranizer for PC 會要求先去裝Palm Desktop 。不過 Palm Desktop for
Clie (1.00.031222.1)會有安裝完了時不會顯示正確的完成百分比的問題。裝完後,Add or remove Programs 就會正常出現CLIE Oranizer for PC 及Palm Desktop 。為什麼需要多一個 Clie' Oranizer? 因為 Clie' 有多個Clie' memo 提供非文字手寫筆記。這是Palm Desktop沒有的。

目前測試的結果,在英文版(但default codepage 改成中文,事實上等於中文版)上執行一般的同步沒有問題。

同步

第一次 hotsync 時 XP會去抓PalmUSBD,sys,在原廠CD \Drivers\Hotsync\裡有。
Inteliigence Sync Lite 在SonyCliePC.zip中的比較新(2003版),不過好像不支援 outllok express 的 address book 。

鍵盤

tg-50有內建小鍵盤,不過數字鍵要並用功能鍵才打得出,用注音輸入頗不便。但朋友的紅外線palm one universal wireless keyboard是可以搭配使用。上面就有獨立數字鍵,這是我找得到紅外線鍵盤搭配注音輸入最好的一個,裝上palm的驅動程式就能用了。理論上zaurus 也能用,不過還沒試成功。

大容量快閃記憶體支援

palm OS 據說只能認得第一個分割區。大容量快閃記憶體支援是一個問題。據說新版palm 機系統悄悄用了fat32,所以沒問題,有些人還自己把舊機系統改fat32也能用大容量快閃記憶體。Sony 的產品幾乎清一色用memory stick ,又貴又難用。據Sony官方說法,TG-50是不支援4G MS 的,而且2G 還得用高速的 MS才行,還不保證沒問題。真是爛。在美國看了半天,MS 比起 SD 卡還是天價。所以去網路標了片2G sony 的 high speed MS。等收到了再來更新使用心得。

clie 初步印象跟zaurus 與其他PDA比較

比較之下,palm 把最長用的小程式放在動態記憶體裡,切換速度很快。(1 秒)。這點的便利是那些需要 context switch 的大系統比不上的。zaurus 在這一點顯然比不上。出門在外要臨時找資料,palm 的反應時間會比較快。eee PC 就算CPU跑的快,恐怕也是一樣的情況。個人覺得1 秒內的反應時間是一個很重要的臨界點。想用個計算機去超市比價或算個小費要等長於1 秒就會讓人不耐。但是像查字典第一次啟動長於1秒就還好。palm OS 沒有真正的多工,切換反應時間變成瓶頸。
Palm Foleo 計劃掛掉了,無法得知他們對未來的想法。不過我覺得作業系統像palm OS 4/5 這樣有動態記憶體保留給專屬的常用軟體常駐是蠻重要的。

反應時間會比較快相對犧牲下的是功能性,palm一般人是用power run 之類程式把切換反應時間不太在乎的程式移到快閃記憶體裡,要用時再載入動態記憶體。等於回到了虛擬記憶體的作法。 但是每個連結要用去 lk 的動態記憶體。相對之下 TG-50 的 16M (只能用到11M)記憶體實在太小了。我連 gps程式都不太敢裝。而且這樣的做法不是系統原先就在API 裡規畫好的,不太穩定。有時會當機。

公開的手寫辨識程式跟實作資訊

最近在思考一些有趣的事情:中文的部首/字/詞是分別對應到英文的字母/字/詞。不知道中文詞的平均筆劃經過頻率統計加權後的結果會不會比英文詞小?(因為資訊傳達是以詞作單位,而不僅是以字作單位的任意組合)是的話,這到是半理論證明"中文輸入不會比英文慢": 所謂正體中文會妨礙科學進步的論調只是那些不深思熟慮的傢伙不經證明的夸夸之詞。我為什麼直覺這樣推斷?因為直覺上中文字形的的熵(entrop)平均值應該比英文字形的大。假如我的假說成立的話,以手寫來說,中文輸入會比英文快。

我的確是有在著手一些關連到中文的語料問題,這些是解決很多事的關鍵性基礎研究。不過對大多數的人而言,最重要的問題反倒是: 能不能有公開的手寫辨識程式?關於這點,目前看到公開的手寫辨識程式跟實作資訊有:

Palatis 寫了 Chrasis,似乎可以用滑鼠輸入。今年6月 的時候我曾試著在Mandriva 2007.1上編譯看看,但還不成功,後來忙就先擱著。

jserv 寫了這一篇從Chrasis 談手寫辨識引擎在移動裝置的機會,有提到一些相關的問題

歪林 (superylam@netcape.net)為了掌心雷跟百變小蒙恬寫了X Windows手寫板驅程程序及輸入法

根據網路上的說法,蒙恬筆豪華版(LLC 504)隨附的數位手寫版(型號FT-0405-U02),是由知名數位繪圖板廠商Wacom代工。而Linux 在wacom 的支援好像還不錯。臺灣的繪圖板就不知道。

繪圖板蠻貴的,我連每天要用的老舊交通工具都沒錢去修,一時沒辦法負擔得起這種昂貴的玩具。那天要是弄得到不管是臺灣或Wacom的繪圖板時,再來試試看把歪林跟Palatis的成果整合在一起。就看誰要先借我手寫版來開發了。

星期四, 10月 25, 2007

gnome 桌面上的"位置"如何設定

gnome 桌面上的"位置"如何設定

1.0 版 十月 25, 2007
2.0 版 Mar 17, 2008

Mandriva 最早是追隨 debian 的menu架構,後來逐漸轉移到XDG Menu System標準。2008有個工具在處理這些。不過我還沒找到在Mandriva 2007.1 上是如何處理這些。當時每次開gnome-terminal 都跑到~/Desktop 下。有點煩。反正現在升級了就不用管了。

Mandriva 2007.x


~/.mdk-folders
下面有幾個聯結
documents
download
music
pictures
video
就是相對應
"文件"
"下載"
"音樂"
"圖片"
"影像"
的位置

還有相對應的翻譯檔
documents-mdk.desktop
download-mdk.desktop
music-mdk.desktop
pictures-mdk.desktop
video-mdk.desktop

比如說我不喜歡桌面上的"下載"位置是指到 ~/Download/
想搬到 ~/Documents/Download/

我就執行
代碼:
rm ~/.mdk-folders/download
ln -s ~/Documents/Download ~/.mdk-folders/download

然後用utf8的編輯器如gedit 修改 ~/.mdk-folders/download-mdk.desktop裡的
代碼:
URL=file:///root/Download

改成
代碼:
URL=file:///root/Documents/Download

然後重新登入
(註: 用2007.1 當時,只登出/登入 gnome 我的雙螢幕左半桌面會怪怪的 系統重新啟動後就沒事)

Mandriva 2008


MDV2008 現在不用 ~/.mdk-folders了,新版遵從XDG 的式樣。如使用者名稱是加菲貓,那在
/home/加菲貓/.config
下面有 user-dirs

user-dirs locale
為保險起見,我用能判別編碼的編輯器來編輯
user-dirs locale 指定了locale 是
zh_TW
在~/.config/下的user-dirs.dirs檔裡面有幾個聯結,指定了桌面預設檔案夾名稱
XDG_DESKTOP_DIR="$HOME/桌面"
XDG_DOWNLOAD_DIR="$HOME/下載"
XDG_DOCUMENTS_DIR="$HOME/文件"
XDG_MUSIC_DIR="$HOME/音樂"
XDG_PICTURES_DIR="$HOME/圖片"
XDG_VIDEOS_DIR="$HOME/影片"

就是桌面位址相對應的
"桌面"
"文件"
"下載"
"音樂"
"圖片"
"影片"

我相信對應的英文檔名是
Desktop
Doucments
Download
Music
Pictures
Video
不過不太確定了

假如是在 utf-8 編碼, 對應
文件
下載
音樂
圖片
影片
這些位址檔名的逸出字元表示是
file:///home/加菲貓/%E6%96%87%E4%BB%B6
file:///home/加菲貓/%E4%B8%8B%E8%BC%89
file:///home/加菲貓/%E9%9F%B3%E6%A8%82
file:///home/加菲貓/%E5%9C%96%E7%89%87
file:///home/加菲貓/%E5%BD%B1%E7%89%87

假如是在 big5 編碼, 對應檔名的逸出字元表示是
file:///home/加菲貓/%A4%E5%A5%F3
file:///home/加菲貓/%A4U%B8%FC
file:///home/加菲貓/%AD%B5%BC%D6
file:///home/加菲貓/%B9%CF%A4%F9
file:///home/加菲貓/%BCv%A4%F9

(這使用者名稱加菲貓要換成對應的英文)

怎樣查utf8 中文的逸出字元


看到一堆逸出字元怎麼查誰是誰?後來發現一個方便的方式:用python

我在gnome-terminal 下用zh_TW.UTF-8的locale執行python,直接把字串輸入,就會傳回字串utf8編碼

$ python
Python 2.5.1 (r251:54863, Jan 14 2008, 13:07:32)
[GCC 4.2.2 20070909 (prerelease) (4.2.2-0.RC.1mdv2008.0)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> '桌面'
'\xe6\xa1\x8c\xe9\x9d\xa2'
>>> '下載'
'\xe4\xb8\x8b\xe8\xbc\x89'
>>> '文件'
'\xe6\x96\x87\xe4\xbb\xb6'
>>> '音樂'
'\xe9\x9f\xb3\xe6\xa8\x82'
>>> '圖片'
'\xe5\x9c\x96\xe7\x89\x87'
>>> '影片'
'\xe5\xbd\xb1\xe7\x89\x87'

假如是 big5 編碼,改用zh_TW 的locale執行 python

在Nautilus/gnome 下加入更多的捷徑


當然常用的位置不只這些,系統已在~/.gtk-bookmarks下預設了幾個,如2007時的
代碼:
file:///home/加菲貓/.mdk-folders/video-mdk.desktop

我們也可以自己加,如
代碼:
file:///home/data

在gnome 的檔案管理系統會用最底層的目錄名作為名稱顯示萬一不同目錄最底層的目錄卻同名的話,還可以用別名,如
代碼:
file:///mnt/win_e/data wine_e_data

不過一但加入更多的位置捷徑,文件/下載/音樂/圖片/影片這幾個就會從位置的頂層,移到叫"書籤"的下一層位置裡

延伸閱讀


用 convmv 來轉檔名編碼

關於轉移到XDG Menu System,這一篇有一些參考價值
http://wiki.mandriva.com/en/Development/Howto/MenuMigrationToXDG

附錄:


(註: 下面這篇本來名為"mandriva 2006 調校 "發表在CLE
http://cle.linux.org.tw/forum/viewtopic.php?p=2916&sid=b8971dc6c482b78f9ebdc05efdfa0069
不過那邊有人見不得人好,自己一點牛肉都端不出來,卻愛批評別人的燒餅會掉芝麻。還會不時偷看我的文章然後在網路上亂罵人,所以我就懶的過去修改了。時間久了就會自然證明孰是孰非。這只是作檔案存檔,不過gtk 跟更新的部分還是有效的)

有圖有真相

Google 正體中文搜尋 "Mandriva xdg" 這篇文章當時排行第一,現在還是前幾名(不過其他的不是我寫的,就是其他不相干的資訊)。其實我當時就有存檔,只不過跟大眾證明事實,並不比事實本身重要,所以沒有第一時間就拿出來,而是到改版把文章改的更好時才拿出來。那些只會亂批評別人的人,除了會第一時間跳出來罵人,口水一地外,長期看下來,什麼實質東西都沒有。努力工作時間寶貴,我不會隨這種人的污衊起舞,因為事實勝於雄辯。

想瞭解這些人的惡形惡狀,請參考垃圾堆1

星期日, 10月 21, 2007

用Emacs 開發C 程式

Version 1.1

(Oct 21: 1.0版)
(Nov.12 1.1版: xcscope 的深入討論獨立出來自成一節)

最近被學校猛操 C 程式開發,我覺得開發C 除錯的時間要比lisp長很多,非得找方便的開發除錯環境來幫忙不可。理論上我可以用eclispe或anjuta 這種大傢伙來開發,但我一邊開發除錯還要一邊作別的事,那些不是很方便。最好的選擇還是找能跟emacs 搭配的工具。

目前在emacs上裝了
ecb
xcscope
xrefactory (xref-1.6.10)
覺得工作起來順手多了。這三個各司其職:
ecb 比較接近快速的瀏覽 source code 整體本身
靜態的呼叫範圍相關問題用xcscope查
跟編譯比較接近的相關問題用xref
三者都跟emacs 的source buffer 緊密結合

除了這三者外,還有一些其他的工具,其中cbrowser好像很久沒更新。SimpleCallTree 我弄不出來,作者勸我用比較正式的工具代替。

Code Crusader 5.2.1 是商業程式。demo有兩種,一種是限制使用時間,另一種是限制最多開啟5 個檔案跟5 個視窗但還要註冊。我不是很喜歡。

Doxymacs等於是Doxygen + {X}Emacs。我根本沒時間好好弄文件,就先擱著。

還有一些不熟的地方,等日後弄通了再整理出來。參見CategoryProgrammerUtils

ecb


結合gdb, outline-mode...這些說起來話長,先放一張圖片供參考。下面會再提到。可以看到在History 視窗裡某些檔案icon 從綠點變成橘點,表示下面這些檔更動過
hmm.cpp
Point.h
其他沒有綠點/橘點的檔案(如chineseNL.txtP),是其他正在編輯但不相干這個工作目錄的。但在目錄視窗裡可以看到Makefile 被動過,所以在這會從綠點變成橘點,但不是emacs 弄的,所以不出現在History 視窗。


xcscope


跟著cscope 有個 xcscope ,提供cscope 支援,可以讓搜尋變數的過程更簡便。附圖可以看到xcscope 把搜尋viterbi 這個符號的兩個結果同時在%cscope%裡顯示

關於xcsope 的深入討論獨立出來,參見第三部分:xcscope整合。

XreFactory


XreFactory(下面簡稱xref)是 www.xref-tech.com 的產品。其中 c/java 是免費使用。現在是1.6.10版。
C/C++ 版現在是2.0.13版,只有八天合法試用期,過了就該買license。
參見http://www.emacswiki.org/cgi-bin/emacs-en/XreFactory

xrefactory 可以列出沒有用到的變數。當編譯時出現問題時,假如選擇查看 log 檔,*xref-log* 視窗會列出有問題的行。如同 cscope,這時用鼠標移到其中想要跳過去查看的那一行,按滑鼠中鍵或左鍵,主程式視窗列表就會跳到對應的那一行。

XreFactory會在~/下產生 .xrefrc

每次建立一個新project 時會產生一個以
[子目錄]
開頭的區塊,裡面可以設定 編譯的選項。我自己是把 make debug 放進去,在
Makefile 註明 gcc -g 好產生符號表供dgb使用。

三者整合使用


這兩者分別控制獨立相對應的主程式列表視窗。

假如螢幕夠大,建議開兩個frame ,其中一個執行 ecb ,一個不要執行 ecb。因為 xref切frame成左右兩個視窗,建議在沒有執行 ecb的frame執行xref 動作。在有執行 ecb的frame 下切到*cscope* 的 buffer執行cscope 動作

寫好直接在 emacs主選單下選 compile。
編完直接在 emacs主選單下選 tool -> debugger(GDB)

以我手上這個程式為例,跑到最後出現
Program received signal SIGSEGV, Segmentation fault.
0x00002b4736238eab in fclose () from /lib64/libc.so.6
(gdb) where
#0 0x00002b4736238eab in fclose () from /lib64/libc.so.6
#1 0x00000000004016d6 in main (argc=1, argv=0x7fff74d3e1a8) at test.c:488
(gdb)
所以就知道程式死在第488行附近

星期六, 10月 20, 2007

GCC 最佳翻譯徵求懸賞

在我的"現代中央處理器的C 整數長度"blog 文刊出後,蒙 jserv 立即回應參考 "理解 64-bit Programming Model 一文後,才發現了zonble 之前竟然blog了 本日金句:LongLong Long is Too Long」這篇妙文。我決定來個最佳翻譯徵求懸賞,共襄盛舉:

請中文翻譯 mjhsieh 當初碰到這一段gcc 編譯錯誤:
"test.c:22: error: `long long long' is too long for GCC"

原則上要詩/技(geek)意雙全為佳。

我會找幾位自由軟體社群中對文藝有涉獵的朋友作評判,有可能的話還會請一位
詩畫俱佳的藝術家前輩作評判。比賽截止日期暫定 2008 詩人節,我記得我手頭
上還有一本全新鹿橋寫的"人子"躺在某處箱子裡。要是找不到的話,至少會有一本 Linux的書作為獎品。

願意加碼提供獎品,或有其他促進更大參與層面主意的朋友,也請不吝賜教。



我先拋磚引玉:

測試點兮二二行, 編譯錯誤兮信息:
"長兮長兮長整兮、過長兮於姬兮兮"

(註: 行也可讀成 "行"走的音)

星期五, 10月 19, 2007

現代中央處理器的C 整數長度

最近要寫一些C程式處理大筆資料,有點擔心會整數溢位。
寫了個C程式試了下,發現很有意思的事

在AMD CPU 32bit Athlon gcc 4.1.2 傳回
bytes: char:1, int:4, long:4, unsign:4, unsign long:4, long long: 8

AMD 64bit Athlon gcc 4.1.2 傳回
bytes: char:1, int:4, long:8, unsign:4, unsign long:8, long long: 8

Sun Ultra sprac III (64 bit CPU) gcc 3.4.4 傳回
bytes: char:1, int:4, long:4, unsign:4, unsign long:4, long long: 8

看起來Sun 這版gcc 還停在 32 bit

其實一般應用 32 bit signed 整數(-2,147,483,648 到 2,147,483,647)已經蠻夠了。要省空間就用 short int 或 char


short int (2)
-32,768 to 32,767
(K& R 說是 -32,767)

unsigned int (4)
0 to 4,294,967,295

int (4)
-2,147,483,648 to 2,147,483,647
(K& R 說是 -2,147,483,647)

char (1)
256 character values

float (4)
1.2e-38 to 3.4e38

double (8)
2.2e-308 to 1.8e308

星期日, 7月 01, 2007

歷史文件: (翻譯)標準與社群的未來

以下是我2003 在軟體自由協會的論壇上發表的舊文,由於該協會經營不善,造成重要歷史資料遺失。只好在個人部落格重建部分內容,作為臺灣自由軟體發展歷史的見證。

---------- Forwarded message ----------
Date: Fri, 6 Jun 2003 06:33:28 -0500 (CDT)
From: 我的舊信箱
To: slat-talk@softwareliberty.org
Subject: (翻譯)標準與社群的未來

看到 幽靈 在 LinuxFab 談到Oopenoffice.org 1.3beta English version
Taiwan 被改成 China(Taiwan)而China 沒變成China(Mainland)
忍不住要回一下
http://www.linuxfab.com/indexForumData.php?FID=69 *註1

想要和大家討論一下該怎麼走

每次碰到這種事 有人就會反應 台灣沒參與開發自由軟體 所以使不上力
這也許是事實 但我們要如何做 以後才使得上力 是我更關心的問題

這不是嘴巴叫叫 熱心的hackers 就自動會冒出來
在阿貓阿狗也能變成熱心的hackers前 有好一段路 需要熱心的大家來打底

我想到現有的一件事是 建立標準草稿目錄 各式各樣的標準目錄

為何要標準: 可以交換回收用於其他類似的地方
如kde 的中文化選單 .po file? 可以給 gnome參考用
假如其他團體需要寄排版格式文書 Slat推薦哪幾種 pdf?, sxw?

為何要目錄: 事情太多了 必須分工 目錄是合作的依據: (權威管理's idea in library science)
如CCCII <-> unicode 3.1 mapping table list
.po 中文化項目也有上萬個 誰在進行linux哪部分文件翻譯?
沒有目錄 要合作在短期完成 如同靠天吃飯
為何要草稿: 事情不可能一次作到好 有個草稿可以逐次修正 (Prototype's idea in Software Engnering

我在藝術家與科學家間遊蕩 發現社群還有好大一段路要走 (不管台灣美國都一樣) 事情很多 其實閒置人力也不太少 麻煩是如何糾集大家(而且背景都不同)

hackers 通常只是會寫程式 不表示他們也擅長作其他苦工 其他人就該盡量和hackers 溝通需要幫忙的地方 讓hackers 就不用分太多精神在其他地方 但hackers 也最好花多點耐性解釋 技術上需要一般人幫忙的地方

UH linux 使用者協會 和Slat一樣 在網路上談純技術的時間遠少於談其他的時間 但我想在初期是正常的 因為有太多的事是有關於從技術上出發改造社會

我自己也在參與社群工作 目前在帶領 中國文學電子圖書館計畫(cell.cs.uh.edu) 有很多事也是在惶恐中作中學 網站該怎麼管? 設立論壇該用什麼軟體?
如何建立機制呈現管理標準草稿目錄讓義工分工?有太多的未知 (休士頓大學 linux 使用者協會BSD+php nuke春天被hack, slat 論壇之前被spam,... )
每一弱勢團體除各自專業的問題外 都有電腦技術上的疑慮 我衷心希望有一天 Slat 不但可以走出自己的一條路 也能有個網頁告訴其他團體在電腦技術上該怎麼作 網際網路的時代 弱勢團體在爭取特定的自由平等前 有賴軟體自由來構建凝聚族群

除了AI programming外 我也不太會寫程式 技術層面上的考量 還請開發程式的前輩指教

在公布標準草稿目錄後 就可以推動政策執行 一是法案面上 一是提供工具來促進 比如說邀集媒體定期來監督政府對的軟體自由努力 甚至白皮書支持願意替軟體自由背書的候選人
之前洪朝貴教授提的資訊分享障礙網站主意很好(只是名稱有再討論的必要)
有很多人必定樂於回報 ( 老問題 技術上如何作個bugzilla回報機制讓大眾參與?)
可以從政府機關網站開始監督 (記得順便向媒體公布該首長的大名)
在學校裡要是要求博碩士論文提供開放軟體的Style sheet,如 Tex 或 Openoffice.org
有一些人應該會投奔自由吧 慢慢就會像滾雪球般

有些人也許有疑慮Salt 與政治的參與 我想軟體自由不可能自外於政治經濟
重點在 為軟體自由參與政治經濟 而非為政治經濟參與軟體自由 許多人在 COSA
的OSS與Microsoft的立場表明的很清楚 不用我多說

大家辛苦了 一點拙見希望能拋磚引玉


-----------------------------------------------------
*註1

我在美國待了一陣子可以瞭解(但不諒解)為何會有這種錯
我建議大家(Slat)寫一個網頁供外國開發者參考比較有權威

如以地理國家分
Taiwan (big5,euc-tw,CCCII...)
China (gb2312,...)
Hongkong (big5-hkcs,...)
以主權國家分
ROC (big5,...)
PRC (GB,...)
PRC (Hongkong) (,..)
以地域分
China (Mainland) (big5,..)
China (Taiwan) (GB,..)
China (Hongkong) (,...)

細節可以再討論(獨派人士可能對第三項有意見)
但我的基本原則是兩岸的命名要對等 不能單向包括

星期四, 6月 28, 2007

Krusader

基本上 Krusader 就是跟以前DOS下的 Norton Commander ,後來Windows 上的
Total Commander, Linux 文字模式下的Midnight Commander 是一樣的雙排瀏覽檔案管理器。功能極為強大。Krusader 是qt 寫的圖形介面,我一般是在gnome桌面環境下搭配Nautius 跟emacs-gtk 來處理日常絕大部分的工作。檔案可以直接在彼此之間拉來拉去。其實這三者單獨都夠強大到單獨取代其他兩者去執行一些事,不過搭配使用更能讓我優游於從各種不同的工作方式角度來完成日常工作。

Krusader 支援多重分頁,管理多重目錄很方便,也支持網路上的目錄,舉凡sftp,ftp,samba...都可以用,管理網路檔案一如當地檔案。此外有兩個幾乎是殺手級的功能:一是把某個檔從RPM 一堆檔裡抓出來,一是把一個大檔自動切成小檔。

抽取式儲存裝置的考量:


不要在剛插入usb 儲存裝置就立即起動Krusader,那可能會把Krusader弄掛掉。等Gnome 桌面的Nautius正確辨認(跳出該儲存裝置的視窗)完後再啟動Krusader。

Krusader支援多重分頁,而且關掉後下次起動時還會記得上次分頁裡開啟處理的目錄路徑,不過要是分頁裡開啟處理的目錄路徑是usb 儲存裝置,最好先插入再啟動Krusader。不然他會抱怨找不到該路徑。

外掛程式


因為krusader 是為KDE 量身打造,有些設定用KDE公用程式對gnome 的使用者不便,要自己指定替代的公用程式,我有找到一些替代程式


  • General


    • kdesu
    • gksu
    • kget
    • gwget
    • kmail
    • 這個在下面選項會再出現,我還不知道如何用firefox 或evolution 去取代文字列的用法
    • krename
    • gwenrename,或是renameutils
    • locate

    • updatedb


  • Packers


    • dpkg

    • rar
    • 在http://www.rarlab.com/download.htm上有40天試用版
    • kmail

    • unace
    • 有免費版在http://www.winace.com/files/linunace25.tgz下載



桌面拖拉檔案的相容性


Krusader跟Nautius 也是可以直接拉檔案到gnome-terminal 或Emacs-gtk 下去處理。操作非常直覺。gnome-commander 跟Krusader互拉檔案也可以。不過我從 nautius 的檔案視窗裡拉照片到jUploadr不成問題,但不知為何就是無法從krusader 裡把照片拉過去。看來jUploader 對Krusader(或者是所有的qt程式)相容性不好。我發了bug 報告在
http://sourceforge.net/tracker/index.php?func=detail&aid=1626334&group_id=127771&atid=709422

其他的競爭者


Gnome-commander 已經相當接近Krusader 的成熟度,而且在使用介面上更直覺清爽,唯一沒有辦法說服我的地方是還沒支援多重分頁,目錄同步跟sftp 這三個重要的功能。不過我相信應該不久就會出現。

延伸閱讀


在Linux跟flickr間傳輸(照片)檔案

星期三, 6月 27, 2007

安裝使用VirtualBox: 執行虛擬作業系統的新選擇

V 1.0

前言


對我們這種常在某一種Linux 上工作,但偶而要跑其他作業系統去測試一些事情的人,單一機器多重開機雖然效能最高,還是有他不便之處(切換當時就沒辦法同時在習慣的系統下工作)。在一個作業系統下跑虛擬機器去跑另一個作業系統有時會很重要。

之前有跑過 VMware player ,但VMplayer 2.0 在我的64bit機器上有問題。替wine作好設定的 wine-doors 又跑不起來。 最近發現了Virtual Box:
http://www.virtualbox.org/
覺得還不錯。以下是VirtualBox 詳細安裝使用說明。不像有些禿鷹公司把別人完全開放的英文文件作個勞什子的簡單翻譯文件,就要去跟政府要大筆錢,還用PDF...等種種小手段去限制干擾大家使用;也不像一些喜歡偷看我文章卻又喜歡批評我的基本教義派,除了嘴巴叫叫些歪理,往往對他批評的領域卻一點實際技術的東西都端不出來。下面是細節毫無保留全都錄,希望對關心開放軟體的朋友有所助益,也希望受益的朋友也能飲水思源,秉持copy left 的精神去回饋自由跟開放軟體社群。

各種虛擬機器軟體的基本比較,可以參考
http://en.wikipedia.org/wiki/Comparison_of_virtual_machines
之後我會另文發表VMware, VirtualBox 跟Qemu 三者的細節比較 。

下載安裝程式


VirtualBox目前最新的是1.4版 有支援32 bit
VirtualBox-1.4.0_21864_mdv2007.1-1.i586.rpm.run
跟64 bit 版
VirtualBox_1.4.0_Linux_amd64.run
Mandriva 2007.1 上的RPM是1.3.8版,我發現1.3.8 設定沒有 USB,VRDP(遠端顯示) 跟Share Folder(分享資料夾),此外裝完後1.4 版後,1.3 版介面文字也會變成中文,建議直接去官方下載PUEL (Personal Use and Evaluation License) 版1.4.0。下面是以 1.4.0為示範。

1.4.0 預設目錄在 /opt/VirtualBox-1.4.0
也可以自行選擇,然後執行以下指令,如:
mkdir /usr/local/VirtualBox1.4.0
chmod +x VirtualBox_1.3.2_Linux_x86.run
./VirtualBox_1.4.0_Linux_amd64.run install /usr/local/VirtualBox1.4.0

他會要你看同意書後,鍵入yes才能繼續安裝。

裝完後在Mandriva 的gnome選單中,他會在應用程式->更多應用程式>模擬器下出現 Inno Tek VirtualBox的選項

在起動Virtua Box後
在Gobal setting 裡,你可能會在General 選項裡想改掉下面的路徑設定
VDI ~/.VirtualBox/VDI
Machine ~/.VirtualBox/Machines

之後就可以在Vitural Machine Manager 下,按下左上方的"New"圖示,建立虛擬機器影像

建立虛擬機器影像


在虛擬機器環境上, host表示實體機器上執行的主端作業系統,guest表示虛擬的客端作業系統。一臺虛擬機器少要有一個虛擬磁碟影像。客系統的虛擬機器磁碟影像檔,是放在主作業系統的檔案系統上。如果是放在Linux 的原生ext3檔案系統分割區效能應該會好一點。萬一虛擬硬碟檔要放在 FAT/FAT32 分割區下,則會受限於單一檔案不能超過 4GB的限制。以下是以英文版介面說明:


  1. 出現圖M2的"建立虛擬機器法師"畫面,再按"Next"圖示到下一步。
  2. 出現圖M3的畫面,提供選擇虛擬機器名稱(在設定網路時很重要)跟作業系統型態,再按"Next"圖示到下一步。
  3. 出現圖M4的畫面,提供選擇虛擬機器分配記憶體大小,(預設是168M,大一點的系統建議384M以上),再按"Next"圖示到下一步。
  4. 出現圖M5的畫面,提供選擇虛擬磁碟(預設是沒有磁碟),可以選"Existing"圖示去選用之前建好的。選"New" 圖示去叫出建立虛擬機器影像法師
  5. 再按"Next"圖示結束設定,出現圖M6的新畫面,這時候可以看到會多出 Setting,Delete,跟Start的選項。


這時候可以針對不同虛擬機器影像做個別內部設定

建立虛擬磁碟法師



  1. 在Vitural Disk Manager 下,按下圖D1左上方的"New"圖示,
  2. 出現圖D2 的"建立虛擬磁碟法師"畫面。再按"Next"圖示到下一步。
  3. 出現圖D3的畫面,提供選擇虛擬磁碟檔案大小是動態配置還是固定,(預設是動態配置Dynamically),再按"Next"圖示到下一步。
  4. 出現圖D4 的畫面,提供選擇虛擬磁碟檔案路徑名,(預設是NewHardDisk1.vdi)跟大小,再按"Next"圖示到下一步。
  5. 出現圖D5要求確認畫面,再按"Next"圖示結束設定



虛擬機器影像做個別內部設定



在 VirtualBox 主畫面中針對某虛擬機器影像按下"設定值"(Settings)圖示

  • 一般(General)
  • 客端若是Windows ,要在(advanced) 進階分頁底下,把ACPI 跟IO APIC這兩個選項都啟用,會省掉一些問題。
  • 硬碟
  • 最多可以掛載3個硬碟
  • 軟碟
  • 可以使用實體軟碟或是影像檔,包括進行系統開機
  • 光碟機
  • 只能模擬一台光碟機,但可以切換,可以設定使用實體光碟機或是 ISO 檔模擬實體光碟機,包括進行系統開機
  • 音效
  • 選用Alsa音效驅動程式
  • 網路
  • VirtualBox 網路能模擬 4 張卡。可在網路卡0的分頁中勾選
    啟用網路卡,一但主端對外能上網,客端不需作任何調整就能以NAT+HDCP方式上網

以下設定是1.4 版才有,後詳

  • USB

  • 遠端顯示(VRDP)

  • 分享資料夾(Share Folder)



最後按 "OK" 圖示完成設定,這時就可以在主畫面中選擇一個虛擬機器,按下"Start"鍵圖示就會開始啟動虛擬機器系統

萬一遇到 vboxdrv 無法正確載入,
VirtualBox kernel driver not installed. VBox status code: -1908 (VERR_VM_DRIVER_NOT_INSTALLED).
查查 nmi是不是有問題,是的話要在 kernel參數加上nmi_watchdog=0

安裝 Guest Additions



因為是虛擬機器, 客端顯示硬體驅動程式不是顯示真正的硬體,也無法裝自己的驅動程式。以我見過的例子:測試XP 客端上的裝置管理員上面列有二個不明裝置: 一個是顯示卡一個是不明顯卡 (實體主機上是nvidia)另一個是不明基本系統裝置。不過顯示正常,至少切到1024x748解析度沒有問題。

但要是安裝 Guest Additions 會使虛擬機器的驅動解析度與滑鼠整合操控性更好,如此一來,就不需要多按一下快速鍵就能把滑鼠移出VirtualBox視窗外。而且至少可以解決 nvidia Gforce 的問題(又多了個理由不要用ATI顯示卡),讓虛擬機器支援了更高的解析度 。從比較虛擬機器開機聲音的延遲程度,我相信這跟其他模擬作業系統軟體的外掛如WMware-tools 一般,會使得客端虛擬機器的效能更接近主端系統的效能。在1G Ram的AMD64 4000+上測試,安裝前Guest Additions竟然 Virtual Box CPU承載一直逼近百分之百!雖然同時跑其他程式如emacs還是很順,但看得還是有點心驚膽顫。安裝後,虛擬機器螢幕解析度提高到1152x864,但CPU承載掉到合理的60%

這是只有包含於 PUEL edition (Personal Use and Evaluation License) 而開放原碼版沒有的。安裝完PUEL版之後會在對應目錄下找到 additions/VBoxGuestAdditions.iso 預設路徑在
/opt/VirtualBox/additions/VBoxGuestAdditions.iso

C:\Program Files\InnoTek VirtualBox\VBoxGuestAdditions.iso

安裝時如果有掛載其他實體光碟或虛擬光碟映像檔,可能會失敗,最好先卸載其他光碟。啟動虛擬機器後,把VBoxGuestAdditions.iso當成實體光碟掛載到虛擬機器上,可以從Virtual Box下拉選單的 Devices-> Install Guest-Additions 去安裝。

常用快速鍵



  • F12
  • 在開機時選擇boot的媒體
  • 滑鼠點 2 下
  • 啟動視窗:將畫面主控權切換成虛擬系統。
  • 以下需要配合主端控制鍵,預設是右 Ctrl 鍵,也可換成如左Ctrl 鍵給右撇子方便使用

    • 主端控制鍵按 1 下
    • 跳出客端系統視窗。
    • 主端控制鍵 + f 鍵
    • 全螢幕/視窗模式切換。
    • 主端控制鍵 + Backspace 鍵
    • 在客端系統中模擬Ctrl+Alt+Backspace (Unix系統重新起動X 視窗)。
    • 主端控制鍵 + Fn 鍵
    • 在客端系統中模擬Ctrl+Alt+Fn,... (Unix系統切換到第號文字console , 1 <= n <= 12)。
    • 主端控制鍵 + Delete 鍵
    • 在客端系統中模擬Ctrl+Alt+Del(Windows 系統叫出程式管理員或重開機)。
    • 主端控制鍵 + q 鍵
    • 關機
    • 主端控制鍵 + r 鍵
    • 立即重開機(如同硬體reset )。



進階使用



USB裝置要啟用時,到視窗主選單裝置->USB裝置把要啟用的裝置按左鼠鍵選取使用。跟VMware 一樣,同時間主客端間只能有一個存取 USB裝置,從VirtualBox客端卸載USB 裝置後,主端系統就可以抓到該 USB 裝置,這樣可以讓主客端之間作資料的傳遞分享。

分享檔案夾的設定



除了USB 儲存裝置,可以使用分享檔案夾(share Folder ) 在透過內部網路分享儲存媒體(類似NFS或網路芳鄰)的方式讓主客端之間分享檔案。

分享檔案夾的功能可以在關掉連接外部網路的狀態上使用,就算關掉客端系統的虛擬網路卡對外連線,主客端仍然可以由分享檔案夾分享檔案。這麼一來,當有人想灌個windows 客端系統只用來執行少數Linux下沒有的應用軟體,但又怕windows系統客端曝露在連外網路的危險之中,就可以不用顧慮分享檔案夾上的windows系統客端一旦接上網路,就會有被來自外部網路上病毒、木馬等等惡意程式攻擊的安全性風險。


  • 主端上的設定

  • 可以透過GUI 或命令列來達成:先把一個虛擬機器架起來,把作業系統裝完後

    • GUI :在設定裡指定"檔案夾路徑"與"名稱",詳見下面說明:
    • 命令列:
        先關閉虛擬機器。
      1. (只有windows host 需要)假設虛擬機器叫xp,命令列開一個 command prompt 終端機視窗(Windows 系統下用cmd 叫出),切換目錄到 VirtualBox 虛擬硬碟存放的目錄。路徑可以參看一下當初VirtualBox 的 File 選單中的 Global Settings 裡面指定的虛擬機器集目錄,比如說
        /home/run/VB/Machines/,在該目錄底下可以找到個別虛擬機器相對應的目錄。如虛擬機器xp就會建立對應的子目錄 /home/run/VB/Machines/xp
      2. 用下列形式執行命令
        VBoxManage sharedfolder add "VM Name" -name "Share Name" -hostpath "路徑"

        VBoxManage sharedfolder add "xp" -name "again" -hostpath /home/run/again
          其中
        • VM Name
        • 指的是虛擬機器的名稱,如xp。要注意虛擬機器名xp,跟使用的虛擬硬碟名稱XXXYYZZZ.dvi 可以不一致。這裡要用虛擬機器名。
        • Share Name
        • 指的是自己在虛擬機器中定義的分享檔案夾名稱,如again
        • 路徑
        • 指的是要分享給客端的主端實體路徑名稱,如/home/run/again

      3. 其實可以直接修改系統設定檔,在該 VM Name 的目錄下,有個 VM Name.xml 檔案,如/home/run/VB/Machines/xp/xp.xml 可以用文字編輯器直接打開來編輯

    • 要確認設定的話,可以在終端機裡執行
      VBoxManage list vms
      看看會不會出現類似下面的字眼:
      Shared folders:
      Name: 'again', Host path: '/home/run/again' (machine mapping)

  • 客端上的設定

  • 啟動虛擬機器,開機完後在虛擬機器中

    • Linux

    • mount -t vboxsf again /media/VM
      其中again要和主端指定的分享名"again"一致,/media/VM是你想掛載的目錄。這也可以用/etc/fstab 之類的方式來變通掛載。
    • Windows

    • 把 \\vboxsvr\again 當成網路分享來用。(注意:不見得能用檔案總管直接上samba 網路瀏覽),這也有好幾種方式。用檔案總管下的tool -> map network drives 是一個方式,或打開一個 command prompt 終端機視窗,執行:
      net use x: \\vboxsvr\ShareName
      其中x:是你想在windows下看到的磁碟代號,而ShareName要和主端的分享名稱要一致,如
      net use z: \\vboxsvr\again
      注意在x:和\\vboxsvr之間需要加空白。


之後在虛擬機器上用Krusader或Total commander 之類的檔案總管打開網路儲存媒體,就可以看到分享檔案夾了。

星期一, 6月 25, 2007

在Linux跟flickr間傳輸(照片)檔案

有下面幾個選擇

FlickrUploadr
需要Python, Gtk 跟 /usr/lib64/python2.5/config/Makefile(MDK2007.1 在lib64python2.5-devel-2.5-4.1mdv2007.1.x86_64)

安裝:
下載軟體後解開,在目錄裡下達
python setup.py install

執行程式:
Uploadr

不過這些第三方的上傳軟體都得先讓Flickr知道。首先他們會讓你用閱覽器登入Flickr網站確認同意他們有寫的權限,
(日後取消可到http://flickr.com/services/auth/更改)完成後再回到程式裡就可以開始用了。

FlickrUploadr使用很方便,把想上傳的照片拖拉到它的視窗中就行。FlickrUploadr設計是一次傳一張。而下面的Juploadr是設計成多張一次傳。

Juploadr

JUploadr是用Java寫的,有分amd64跟i386兩個版(也有Mac跟windows ),裝上java就可以運作了,支援Flickr 跟Zooomr。

我把他在 /usr/local/下解開,執行檔是
/usr/local/jUploadr-1.1.2-linuxGTK-i386/jUploadr

/usr/local/jUploadr-1.1.2-linuxGTK-amd64/jUploadr
萬一原始設定上被系統路徑搞混,簡單的方式是去改這一行
JAVA_PROGRAM_DIR=""

把要上傳的照片拖拉到它的視窗中,等照片被拉進視窗後會顯示出每張照片的縮圖時就準備好上傳了。這時可在個別照片上按右鼠鍵,就會跳出新視窗供修改屬性,設定完成後按upload 就可上傳,全部完成後會跳出視窗通知。在照片只是十幾二十張時,反應延遲還算可接受。不過一次傳極大量張數時,顯示所有照片的縮圖就會很慢。我從 nautius 的檔案視窗裡拉照片不成問題,但不知為何就是無法從krusader 裡把照片拉過去。

Firefox Universal Uploader

這是依賴Firefox 的一個擴充套件,可以很容易的上下傳檔案到一些Web 2.0 網站。要上傳及備份flickr相片都十分容易。目前支援Flickr, Picasa, Youtube, Box.net(1GB of free space) Facebook。以後準備支援Google Videos, Webshots 。以下以Flickr為例說明。

它的外觀類似Krusader的設計,分為三大塊視窗:
本地端檔案及目錄會顯示在左邊視窗遠端的檔案會顯示在右邊視窗,在Flickr所建立的集合(set)會以目錄的形式呈現,進去就可以看到在該集合的相片。
下方分成兩個分頁用來顯示傳輸進度及資訊看板。以Flickr而言,在右邊視窗選擇檔案或集後,下方資訊看板就會顯示相片預覽,這時可以編輯相片的標題, 描述及設定權限。

如果想上傳一堆檔案,可以把檔案先選好(可以用ctrl ..等配合滑鼠),按右鼠鍵選擇upload一次上傳。只是目前不支援在遠端建立set的功能。要另外動手建立。
要備份相片只要反向傳輸即可。下載遠端檔案集合時,若本地端沒有對應的子目錄,系統則會自動建立。重覆的檔案名稱會自動附加上流水號。

星期日, 6月 24, 2007

MDV 2007.1 Multimedia Kernel 問題與解答

MDV 2006 時dkms用Multimedia kernel 沒問題,到了20907.0起後期就弄不起來。
嚴格說來這是因為新版multimedia kernel 的路徑換了名稱。只需要
cd /lib/modules/2.6.17.14-mm-desktop-5mdv
ln -s /usr/src/kernel-multimedia-2.6.17.14-5mdv build
ln -s /usr/src/kernel-multimedia-2.6.17.14-5mdv source
或者
cd /lib/modules/2.6.17.14-mm-laptop-5mdv/
ln -s /usr/src/kernel-multimedia-2.6.17.14-5mdv build
ln -s /usr/src/kernel-multimedia-2.6.17.14-5mdv source

dkms可能不會一次編成功所有模組,簡單方式就是重開機讓dkms再編過

不然就讀手冊自己去搞這些
dkms -m ati -v 8.37.6-1plf2007.1 build
....

星期五, 6月 15, 2007

安裝 flash 9 player 的正確解答

下面是在Mandriuva 2007.1 跟舊版 (可能是2007/2006) 上的經驗,其他以RPM
為基礎的發行版應該類似。我相信這可以解決長久以來對在Linux上安裝
flash9人云亦云的問題

RPM在此下載
http://www.adobe.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash&P2_Platform=Linux&P3_Browser_Version=Netscape4%20o

有安裝舊版的話,
先把舊的 (如/usr/local/mozilla/plugin下的)
libflashplayer.so
flashplayer.xpt
弄掉

MDV 2007.1之前的gcin舊版請升級,然後執行
urpmi flash-plugin-9.0.31.0-release.i386.rpm

裝的是64 bit MDV的話請見附錄

我在2007.1上測試,預設locale是 zh_TW.UTF-8,(所以這跟系統locale 無關)
安裝後,在firefox 網址欄打入
about:plugins
會顯示Shockwave Flash 9.0 r31
裝好後可以到此
http://labs.adobe.com/wiki/index.php/Flash_Player:9:Update:Full-Screen_Mode:Demos
欣賞諸如BCC 高品質的影像示範
http://www.flashcomguru.com/apps/fullscreen_player9/fullscreen.html
或者是去youtube 打開任一個分享影片,如
http://www.youtube.com/watch?v=1vc9SMCRrSk

之前MDV舊版用firefox 1.5.07 開flash 網頁裡純中文字會變成亂碼,如
http://www.taiwanmobile.com/index.html
這時候按老鼠右鍵,顯示的是英文flash提示
但在Mandriva 2007.1 上firefox 2.0.0.3 上中文字顯示正常。

當時有人說但如果使用 "env LC_ALL=zh_TW firefox" 啟動 firefox 顯示中文
就沒問題了。但當時我試了不成,字型還是沒設對。比對的結果如下

$ strings /usr/lib/flash-plugin/libflashplayer.so | grep -i big
-*-*-*-*-*-*-*-*-*-*-*-*-big5-*
BIG-5
bigEndian
big5
csbig5
cn-big5
x-x-big5
big5-hkscs
cn-big5
x-x-big5
BIG_ENDIAN bigEndian

2007.1 傳回的結果則是
-*-*-*-*-*-*-*-*-*-*-*-*-big5-*
big5
csbig5
cn-big5
x-x-big5
big5-hkscs
cn-big5
x-x-big5
少掉
BIG-5
bigEndian
BIG_ENDIAN bigEndian

$ strings /usr/lib/flash-plugin/libflashplayer.so | grep -i libgtk
libgtk
libgtk-x11-2.0.so.0

2007.1 傳回的結果則只有 libgtk-x11-2.0.so.0

我在 MDV 2007.1 下並沒有做任何改動 (預設Locale 跟之前一樣是
zh_TW.UTF-8)但完全沒有問題,建議之前有問題的人軟體升級

我發現在Mandriva 上真正的問題跟閱覽器Big5 Locale 沒有直接的關係,而是
在於字型的問題。一但我把臺北字型裝上,而且把他正確的設定好,就行了。作法請見安裝big5 中文點陣字型
http://shelandy.blogspot.com/2007/06/big5.html#links

我推測這是出在flash 9 想要去找big5編碼的(點陣)字 所以有些人在使用
fireflysung.ttf 替代 bkai00mp.ttf 能夠解決這個問題。http://www.ubuntu.org.tw/modules/newbb/viewtopic.php?topic_id=3535
只是剛巧fireflysung.ttf內含big5編碼點陣字。我懶的去交叉比對。要是有人確認的話,請通知一聲。

要想他發展的更好,可到Adobe 請願
http://www.adobe.com/cfusion/mmform/index.cfm?name=wishform

附錄:64bit 系統考量

目前沒有64bit的flash9,做法一是作業系統裝64bit的,但是瀏覽器的部份乾脆都裝32bit的(firefox, flash, java...)。做法,更誇張的做法二是另裝32bit系統然後用 chroot。

不過我覺得都不需要,64 bit MDV的話只要把下面這個nspluginwrapper裝起來就可以了。
http://gwenole.beauchesne.info/projects/nspluginwrapper/
MDV上有RPM,然後額外執行
nspluginwrapper -i /usr/lib/flash-plugin/libflashplayer.so
他可以把 32 bit firefox plugins 包起來, 提供 64bit 介面給 64 bit
firefox使用。大部份時候都很穩,但沒有支援Java Plugin 。

由這一點就可以看出Mandriva 易用的好處。BBS 上有一些對新手該用什麼發行
套件的爭論實在都沒有搔到癢處。這時候就可以看出Mandriva 的確是新手的首
選(老手選發行套件就都見仁見智)。

有人宣稱Java雖然有64bit版,但是不包含Plugin,尤其是要看一些線上串流的Plugin
幾乎都沒有32bit的。不過我還沒有碰到過這樣的情況,真的要的話,搞不好在wine下跑windows 或 VMware player 跑另一個 32bit linux 還比較方便

http://blogs.adobe.com/penguin.swf/ 中的
What's So Difficult? 64-bit Edition
http://blogs.adobe.com/penguin.swf/2006/10/whats_so_difficult_64bit_editi.html
提到一些移植32-bit軟體移植到64-bit Edition的問題,對用64bit 機器但考慮該用什麼bit 版本的人會有一點用處

延伸閱讀:
在64bit 2007MDV上跑32 bit 套件
http://shelandy.blogspot.com/2007/04/64bit-2007mdv32-bit.html#links

相關的討論見
http://freesf.tw/modules/news/article.php?storyid=3030
http://people.debian.org.tw/~chihchun/2006/11/02/flash-player-9-for-linux/
http://www.in-life.idv.tw/index.php?/archives/392-ae-flash-9-aecae.html

星期四, 6月 14, 2007

安裝big5 中文點陣字型

在安裝mandriva 2007.1 後,基本的調校之一包含了安裝臺北字型。
因為 flash player 9 跟有一些沿用X-windows 點陣字的軟體如舊版的emacs處
理中文還是需要,我把在MDV2007.1 上裝上big5編碼的臺北字型的過程記下供參考。

2007.1預設的是fonts-ttf-chinese-0.1-0.20060928.1mdv2007.1 ,這套
Unified Chinese True Type font是Arne Goetje 合併了文鼎的向量字跟螢火飛
的點陣字還有簡體跟香港字,之前在MDV2007上我跟Jim 討論的部份粗體中文字型的問題http://cle.linux.org.tw/forum/viewtopic.php?t=1637。
已不存在。我推測問題出在我們之前(2006, 2007.0)用的螢火飛新宋體 TTF 的
hinting 。我懶的去交叉比對,要是有人確認的話,請通知一聲。不過由於有
人不懂技術跟經營社群,又喜歡當"big brother" 在我背後以一付高道德標準的姿態講些五三四的,我不會在那裡繼續回應技術問題,省的麻煩,等著看又有某某再度步上CLE CLDP論壇的結局。要討論的請在這裡或到自由軟體技術交流網的MDV論壇。噴口水的文字就請免了。


檢查系統環境:

fc-list | grep AR 可以看到文鼎中楷跟細上海宋
fc-list | grep -i big5 看不到 big5

臺北字型是有包好RPM,先把 taipeifonts-1.2 的RPM裝上 ,內部檔案包括
/usr/X11R6/lib/X11/fonts/misc/taipei16.pcf.gz
/usr/X11R6/lib/X11/fonts/misc/taipei20.pcf.gz
/usr/X11R6/lib/X11/fonts/misc/taipei24.pcf.gz
/usr/X11R6/lib/X11/fonts/misc/taipeifonts.alias
/usr/X11R6/lib/X11/fonts/misc/vga12x24.pcf.gz

不過沒配置好 font.dir 跟 font.alias,要手工設定:
cd /usr/X11R6/lib/X11/fonts/misc/
mkfontdir
cp taipeifonts.alias fonts.alias
此外xfs 系統沒有把/usr/X11R6/lib/X11/fonts/misc/ 加入路徑群,可以直接
打開檔案 /etc/X11/fs/config 編修,或下指令 chkfontpath檢查

/usr/share/fonts/misc:unscaled
/usr/share/fonts/drakfont
/usr/share/fonts/drakfont/Type1
/usr/share/fonts/drakfont/ttf
/usr/share/fonts/otf
/usr/share/fonts/ttc
/usr/share/fonts/75dpi:unscaled
/usr/share/fonts/100dpi:unscaled
/usr/share/fonts/Type1
/usr/share/fonts/TTF
/usr/share/fonts/Speedo
/usr/share/fonts/default/Type1
/usr/share/fonts/default/Type1/adobestd35
/usr/share/fonts/TTF/dejavu
/usr/share/fonts/TTF/latex
/usr/share/fonts/ttf/decoratives
/usr/share/fonts/ttf/western
/usr/share/lilypond/2.11.20/fonts/type1
/usr/X11R6/lib/X11/fonts/misc

要確定/usr/X11R6/lib/X11/fonts/misc在路徑群裡面.
設置好後,重啟動X 視窗
xlsfonts | grep -i big5 就會看到
-default-ming-medium-r-normal--16-160-72-72-c-160-big5-0
-default-ming-medium-r-normal--20-200-72-72-c-200-big5-0
-default-ming-medium-r-normal--24-240-72-72-c-240-big5-0
-taipei-fixed-medium-r-normal--0-0-75-75-c-0-big5-0
-taipei-fixed-medium-r-normal--16-150-75-75-c-160-big5-0
-taipei-fixed-medium-r-normal--20-200-75-75-c-200-big5-0
-taipei-fixed-medium-r-normal--24-240-75-75-c-240-big5-0
-taipei-ming-medium-r-normal--16-160-75-75-c-160-big5-0
-taipei-ming-medium-r-normal--20-200-75-75-c-200-big5-0
-taipei-ming-medium-r-normal--24-240-75-75-c-240-big5-0

成功後,emacs 不用額外設定直接看到中文,firefox 開flash 網頁老鼠右鍵中文選單也沒問題。

延伸閱讀:(後續)
安裝 flash 9 player 的正確解答
Emacs 編輯中文設定
Java 中文字型設定

星期二, 6月 12, 2007

在OpenOffice.org 中文計劃上歷史的今天

參與 OpenOffice.org 中文計劃的人,甚至臺灣開放軟體社群不參與OpenOffice計劃的人,大概很難不注意OpenOffice中文計劃第一任管理員黃沛霖的講話。在那麼多正體中文跟簡體中文言論上的衝突場合裡,先不管誰是誰錯,我覺得他是極極少數能讓雙方都能平靜下來聽他說話的人。像較於一些只會高分貝雞同鴨講的基本教義派,他光是這點我覺得就很難得的。相對於臺灣一堆都在正式的OpenOffice.org 中文計劃之外打轉沒有進入核心的人,這幾年參與OpenOffice.org 中文計劃的簡體字人數優勢漸漸超過用正體中文的義工,不過相處還相當融洽,這是非常難得的。很可惜他因為個人因素即將要卸任,對於臺灣OpenOffice.org 的社群,甚至開放軟體社群,我覺得臺灣都不見得有人能取代他對正體中文 OpenOffice.org 的助益。對我的感覺,就像 Keith Packard 從 Xfree86.org 離開一樣。只不過Keith Packard 當年是被迫的,黃先生是主動的。

很多事情我不能明講, 這只有長期在中文 OpenOffice.org 待的人才能體會。很多事不是我一個人能控制的,所以我在OpenOffice.org 中文計劃開發者論壇留了一個回應,留待幾年之後大家回頭來看這個事,就知道什麼是我不能明講的。

-----------------------------------------------------

黃兄作為第一任中文計劃管理員,從無到有開創了目前的局面,我覺得非常難得。我個人從一開始就參與OOo中文計劃,覺得在參與者裡少有像黃兄這樣熱心的,黃兄退下這個位置是OOo中文計劃的損失,不過也祝福黃兄個人前途大展。

之前有些長期參與的義工也很熱心竟然都沒有出來接這個位置,現在有人出來接當然是很好。只有一點小小的想法: 希望借這個第一次轉換的機會,為將來更好的發展打下基礎。我對誰來接沒有什麼意見,這主要是程序的問題,其實黃兄要叫誰接,我想也沒有多少人有異議。不過既然黃兄特別提到用民主的方式,我希望藉此建立起一個好的制度,讓OOo中文計劃以後的管理員,都能基於前人的基礎愈做愈好。真正的民主不是嘴巴高喊"人民"或"社群"口號,而是能真的在這些小節裡落實:

1. 贊成/反對票到時會不會公開計名? 不公開計名的話,票是寄到黃兄的哪個私人信箱去?
2. 贊成/反對票是針對個人投兩票,還是對這兩個人整體投一票?

Pui Lam Wong 提到:
> > 各位好。
> >
> > 因為個人時間不足,固在與 OpenOffice.org Native Language Confederation 主席 Charles-H. Schulz、副主席 Louis Suárez-Potts、一些中文計劃成員、以及一些自由軟體人士討論後,決定任命兩位新主席共同掌管中文計劃:洪宗勝博士及 Cheng Lin。
> >
> > 二人簡介列於此信之下。對此一決定無反對意見者,請回覆此信並於回信第一行寫上「+1」。若有反對者,請於回信第一行書「-1」,並請書明原因。有問題者,請回信發問。
> >
> > 表決期為七日。即表決將於北京時間 2007年6月19日 23:59 終止。若讚成者多於反對者,此一任命張於 2007年6月20日 00:00 生效。
> >
> > 在下手頭上所有的重點資料皆在下面,若有重要遺漏,請 Mr. Lin 及 洪博士回信補足。
> >
> >
> > 黃沛霖上
> >
> > -----------------------
> >
> > 洪宗勝
> > ===
> > 洪宗勝博士,號威豆,網上人稱「威豆博士」。1987年得清華大學核子工程博士之位。2000年,成為 RedHat Certified Engineer 及 RedHat Certified Examiner。2003年當選(台灣)軟體自由協會第二屆理事,及(台灣)開放系統協會第六屆理事。2002 - 2003 年間多次應邀到不同大學及組織演講與推廣自由軟體。2004年為(台灣)資訊工業策會顧問,輔仁大學資訊管理所助教,青年國是會議自由軟體題之専家證人,後為晟鑫科技總經理。2005年,與 Firefly 等人共同發起「中文OSS 桌面應用增進計劃」(http://opendesktop.org.tw)。2006年當選開放系統協會第七屆常務理事。
> >
> > Cheng Lin
> > ===========
> > Cheng Lin 於 2001 至 2004 年間掌管 RedOffice 之開發及發佈。後於 2006 年,成為 OASIS UOML (http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=uoml) 及 Chinese UOF (Uniform Office Format) Standard 組織之成員。同年,始掌 RedOffice 之人手及以 OOo VCL TestTool 完成之自動測試。

星期六, 6月 09, 2007

metacity 桌面管理員預設鍵盤快速鍵用法

meta city 是目前gnome 桌面預設的視窗管理員,雖然大家慢慢有遷到compiz 或beryl 等3D "桌面管理員"的傾向,但對一些老的顯示卡沒法跑 3D 桌面的,metacity 還是不可或缺的


  • switch_windows 在提示模式下於桌面上的所有開啟程式間切換
  • Alt-Tab
  • switch_panels 在提示模式下於桌面上的所有面板間切換
  • Ctl-Alt-Tab
  • cycle_windows 於桌面上的所有開啟程式間立即切換
  • Alt-ESC
  • cycle_panels 於桌面上的所有面板間立即切換
  • Ctl-Alt-ESC
  • show_desktop 切換在工作區隱藏/顯示視窗
  • Ctl-Alt-d
  • switch_to_workspace_left 跳到左邊的工作區
  • Ctl-Alt-向左鍵
  • switch_to_workspace_right 跳到右邊的工作區
  • Ctl-Alt-向右鍵
  • switch_to_workspace_up 跳到上面的工作區
  • Ctl-Alt-向上鍵
  • switch_to_workspace_down 跳到下面的工作區
  • Ctl-Alt-向下鍵

    以上四個功能加上SHIFT鍵 會同時把視窗移到相鄰工作區

  • activate_window_menu 啟動工作視窗選單
  • Alt-SPACE
  • toggle_fullscreen
  • disabled
  • toggle_maximized
  • disabled
  • toggle_shaded
  • disabled
  • close 關閉工作視窗
  • Alt-F4
  • minimize 最小化視窗
  • Alt-F9
  • begin_move 啟動移動視窗模式
  • Alt-F7 (可以用鍵盤或老鼠移動位置;或者直接按Alt- 跟老鼠左鍵不放後,用老鼠拖曳移動位置)

  • begin_resize
  • Alt-F8 改變視窗大小
  • 從最大化視窗還原原大小
  • Alt-F5
  • 視窗最大化
  • Alt-F10
  • Alt-F1

  • Alt-F2

  • 擷取全螢幕快照
  • PRINT
  • 擷取視窗快照
  • Alt-PRINT


其他相關

  • 殺掉 X 視窗
  • Ctl-Alt-BACK
  • 重開機
  • Ctl-Alt-DEL


衍生閱讀
Compiz 3D 桌面的使用設定
Skippy -- 快速視窗切換應用程式

星期五, 6月 08, 2007

在Emacs 上用正規表達式(Regular Expression)

前言

我痛恨Computer Science 一堆老師的位子都被有辦法的外系背景的人佔走,這些人又不懂電腦實務,結果搞出來的電腦教育七零八落。變成惡性循環。這檔事中外皆然,但臺灣尤烈。

假如離散數學學過了正規表達式(Regular expression)跟automata ,就一廂情願以為是可以直接在compiler 上套用non-deterministic的觀念,那就會死的很慘。就算修過compiler ,知道了要用deterministic的觀念,要以為在unix 上的find/grep/awk/表達檔案 wild card 上也可直接套用正規表達式(regular expression) 觀念來用,保證也死的很慘。因為解釋方式不一樣。現在發現,就算知道了前述 unix 系統上的工具如何正確的用正規表達式,在Emacs 下用法還是不太一樣,要小心。但是一但會用,真是如虎添翼。

在eamcs裡起動正規表達式的取代是用
ctrl-alt-%

先輸入搜尋字串正規表達式模版,按enter 後,再輸入取代的字串,一般基本的擴充正規表達式(extended Regular Expression)大多可以用

要輸入控制字元如 Crtl-J (也就是unix 上的換行控制字元),用按Ctrl-Q 後再按j 也就是先按 Ctrl-Q 後再按該字元。這讓Emacs 可以搜尋跟取代跨行的文字。強!

以下是詳細列表

  • ^
  • 代表字串開頭
  • $
  • 代表字串結尾
  • .
  • 任何字元
  • *
  • 重複前面sub-RE任意次, 跟unix 檔案不一樣的是,這跟數學上的RE 用法接近,前面要接一個sub-RE,sub-RE可以是字元RE或字串RE
  • +
  • 同*用法,但是是出現一次以上
  • ?
  • 同*用法,但是是出現零或一次
  • [ ... ]
  • 把 []裡的字元當成集合元素來用,任選其中之一
  • [^ ... ]
  • 把 []裡的字元當成集合元素來用,任選這個集合的補集合裡其中元素之一
  • \
  • 逃逸字元,把上述特殊符號當一般字元時要先加\
  • \|
  • 或: 前後兩個sub-RE 任選其中之一 ,比如說 腦殘 \| 丁丁
  • \( ... \)
  • 連接或群化:把\( \) 裡的平行元素(用\| 分隔)或把sub-RE 元素連成一個大的序列RE,簡而言之就是數學裡的 (,),按照其出現的順序,這些被\( ... \) 形成的RE 可以被後面再次呼叫引用,如\(腦殘 \| 丁丁 \)
  • \數字
  • 去引用前面被\( ... \) 形成的RE,如 \2 是引用前面出現過的第二個\( ... \)的正規表達式模組
  • \`
  • 在檔案(正確說法其實應該是buffer)起頭的空字串
  • \'
  • 在檔案(正確說法其實應該是buffer)末尾的空字串
  • \b
  • (英)文字正前或正後方的空字串 `\bfoo\b' 對應任何單獨存在的 `foo' 字串(以sub-string 型式出現的如food就不算).
  • \B
  • 不在(英)文字正前或正後方的空字串
  • \<
  • 在(英)文字正前方的空字串
  • \>
  • 在(英)文字正後方的空字串
  • \w
  • 對應一個文字字元(對英文而言,即abcd,...不包含空白之類的分隔字元)
  • \W
  • 對應一個非字元字元,也就是\w 的補集
  • \scode
  • 對應任何一個程式(code)字元. 程式字元就是上面那些特殊符號,如
    `w'(文字字元), `-' for whitespace, `(',...等等 。詳情見GNU emacs 手冊的章節: The Syntax Table.
  • \Scode
  • 對應一個非程式字元


我這裡寫的有一點心虛,是因為emacs原來只針對英文設計,處理中文時,因為語文結構上的差異造成了功能定義變得不明確。不過基本上我目前用emacs 22 處理中英文的試驗結果,\b 跟 \w 對待中文字的確是如同英文一般。有意者可以參考gnu 出版的原文手冊。這裡是GNU emacs 手冊提到正規表達式的章節:
http://www.gnu.org/software/emacs/manual/emacs.html#Regexps

星期三, 6月 06, 2007

GNU 正式發表 Eamcs 22.1

在停留在21 版六年之後,gnu 終於正式發表了22版。官方宣告在此
http://permalink.gmane.org/gmane.emacs.announce/11

一些主要的新增功能有
支援GTK+ 介面
X windows Drag-and-drop
支援 x86-64 架構
...
基本上族繁不以備載。

個人試用結果:我在Mandriva 2007.0上已開始用了 emacs-gtk beta版的RPM ,感覺相當不錯,unicode直接支援,不用加裝套件。
2007.1 開始, 舊版emacs-21.4-2跟emacs-snapshot-common-22.0.94-1跟xemacs-21.4.19-4 三者可以共存

星期二, 6月 05, 2007

OpenOffice.org Mac OS X aqua 版現身

朋友借我臺舊Mac 幫他出問題時看看。以後開始會留神 Mac上的開放原碼軟體

MacOS 的使用者大多是用 NeoOffice 去讀寫 openoffice
聽說以往在Mac上裝 openoffice 需要加裝 X-windows
照這樣推斷,Mac OS 的aqua 介面不是基於 X-windows 的東西,這倒是出乎我意料之外
竟然基於 BSD 核心的圖形化系統沒有跑 X-windows !

今天 Openoffice.org 宣布了Mac OS X aqua版官方的OpenOffice.org (叫作 OpenOffice.org Aqua) Alpha 版開放下載
需要 Mac OS X 10.4 (Tiger)
http://porting.openoffice.org/mac/download/aqua.html

Alpha 版意味這是不穩定的測試版,
不過這對開放格式ODF 的版圖擴張有某種程度的正面意義

詳情見
http://porting.openoffice.org/mac/download/aqua.html

星期日, 6月 03, 2007

skype linux 1.4 終於現身

基本上相對於其他完全開放/半開放(只開放client端)原碼的VOIP如gizmo,我不是很喜歡用skpe 。純粹是為了在Linux 上保有跟其他平台的人通話的使用自由,才在用被迫用skype。相對於其他Linux上的VOIP軟體,skype 的Linux 1.3 版作的不好,跟skype自己 windows 版穩定度,功能...,也差上一大節。Linux版大半年沒改版了,還是蠻期待基本的音效穩定度可以加強。

現在1.4 還在 alpha 階段。改進了不少東西,audio裝置的選擇變多了,而且開始有支援API/dbus 。使用介面用最新的QT4 改寫過了
不過介面的分群暫時無法顯示,看來怪怪的。有些功能像OSS 支援暫時拿掉了。不過不礙事。

有分兩個版本:
skype-alpha_staticQT-1.4.0.64-generic.tar.bz2
需要 libdbus-1.so.2 可是Mnadriva 2007 64bit 系統裡的是 libdbus-1.so.3,所以要
cd /lib; ln -s libdbus-1.so.3 libdbus-1.so.2

需要 32bit libsigc++2.0 所以要手動安裝
urpmi libsigc++2.0_0-2.0.17-1mdv2007.1.i586.rpm

假如是skype-alpha-1.4.0.64-generic.tar.bz2 (for static release) 還要多裝 32 bit libqtdbus4
urpmi libqtdbus4-4.2.3-3mdv2007.1.i586.rpm

並且把在 /lib 建立對應的 symbolic link
cd /lib;
ln -s /usr/lib/qt4/lib/libQtGui.so.4 libQtGui.so.4
ln -s /usr/lib/qt4/lib/libQtNetwork.so.4 libQtNetwork.so.4
ln -s /usr/lib/qt4/lib//libQtCore.so.4 /libQtCore.so.4
ln -s /usr/lib/qt4/lib//libQtCore.so.4 libQtCore.so.4

不過 skype 官方說
* Qt 4.2.3 contains a bug that if unpatched will cause expanded contact details to be displayed incorrectly.
* Qt 4.3.0-beta is considered not yet release worthy, and may cause unpredictable side-effects with the Skype 1.4 client.

所以我還是改用靜態連結版本。

詳細參見
https://developer.skype.com/LinuxSkype#head-3fc9435082cb4f65fac2d0cc058d4265ccceb7d7

星期六, 6月 02, 2007

Mandriva 2007.x 3D desktop 啟動速度比較

Mandriva 2007.x用了 parallel init,開機真的不慢,到gdm/kdm 這段都算快
用了雙螢幕好久一段時間,但2007.0 開機+desktop啟動速度感覺上是用過最慢的一個。即使CPU 一直在提升(現在是AMD 4000+, 1M L2 cache), video 保持在nvidia Ti-4200 128M RAM
不知是雙螢幕,compiz,2007.0,還是我沒設好?試過CPU 3000+/4000+差距不成問題。但換成2007.1新的組合就沒事了,又回到以前那種啟動神速。所以我認為是 2007.0 系統設定/xgl/舊版nividia 驅動的問題。

我反覆測試的結果,發現就算同樣的設定,數值也有數秒(n<5))的波動,也許是parallel init/硬碟cache hit 所照成的,留幾個數據供大家參考:

舊的2007.0(nvidia 96xx twinview + gxl +compiz + gnome 2.16)
1. 從 grub 按 enter 開始到圖形介面progress光條完成: 33 sec
2. GDM 出現 再加7 sec (中間有出現 nivida logo畫面,可以在xorg.conf裡把他拿掉 )
3. 從GDM 打完密碼到compiz 把 gnome menu(包含網路的服務)全部load 完
再加2分24 sec
0:33+0:07+2:24=3:04

其中第三段:
gdm 打入密碼後螢幕變黑,中央出現gnome 2.16 載入中的小視窗
視窗裡有幾個icon ,全載入後才會進入gnome 桌面(開始載入桌布/選單之類的。)光是gnome 2.16 載入中的小視窗第一個icon 出現,就在那裡停了2:21所以我的menu 服務icon雖多,一共也才幾秒 (2:24-2:21=0:03)這幾秒內可以看得到網路服務icon先畫出沒資料,再畫出網路資料,瓶頸不在畫menu那。雖然我的menu 很多,光包含網路的服務(天氣)就好幾秒,但gnome desktop 完成絕對要2分多,大瓶頸

新的2007.1 (nvidia 96xx twinview + aigxl +compiz + gnome 2.18)
1. 從 grub 按 enter 開始到圖形介面progress光條完成: 35 sec
2. GDM 出現 再加12 sec (中間有出現 nivida logo畫面,可以在xorg.conf裡把他拿掉 )
3.1 從GDM 打完密碼到螢幕變黑,中央出現gnome 2.18 載入中的小視窗完成消失: 再加4 sec
3.2 gnome 2.18 載入中的小視窗完成消失: 再加10 sec
3.3 gnome 桌面全部載入(桌布/選單之類跟畫出額外的網路服務icon跟網路資料 )再加11 sec(假如螢幕都很乾淨,沒有放大量的捷徑的話,則只加 4sec)
2007.1 起動桌面的時間
0:35+0:12+0:04+0:10+0:11=1:12
對照2007.0的 0:33+0:07+2:24=3:04快了一倍

我沒力氣去追glx 的問題。我之前遇到一些與舊程式不相容的情況。如nvidia-settings 不會正確顯示的問題,讓我 決定放棄glx。一度我想裝beryl 來取代 compiz 但是不管2007.0/2007.1 ,nividia 或ATI 上全裝不出來,還把gnome 給搞砸了。雖然beryl 有一些外掛如火燄特效很酷,不過至少在compiz 上,最重要的視窗縮圖預覽(MacOS X 上的 expose') 功能,aiglx 跟xgl 速度差異根本感覺不出來。所以決定先用 aiglx 的 compiz 來工作。

另外 2007.1 只跑單螢幕+沒 3D 桌面的情況:
第1, 2段也是約 40 sec (36+9=45)
第三段: (10+8)=18 sec

關於雙螢幕3D 桌面的設定,則會再另外刊出

星期日, 5月 06, 2007

"不負責"自由軟體中文輸入法改進規劃:

下面是我目前比較關心的: (我之前還列出重覆輸出,後來不知道怎樣了。)

1. 列出同音字待選
2. 編打編唸 (用語音確認)
3. 放大輸入緩衝區 (這樣user 可以少按幾次輸出鍵)

第一個 在我提出feature request 後, gcin 的作者已經實作出來了,太帥了。新酷音好像還沒看到。
第二個 工程浩大,但我一直有在設法集合各方力量去實作,包括結合圖書館界想要作無障礙閱讀環境的資源。除了基本的收集標準語音外(402 個基本音,加上四聲變化,會少於 400x5=2000個音),
在Linux 上,還需要聯接Alsa API,我覺得最好能支援用Jack IT ,因為怕多工環境下延遲
第三個 其實我沒很大把握,因為我還沒從頭到尾trace 過gcin 跟新酷音的原碼,不瞭解取詞的演算法 ....先當我是小白好了,所以這篇取名"不負責"...規劃。已經做好心裡準備被罵搞不清狀況,不過至少當豬頭拋磚引玉,應該比光要人改進,但連實作規畫都沒有的來的強一點點。

想法從下面節錄新酷音兩位網友的討論引申出來,要在便利跟效率中取得平衡:
有沒有可能改成,把大的緩衝區分成兩部份,在M 字輸入緩衝區中(比如說 M=45),只look ahead 最接近游標的 N (=15)字主緩衝區? N <=M 。一直輸入不後退超過了N 字的話,緩衝區前面(M-N) 字就暫時放到次緩衝區去 (移 link-list 的指標就好,其實沒有copy 資料的動作) 次緩衝區暫時不能改。假如使用者游標一直退到前 m-n 個字串範圍裡,主緩衝區跟次緩衝區會跟著變動,主緩衝區只look ahead 最接近游標的n 字

這樣只會constant-time slow : up to 2^N = 2^15 外加上 "雙緩衝區" (這我不知該如何解釋)的overhead, 應該是 linear time

能不能實做還是要看新酷音的原碼,其實不是不想,但以前就說了,沒有註解的C程式 我實在吃不消

---------------------------

windows_usr wrote:
> > 我用的是win32的最新win32-chewing-0.3.4.2.exe版本,說明裡寫著輸入一整句後按Enter,但我發現每輸入15個字就會
> > 自動送出超過此長度的字串。句子一般長度也有25-50個字吧,15個字真的太少了,打字時常常需要翻看,因為怕字自動送出了,沒有修改的機會,這樣很
> > 大地影響打字速度。酷音輸入法真的很好用,希望開發組可以加入自訂自動送出字串長度的功能。

Kuang-che Wu wrote:
> > On Thu, Apr 26, 2007 at 04:28:35AM -0700, windows_usr wrote:
>> >> 普通句子長度是25-35個字,加上夾雜一些英文。我想最好有45個字的buffer。
> >
> > 現在 libchewing 的運作原理, 當太長的話可能會很慢 (接近 2^n 的速度成長)
> >
> > 你可以試試看輸入
> >
> > 程式程式程式程式....
> >
> > 一整串, 越長會越慢, 在 input line 快滿那時, 速度已經慢到可以察覺.
> > 再更長的話, 可能就會慢到無法接受了

星期六, 4月 28, 2007

高等教育的數學開放原碼軟體

以下這兩套軟體在 Mandriva Linux 2007 上都有現成的RPM 供安裝

Maxima


Maxima是一個自由軟體, 首頁在 http://maxima.sourceforge.net/

這是一個強大的電腦代數系統 (Computer Algebra System, 簡稱 CAS) 。功能相當完整:微積分, 矩陣計算, 二維三維繪圖等都有, 可以做符號計算與邏輯推理, 不像平常的計算機系統都只能做數值的計算。可以用以取代 Mathematica 。新版裏也推出了極具親和力的介面wxMaxima,也可以用其他的介面如TeXmacs,甚至在emacs 裡用 Imaxima 。Maxima 在主要平台如 Windows, Mac OS, Linux 上都有。

Maxima 的前身 Macsyma 是第一套 CAS 軟體。Macsyma 原本是 MIT 實驗室裏發展的軟體, 後來 MIT 將這個軟體商業化。University of Texas, Austin 教授 William Schelter 從1982 年起自行開發 Macsyma 的自由版本, 也就是 Maxima。這個版本在有商業版 Macsyma 的情況, 難以得到正式授權。Schelter 教授在這情況下仍堅持理想繼續開發 Maxima 長達 16 年。 1998 年, Maxima 得到美國能源部授權得以用GPL 釋出成為自由軟體 ,所以可見得出生是不是自由軟體不重要,重要的是能不能堅持理想把非自由軟體逐步轉成自由軟體。Maxima 不包含商用版 Macsyma 1982 – 1999 (至少50人年)的發展內容,不過仍然足夠一般教育使用,而且繼續成長中。Mathematica, Maple 等也都是受到 Macsyma 影響而來的。因為 CAS 基本學習觀念是一樣的, 要改用 Mathematica, Maple 也很容易。

參見 http://zh.wikipedia.org/wiki/Maxima
http://en.wikipedia.org/wiki/Maxima

Scilab


Scilab是一個開放原碼軟體,首頁在 http://www.scilab.org/

他是由INRIA 與ENPC開發,與 MATLAB 功能非常相似,在繪圖和處理線性代數問題都非常的出色,但也可以解ODE之類的問題 。Scilab也有類似Matlab裡Simulink的工具,稱為Scicos。無法100% 相容MATLAB的m-files, 不過在網路上有不少延伸函式庫可以增加他的功能。內附的工具箱有:
2D 及3D 繪圖、模擬
線性代數、稀疏矩陣
多項式及有理函數
模擬:微分方程隱式解和顯式解的求解器
Scicos: 混合動態系統建模器和模擬器
經典及韌性控制,LMI 優化
可微分與不可微分的優化
訊號處理
圖及網路
使用PVM 的平行Scilab
統計
電腦代數(Maple,MuPAD)介面
Fortran, Tcl/Tk, C, C++, Java, LabVIEW 介面

相關介紹與入門參見
http://en.wikipedia.org/wiki/Scilab
http://mail.nkmu.edu.tw/~crlin/SciLab_Tutorial/SciLab_tut.htm
http://science.openfoundry.org/scilab.html

星期六, 4月 21, 2007

光碟燒錄程式比較

在mandriva 2007 上試了幾個光碟燒錄程式,下面是試用心得:

k3b 一向公認是功能最強大的,不過有介面掉中文字的問題,理論上可以改掉字型,但在gnome 下改KDE字型設定不方便
Gname CD baker 跟Graveman還不錯,唯一美中不足的地方是沒有像k3b 提供再讀取檔案檢查
三者都支援超燒/多臺燒錄器,其他功能及介面設定則各有千秋。

Brasero 還不錯,但會自動產生md5sum資料檔到光碟上,而且沒有選項可以關掉

下面的則不推薦

  • CD mason 無法便利的改光碟名稱
  • X-CD Roast 跟 Gnome CD master 無法建立資料光碟
  • tkdvd 無法建立音樂光碟
  • ECiPt Roster 跟simple cdrx對新kernel的IDE CDRW 介面的支援不好

星期二, 4月 10, 2007

在64bit 2007(.0 跟.1)MDV上跑32 bit 套件

v1.0 星期二, 四月 10, 2007
v2.0 星期四, 六月 21, 2007 更新在2007.1 上的結果

這個問題很少人提到,大多是卡在商業軟體的搭配。在這裡先整理一下我目前的解答。其實是不用去用到 32 bit chroot

java:


2007.1
現在已經有nono-free 的java RPM 可以下載,包括64b位元套件。但似乎只有 64bit OOo 抓得到64bit jre 。32bit OOo 還是得裝 32bit jre 所以可以裝powerpack 上的 jdk2-1.4.2_13-2mdv2007.1.i586.rpm或是去sun 直接下載

2007.0: blackdown 有 amd64 版本 (firefox 2測試webct 沒問題)

安裝blackdown 版64bit java
wget ftp://mirrors.ibiblio.org/pub/mirrors/blackdown/JDK-1.4.2/amd64/03/
cp j2sdk-1.4.2-03-linux-amd64.bin /usr/local
cd /usr/local
chmod 700 j2sdk-1.4.2-03-linux-amd64.bin

把下面加入 /etc/prifle
PATH=$PATH:/usr/local/j2sdk1.4.2/bin
ln -s /usr/local/j2sdk1.4.2/jre/plugin/amd64/mozilla/libjavaplugin_oji.so ~/.mozilla/plugins/libjavaplugin_oji.so

要注意
The J2SDK installer automatically adds Java Web Start entries to
$(HOME)/.mime.types and $(HOME)/.mailcap. For multi-user
installations you have to copy these entries to /etc/.mime.type

openoffice:


2007上有 64 bit 版本,可以抓到blackdown 版本java沒問題
但是 bibus 需要用 32bit OOo 來跑,java 的設定參見java 一節

flash player 9:


gcin需要更新版 ,見gcin
詳細中文環境設定見安裝 flash 9 player 的正確解答

skype


1.3.0.53 RPM:未滿足 libqt-mt.so.3 但可至http://www.skype.com/download/skype/linux/
下載Static binary tar.bz2 with Qt compiled in (14.0 MB) tar 版本安裝,會需要 libstdc++.so.5

nspluginwarpper


在 firefox 上的32 bit plugin可用nspluginwarpper 來解決
http://gwenole.beauchesne.info/en/projects/nspluginwrapper
nspluginwrapper 0.9.91.3支援
* Acrobat Reader (5.0.9, 7.0.1)
* DejaVu Libre (3.5.14)
* Flash Player (7.0, 9.0)
* Linux JPEG 2000 (0.0.2)
* Mplayerplug-in (2.80, 3.25)
* Real Player (10.0.5)

acrobat reader


acroread-7.0.9-1mdv2007.1.i586.rpm 需要一些系統的32位元套件,如libgnomespeech7-0.4.10-1mdv2007.1.i586.rpm 在64b位元機器上可能會有衝突,會需要大量更換成32位元套件,2007.0跟2007.1可以用下列順序安裝mdv2006的32位元套件,就不用動到64位元系統套件

acroread-7.0.1-3mdk
acroread-l10n-zh_TW-7.0.1-3mdk
acroread-plugins-extwin-7.0.1-3mdk
acroread-nppdf-7.0.1-3mdk
acroread-plugins-ecmascript-7.0.1-3mdk
acroread-plugins-forms-7.0.1-3mdk
acroread-plugins-makeaccessible-7.0.1-3mdk
acroread-plugins-pddom-7.0.1-3mdk
acroread-plugins-saveasrtf-7.0.1-3mdk
acroread-plugins-searchfind-7.0.1-3mdk
acroread-plugins-accessibility-7.0.1-3mdk
acroread-plugins-spelling-7.0.1-3mdk
acroread-plugins-weblink-7.0.1-3mdk
acroread-plugins-internetaccess-7.0.1-3mdk
acroread-plugins-comments-7.0.1-3mdk
acroread-plugins-checkers-7.0.1-3mdk
acroread-plugins-digitalsignature-7.0.1-3mdk
acroread-plugins-legalpdf-7.0.1-3mdk
acroread-plugins-sendmail-7.0.1-3mdk
acroread-plugins-soap-7.0.1-3mdk
acroread-plugins-ppklite-7.0.1-3mdk

Real player


有一些RMVB 跟串流的檔案我還是無法用 mplayer+win32codec 播放,所以還是
去裝 Real player。Real.com 上可以下載,或者powerpack 上的
RealPlayer-10.0.8.805-5mdv2007.1.i586.rpm
RealPlayer-rpnp-10.0.8.805-5mdv2007.1.i586.rpm
看起來也是差不多

gcin


在2007.1 上更新版本後就沒問題了,可以跟emacs,twinview雙螢幕跟aiglx 下
的compiz 搭工作正常。

2007.0:
更新版32bit gcin RPM未滿足libqt-mt.so.3見
http://cle.linux.org.tw/trac/discussion/1/250
(我有一封回函討論到細節但離gcin比較遠的的被刪了,不知道是不是cle 最近硬碟不穩的緣故)
編譯gcin-1.3.4.pre4(Mandriva 2007.0 64bit)錯誤
http://cle.linux.org.tw/trac/discussion/1/257

cd /usr/lib
ln -s /usr/lib64/libXtst.so.6 libXtst.so
cd /usr/local/gcin-1.3.4.pre4/
make clean
./configure
make
make install
這樣gedit, gnome-terminal 都沒問題,但發現emacs 22 沒法叫出gcin ,
我發了一個討論 "(多重)gcin 安裝設定"
http://cle.linux.org.tw/trac/discussion/1/260
後來發現好像不是xgl 出了問題,這個問題麻煩好大,要過一陣子再來追

星期日, 3月 11, 2007

Compiz 3D 桌面的使用設定

Compiz是Mandriva 2007最大賣點,但在我的ATI 卡上開啟程式時,重疊會有問題,但之後一切正常,不知道是不是Composite 關閉產生的問題。(目前聽說用ATI的專利驅動打開Composite時會把3d 加速功能關掉 )。我還沒找到解答。

執行drak3d可以設定部份值。官方說法在此,
http://qa.mandriva.com/twiki/bin/view/Main/AcceleratedDesktop
但部份文字有不一致的情形,以下這是我在mdv2007上Gnome實測的結果,有一些可能是因為Composite 關閉的緣故,目前看不出來。


  • Cube (提供3d預覽虛擬桌面)

    • Ctrl + Alt + 左右方向鍵:
    • 移到下一個虛擬桌面
    • Ctrl + Shift + Alt + 左右方向鍵:
    • 把目前鼠標指到的程式跟搬到下一個虛擬桌面,桌面也同時切換過去

  • Rotate (虛擬桌面旋轉):
  • Ctrl + Alt + 左鼠左鍵在桌面上拖曳
  • Zoom (放大/縮小桌面顯示),而不只是軟體的字型, 據說opera 看網頁時可以做到,但mozilla/firefox 不行,這下就可以把opera 扔掉了。

    • 定點放大:
    • Super + 老鼠右鍵 (super 鍵是指pc鍵盤上的 window 鍵)
    • 手動無段放大:
    • super + 老鼠滾輪向上滑
    • 手動無段縮小
    • Super + 老鼠滾輪向下滑

  • scale: 如同 Mac OSX的expose' :
  • 把游標移到桌面最右上角
  • Film effect (橫列預覽虛擬桌面, 類似Alt -tab預覽在桌面上的所有開啟程式,但是是顯示虛擬桌 面)

    • Ctrl+Alt+向下鍵,按著不放
    • 切換用Ctrl+Alt按著不放+左右方向鍵

  • Wobbly (果凍效果),對工作沒有什麼實質幫助,所以我把給關了

  • water (水痕效果),對工作沒有什麼實質幫助,所以我把給關了

  • Opacity (視窗覆蓋透明度,視情況而定)
  • Alt + 老鼠滾輪滑動
  • Fade 看不出效果

  • minimize 看不出效果

  • Arrange and View All Windows
  • 用 F12 切換; clicking a window will
    zoom it to the front看不出效果,可能是鍵盤對應給搶掉了
  • Switcher
  • 註: 現在Alt -tab 除了顯示現在桌面上的所有開啟程式的icom及名稱外,而且還有縮圖,比較能提示哪一個是我們想要的程式


但是 Compiz跟已往的metacity 是不同的東西,可以看到視窗的邊框長的不一樣,部份線條比較粗。好像針對metacity的視窗選項選定就無法使用,而且一但改過drak3d選項後,視窗的邊框會突然不見,要等重新啟動X 視窗才會正常,因為有諸多因素影響,目前還難以判定原因。


其他參考資料

我在去年有試過Skippy而且寫了一篇短文
http://shelandy.blogspot.com/2006/04/skippy-mac-os-x-expose-linux-skippy-8.html#links
Mandriva 2007 裡也有附Skippy的RPM,不過我用的結果,Compiz似乎在專利驅動下跑的還不錯,就沒有特殊必要去用Skippy

令一個令人期待的新桌面是Metisse,但據說缺點是沒有提供Expose,這點是Bird View(類似早期openwindow 裡的虛擬桌面)取代不了的。

星期五, 3月 09, 2007

在學校裡捍衛自由軟體的正確視聽

當你的老闆或同儕在學校裡,散佈這種由搞不清狀況的名校學者發表,偏頗不利於自由軟體的文
章時,你是站在第一線推廣自由軟體的老師,該怎麼辦?

人家玩耍賴的,我們當然也可以用人身credit來質疑,比如說: M$ 捐了不少錢給
哈佛,MIT 在OCPL就用linux走不同的路。其次作者不是在電腦界的,卻用過去的經濟理論
來預測完全新的領域(照這樣,Apple 僱用被開除的Steve Job回鍋當CEO,現在不該倒
閉了?),.....但我覺得這樣在學校裡跟人家比爛,那不好。

下面是我的答案,比較學院風格:

Date: Thu, 28 Sep 2006 20:54:50 -0500 (CDT)
to: 相關同儕(這不好公開)

> Windows will beat Linux threat, say academics
> http://smallbusiness.itworld.com/4378/060912windowslinux/pfindex.html

I do not trust a paper mentioning this by the authors themselves:

"The researchers admit that the formal economic model they've constructed
is highly simplified, and may not reflect important factors that exist in
the real world"


I am not interested in invloving the flame war between Linux VS windows.
I just want to share with you four different view points:


One from MIT
http://laptop.org/

One from French
http://quoi9.net/english/2006/09/25/free-computer-with-every-broadband-subscription/

On from India
http://www.financialexpress.com/latest_full_story.php?content_id=138497

Actually, right here in Texas, Sam Houston State U. is replacing their Cisco VoIP for
open-source Asterisk on linux server
http://www.linuxworld.com/news/2006/091206-von-sam-houston.html

星期三, 3月 07, 2007

Mandriva 2007 apic 的問題

我想在一台AMD 機器上裝 2007,這次徹底被打敗好一段時間,找不出為什麼,這台跑2006 很好,liveCD 上: B2D KGB Oct 0'06, Gnoppix 2.12,Guest 作的MDK2005LE Live CD也都沒問題。但不管是2007 DVD, One-kde, one-gnome 全開機到一半就螢幕凍結
其中2007 已經裝完了,但在重開機後,開機到一半顯示
setting clock (localtime): 顯示我機器時間 ... [OK]
後就凍結在那裡
One 是光LiveCD 開機到一半就螢幕凍結

機器配備是

chipset Via KT333
介面卡:
Netgear gigabit card( Realtek chip)
SoundBlaster 5.1 & onboard sound (Realtek chip)
ATI 9660
SCSI 大概是adaptec

我看到類似的個案有
http://www.pchelpforum.com/sitemap/t-24028.html
http://qa.mandriva.com/show_bug.cgi?id=18986
http://forum.club.mandriva.com/viewtopic.php?t=55266&sid=5eeccde2cb94f8523fb4ac76e82be402
http://forum.club.mandriva.com/viewtopic.php?p=269111&sid=e3d262cecf511052a411d6d44cda7ba1
有的是網路卡有的是跟我一樣設定時鐘之後就莫名死了
看起來所有的矛頭都指向Mandriva 2007 爛爛的平行起始 pinit
要用nopinit才可能解決。但是我用別的LiceCD 開機去改我grub 的kernel 參數加上 nopinit 一樣沒用。昏倒。我試著在 failsafe 開機也沒用,所以跟X windows無關

後來才發現,是APIC 在作怪,我是用在Kernel 參數裡加上 noapic nolapic 才
有辦法開機。之後就順利了。後來在一臺Dell 早期的P4 機器上也發現同樣問題。

在這之前,我都不敢推薦別人安裝MDV 2007 ,現在就可以大聲說,別怕,給他裝下去。
這些奮鬥所花的時間精力,跟解決後帶來的正面效應,是一些只會在自由軟體自己的圈圈裡高喊口號而不親自下去動手實作的人所無法企及的。

星期一, 2月 26, 2007

warftp: 目前取代檔案芳鄰的最佳選擇

Linux 要如何跟Windows 環境在網路上交換資料是一個很麻煩的問題。
samba share 有時候會出現些奇怪的問題,而問題往往出在當伺服器的windows端,而非Linux 端的軟體。有時往往又不能用Linux samaba 當伺服器。
Windows share 還有很多其他的問題,後來覺得用ftp 會是比較好的方式。
一舉解決了許多網路交換資料的問題(同步firefox書籤,...)。

但是在Windows 上好的 ftp 伺服器軟體不多,我一時還找不到"純自由軟體"的,
目前看到最好的選擇是免費的warftp 。
去網站上可以看到他最初是考慮用LGPL,但後來加入"排除政府"條款。
相對於有些有GPL潔癖的人把自己綁手綁腳,我個人在沒有更好的選擇前,對這些暫時變通是可以接受的。畢竟革命不是一蹴即成的,只要能讓使用者離開windows share魔掌多一寸,就是好事。

warftp 使用者介面不是很直覺,
管理檔案目錄要到文字選單下面一排icon 裡選UserManager。

雖然warftp按一般Unix ftp伺服器習慣: 使用者目錄是放在家目錄下,
而家目錄是放在warftp根目錄下的usr\使用者名稱。
這在windows 缺乏彈性的檔案系統可能造成一些問題,
但warftp 的mounting point 可以指到任意windows 的檔案目錄(path),這就跟Unix彈性的檔案系統相去不遠。

在某個icon 下按滑鼠右鍵就會跳出選項視窗,
要新增目錄要先到左視窗選使用者身分,
再到右方目錄視窗某個icon 下按滑鼠右鍵,
比如說在右方目錄視窗下方選 user-> security-> file access
目錄視窗上方就會顯示目前的windows 檔案目錄跟對應的ftp 的mounting point ,
這是就可以按右滑鼠鍵新增mounting point ,(要把freeze the mounting point選起來才能換mounting point)

選了某mounting point就會顯示對應的存取設定值,
預設值是全都沒有打開,要一個個打開。

好的檔案管理器,如Linux 上的krusader (gnome/kde 都能用),
或 windows 上的total commander 都支援存取 ftp 檔案系統 ,
這樣一來跨平臺檔案管理非常方便。
要記得一但在伺服器端刪除檔案後,客戶端的檔案管理器要reflash 才會正確顯示。

正確管理ftp 是門學問,千萬不要貪圖中文介面裝舊版warftp,我有三個學生期末報告就有示範如何用metasploit入侵他們自己裝的舊版warftp。內容我就不說了。
目錄暫時放在這裡http://www.tech.uh.edu/faculty/ting/docs/project06F.php

星期日, 2月 18, 2007

Mandriva 中文社群在台灣的發展展望

首先我要感謝所有參與Mandriva 在台灣的中文社群朋友,
從八月 28, 2004以來到今天發表主題數已經後來居上成為CLE網站的第一名
非常欣慰。本來我想等到文章數也衝到第一時再來寫。不過有一些因素又拖了一
陣子。現在不但文章數超過1000,主題跟文章數都是CLE論壇上最高的。而且原
超過其他比CLE Mandriva論壇早成立的論壇。以量取勝不是重點,重點是
要借這個時機說明下面的:在這裡講一下我個人對大環境的感言,一些不得不的權宜之計及對未來的看法:

這一兩年我運氣極背,發生了許多事:先是我機器莫名當到所有東西都換過還是
修不起來,DFI的主機板竟然能從美國修到台灣再回美國修,後來我回家辦喪事,
我們學校的mail server 會亂標 Spam,再來回Houston, 連MDV Taiwan 又偶而進不去
...幾乎要瘋掉。所以許多事情推動的行程與我當初策劃的有很大的差距。
同一時間臺灣的社會紛擾,自由軟體社群的媒體也常見到一些價值觀淪喪的口水戰,
自古最多只有五十步笑百步的,但是現在變成百步竟然可以大言不慚地笑五十步,
缺乏對問題就事論事深度的批判,真正做事情的人,前得先花不少力氣去跟別人口水戰
這是很糟糕的事。這封公開信在我電腦裡躺了有一段時間。其實可以早一點出來,
就是為了等到時機成熟好跟那些只會噴口水的人說:雖然我是五十步,百步是沒有資格批評五十步
的。這種事不只是發生在我身上,B2D 的臥龍小三,Arch Linux 的 Whisky 這些對台
灣自由軟體有重大貢獻的人,都曾有因一些個人行事,而被迫在網路上跟人大打口水戰的
事情。假如主其事的人一天到晚都要花很大力氣去辯駁,以自由軟體的有限的人
力資源,大事情是永遠不可能累積起來的。

我還沒拿到我要的學位,其實資源非常有限。很多事情需要大家一起來幫忙,而不只是噴噴口水。
假如大家希望絕大部份的力量都投注在建構一個更美好的未來。需要每一個人在
不同層次上幫忙:能寫code 的去寫code,能管網站的去管網站,能出錢的出錢,
能寫wiki的寫wiki,甚至有人噴口水時,請挺身而出...。因為你們不幫我們,我們
就沒有氣力去幫你。

我覺得自由軟體終將在三年內,開始對我們的生活有莫大的衝擊。迎接這樣的衝擊,
從現在起我們需要一個環境來發展我們自己的自由軟體生活。
台灣的政治環境無法提供這樣的幫助。那唯一的方式就是你我身邊自己開始做起。
我希望的平臺,是Windows能做的,Linux都能做。而且不需要從頭編譯核心,...種種
而且中文支援完善,家人也可以一起分享。我評估的結果,Mandriva
雖然仍還是有一些不完善的地方,但Mandriva 做的越來越好,我看到Manriva 2006 桌面
天氣報告密密麻麻的中文地名翻譯,有許多名字甚至我都叫不出來,心中十分感
動,Shiva 在這件事上出了很多力。這些眾人翻譯的成果都是可以一代一代累積
下去的。R.M.S. 先生對未來軟體生活的願景,第一次清清楚楚展現在我眼前。除了RMS的高瞻遠矚外,這當然要歸功眾多參與者

是的,自由軟體不僅是軟體平臺,而且是一種生活方式。讓大家基於個開放的環
境,自由地靠著個人的才智服務轉取合理的報酬。而軟體本身可以不斷快速的演
進。這些在東方文化裡我們並沒有傳承。西方傳統的電腦教學體系也沒有提到這
點。所有人都要從動手做中學。我相信建立這樣的文化價值比寫軟體本身還重要。
我對一些大老口口聲聲以自由軟體的基本教義派自居而排擠不同想法頗不以為然。
我認為只要是大方向朝自由軟體的願景走,即使需要暫時遷就到開放軟體,那也
是可以的。另一個極端是以假社群為名,實際上只顧自己整琬捧去不願跟其他社
群開放回饋給社群大環境。要解決這些問題需要大家一起去努力,(包括Mandriva 以外的自由軟體社群)


*討論區

當初mdk.linux.org.tw 及CLE 的 Mandriva 討論區會成立,是基於我在軟體自
由協會通信論壇2004 八月發起的一篇呼籲。當初討論區要在CLE上設立並不是我的要求。而
是當時幾位自由軟體的大老協調出的結果。主要是為了節省管理資源。
shiva 提到"問題是跟中文化,甚至中文無關的問題,可以 po 嗎?" 其實以我
的管理立場,只要是跟Mnadriva 社群相關的,而且是言而有物,都可以,這是
否與CLE 的討論區規則衝突,我不敢說,但至少我當管理員不會去干涉非關中文的Mnadriva 議題。因為當初就是設定CLE 的 Mandriva 討論區是Mandriva唯一的論壇。
台灣現在陷入了法律迷思,結果照成"事事都合法,處處不合理"。舉個例子
自由軟體技術交流網的哈拉一下討論區
http://freesf.tw/modules/newbb/viewforum.php?forum=12
可以成天發表
日本賞櫻,伊勢半島龍蝦料理,...種種跟自由軟體一點都不相干的風花雪月,卻
不能討論某政黨的前立委跟自由軟體政策立法這種關係到整個自由軟體社群的嚴
肅議題,只因為原則上不談政治,這是一件作繭自縛,非常好笑的事情。

鑑於BBS/電子郵件論壇上各種不必要的口水仗不必要的消耗了社群進展的能量
所以我自己在管這兩個社群資源時打定了一個想法:"不要助長小白文化才能推
展質優的自由軟體文化"。
所以我開宗明義的寫了 "給Mandriva論壇的新手: 必看!"
http://cle.linux.org.tw/forum/viewtopic.php?t=135
強調
"沒有人有必要在此義務回答問題,學著用適當的方式問問題是進入Linux 的第一步,新手第一次問問題前請務必閱讀 "[ 分享 ] 提問的智慧"
http://phorum.vbird.org/viewtopic.php?t=96
讓提問者於回答者及其他人都能享受共同成長的喜悅"
這會讓新手望而卻步,但我相信是提升討論品質必須的

在CLE上成立Mandriva論壇後,我才發現自由軟體技術交流網也成立了 Mandriva
Linux 討論區,
http://freesf.tw/modules/newbb/viewforum.php?forum=24
因為一個人管不了那麼多事,所以我自己的原則是專注在比較複雜的議題上。其他的
媒體如BBS就讓其他熱心的朋友發揮。目前為止的發展,似乎CLE Mandriva論壇
專注在比較複雜的議題上。其他的一些問題散佈在
1. CLE論壇Linux新手區
http://cle.linux.org.tw/forum/viewforum.php?f=14
2. BBS/news, (特別是 tw.bbs.comp.linux)
3. 自由軟體技術交流網Mandriva Linux 討論區
http://freesf.tw/modules/newbb/viewforum.php?forum=24

其實這是分散力量,那是不是要合併呢?要的話,是CLE跟自由軟體技術交流網中擇一呢,還是請小州在mdk.linux.org.tw 這上面開一個專屬的討論區?...這都可以討論。
我都沒意見,以大家共同意見為依歸。反正我只會專注在比較複雜的議題上,跟管理的問題。
但是前面提到,最好能節省管理資源,大家可以專注在討論問題上。
所以我有在做遷移到第三者的準備,以節省管理資源,我把部份實驗的結果整理成這篇文章:
"成為 Web2.0 時代的公民"
http://shelandy.blogspot.com/search/label/web
其實之一就是要提出使用 google group 服務的可能性
(新酷音的討論服務也是用google)
因為google的一些服務需要mail 帳號,
在實驗之時,所以我試圖先做小規模實驗,在CLE Mandriva 論壇上發了這個訊息:
"慶祝國慶,gmail 帳號大放送給自由軟體同好"
http://cle.linux.org.tw/forum/viewtopic.php?t=1550
我不知道為什麼有位自由軟體的大老平常不在CLE Mandriva 論壇分享使用心得
的,忽然跑來當言論警察。我不知道是否他跟我有不同政治立場(國家認同
/google 認同...?),所以對我利用中華民國國慶的藉口來跟 Mandriva網友分享
資源不爽。但他有什麼資格來質疑我這個Mandriva 論壇管理員?我說送資源給自由軟體同好
難道Mnadiva Linux 的使用者不是自由軟體同好? 難道我繳稅的地方現在不叫中華民國?
假如要在"自由軟體"或CLE 論壇的定義上無限上綱,那大家就有的吵的。在我的
認知裡,CLE Mandriva論壇夠
份量能對我這管理員有意見的,只有管CLE 的candyz 跟平實有積極參與Mandriva論壇社群朋
友。這位大老他之前因一些第三者的事情誤會,沒打招呼就刪掉我的文章。
我覺得純粹是對人不對事。相較於我還在國外的Linux magazine 寫英文報導
有關他跟別人的自由軟體計劃,我覺得這樣的論壇"因人而廢其言"的管理不改進,不如歸去。

大家去看GNU 的論壇,即便GNU 的自由軟體的定義與願景十分堅持,但對不同的
言論自由相當容許。我也許不是聖人,有時文字有擦到論壇的底線,但只要是大
家心平氣和就事論事,就算是自由軟體技術交流網的drogger 一時誤刪我的文章,為
大局言,我也就算了,攤開來大家好說話。但這種"因人而廢其言"的管理深不感贊同。真的要比的話
這位大老在其他地方也多有擦槍走火的文字見於論壇。最多也是跟我一樣的五十
步。自己言行不一,自己管的論壇不多寫一些技術文章,憑什麼撈過界?

當然對討論區的下一步而言,是要看全體Mandriva Linux 中使用者的意願
但以以上CLE上的某人的管理風格要不改善的話,我會對
1. 合併到自由軟體技術交流網
2. 在google 上另開討論區
3. 請小州在mdk.linux.org.tw 上裝討論區
各投一票,但不投給 CLE。這跟Candyz 沒關係(其實我非常感激他讓我們有個從
零開始的機會),而純粹是上面所說的因素就事論事。這件事情擇日我會讓大家
討論投票。

* 靜態網站

靜態網站的更新的確是太慢。一則我自己一直被意外纏身,一則是供應技術內容
的人太少。

對我在mdk.linux.org.tw靜態網站管理的批評中, sfaguest是唯一有email 給
我具體資料如何作的網友。我因個人因素的延誤,對他的不滿感到相當抱歉。但我儘量配合
他的建議把拖欠已久的更新整到新的方向。比如。前次換過一次外觀,就是
是尊照他的建議 不過我換了些東西好容納Lynx 使用者及一些其他考量
我基本上不放圖,免的對視障者造成干擾。我希望其他人都能跟他一樣,不光是
批評,而能具體提出解答。就算是部份解答也比都由一個人凡事由零開始來的好。

但我覺得把設定研究出來然後發表是本務:
Mandriva 功能越來越強,但介面的易用性的改進卻跟不上內部功能的改進。
舉個例子來講:nvidia, ati, wireless 或 webcam,... 要如何裝?這個千年問題
解答簡單只有一句話:

"裝dkms"

去google 找中文資料,我寫的dkms 資料有一段時間了,還是高居前一兩名。
http://mdk.linux.org.tw/docs/hardware.html
這種東西沒人寫就是沒人寫。寫出來不只是Mandriva,只要是RPM based 的所有dirtro 使用者都
受益。但是這些東西不是三兩天就搞得出來的。往往一兩個月才找的
出一個完整解答。一年有幾個兩個月?與其跟新手哈拉,或跟沒在用Mandriva 的前輩爭到底自由軟
體要怎樣發展,做一件關鍵的事讓一堆人受益,才是我關注的。讓那些因受益於我寫的
設定資料而能很快搞定系統的人去教導新手,或跟不用Mandriva 的前輩爭到底自由軟
體要怎樣發展? 我希望自由軟體的朋友能體諒我能力有限,要花在最有效的地方。
請幫助我,好讓我在其他地方幫你。我想這種相互幫助的文化是台灣自由軟體社
群所欠缺的。所以大家跟一盤散沙一樣。我在美國跟自由派人士相處不是一年兩
年而已。他們固然堅持己見,但尊重彼此的差異,不像臺灣這票人,你不高喊絕
對的"愛臺灣"/"自由軟體",那你就是全民公敵。事情真的只有這樣走的嗎?
我覺得找出最大共因數,創造雙贏才是活路。

有志難伸的朋友請不要客氣,請大聲說一聲。我自己目前是又要實驗
2007.x 的設定(很多資料都沒有),進度是不可能快的。
假如http管理員只能有一個而且有人能做的更好,那我就讓出來,決不眷戀。不
像網路自由軟體論壇上有些人說讓位,或不再接續討論,是作作樣子擺給人看的。
其實sfaguest很熱心,他能出來接我會投他一票。但我想這件事讓參與Mandriva
社群比較多的 Shiva, 小州, sfaguest, 宜蘭的詹勝凱老師,... (gcin的劉大要不要參一腳?)成立委員會,看是誰接比較好。我自己是覺得:

1. 假如httpd adm 只能有一個:(要小州決定)
1.1. 有人能專職照顧而且做的比我好,那就讓他做,要是作不好再換
1.2 沒人要接,那我就繼續管下去
2. httpd adm 可以有多於一個:
那就一起作

我會把靜態 http 的部份儘量補完。(有想要貢獻的也請說一聲)
基本上我會繼續慢慢把 MDV Taiwan 上的 安裝使用中文說明
http://mdk.linux.org.tw/docs/index.html
做個整理
我會先列大綱, 關於中文化的部分先留著等 Chinese Linux Howto v2.0
相對應的章節 ,關於MDV 部分的先寫,
中文化的部分我自己會全部寫出來, 到時直接引用Chinese Linux Howto
相對應的章節(我會把他從我學校的舊blog 移到新blog)

新的wiki(要是有人要管的話)我會把我之前的內容加上去,
要是有人要幫忙寫,或是進一步幫忙管理 http://mdk.lnux.org.tw也很歡迎
要是有人有時間能把事管好 , 我並不眷戀 MDV Taiwan 的管理員位置

* 動態網站

一開始開站我就有想過加入 多使用者的blog ,( 基本上我不信任wiki的安全性)
CLE MDV 論壇上 post 使用技巧的人其實不太多 所以我暫時沒把這事放心上
不過既然有人在 CLE MDV 論壇上提了 , 我想該找個機會討論一下:

我自己觀察的結果,Mandriva 的使用者似乎不如 Debian 或Gentoo 的是以
hacker 為主。小州, shiva 也都同意這看法。sfaguest開的Mandriva 2007 Q&A
http://cle.linux.org.tw/forum/viewtopic.php?t=1542
就很類似wiki,有多少回應?我的想法是有人分享內容再談wiki吧。(至少有人能出來好好管)
不然純粹是浪費人力在討論。那還不如請大家把寫好的html寄給管理員做靜態網頁更新

只要有人能出來好好管,我不反對裝wiki。有志難伸的朋友請不要客氣,請大聲說一聲。
wiki 的管理員應該可以跟靜態網站的管理員是分開的
我對wiki 不熟,我自己沒有時間管wiki的,有很多Licence ...的管理問題,不
是那麼單純。不過我對wiki我樂見其成 。
我希望儘量不要麻煩小州,但我相信只要有人管,小州可以幫忙裝wiki軟體在
mdk.linux.org.tw

問題:是用什麼架站軟體?

1.我自己只用過 blosxom但好像停止更新了
2. moinmoin 有人用過嗎?
3. 其實我在懷疑是否 lifetype (Whisky 建議的)之類的多使用者的blog會不會比較好?
我自己是有google 的blogger.com帳號,好處是可以開設一個blog sapce 給多
重使用者共同寫作,配合google document 跟code project 我在懷疑也許這會比去自己搞了wiki來的方便?


* 其他社群推廣活動

1.我跟某中文雜誌談把Mandriva 進階的錄音跟midi 設定分半年登出,這會牽涉
到 multi-media kernel, jackit 種種複雜進階設定。希望能吸
引多一點新手因為多媒體而進入Mandriva 。當然準備好的資料不只這些,但
是我尋覓經年這是目前唯一的管道。很多人嘴巴說說要幫忙牽線,但後來都不
了了之。假如有人跟廣電或平面媒體有管道,能牽
線讓Mandriva Linux 或其他自由軟體的文章刊登出來,請與大家分享。我自
己準備了一個雜誌一年份專欄的份量。希望能推一些事。
2. 我不知道是否有人願意分享關於mandriva 的 blog 。假如大家到中央集中的
網站分享技術內容的意願不高的話,也許用 planet
http://www.planetplanet.org/
作RSS share會不會管理上方便一點?這該討論
實例如http://planet.linux.org.tw/
3. 關於mandriva 臺灣的發展,應該要有像臺灣debian 社群那樣的聚會。
我在美國,除非有人捐我機票,人沒辦法到,但我之前跟台灣一位熱心推動開放文件的
老師談過,也許我們可以利用中央圖書館台灣分館,甚至台北市圖的場地跟網
路做tel conference,我這裡是中部時區,只要我能配合,我可以用skype ,
wengo,ekiga (gnomemeeting) 之類的軟體做視訊會議,遠在中南東部的朋友
也可以共襄盛舉。

純語音的部份,我已試過4 個人同時skype 在美國跟東亞會議沒問題。
要辦這樣的活動,要得家居台北的朋友出面幫忙協調。

我對IM不熟,client暫且用 Gaim 。近一步討論除了mail外,
可以用google talk, skype, jabber,... 找到我

我很抱歉一直拖了這麼久,希望大家繼續指教,把大環境共同作的更美好。
我在
1. 我的blog http://shelandy.blogspot.com/
2. news的 tw.bbs.comp.linux)
3. 自由軟體技術交流網Mandriva Linux 討論區
4. CLE 的Mandriva論壇
同時刊登,讓多一點Mnadriva 的使用者看得到

先這樣,等大家回應一段時間後,我再把下一步整理公佈出來


CLE Mandriva論壇
http://mdk.linux.org.tw
現任管理員