總網頁瀏覽量

咕狗大神

2010年12月27日 星期一

赴潮州就醫記(二)

2010/12/17


科中:芍藥甘草湯 1, 赤芍 0.5, 生地黃 0.5*, 麥門冬 0.5*, 枸杞子 0.5*, 烏梅 0.5, 白殭蠶 0.5, 地龍 0.5, 虎杖 0.5, 桃仁 0.5, 丹參 0.5, 牡, 皮 0.5, 茜草 0.5, +地鱉蟲 0.5, +黨蔘 1.0, +山茱萸 1.0


此次就醫前三天開始,脖子(或肩膀,過度疼痛無法分辨)疼痛,並且逐漸僵硬,到就醫當日無法轉動,無法抬頭與低頭。在高鐵上列車減速就會導致肩頸抽痛。


伏針兩根於兩側肩胛處(醫生按壓超痛且超級僵硬),左側脖子與肩膀於伏針插入後疼痛立刻消失,且可以往左側旋轉;右側伏針插入,可以抬頭、低頭與右轉,但程度不若左側,疼痛小幅度減輕


簡單來說,肩頸從疼痛到不能轉動,伏針後變成左側痊癒、右側疼痛略減,但頭部可上下左右轉動,左側完全鬆開


本週茶包甘甜消失許多,酸味增加許多,不似上次好喝


後記:右側肩頸疼痛直到兩週後才減輕到不影響生活,睡眠狀況逐日不佳,感覺精神極好不愛睡,直到處方完全吃完後,開始輾轉難眠,甚至躺到半夜兩點也還無法入睡

赴潮州就醫記(一)

2010/12/6


科中:芍藥甘草湯 1, 赤芍 0.5, 沙參 1, 生地黃 1, 麥門冬 1, 枸杞子 1, 川楝子 0.5, 烏梅 0.5, 白殭蠶 0.5, 地龍 0.5, 酸棗仁 0.5, 虎杖 0.5, 桃仁 0.5, 丹參 0.5, 牡丹皮 0.5, 茜草 0.5


舌下青筋明顯,身體震顫、心悸、眼球充血等問題,醫生判斷肝已經出問題,請求不使用水藥,加開中藥茶包,每日沖泡取代飲用水,茶包味道甘甜,味道頗似七葉膽,肉眼可見枸杞子


後記:兩週內每日都極愛睡,包括上班時間、看電視或發呆時,都會打盹,服藥第三日起舌下青筋明顯消失大半,藥效之快讓我極為震撼

2010年11月18日 星期四

EPUB新舊版技術規格之比較

AreaEPUB3SpecificationEPUB 2.0.1 Specification
OverviewEPUB3 Overview(throughout)
Publication-level Specification & Package DocsEPUB Publications 3.0Open Packaging Format 2.0.1
Content-level SpecificationEPUB Content Documents 3.0Open Publication Structure 2.0.1
NCX DocumentsEPUB Publications 3.0N/A (referenced as DAISY specification)
Media OverlaysEPUB Media Overlays 3.0N/A
Container packagingOpen Container Format 3.0Open Container Format 2.0.1
Differences from previous versionEPUB3 Differences from EPUB 2.0.1(throughout)

這是新舊規格內容的差異表,我覺得這真是很聰明的改變。從這裡可以看出一件很重要的事情:EPUB2跟EPUB3不相容。所以不用浪費力氣去作 RS 的整合了,直接開發新版閱讀軟體才是王道。

EPUB3 TermEPUB 2.0.1 Term
Content DocumentOPS Content Document
User Agent (in EPUB Content Documents 3.0)Reading System (in OPS 2.0.1)
OCF Processor (in OCF 3.0)Reading System (in OCF 2.0.1)
EPUB Publication (in EPUB Publications 3.0)OPS Publication (in OPF 2.0.1)
XHTML Content DocumentsXHTML documents

這是新舊規格名詞的差異表,要注意的是"Reading System"從此不再存在了,取而代之的是"User Agent"以及"OCF Processor"

2010年11月15日 星期一

EPUB 3.0 Editor Draft 誕生了

千呼萬喚始出來的 EPUB 3.0 內部草稿誕生了,雖然我的貢獻實在少的可憐,但是看著這份草稿,心裡還是有某種程度的感動。EPUB 3.0 包含下面幾份內容:
  • EPUB Publications 3.0 (Publications3)
  • EPUB Content Documents 3.0 (ContentDocs3)
  • Open Content Format 3.0 (OCF3)
  • EPUB Media Overlays 3.0 (Overlays3)
