Thursday, June 7, 2007

UltraEdit-32 v13

這裡沒有提供序號哦。

UltraEdit 一直是 windows 上的眾多 text editor 的頭號目標,他自己也大言不慚的說是 "the defacto standard for text and programmer's editors"。不過 UltraEdit 真的是功能完整,速度也快,雖然像是 Notepad++, PSPad 這類的開放或免費的 text editor 也做得不錯,但不論是功能上或是感覺上總是差了臨門一腳 (不過可能主要的原因是大家都用 UltraEdit "免費"版吧)。

但每套軟體都有 bug,UltraEdit 有個 bug 在很久以前就一直存在,就是在編輯 unicode 文件時在顯示 HEX 時,UltraEdit 會不管原本開的文件的編碼方式 (utf-8, unicode big/little endian) 而統統轉成 unicode little endian 來顯示。或許它是想把 unicode 轉換這種事通通藏起來,反正你看到的都是 unicode ,只不過在檔案裡是不同 encoding 而已,所以在編輯時就都先轉成 unicode 的型式。可是這個問題真的害了很多在 charset encoding bug 裡掙扎的人們,不知看過多少次用 UltraEdit 的人被這個問題混淆而找不出因轉碼造成的 bug。因為這個問題,我完全不相信 UltraEdit 的 Hex 的功能。

每一版 UltraEdit 出來,我都會看一下這個問題解了沒,直到最近的 v13 才把這個問題解了一部分。說一部分,就是他還是會把 unicode big endian 的 BOM 檔頭去掉,真不知道他是怎麼想的,使用者看到平白無故用 Hex 來看少了 2 bytes 不會覺得很怪嗎?所以還是不能相信 UltraEdit 的 Hex 的功能 :)

0 comments:

Post a Comment