Monthly Archives: October 2005

先能自保才能保人

在我下部隊的時候,有位很愛處處刁難我的營參謀主任。但是,有次他偷把我拉到一旁去,給了我一段金玉良言:「錄音筆是保障自己的武器!」,在歷經諸多磨難後,我想到他當時難得對我和善的叮嚀,讓我大徹大悟到先能自保、才能保人的基本社會大學之道。

所以即使時日不多,我還是當一天和尚就敲一天鐘地和違規讀者進行了一場又一場神聖的戰鬥!然而這次我不再單打獨鬥了,我要帶個人證,還要記下對方是何人氏。

事已至此,大家都來先講規矩、再講情義吧!這就是教育啊!

在不同 charset 的網頁間傳 form 資料

故事是這樣的:

某男發了狠心,將某 Big5 編碼的網站改版為 UTF-8,而當中有個他魔爪伸不到的 CGI 硬是只吃 Big5。所以除了標準的 ASCII 以外的字丟進去,冒出來的結果都是風馬牛不相及。

結果他找到了這個解說很詳盡的網頁, 在 form 的 tag 裡加上了 accept-charset 屬性指定為 Big5 後,突然間在 Firefox (& Konqueror) 裡真的解決了這個問題,然後在心頭狂喜不到三十秒後,Internet Explorer 的測試結果,又把他打回了地獄。IE6 可以說根本不鳥這個指定屬性。

之後他想過要去捅這隻 CGI,無奈這東拼西湊的老程式(有BASIC、有C,摻在一起能夠存活至今,實證講究軟體工程是一回事,資訊系統應用實況又是一回事--先講求動得起 來,再講究效用!)在他短時間內恐怕無法大改特改,況且這是付了錢請廠商維護(但是廠商很難請得動)的系統。

所以他回過頭去找到了這個網頁,「你要我吐 Big5 給你,我就吐 Big5!!」雖然用的是自己頗有顧忌的 JavaScript,然而「先講求動得起來,再講究效用!」壓倒一切,算是解決了這個問題。

這則廣告讓我看了很想開扁

這個時候,我們就要用國軍的「最好是」發語詞模版:

最好是圖書館內可以喝蘋果茶啦!還可以得意洋洋地說:「香喔!」,你真是好樣的啊!我看到那個應話的嘴臉就一肚子火往腦門衝,有種想要一拳打過去的衝動,就如同我想對現實中把飲料帶進來的混帳一樣。

好在,我們還有 regular expression

改掉由 Frontpage (甚至是 Dreamweaver) 生出來的糟糕網頁,過程當中免不了需要一些工具。Tidy 是其一,利用 Tidy 可以至少先把 HTML 檔做機械化的整理,然後送到文字編輯器下再以人工修飾時,之間就會省掉很多麻煩。

Tidy 不是萬能,所以如果有個內建 regular expression 的文字編輯器輔助,則又比單純一行一行人工修改更省力。Notepad++Vim 都是 Windows 平台上具 regexp 功能的文字編輯器。

然而 regexp 已經對很多人而言猶如咒語(當初我就是這樣被某程式嚇得不敢碰 Perl),Vim 的「另類」操作方法,恐怕對有心要大改網站邁入標準化的”尋常人”來說,短時間內要活用上手並非易事(雖然中文教學資源並不少:-),所以我還是建議這類型的朋友先拿 Notepad++ 來用。

今天我就這樣又把兩個網頁給喔啦喔啦喔啦地快速修改完成。(如果沒冒出那個 ASP 裡的邏輯臭蟲,我會更高興)

做一個”好”網頁/站,從來不是件容易事

我遇過兩位在西元 2005 年的現在,仍在用舊版(非 Gecko Engine) Netscape Navigator 的學者。一是我系上前任主任莊道明師(至少在我在學四年當中他一直沒換過瀏覽器),另一位是我目前工作單位的前任館長徐碧生師。

在我用 Firefox 對付不了 Internet Explorer 特屬語法的網頁時,有時 Konqueror 可以幫我解決那些非填不可、卻又被 IE 獨家語法(VBScript?)加料的 forms,但是我很難理解,徐館長竟能忍受自己掌理的圖書館,其網站選單只有 Internet Explorer 才能使用的不便。於是我才會想要重新設計網站。

自 1995 年左右開始學習上網、製作網頁的人,多有自己編寫 HTML 檔的學習歷程,也難免會累積下不少的「壞習慣」,包含不嚴謹的標籤使用陋習,以及濫用專屬某一品牌瀏覽器的標籤。也因此產生了各種讓人讀得很痛苦、瀏覽器 讀得很痛苦、搜尋引擎的機器人讀得很痛苦的網頁出來,就算之後有了所見即所得式的網頁製作軟體,但是如在軟體設計之初即未遵循 W3C 標準者,致使情況並未有多少改善,反倒可能更糟糕。

近年來隨著網頁親和力議題漸被重視,我真的覺得這不該再以什麼八十二十法則推託,尤其政府機關、圖書館更該注意這個問題。而且將 HTML 的外觀屬性分給 CSS 去處理,學習曲線並不會痛苦到完全推翻過去所學,反而增進了網「站」整體外觀風格維護的效益,而針對 HTML 本身將重心由「外觀設計」擺到「文件結構描述」原本即是該為的修正路線。

雖然周圍了解這些觀念的人趨近於零,我自己本身也有些歷史的包袱可能讓我一知半解,不過我會盡我最大能力把這件重構工程做好--至少我個人因此不用再忍受那難用到爆的選單!!