其中 ContentDocs3 描述 XHTML5 , Overlays3描述多媒體互動部份,包括SMIL、Scripts等。

只能說超級佩服這些制訂標準的人,短短幾個月就可以生出這麼一份標準文件,真是了不起。接下來,應該是內部大討論吧。

2010年11月12日 星期五

Eclipse 整合 Qt

  1. Eclipse IDE for C/C++ Developers
  2. Qt for Open Source C++ development on Windows  包含函式庫及 C++ 編譯工具 (MinGW)
  3. Qt Eclipse Integration for C++

按照順序安裝完畢,在開始功能表選擇 Qt Eclipse Integration -> Start Eclipse with MinGW

EPUB3.0 Working Draft 編修時程

  • 2010/11/12 –(內部)發行第1版 Working Draft
  • 2010/12/15 –(內部)發行第2版 Working Draft
  • 2011/01/29 – 正式對外發佈第1版 Working Draft
本週五(11/12)PM11:59就可以看到內部發行的初版草案了,真是期待。

2010年9月1日 星期三

ununtu 10.04 的 PATH

找了好久才找到,放在 /etc/environment 這個檔案內

2010年8月24日 星期二

在 Virtualbox開啟共享資料夾的方法

困擾很久了,總算找到解決的方法:

  1. 啟動 VM
  2. sudo apt-get update
  3. sudo apt-get dselect-upgrade
  4. sudo apt-get install gcc gcc+ linuc-kernel-headers
  5. restart VM
  6. sudo apt-get auto-remove
  7. 選擇 裝置->安裝 Guest additions
  8. sudo mount /cdrom /media
  9. sudo /media/VBoxLinuxAdditions-x86.run
  10. restart
  11. 如果之前已經安裝過 Guest Additions ,請跳過步驟 7~10,然後執行 sudo /etc/init.d/vboxadd setup
  12. restart
  13. sudo mkdir /mnt/xshare --> (這個目錄就是共享資料夾,名稱自己取)
  14. mount -t vboxsf xshare /mnt/xshare --> (裝置->共享資料夾->新增資料夾...)
最後,如果希望這個動作在啟動時自己執行,就要在 /etc/fstab 這個檔案加上一行
xshare /mnt/xshare vboxsf defaults 0 0

大功告成

2010年8月10日 星期二

Sigil 中文化

又是將近一個月的時間沒寫網誌了,換了新工作以後每天都很忙,好不容易今天總算是有時間可以紀錄一下。

由於月底之前要產出一版介面改成中文的 Sigil 版本,之前寫信給作者,他表示目前沒有時間使用 i18n 來作介面的國際化。所以只好硬著頭皮改了。

花了很久才找到介面的部份,我對 Sigil 作者算是挺欣賞的,他沒有把資料跟程式混在一起,都盡量分開來放,在 Open Source Software 算是不容易了。

首先下載 Sigil 0.3.2 原始碼,幾個部份要修改:

  1. ~/Sigil-0.3.2/src/Sigil/Form_Files,這個目錄放了附檔名為 ui 的檔案,內容都是 xml 格式檔,搜尋 標籤就會發現,都是選單上面的選項,一個一個的改掉就是了。
  2. ~/Sigil-0.3.2/src/Sigil/Source_Files/data,這個目錄則放了 Metadata 的檔案,用 pipe-line 隔開的兩欄式 csv 檔案。

改完以後進行編譯,就跑出可以執行的中文介面版本了。

2010年7月20日 星期二

電子書標準的進度

好久好久都沒有寫網誌了,實在是忙、忙、忙。每天都很忙,每天都很累,經常都會忽然很累、很餓或者很呆。

IDPF EPUB2.1/3.0 電子書標準目前進入需求蒐集的階段,預計要蒐集到七月底。原本分為八個工作組,不過上個禮拜把 Advertising 合併到 RichMediaAndInteractivity 這裡了(頭銜好長喔),所以目前剩下七個工作組。

跟我們比較有關的,首要就是 EGLS(Enhanced Global Language Support),舉凡文字直排、斷行規則、連字規則統統在這組,其實這組應該屬於 Styling&Layout 的範疇,不過該組的組頭,日本的 Makoto 桑很堅持一定要獨立成為一組,而且一直拉台灣『贊聲』,所以主席就從善如流,把這部份獨立出來囉。

其他像是 Annotation 負責讀者、作者註記,也包含文字旁註的範疇;而 Metadata 負責擴充標籤;文字內容部份則交給 TextContent 負責;而跟目錄有關的則是交給 Navigation 搞定。

目前呢,每週四早上五點有個跨組的工作會議,透過 IRC 以及國際電話舉行會議,我們是一定都要參加的啦,早上四點起床,洗臉刷牙,然後叫計程車,聽一堆以我的程度懂不到一半的英文對話,然後撐到中午才能下班休息,這真是目前最辛苦的事情之一。

這就是為什麼我會這麼久沒有上來寫網誌的原因,下次見囉!

2010年6月28日 星期一

Arch Linux

好久沒有寫網誌了,一直都在追 WebKit 原始碼。六月中旬在追架構,六月底則是挑選 table 部份來追。對我而言,追原始碼本身是一件非常辛苦的事情,因為我已經太習慣從架構一路 down 下來了。

不過今天沒什麼心得要寫,主要是紀錄一套 linux 作業系統,叫做 Arch Linux,官方網址: http://www.archlinux.org/ 。這是一套針對 64 位元 Intel x86-64 最佳化的 linux 作業系統,以簡單乾淨為他的原則。

等我有空再來看看好不好玩。

2010年6月11日 星期五

利用 SVG 讓 WebKit 可以進行文字直書

上個週五,不小心被我發現,原來 WebKit 已經實做利用 SVG 的標籤,來改變文字排列方向了。這讓我省了一些事情,也爭取了一些時間,繼續進行比較精細的原始碼追蹤。

<div style="word-break:break-all; width:480;overflow:auto">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 400 300">
<text writing-mode='tb'>測試直書01234567測試直書。</text></svg></div>

用上面這段 html 就可以達成了,不過在 IE 是沒辦法的

2010年6月2日 星期三

蟄伏已久的心再度被喚醒

今天 Bernie 說,他想換個中醫, C 醫生療效不怎麼好,他有點害怕。然後他給我看了 J 醫生的網頁,不看還好,看了真的讓我血脈賁張。怎麼說呢?我看過的那些中醫古本,我超級喜歡的那幾本,包括曹穎甫、李可、彭子益、張錫純、陳修園等人的醫案,他們開出的藥方,那種攻守兼具,明辨陰陽的藥方,就出現在 J 醫生的醫案。

自從五月換了工作,一直沉浸在工作裡面,新的工作真是有趣,讓我把所有時間都花在上面,每天上班都超過九個小時,還意猶未盡。一直以為學習中醫只是對前一份工作失望後的寄情作用,沒想到今天發現,中醫其實一直藏在我心底,從來沒有消逝。要不是換新工作沒有放假,我超想跟 Bernie 一起跑一趟 J 醫生的診所。

~真的!我超想去一趟的。

鞕道:追蹤 WebKit 的原始碼,找出直書的部份

先說明一下,『鞕』音義同『硬』,請不要搞成鞭子的『鞭』囉。這次老大要我們兩個禮拜內,改寫 WebKit 使其擁有中文直書的功能,這就是台語講的『鞕道』。
追了一整天,先紀錄一下目前找到的東西。
  1. WebKit 把文字方向的功能,透過 class SVGRenderStyle 內的 struct IngeritedFlags 內的 unsign _writingMode 來控制, EWritingMode 定義請見這篇
  2. SVGRenderStyle 透過 setBitDefaults() 來賦予包含 svg_inherited_flags._writingMode 初值

2010年6月1日 星期二

關於 Webkit 在中文直書上的技術問題

安裝 WebKit 請參考這裡

目前 Webkit 可透過呼叫 -webkit-transform: rotate(90deg) 的方式,把文字及排版同時旋轉九十度。而中文直書需要的,其實只要把排版轉九十度,文字不旋轉。

在 /Webkit/WebCore/rendering/SVGTextLayoutUtilities.cpp
有段 float glyphOrientationToAngle(const SVGRenderStyle*, bool isVerticalText, const UChar&) { }
回傳值為角度,共有 0, 90, 180, 270 四種
假如文字方向垂直,則檢查 SVGRenderStyle::glyphOrientationVertical(),
否則為 SVGRenderStyle::glyphOrientationHorizontal()
回傳的 state 有 GO_AUTO, GO_90DEG, GO_180DEG, GO270DEG, GO_0DEG 五種。


...(以下刪去)

(我覺得之前好像搞錯方向了)
在 /Webkit/WebCore/ 目錄裡面搜尋 WM_TBRL ,總共出現在五個地方:
  1. /Webkit/WebCore/rendering/style/SVGRenderStyleDefs.h -- 定義 EWritingMode { WM_LRTB, WM_LR, WM_RLTB, WM_RL, WM_TBRL, WM_TB } ... 直書就是這兩個
  2. /Webkit/WebCore/svg/SVGFont.cpp -- 透過 SVGRenderStyle->writingMode() 是否為 WM_TBRL 或者 WM_TB 來判斷直書與否
  3. /Webkit/WebCore/svg/SVGTextContentElement.cpp -- 透過檢查 SVGRenderStyle->writingMode() 決定是否為直書,整個類別使用多次直書與否進行不同邏輯演算
  4. /Webkit/WebCore/css/CSSPrimitiveValueMapping.h -- 進行各種 CSSValue 與程式定義的對應
  5. /WebKit/WebCore/rendering/SVGTextLayoutUtilities.cpp -- 把 SVGRenderStyle->writingMode() 是否為直書,包裝成一個 isVerticalWritingMode() 的函式。
所以接下來應該從這幾個去著手。看起來, Webkit 對 CSS 3.0 的 < writing-mode > 已經有實作了,只是還沒有開放而已。

~先寫到這裡

2010年5月31日 星期一

從原始檔建立 Sigil

目前看來 Sigil 是最有可能使用的解決方案,盡力去瞭解一下也是應該的,想想從編譯開做起,也好對 Sigil 有更深一步的瞭解。
  • 使用平台: Ubuntu 10.04 LTS
  • 編譯程式:CMake 2.8.0 (含)以上
  • 函式庫:Qt 4.6.x
  1. 解開 Sigil-Code.zip
  2. 安裝 Qt、CMake
  3. 如果沒有 C++ Compiler ,可以安裝 g++ (sudo apt-get install g++ )
  4. 安裝 libqt4-xml, libqt4-svg, libqt4-webkit and libqt4-dev 這幾個 libraries 。(sudo apt-get install libqt4-gui libqt4-svg libqt4-webkit libqt4-xml libqt4-dev)
  5. 執行 cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release  /Sigil/Source/Code/Path
  6. 執行 make
~成功 Ya

2010年5月27日 星期四

在 Ubuntu 上安裝 Symphony CMS

  1. 下載 Symphony-2.0.7.zip,並且解開到 /home// 目錄下
  2. 將整個目錄權限全部開啟( sudo chmod -R 777 Symphony-2.0.7 )
  3. 利用瀏覽器連接到 http://localhost/phpmyadmin 然後建立新的資料庫(需注意校對必須選擇 utf8_unicode_ci )
  4. 在 /var/www/ 目錄下,先建立連結到步驟 1 的目錄下(sudo ln -s /home//symphony-2.0.7 /var/www/sym_install )
  5. 透過瀏覽器聯接到 http://localhost/sym-install/install.php ,然後按照指示填入資料,選擇 Install Symphony 就完成了
~接下來還要研究

EPUB 電子書在 iPad 上的呈現


特別拜託 Flow 幫我印了幾張照片,希望感受一下 iPad 上面來呈現 EPUB 的感覺 。說實話,感覺真的不賴。




 照片一:繁中小說用橫書實在有點不滿意




照片二:目錄頁次(繁中黑體真是漂亮)




照片三:外文用橫書就順暢自然




照片四:懷念的七龍珠(不過漫畫跟 EPUB 比較無關)

JEPA 對日文字呈現之基本要求

http://www.jepa.or.jp/press_release/reqEPUBJ.html

日本電子出版協會(JEPA)

Minimal Requirements on EPUB for Japanese Text Layout
  1. 必須能夠指定『垂直』作為電子書的本文方向。如果本文方向是垂直,那麼整本書的主要文字都應該採用直書模式。
  2. 本文方向如果是垂直的,意味著欄位安排是由上到下,且頁面呈現是由右到左。
  3. 即使本文方向是垂直的,包括每頁的欄外標題、頁碼、說明文字和表格項目本身必須以橫書模式呈現。
  4. 必須能夠將本文方向為『直書』的任何一份文件,以『橫書』的本文方向進行排版,反之亦然。
  5. 必須能夠提供屬於兩種本文方向的樣式表。這個需求不表示相同的樣式表可被兩種本文方向所使用。
  6. 應該要存在一個機制,以選擇三種樣式中的任一種。
    • one by one in inline direction
    • 90 degrees clockwise rotation
    • tate-chu-yoko (譯:縱中橫,縱向文字內顯現部份橫向字)
  7. 樣式(一),每個拉丁字母或歐洲數字必須被設定為一個接一個(不旋轉)順勢嵌於日文字元當中。
  8. 樣式(二),一列拉丁字母或歐洲數字必須先被由左而右排列,然後整個字串順時針旋轉九十度。
  9. 樣式(三),一列拉丁字母或歐洲數字必須先被由左而右排列,然後整個字串必須以垂直行的中央來對齊。
  10. 下列諸字元集不得出現於行首:
    • closing brackets (各式樣的右括弧、右引號、右雙引號等)
    • hyphens (連字號、波浪符號~等)
    • dividing punctuation marks (問號、驚嘆號、雙驚嘆號等)
    • middle dots (冒號、分號等)
    • full stops (句號)
    • commas (逗號、頓號)
    • iteration marks (日文相關)
    • a prolonged sound mark (日文相關)
    • small kana (日文相關)
    • warichu closing brackets (看沒有,應為日文相關)
  11. 下列諸字元集不得出現於行尾:
    • opening brackets (各式樣的左括弧、右引號、右雙引號等)
    • warichu opening brackets (日文相關)
  12. 下列諸字元集序列不可被斷行。換句話說,這些字元集序列被視為是一體的:
    • sequences of EM DASH characters (長的連字號)
    • sequences of HORIZONTAL ELLIPSIS characters (刪節號)
    • sequences of TWO DOT LEADER characters
    • sequences of European numerals (歐洲數字)
    • prefixed abbreviations (cl-12) followed by Arabic or ideographic numeral characters, postfixed abbreviations (cl-13) preceded by European numeral or ideographic numeral characters, and group-ruby (群組旁註)
  13. 要能夠指定『單一旁註』以及回退資訊。
  14. 必須能夠將強調點附在文字上。至少必須提供兩種符號當作強調點,芝麻點跟項目符號。(原文:It should be possible to attach emphasis dots to text runs. At least two characters (SESAME DOT and BULLET) should be available as emphasis dots.

2010年5月21日 星期五

ubuntu 10.04 上安裝 APM

在 ubuntu 10.04 上面安裝 Apache2
sudo apt-get install apache2

安裝 PHP
sudo apt-get install php5 libapache2-mod-php5 php5-mysql

重新啟動 Apache2 才能active PHP
sudo /etc/init.d/apache2 restart

安裝 MySQL
sudo apt-get install mysql-server mysql-client phpmyadmin

安裝完畢如果 /var/www 底下沒有 phpmyadmin 的目錄
sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin

安裝完畢
檢視一下此網址 http://localhost/phpmyadmin/

IDPF 所提出的 EPUB 2.1 議題

http://www.idpf.org/idpf_groups/IDPF-EPUB-WG-Charter-4-27-2010.html

大概摘錄一下重點
  1. 豐富的媒體與互動性。
  2. 強化對全球語言的支援性,特別是亞洲地區所需的字元集、ruby 註記、斷行規則以及文字排列方向。
  3. 要加強對雜誌與新聞的單元文章支援,可以考慮支援 PRISM。
  4. 要增加對元數據的支援。
  5. 建立 Page-Level Layouts 的轉換方式,讓單次出版品在不同尺寸的顯示平面上,都能達到相同目標。
  6. 加強 Page-to-Page 的導航性。
  7. 採用瀏覽器的實作標準,特別是在 Web Standard 上。
  8. 支援註釋。
  9. 支援數學方程式。
  10. 具體語意支援,想是辭典、參考資料、參考連結等。
  11. 與 DAISY 同步修改並且盡量朝統一標準進行。
  12. 讓企業可以加入特定擴充。
  13. 關係到核准為國家標準與世界標準的議題並未被明確提出。
  14. 支援內置廣告。

2010年5月13日 星期四

累到只剩下笑容

新工作愉快極了,每天都有學不完的東西,回到家摸到床就會立刻睡著,感覺到全身都沒有半點力氣的時候,臉上與嘴角卻仍然掛著止不住的微笑。踏出這一步實在太棒了。

~感恩所有的人