20081030

描述結構

Gerbil 描述結構用的建構子包括
節點文章結構
part
chapter
sect

結構描述通用的用法為
chapter "標題", "id"
第一個參數為標題文字,第二個參數為節點的 id,用來讓 xref 使用的。

20081024

載入其它的檔案

載入其它的檔案的語法,有助於我們把一本書切割,Gerbil也支援這樣的功能,其語法如下:
<%#include path #%>
例子:
<%#include mvc.erb #%>
上述的程式碼會先載入 mvc.erb 檔案。

Gerbil 命令列用法

語法:gerbil [Option...] Format|SpecFile [InputFile...]
Gerbil 的輸入檔是 erb 格式,並把轉檔結果輸出到 html 格式。
範例:
gerbil html rails_book.erb > rails_book.html
上面這句會把 rails_book.erb 轉成 rails_book.html 檔。

20081009

Mlog版面

使用MLOG時,最常會作切換的應該是切換月份,及切換功能,所以版面應把一部份給月份列表,另一部份給功能列表。其樣式如下顯示:
標題



月份列表


20081008

tag運算:mlog 子語言

mlog子語言其主要目的是快速產生個人財務報表,它值基於流水帳的基礎上,並以 tag 來對流水帳作分類,tag 是語言的第一元素。

tag總和實字
表示時間範圍內的流水帳標籤為 tag 或其標籤父類別為 tag 的總合,若總合為 2000 則應該會顯示:
2000
例:
醫療費 -mlog-> 2000
表示這個月醫療費的總合為 2000。

tag四則運算
數字實字、tag總和實字與運算子 '+', '-', '*', '/' 可以進行基本四則運算的公式。
例:
醫療費 + 保險費 + 早餐 + 午餐 -mlog-> 12050
表示這個月流水帳標籤及標籤父類別為為醫療費、保險費、早餐及午餐的總合為 12050。
保險費 - 醫療費 -mlog-> 8000
表示這個月流水帳標籤及標籤父類別為醫療費的總合減掉保險費的總合 8000。
醫療費 * 2 -mlog-> 4000
表示這個月流水帳標籤及標籤父類別為醫療費的總合 * 2 為 4000。
醫療費 / 2 -mlog-> 1000
表示這個月流水帳標籤及標籤父類別為醫療費的總合 / 2 為 1000。

20081007

基本四則運算:mlog子語言

mlog子語言支援基本四則運算,方便使用來作流水帳的分析試算
數字實字
2000就表示 2000 這個數字。
例:
2000 -mlog-> 2000
表示數字 2000。
四則運算
數字實字與'+', '-', '*', '/' 可以組成基本四則運算的公式。
例:
2000+2 -mlog-> 2002
2000-2 -mlog-> 1998
2000*2 -mlog-> 4000
2000/2 -mlog-> 1000

20080930

at命令

at排定工作在指定的時間執行
工作排程有所謂的例行性的,也有單一執行一次的,僅執行一次的工作。 要使用這種工作排程時,我們的 Linux 系統上面必須要有負責這個排程的服務,那就是 atd 這個玩意兒。
工作排程會機制
工作寫入 at 工作排程表後,該工作便進入排程當中並等待執行
工作排程表的存放位置
工作排程表預設的 AIX 是在 /var/spool/cron/atjobs 目錄下。
Linux 是在目錄 /var/spool/at 目錄下。
排定一個工作
at 的語法
[root@linux ~]# at [-m] TIME
參數:
-m :當 at 的工作完成後,以 email 的方式通知使用者該工作已完成。
TIME:時間格式,這裡可以定義出『什麼時候要進行 at 這項工作』的時間,格式有:
HH:MM ex> 04:00
在今日的 HH:MM 時刻進行,若該時刻已超過,則明天的 HH:MM 進行此工作。
HH:MM YYYY-MM-DD ex> 04:00 2005-12-03
強制規定在某年某月的某一天的特殊時刻進行該工作!
HH:MM[am|pm] [Month] [Date] ex> 04pm December 3
也是一樣,強制在某年某月某日的某時刻進行!
HH:MM[am|pm] + number [minutes|hours|days|weeks]
ex> now + 5 minutes ex> 04pm + 3 days
就是說,在某個時間點『再加幾個時間後』才進行。

範例一:再過五分鐘後,將 /root/.bashrc 寄給 dmtsai 這個使用者
[root@linux ~]# at now + 5 minutes
at> /bin/mail dmtsai -s "testing at job" < /root/.bashrc
at> <==這裡輸入 [ctrl] + d 就會出現 的字樣!代表結束!
job 8 at 2005-09-07 10:47
# 上面這行資訊在說明,第 8 個 at 工作將在 2005/09/07 的 10:47 進行!

範例二:由於機房預計於 2005/09/16 停電,我想要在 2005/09/15 23:00 關機?
[root@linux ~]# at 23:00 2005-09-15
at> /bin/sync
at> /bin/sync
at> /sbin/shutdown -h now
at>
job 10 at 2005-09-15 23:00
# 您瞧瞧! at 還可以在一個工作內輸入多個指令呢!不錯吧!
事實上,當我們使用 at 時,at 會給使用者一個 bash shell 讓使用者下達工作指令, 此時,建議你最好使用絕對路徑來下達你的指令,比較不會有問題喔!那我們知道每個指令都可能會有 standard output/standard error 啊,這些可能會輸出到螢幕上面的資訊會跑去哪裡? 呵呵!這些本來應該在螢幕上面出現的資訊通通會以 email 的方式傳送到使用者的 mailbox 裡面去! 而預設如果沒有 stdout/stderr 時,就不會有任何訊息傳送給使用者了。但你可以使用 at -m 這個參數來強制 at 傳送一個執行完畢的 email 訊息給你自己喔! ^_^

權限控管
不過,並不是所有的人都可以進行 at 工作排程喔!為什麼?因為安全的理由啊~ 很多主機被所謂的綁架後,最常發現的就是他們的系統當中有很多的怪客程式 (cracker program) 被寫入例行性命令的排程當中了,所以,那些可惡的程式就可能定時或不定時的在你的系統當中工作, 呵呵!所以囉,除非是您認可的帳號,否則先不要讓他們使用 at 吧! 此外,我們可以利用 /etc/at.allow 與 /etc/at.deny 這兩個檔案來進行 at 的使用限制呢! 加上這兩個檔案後, at 的工作情況其實是這樣的:

1. 先找尋 /etc/at.allow 這個檔案,寫在這個檔案中的使用者才能使用 at ,沒有在這個檔案中的使用者則不能使用 at ( 即使沒有寫在 at.deny 當中 );
2. 如果沒有 /etc/at.allow 就尋找 /etc/at.deny 這個檔案,若寫在這個 at.deny 的使用者則不能使用 at ,而沒有在這個 at.deny 檔案中的使用者,就可以使用 at 咯;
3. 如果兩個檔案都不存在,那麼只有 root 可以使用 at 這個指令。

上面的情況說明了,其實我們只要有 at.deny 這個檔案存在就好了,因為我們假設系統內的帳號都是懂得操作的使用者, 因此,預設讓他們可以任意使用 at 這個好用的東西!這也是系統的預設值。我們的 FC4 預設也是只有 /etc/at.deny 存在,而且該檔案內並未有任何帳號資料!這表示任何人均可使用 at 啦!不過,萬一你不希望有某些使用者使用 at 的話,將那個使用者的帳號寫入 /etc/at.deny 即可! 一個帳號寫一行。


另外一個 at 的執行優點是什麼呢?那就是『背景執行』的功能了!什麼是背景執行啊?! 很難瞭解嗎?沒關係,鳥哥提我自己的幾個例子來給您聽聽,您就瞭了!

* 由於很多時候,我們其實都是使用 network 連接到主機來進行工作的, 但是 Client 與 Server 之間的網路連線其實並不見得很穩定,尤其是當你的 Client 電腦很忙的時候。 此時,萬一我要進行一項長時間的工作時,那麼風險就很大!鳥哥當初剛剛玩 Unix 時, 由於鳥哥所在的辦公室太小了,無法有多個螢幕與鍵盤,因此,我都是利用我的 windows 98 再以網路連線軟體連到 Unix 主機內作業的。當時我跑一個程式要跑 3 天...... 而眾所皆知的, Windows 98 的長時間開機的穩定性確實..... 在某一次執行時,發生了.....剩下 3 個鐘頭就跑完卻『連線終止』的情況~嗚嗚嗚嗚~ 又得要跑三天....
* 另一個常用的時刻則是例如上面的範例二,由於某個突發狀況導致你必須要進行某項工作時, 這個 at 就很好用啦!
由於 at 工作排程的使用上,系統會將該項 at 工作獨立出你的 bash 環境中, 直接交給系統的 atd 程式來接管,因此,當你下達了 at 的工作之後,就可以立刻離線了, 剩下的工作就完全交給 Linux 管理即可!所以囉,如果有長時間的網路工作時,嘿嘿! 使用 at 可以讓你免除網路斷線後的困擾喔! ^_^
那麼萬一我下達了 at 之後,才發現指令輸入錯誤,該如何是好?呵呵!就將他移除啊! 利用 atq 與 atrm 吧!
[root@linux ~]# atq
[root@linux ~]# atrm [jobnumber]
範例一:查詢目前主機上面有多少的 at 工作排程?
[root@linux ~]# atq
10 2005-09-15 23:00 a root
# 上面說的是:『在 2005/09/15 的 23:00 有一項工作,該項工作指令下達者為
# root』而且,該項工作的工作號碼 (jobnumber) 為 10 號喔!
範例二:將上述的第 10 個工作移除!
[root@linux ~]# atrm 10
[root@linux ~]# atq
# 沒有任何資訊,表示該工作被移除了!
利用 atq 與 atrm 來控制這個 at 的工作吧! ^_^

20080925

find 命令

基本語法
find [ -H | -L ] Path ... [ Expression ]
find 會遞降的搜尋 Path 所指定的目錄樹,並找出所有檔案符合Expression條件。
所謂遞降就是先往第一個子目錄搜尋,等第一個子目錄完成後,再往第二個子目錄搜尋。
Expression括號運算子
\(Expression\)
若Expression 為真,則上式為真。
Expression二元運算子
Expression運算子可針對兩個Expression的結果作參數運算。
Expression [-a] Expression
對兩個 Expression 作 AND 運算,其中 -a 可省略。
Expression -o Expression
對兩個 Expression 作 OR 運算。
清除臨時文件
您可以使用 find 命令來清除目錄或子目錄中在正常使用過程中生成的臨時文件,這樣可以節省磁盤空間。要實現該操作,請使用下面的命令:
$ find . \( -name a.out -o -name '*.o' -o -name 'core' \) -exec rm {} \;


+n
n表示任何整數,+n表示大於n的數字,
-n表示小於n的數字,
n表示等於n的數字。
-exec Command


使用 UNIX find 命令的高級技術
developerWorks

本文介紹如何使用 find 命令瀏覽 UNIX 文件系統中豐富的內容。find 命令是 UNIX 程序員的技能中功能最強大和最有用的命令之一。各種版本的 UNIX 都具有可以包含數以千計的不同類型文件的文件系統。有了如此之多的選擇,要定位一個特定文件或文件集,將變得非常困難。而 find 命令能通過許多方式,讓這項任務變得更加輕鬆。

沒有什麼能比得上探索和發現新的人、地方、事物所帶來的刺激。領域可能有所不同,但有些原則卻是一樣的。在這些原則中,有一條是記錄下您的旅程,另一條則是瞭解和使用工具。

UNIX 操作系統很像一片廣闊的、未經標識的荒野。當您在這樣的領域中旅行時,可以選擇一些日後能夠給您帶來幫助的工具。find 命令便是這樣一種工具。find 命令不僅能夠簡單地用來定位文件,正如本文將介紹的那樣,它還可以自動地執行其他 UNIX 命令的序列,其中使用所查找到的文件名作為輸入。

Find 的有關限制

所有稱職的操作系統都具有協助您查找相關內容的工具。與大多數工具不同的是,UNIX 中的 find 命令可以自動地對其查找到的文件執行許多操作。

圖形用戶界面 (GUI) 中的標準 find 工具允許您對所查找到的文件進行一些常規操作任務:您可以將它們標記為剪切、複製和粘貼,您可以將它們移動到一個新的位置,並且可以使用創建它們的應用程序來打開它們。這些操作涉及到兩個或更多的步驟,並且不是自動完成的,即首先查找到文件,然後使用 GUI 為下一步的操作對它們進行標記。這種方法對許多用戶來說沒有問題,但是 Explorer 需要的不僅是這些。

UNIX 的 find 命令可以刪除、複製、移動和執行其查找到的文件。另外,使用 -exec 參數可以根據您所需要的 UNIX 命令的序列來自動地運行這些文件。它甚至可以在對任何文件執行這些操作前,進一步讓您進行確認。

簡化文件系統的管理

與大多數 UNIX 命令一樣,UNIX find 命令具有一長串令人生畏的選項和開關,它們會阻礙人們深入地學習該命令,但正是因為其範圍廣闊,真正的 Explorer 並不會被它們嚇倒。一條好的通用原則在簡化一個複雜問題時都會經過漫長的過程。啟動一個 xterm,並嘗試執行下面的命令:

$ find . -name *.gif -exec ls {} \;


-exec 參數中包含了真正有價值的操作。當查找到匹配搜索條件的文件時,-exec 參數定義了將對這些文件進行什麼操作。該示例告訴計算機進行如下操作:

1. 從當前文件夾開始往下搜索,緊跟在 find 之後,使用點號 (.)。
2. 定位所有名稱以 .gif 結尾的文件(圖形文件)。
3. 列出所有查找到的文件,使用 ls 命令。

需要對 -exec 參數進行更深入地研究。當查找到匹配搜索條件的文件名時,find 命令執行 ls {} 字符串,用文件名和路徑代替文本 {}。假設在搜索中查找到 saturn.gif 文件,find 將執行如下所示的命令:

$ ls ./gif_files/space/solar_system/saturn.gif


本文餘下的內容建立在這條一般原則之上:仔細地使用 find 命令可以讓 UNIX 文件系統的管理工作變得更加容易。例如,如果您使用了 -fstype 參數,find 命令可以根據查找到的文件所處的文件系統的類型來對命令進行相應的處理。在 find 命令對查找到的文件執行相應命令前將對您進行提示,這通常是非常有用的,您可以使用 -ok 參數告訴它繼續執行該操作,接下來我們將對其進行介紹。

可選的執行

-ok 是 -exec 參數的一個重要的替代項,它的行為和 -exec 一樣,但它會提示您是否要對文件運行相應的命令。假設您想要刪除 home 目錄中的大部分 .txt 文件,但希望能夠逐個文件地執行該操作。像 UNIX 中的 rm 命令那樣的刪除操作是很危險的,因為當使用像 find 這樣的自動化處理方式來查找文件時,它可能一不小心會刪除重要的文件,您也許希望在刪除這些系統查找到的文件之前對其進行仔細檢查。

下面的命令列出了您的 home 目錄中所有的 .txt 文件。要刪除這些文件,必須在 find 命令通過列出文件名提示您確認操作時輸入 Y 或者 y:

$ find $HOME/. -name *.txt -ok rm {} \;


它列出了查找到的每個文件,並且系統將暫停以等待您輸入 Y 或者 y。如果您按下 Enter 鍵,系統將不會刪除該文件。清單 1 顯示了一些示例結果:

清單 1. 示例結果

< rm ... /home/bill/./.kde/share/apps/karm/karmdata.txt > ?
< rm ... /home/bill/./archives/LDDS.txt > ?
< rm ... /home/bill/./www/txt/textfile1.txt > ?
< rm ... /home/bill/./www/txt/faq.txt > ?
< rm ... /home/bill/./www/programs/MIKE.txt > ?
< rm ... /home/bill/./www/programs/EESTRING.txt > ?
.
.
.


系統將在每個問號之後暫停,在本示例中,每次都按下了 Enter 鍵以繼續處理下一個文件。(沒有刪除任何文件。)-ok 參數允許您控制每個查找到的文件的自動化處理過程,這樣就添加了一種避免自動刪除文件的安全措施。

如果在使用 -ok 參數時涉及到過多的文件,那麼一個好的方法是先運行帶 -exec 的 find 命令以列出所有將要刪除的文件,然後在經過檢查確保其中不會刪除重要的文件後,再次運行該命令,其中用 rm 代替 ls。

-exec 和 -ok 都非常有用,您必須確定在當前情況下哪一個能夠更好的工作。請記住,安全第一!

創造性地使用 find

您可以使用 find 命令執行各種各樣的任務。本部分內容提供了使用 find 命令來管理文件系統的幾種方式的示例。

為了保持簡單,這些示例都避免了使用涉及通過管道將一個命令的輸出傳遞到另一個命令的 -exec 命令。然而,您完全可以根據自己需要在 find 命令的 -exec 子句中使用這樣的命令。



括號中的文件掩碼 標識出了需要刪除的文件類型,每個文件掩碼的前面都有 -name。該列表可以擴展為包括您需要清除的系統中的任何臨時文件類型。在代碼的編譯和連接過程中,程序員及其工具會生成示例中的那些文件類型: a.out、*.o 和 core。其他的用戶通常也會生成類似的臨時文件,可以使用如 *.tmp、*.junk 等文件掩碼來對命令進行相應的編輯。您可能還發現將命令放入一個稱作 clean 的腳本中非常有用,當需要清除一個目錄中的內容的時候就可以執行該腳本。

複製目錄中的內容

find 命令允許您複製目錄中的全部內容,同時保持每個文件和子目錄的權限、時間和所有權。要完成該操作,需要組合使用 find 和 cpio 命令,如下所示:

清單 2. 組合使用 find 和 cpio 命令


$ cd /path/to/source/dir

$ find . | cpio -pdumv /path/to/destination/dir


cpio 命令是一個複製命令,它設計用來將文件複製到或複製出一個 cpio 或 tar 存檔文件,並自動地保持文件和子目錄的權限、時間和所有權。

列出文本文件的第一行內容

有些人使用每個文本文件的第一行作為標題或者文件內容的描述。可以使用列出文件名和所有文本文件第一行內容的報表更方便地對大量的文本文件進行篩選。下面的命令在報表中列出了您的 home 目錄中所有文本文件的第一行內容,便於進一步地根據需要使用 less 命令進行檢查:

清單 3. less 命令


$ find $HOME/. -name *.txt -exec head -n 1 -v {} \; > report.txt

$ less < report.txt


維護 LOG 和 TMP 文件的存儲空間

要為生成大量文件的應用程序維護 LOG 和 TMP 文件存儲空間,可以將下列命令放入到每天運行的 cron 任務中:

清單 4. 維護 LOG 和 TMP 文件存儲空間


$ find $LOGDIR -type d -mtime +0 -exec compress -r {} \;

$ find $LOGDIR -type d -mtime +5 -exec rm -f {} \;


第一個命令找到 $LOGDIR 目錄中所有包含在 24 小時內 (-mtime +0) 進行了修改的數據的目錄 (-type d),並對它們進行壓縮 (compress -r {}) 以節省磁盤空間。如果這些目錄超過了一個工作周 (-mtime +5),第二個命令則將其刪除 (rm -f {}),以便增加磁盤上的可用空間。通過這種方式,cron 任務自動地根據您所指定的時間窗口對目錄進行維護。

複製複雜的目錄樹

如果您想要將複雜的目錄樹從一台計算機複製到另一台計算機,同時保持副本權限以及 User ID 和 Group ID(UID 和 GID——操作系統所使用的標記文件的所有權的數值),並且不複製用戶文件,那麼就需要再次使用 find 和 cpio:

清單 5. 複製複雜的目錄樹

$ cd /source/directory

$ find . -depth -print | cpio -o -O /target/directory


查找不指向任何地方的鏈接

要查找不指向任何地方的鏈接,可以使用帶 find 的 perl 解釋器,如下所示:

$ find / -type l -print | perl -nle '-e || print';


該命令從最頂層目錄 (/) 開始,列出由 perl 解釋器確定不指向任何地方 (-nle '-e || print') 的所有鏈接 (-type l -print),關於 Unix Guru Universe 站點中這個技巧的更詳細的信息,請參閱參考資料部分。如果您想要刪除這些文件,可以進一步使用管道將輸出傳遞到 rm -f {} 命令。當然,Perl 可以在大多數的 UNIX 工具包中找到,它是許多功能強大的解釋性語言工具中的一種。

定位和重命名無法打印的目錄

在 UNIX 中,可能會有錯誤的或惡意的程序創建包含無法打印的字符的目錄。定位和重命名這些目錄,這樣就可以更容易地檢查並刪除它們。要完成該操作,您首先需要在 ls 中包含 -i 開關,以獲取該目錄的索引節點的數值。然後,使用 find 將索引節點的數值轉換為一個可以使用 mv 命令進行重命名的文件名:

清單 6. 定位和重命名無法打印的目錄

$ ls -ail

$ find . -inum 211028 -exec mv {} newname.dir \;


列出長度為零的文件

要列出所有長度為零的文件,請使用下面的命令:

$ find . -empty -exec ls {} \;


在查找到空文件之後,您可以選擇用 rm 命令來代替 ls 命令,以刪除這些文件。

很明顯,您對 UNIX find 命令的使用受到知識和創造性的限制。

結束語

使用 find 命令,可以輕鬆地瀏覽 UNIX 文件系統中豐富的內容。很值得花時間來試驗該命令,並瞭解它能為您做些什麼。正如本文中所列出的示例,您可以通過許多創造性的方式來使用 find,這樣可以輕鬆地瀏覽和管理文件系統,並且充滿樂趣。

找出目前目錄下 120 天前的檔案
find . -mtime +120 -print

20080924

VIM切換模式圖解說明


vim 是一個模式編輯器,一般的編輯器,每個鍵盤按鍵只會對應一種功能。
而模式編輯器在不同的模式,鍵盤按鍵所對應的功能就有所不同。

20080917

mlog平台計畫

mlog,就是 money blog 的縮寫,中文暫定為錢部落格,類似部落格,但每篇文章多了一個數字欄位,代表關連此文章的金錢資訊,上述的文章可視為流水帳
當然有了流水帳,就可以進行現金流向的分析。mlog 平台,除了上述的流水帳功能外,並有一個讓使用者方便進行以自已的流水帳進行分析的平台。
為此,mlog提供2個工具,mlog 語言,及標籤樹。

20080907

小提琴

陷入愛情的心情像是小提琴
時高時低
時時顫抖著
兩人的情緒波
經由傅利葉轉換
一起在時間裡相互交錯

熱氣球飄浮

不想了
但思緒無法停止紛擾
我那疲憊的大腦

意念隨著時間的節奏擺動
卻跟不上明天的翅膀
移動得太快
比剎那短
但仍可以分辨前後

於是
我搭著那想像的飛船
於無法等待後
停泊在那異國雲端的港口

我聽著那風雷互囂的入港號
緩緩的隨行在極光之後

扶著欄杆
船垝燈茫
雲島一望無際
spot 著些許飄浮熱氣球
裡頭是那些狂熱的宗教夢想家
呼隨上帝
他們喊著

而我在零時站上船艉
請風帶著我的訊息
告訴他們
永恒在底下
不在天上

我不回頭地跳下去
飄浮之中
開始祈求
那綿綿的雲會擁抱我嗎
卻停止不了擔憂
那下一刻的變天

這使我突然無法想像
那疲憊且失能的大腦

彰化基督教醫院

親切溫暖的大廳
《康健雜誌》針對全台17家醫學中心,推出門診服務友善醫院調查,以出口民調的形式,進行消費者調查。調查結果,「彰化基督教醫院」 是特優的醫院其中之一,當我們進入醫院後,就感覺到名副其實。大門後,映入眼簾的是暖色系櫃檯大廰,消除了常人對醫院冰冷的印象。所有的櫃檯都沒有玻璃及高高的檯面橫隔在服務人員與病人間,令人備感親切。大廳後側是掛號櫃檯,櫃檯前方的有一架鋼琴,前面有個小圓講檯,可以見到醫事人員熱切為等候的病患作衛教。大廳前側有花店、水果店、禮品店、咖啡店及便利商店,讓走進來的病患及探病的人能輕易購得他們所需要的東西,而一樓的採光良好,更讓人心情愉悅的想坐下來喝杯咖啡。
自製的DRG系統
彰基的 DRG 系統是自行開發的,由病歷室的專員主導設計,再由資訊室開發,雖然功能並非相當齊全(例如系統無任何圖表式的報表),但是院內自行開發的優點便是能與醫院現行流程配合良好,切合醫院目前的需求,同時使用者參與開發也連帶能提高他們使用新資訊系統的意願。
實行 DRG 最重要的目的便是管控醫療資源,早期能判讀出 DRG 對管理是很重要,因此彰基除了建立起 DRG 系統來輔助 DRG編碼,快速的病歷完成時間讓彰基在正式導入 DRG 時佔有相當的優勢。DRG 編碼主要是根據病歷上的疾病碼及手術碼來推算,快速的病歷完成時間,可以讓行政人員有充份的資訊及時間加強個別病患醫療資源的管理,來達到醫療資源最有效的運用。
彰基良好的執行力
在醫療資源逐年縮減的狀況下,醫療資源管理日益重要,近年來 MIS 研究指出,企業 e 化成功的因素,除了良好的設備,通暢的流程設計與跨部門的溝通合作都比技術面更為重要。而在導入一個成功系統,使用者必須將 What 說明白,能清楚表達系統要達到的目標,而 IT人員則必須有足夠的知識及整合能力來回答 How 的問題,採用怎樣的技術能達到系統目標,來滿足企業的需求,解決問題,這都需要部門間良好的溝通及執行力。
看到彰基目前的執行成果,我猜想其背後一定付出的相當努力及合作,才有目前的成果。

第一次東海岸之旅

2007年09月23日
今天和婆走東岸台11線,
早上東岸雨勢強大,公公嚇壞了,一直踩剎車,還一直讓後面的車先走。
但進入海岸山脈來到另一面的水漣,雨勢漸小,
後來再進入牛山、
海灣風景壯觀,
再來來到了蕃著寮休息區,
上了18號橋,看到了如太魯閣堅硬的溪谷,
往下看大約2,300公尺高,令人害怕,
應該再停芭崎晀望台望著磯崎海濱,我在路旁看到一條大蛇。不知它的名稱,希望它沒有被車輾過。
之後在磯崎海濱的後面山停靠一下,
再到大灣停,公公真貪心,每個地方都想拍拍,風景都是一樣,不是山啊!就是海啊!
再到石梯漁港,婆婆上廁所
先在石梯坪出入口吃婆婆的愛心油炒飯後,ps:還是我一大早炒,且前一晚準備料,
公公還在客廳躺著看電視,不理會我,現在還閒我妙太油。
再去看海岸被海侵蝕的岩石,
老闆是從高雄崗山來花蓮發展建聖地牙哥的一間白屋,還不錯
但咖啡一坏150元,之後到了月洞,此有蝙輻,公公發現賣咖啡的先生看高考的書,
又到長虹橋,是到舊長虹橋拍照。
後過靜埔在北迴歸線停留,有臭豆腐公公想吃。
來長濱市區後,
在 7/11 買了咖啡,還有茶葉蛋,
直達玉長公路長濱端,有一條長的玉長隧道
上了玉長公路後,
最後在安通溫泉飯站投宿,住301房,未帶泳衣,只好洗浴室溫泉。

花蓮和平電廠


服務公職以來,因為業務需要,已出差不下十幾次,回顧以前的生活,從來沒有這麼經常性生活在鐵路車廂內,雖然行動受限,但視野及心情卻能隨著窗外的風景遨遊於天地之間。
幾次以來,總驚豔於和平車站旁,如此小的腹地,卻有一個專屬港口,及許多延著陡峭山壁的粗大管線,當然最令人注目的是,那直聳天際的大煙囪,尚未參訪以前,我認為它是一個為觀光所立的大鋼柱,更不曉得原來它是標識著我們進入花蓮縣,或離開花蓮縣的地標。
進入廠區後,廠區以一個電廠而言,實在是小了點,但是經電廠課長介紹,它的發電量可供給十個花蓮市使用時,又覺得小巧但效率高。
效率與管理從整個廠區及辦公區的乾淨與寧靜散發出來,辦公區沒有多餘的交談聲,而機具,廠房的擺放也恰如其所,坐在廠區專車內,組長帶我們繞行整個電廠,可以發現每一項設備如儲水槽、儲煤槽、發電機組、降溫設備、過濾器等等其動線及位置都是經過經心安排的,如儲煤槽靠近港口、降溫設備設在岸邊,可就近利用海水、過濾設施延著煙的流動排列,這都是考量過環境特性與設備特性,所規畫出來的,廠區佈局就是一個良好管理的成品。

上圖是一個過濾器,可能降低排放出去的微粒,並將過濾出來的煤灰拿到旁邊的台泥水泥廠作為水泥原料,一舉兩得。
環保意識的高漲,相對的如電廠這種會影嚮環境的設施,自然在擴建上阻力重重。由電廠課長說明電廠在環保上的設施與回饋金上的難題,便了解目前企業在環保議題上受到日益嚴峻的挑戰,當然這是為了全人類生存所必須給予的法律限制,這使得目前所有企業生存下去的重要議題,是如何正視環保問題,並能以有效率且低成本的方法解決問題。
人們自古以來便會力求以最低成本,去取得最高的效益,但是人性自私,是故往往為了求得已身的最大利益而忽略了環境與社會的考量,是故必以社會群體所取得的共識,形成法律,來限制個人的特定行為,以取得社會最高的利益,加諸於工廠的環保成本,便是為了整個人類生存的環境能夠永續發展,加諸於專利權的成本,能激勵發明家去貢獻自已的發明,好的法律必須平衡個人權利與社會的福祉。稅法對個人及私人組織的財產權影嚮重大,是故良好稅法與稅務工作的切實執行對社會的公平正義,及永續發展影嚮甚大,當然我相信良好的管理必須根植於人性的暸解上,現今社會能達到如此繁榮的境界,除了是科學的進展,另外就是制度面也的大幅改進,從以往的專制進化到目前的民主,而違反人性的制度也由時間證明它的失敗,如共產主義就是比資本主義更不符合人性,故時間宣告它的失敗,管理面上如何符合人性,也是相當重要的議題。

20080905

輔助測試方法

在單元測試的領域中,有兩個輔助測試的方法 setup 及 teardown。
setup 會在每個測試開始前先執行,而teardown則會在每個測試執行完成後執行,對於設定初始測試物件的資源配置相當好用。

居家佈置

睡房
利用活動式儲物箱存放被單等物品,並將其放置床底,可充份利用床底的空間。

20080904

「理所當然」的墨鏡

昨天剛忙完了一整天,工作及好勝心所帶來的心理壓力讓我許久不能夠靜止煩燥的心情,整個人悶在客廳,望著正在看電視的老妹,叫她去幫我買杯飲料,當回來的老妹把飲料拿來給我時,我一望是我不喜歡喝芋香奶茶,就突然耍起任性,咀了一句:「妳明知道我不喝芋香奶茶的,為什麼還買這個!」索性把手腳一縮,表情冷淡的看著電視,任芋香奶茶凝結了一灘水,伴著客廳一股疆冷的氣氛。一段時間,老妹小聲的話語:「要不要再出去買綠茶回來。」我裝作沒聽到,然後她拿著鑰匙,走出去帶回來一杯綠茶,但是疆局仍是存在,雖然我無所事樣應然地拿著綠茶喝,但是內心無限的難過染進了綠茶的甘甜味。
世間最大的誤解來自於我們彼此無法互相了解想法,人心的巴別塔比語言的更不容易建造。但在知識的幫助下,我們眼界越開越大,發現許多理所當然的事,在某段時空下是如此難得。如同電力的使用,是經由無數敏銳的心靈所建搭而成的,在停電時,夜間世界彷彿陷入混沌,此時心中電的價值才呈現出來如鑽石般的風情。由此可知,價值的單位只有「有」及「沒有」吧!而觀念的價值更不易被人查覺,在政治逐漸開放的現今,人們又開始遺忘了自由觀念的普及是艱難的路程,消失了彼此尊重,只是在自由之下浮爛誇大自己的聲音。
失去及傷害會讓人學習許多珍貴的東西原來是理所當然。不再理所當然的心靈,給妳一個放大鏡,清楚的發現原來這麼多人為妳付出的,頓時世界變成的粉紅溫暖的顏色。內心開始注意到老妹及朋友總是容忍我的任性,突然,這個普通的夜裡,溫暖幸福充滿了整個內心,當丟了「理所當然」的墨鏡。
是不是總覺得沒什麼存在價值,且大家都不關心我,世界一片灰暗?問一下自己,有沒有戴上「理所當然」的墨鏡。
2001/2/9

20080902

美麗大部份是一種勉強

美麗大部份是一種勉強

少數人是自然美麗的

有人說自然就是美

但我相信某種程度的美麗是需要勉強

太過注重外表反而是沒信心的表現

而不注重外表則是沒禮貌的表現

外表至少要讓人看起來舒服

藝術家的氣息迷人但會使妳活不下去

絲瓜麵線

這是沒時間的ETS自創的流程!
  1. 先裝一碗水到鍋子
  2. 加香菇到鍋子泡
  3. 紅蘿蔔及白蘿蔔切片放到鍋子
  4. 開火開始煮
  5. 加薑片及辣椒段
  6. 加麵線
  7. 絲瓜切片放入鍋子
  8. 加鹽及香油

20080901

戀物

戀物 2003/12/6
不曉得妳^^是否曾經感嘆過:
「現在世界太物化了,真懷念以前物薄情厚。」

我雖然不似柏拉圖的唯心,但也應該不是唯物主義者,精確點的判定,應是介於其中吧!偷偷地說,我曾經瘋狂迷戀馬克思,這位偉大的唯物大師,可我從沒把他的資本論給看完過。雖然現在已解除戒嚴,我仍擔心以上文字不曉得會不會讓我無聲無嚮的消失,而我書桌下那本紅皮簡體字版的後現代主義便成為左傾思想的呈堂罪証。

從一個人的戀物,可以重組成這個人的片片段段,我的經驗不曾否証以上命題。由於這個經驗趨使,我習慣,甚至帶點 compulsive 地從一個人喜愛的小東西,去猜測一個人(我不是命理師,能吐出:「如果妳喜歡粉紅鉛筆,妳一定是位小學老師。」般權威似的斷言。只是會不自主的猜測,像是進入遊戲的感覺)。

我的戀物症也未嚴重如同 A 級動作片描述的變態狂,能把一個帶有體味的內褲或胸罩,當成一個客體,進而得到「高潮」。有點類似心理學中的過度推論,能從一句話,推論出一大串的陰謀論。在這個充斥著甘迺迪陰謀論、貓王陰謀論,甚而是我最愛聽的 The Doors 主唱 Morrison 的陰謀論世界,或許應該禁止過度推論,讓我的偶像死得安安心心的,不帶走一片雲彩。

我的戀物,就像小孩玩拼圖一樣,刺激來自於不一定全猜得中,而副作用在於討人歡心。我喜歡當我突然買了一個人最喜歡的東西為禮物時,她喜悅的表情。因為戀物,我很容易記得周圍人喜愛的東西。

心情筆記裡”彩妝”,大致上可看出我是怎麼看待那美麗的第一性(西蒙波娃會很高興,至少她那本「第二性」已教育到我應把女性當作第一性)

會在筆記放上我喜愛的東西,讓我好好地
----------------------------------------了解我自已。

喝了太多茶

Thu Sep 26 04:15:27 CST 2002

喝了太多茶
忘了是紅茶還是綠茶
反正是紅著眼失眠了
寧靜的晚上
讓我能清楚地拈起那一根根內心洶湧鼓動的思緒
不幸地
我偏偏拈起那一絲心理學家似的罪惡感
它宛如一縷縷吐不完的蠶絲,綿延不斷
但我沒有養蠶人家的豐收慶典
我發現自己已經好一陣子未曾喜歡生活了
因為生活把我玩弄於股掌之間
今天我想去南方步道
沒錢
前天我想換一件棕櫚色的長褲
沒錢
當我聽著 The girl from Ipanema
把一陣陣南方的陽光記憶灑在我的右腦
泛黃的午後沙灘
讓我難過

20080831

蘿蔔

食材處理
白蘿蔔不同部位的料理
白蘿蔔近頭部的部份因為飽水度較高,味道較甜,適合用來做成沙拉等生食,中間部份因辛辣味較弱及柔軟,所以適合用來做成關東煮或燉煮等料理,尾巴部份,由於辛辣味較重及纖維較粗,適合切做成湯料。
使用白蘿蔔一定要削皮嗎?
其實不是,只要確定它不含農藥的話,經過清洗乾淨後,即可連皮一起使用。不過皮有較粗的纖維,如果不削皮去燉煮,會比較難吞嚥,經削下來厚厚的一層皮,可以切絲做沙拉或做味噌湯的湯料,或醃漬。
去除蘿蔔泥的水份
要去除蘿蔔泥的水份,最好的方法是放在濾網上約7-8分鐘,讓水分自然滴去,各其他食材一起煮時,味道才不會變淡,一樣美味。如果要做成天婦羅的沾醬,就要多除去一些水分,不過需注意若放置在濾網過久的話,也會造成維生素C的流失。
選購
用手拿著覺得沈沈的,葉子看起來青又綠,就是新鮮白蘿蔔的特徵。若頭部有嚴重黑斑、尾巴長長的及葉子黃黃的等情形,就表示白蘿蔔不夠新鮮了,不宜購買。
保存
購買新鮮的白蘿蔔後,如果要保存的話,由於莖和葉會吸收水份,會使白蘿蔔本身失去水嫩感,所以買回來後應馬上切除,而切除下來的莖及葉柔可以用熱水燙過後,用來當湯料或煮飯、炒菜皆可,另外為了防止白蘿蔔變得乾燥,最好用報紙包裹後放入冰箱保存。

四季豆

保存方法
四季豆通常直接放在塑膠袋中冷藏就能保存5~7天,但是擺久了會逐漸出現咖啡色斑點,如果想保存得更久一點,最好將四季豆洗淨,用鹽水汆燙後瀝乾,再放入冰箱中冷凍,便可以保存很久。切記水份一定要瀝乾,冷凍過的四季豆才不會黏在一起。

龍鬚菜

保存
龍鬚菜蠻適合燙來吃;燙完不用過冷水不會變黃,放冰箱還可以保存個2~3天,但是千萬不要放冷凍啦!

茄子

產季
茄子的生長季較長,每年的6~10月是它的收成季,9月最盛。
食材處理
不過當茄子洗淨切開後很容易變黑,主要是它含有一種「單寧」的成分;在接觸空氣中的氧化現象,就像蘋果、梨……等水果都有這種成分,所以在洗茄子時,放在清水中沖洗一會兒,或是在鹽水中沖洗,就不會變黑了。
選購
選購表皮顏色亮麗有光澤,外型平整先滑,柔軟有彈性,無種子為佳。如果剛收穫不久,蒂部切口會比較水嫩,萼刺尖銳,摸時會被刺痛。
保存方法
一般保存時間為1-2天。
茄子的表皮覆蓋著一層蠟質,它不僅使茄子發出光澤,而且具有保護茄子的作用,一旦蠟質層被沖刷掉或受機械損害,就容易受微生物侵害而腐爛變質。因此,要保存的茄子一般不能用水沖洗。
茄子是一種相當脆弱的蔬菜,買回的茄子需要冷藏,在冷藏前要先用密封袋裝好在放進蔬果保鮮室裡保存,如果直接放進冰箱的話,茄子的水分容易流失,冷藏的時候要多加注意冰箱的溫度,最好維持在6度左右,以免茄子凍傷。

20080830

瓠瓜

嫩瓠瓜怎麼選?
個頭別太大:每個約300~500公克最適合。
表面無刮痕:挑選沒有刮痕或受傷的,否則煮後會變黑。
帶點短絨毛:瓠瓜的短絨毛,代表新鮮度。果蒂愈濕綠愈新鮮。
子小且偏白:剖開的扁蒲,可以從子的大小跟色澤觀察,子小而白的較嫩,大而黃的偏老。

老瓠瓜有啥用?

擺久了的瓠瓜、個頭太大的瓠瓜,或是不小心受了傷的瓠瓜,若不想再吃它,只要放得再久一點,等它變硬,鋸開之後,裡頭的籽可種新瓜,殼則是阿嬤時代傳統好用的水瓢!

絲瓜

如何挑選

兩種絲瓜都應挑選外觀頭尾平均者,我常買大頭大尾小的,真是笨。澎湖絲瓜還須注意皺褶的間隔是否勻稱,越均勻代表肉質越甜。
如何保存
絲瓜買回家最好能在1-2天內吃完,最能品嘗到絲瓜的新鮮甘甜。如果沒有馬上食用,可用報紙包好,再套上塑膠袋收冰箱冷藏,延長絲瓜保存期限。最後小小叮嚀,要烹調前再削皮,薄薄的瓜皮是絲瓜的天然屏障。
切絲瓜刀法
切開絲瓜的處理步驟會影響口感,必須切除絲瓜內部的白色纖維,也就是帶籽的部份。過多纖維,吃起來較粗糙、感覺比較老。這個小弟我之前都不知道,每次都吃到纖維,再把它給吐出來,真噁心。


(圖片來源:聯合電子報)

20080829

Gerbil 文件基礎

Gerbil 文件基本元素
書的結構對應 Gerbil 元素
chapter
section

<%
# parameters for the HTML format
$title = "rails 行車手冊"
$authors = { 'fhopecc & wind' => 'http://fhopecc.blogspot.com' }
%>

<% chapter "MVC 模式" do %>
<% section "簡介" do %>
MVC 模式是 rails 框架所使用的模式。
<% end %>
<% end %>
Gerbil 是利用 ruby 的區塊(block)語法及 ERB 來模擬標籤語言,
chapter 表示 block 中內容是一個章,我們知道章可以包含多個節,故 chapter 的區塊中可包含多個 section ,上述有一個 chapter 其標題為 MVC 模式,而其包含一個 section 簡介。

20080827

一個合作寫書的架構

一個良好合作寫書的架構,
必須滿足下列條件:
*精簡表達書的結構,讓作者專注於內容

精簡表達書的結構
寫一本書最重要的是精簡表達書的結構,
而這個表達方式首先必須能表達出書的結構,
通用來說,
書的結構基本上包括了章、節、段落、
圖、表、參考文獻、目次、索引等等元素。

這些元素也包括了基本的階層關係,
像是章這個元素,可能由許多節組合而成,
而節又可以包含許多段落,
最後段落由字元組成。

而節又可包含子節這種遞迴關系。

表達書的結構,是基本要求。

第二個要求是上述的表達語言必須是最簡單的
最簡單表示我只須要寫出必要的結構,
至於電腦可以幫妳作的,
如下面常見的元素通常可由電腦幫忙產出:
自動編號
章、節、圖、表出現的順序自動為其產出編號。
目次
電腦可以依據章、節的階層結構及章、節、圖、表出現的順序自動產出目次。
交互參照
平常妳看的「請見圖1」之類的交互參照,
則必須給參照的名字,讓電腦為妳產出「請見圖1」之類的文字。
索引
作者只要給定索引字清單,
電腦會搜尋整份文件,
並依照索引字清單製作成索引。
排版
可由文件中的參照在排版之後製作出來,
排版可由元素的階層關係及前後關係推理元素要如何呈現出來,
就讓電腦去作。

當電腦能為妳自動產出更多內容時,
我或妳,身為一個作者,
只需要專注寫出書的內容。

表達書結構的語言
至於精簡表達書結構的語言:
傳統上有 Docbook,
及現正研究的 Gerbil。

轉換
當用上述表達書結構的語言寫完原始內容後,
則通常會經過原始內容轉換呈現或排版內容。
例如
docbook 就會經過以下程序來產出可見的 html 檔。
  1. 用 vim(或妳不學,用其它的純文字編輯器)製作 yourbook.xml 檔(這個檔只描述書本的結構)
  2. 將 yourbook.xml -轉換-> yourbook.html
  3. 用 IE 看 yourbook.html 是否符合呈現的需要
  4. 再回到第1步,作修改

20080826

CSS 的位置

使用 <STYLE>...</STYLE>標記 ( 置於BODY本文區之前 ),定義HTML標記供整個網頁使用。可使用多個<STYLE>...</STYLE>標記。
所以擺在 <HEAD></HEAD> 是因為 head 在 body 標記前。
請參考什麼是CSS?

20080824

控制 html 段落的行距

調整 css 的 line-height 屬性



老妹:妳一定要去借一本 css 的書來讀。
段落的行距,可藉由 line-height 屬性設定,如下例:


若源碼如下:

<p style="line-height:1">
line-height:1 妳看到的應該是 line-height 屬性值為 1 的段落,
假設你輸入的數字為1,則代表行距是文字大小的1倍
</p>

<p style="line-height:2">line-height:2


line-height:2 妳看到的應該是 line-height 屬性值為2的段落,
假設你輸入的數字為2,則代表行距是文字大小的2倍
</p>

程式碼顯示如下:


line-height:1 妳看到的應該是 line-height 屬性值為 1 的段落,
假設你輸入的數字為1,則代表行距是文字大小的1倍



line-height:2 妳看到的應該是 line-height 屬性值為 2 的段落,
假設你輸入的數字為2,則代表行距是文字大小的1倍

20080823

竹筍

如何挑選
麻竹筍──選購時以筍基部寬廣、色澤亮麗無乾萎現象,而筍尖要選擇密合一點的比較好。
孟宗竹筍──
冬筍:筍支像似黃牛角,呈土黃色其肉質硬實,但基部纖維化的部分占較少的為佳。
春筍:多直立形,因外皮有淡黑色的毛,又稱毛竹筍。選購時以筍基部寬廣,筍尖密合包含的較好。
桂竹筍──筍支細小且埋於泥下,採收不易。一般桂竹筍實際上並不是筍體而是露出地面且肉質細緻的幼竹。採收後極易老化,為保持肉質的細緻不致粗糙老化,會立刻做成桶筍。
箭竹筍──和桂竹筍類似,為出土幼嫩竹支,但其筍支更為細小,也是以產品加工方式上市。
如何保存
竹筍採收後會迅速老化,除了已經加工過的桂竹筍與箭竹筍之外,其他的竹筍保鮮極為不易,因此要盡量趁鮮食用。

如何挑選:
選擇薑身肥大硬實、表面平滑無口,且具重量者。
如何保存:
老薑本身已纖維化,不適合冷藏保存,容易使水分流失,可放在潮而不濕的細沙裡保存。嫩薑與粉薑要裝入保鮮袋內,置於冰箱保存。薑只要切過,切口就必須用保鮮膜或保鮮袋包好,放入冰箱冷藏。

Gerbil

Gerbil 一個相當輕巧且排版工具,100% 純 ruby 寫成。

A.安裝


1. 妳要先裝 ruby
2. 打開命令視窗,用下列指令安裝這三個 gem

gem install RedCloth coderay
gem install gerbil

3.再輸入下列指令,測試是否安裝成功:
gerbil -v
若安裝成功會出現
Gerbil 3.1.0 (2008-06-22) http://gerbil.rubyforge.org /home/sun/src/gerbil

20080822

學習的困難

在我的學習事物的經驗中,
我發現了兩種令人會想停止學習的兩種情緒。

學不會的感覺--要學會接受「不懂」的狀態

任何東西剛開始學的時侯,
總是讓妳感覺到,
妳學得會嗎?
當你學習全新東西時,
這種感覺更是強烈。

我稱這種狀態叫作「不懂」。

舉一個實例來說明「不懂」,
當妳看到 btthedcd 這個字時,
應該會有「不懂」的感覺吧!

因為妳的記憶中,
沒有這個英文字的中文意思,
當頭腦找不到這個字時,
就會發出「不懂」的感覺。

但我要說的是,
「不懂」是學習一定會產生的感覺,
為什麼呢?
首先回到學習的定義,
學習就是學會自已原本不會的東西,
所以沒有「不懂」,那來的學習。

而這個感覺越強烈,
表示妳要學習的事物,妳是相當不熟悉,
所以妳的頭腦中可完全沒有碰過這個事物過。

所以若妳能接受越強列「不懂」的感覺,
表示妳能學習更多元且多樣化的事物。

當妳無法接受「不懂」的感覺,
那妳一感覺到「不懂」,
馬上就轉移注意力到妳熟悉的事物,
這樣妳內心世界永遠不會擴大,
只侷限在妳已熟悉的小框架。

挫折感--要用毅力去克服

強烈的「不懂」感,
往往令人深感挫折,
於是妳自然會避免去接觸。

但是忍受「不懂」感覺的能力,
卻是讓妳將來與眾不同的重要能力。

在所見即所得編輯器四處氾濫的今天,
學習 vim 來處理文字,
對大部份的人而言,絕對是陌生的。

vim 的特性就是它是鍵盤導向的編輯器,
所以對滑鼠的支援很少,
但是當妳的手指完全習慣後,
妳發現妳閉者眼睛也能編輯一份複雜的文件。

換個方式比喻,
剛開始學吉他時,
每一個和絃都要用一個手指一個手指的去按,
當吉他進入中級的程度時,
你可以發現妳不需要看手指以及擺在譜架上的和絃圖,
只要看到 Am ,手指就自動擺好。

當一開始我確認我想要鍵盤為主的編輯方式,
來節省我使用過度的眼力,
我開始持續不斷強迫自已用 vim,
只要是打字,
就算最後是要存成 word 檔,
我也在 vim 打完字,
再貼到 word 檔,
2, 3 個月後,
vim 變成我的本能。

練習、練習、再練習,
不斷的去接觸,才能把這個東西學會。

當我嚴長壽「總裁獅子心」中提到的,

怕他就去研究他

一樣的,
妳必須不斷的接觸,
才能了解事物的真正本質,
那時妳也就熟悉了,
而且發現自已的能力又提升了。

同時要記住目前這件事的挫折感,
將來有能力、技巧可以輕鬆處理這件事時,
以前的挫折回憶,
會讓妳對自已的學習能力更有信心,
這就是「努力之後的信心」。

Rails 的國際化

全球化的時代,應用程式支援多國語言介面已成基本功能,
這時好用的國際化介面可節省不少開發的功夫,

若您是使用 rails 來開發應用程式,
我推薦 Globalization 這個 plugin,
來作為您國際化的選擇。

中文文件較完整為國網中心:中文/國際化

英文文件則可參考:Get on Rails with Globalize!

20080821

網頁編排初體驗

"不可使用所看即所得的編輯軟體"
對於編輯HTML語法只在HELLO WORLD階段的我,不能使用FRONTPAGE、dreamweaver、NVU等方便的網頁編輯器!苦阿!

品爸派給我工作是要將WORD另存成HTML檔後,從其原始檔去排版。我從早上接到此指令後,死命的在GOOGLE搜尋,從頭開始學習CSS,可是DEADLINE是今天下午五點(謎之音:完了),不管死馬當活馬醫啦!用筆記本打開由WORD轉的HTML檔案後,看到一堆亂碼對我微笑著!這…我要從何下手阿!原還想以偷雞的方式,偷偷用剛在阿榮福利味上抓的NVU來排版,所看即所得才是王道嘛!改得順手時,存一下,看看編輯的成果!用火狐看,很好很好!品爸說事主是用IE看的,所以我再用IE瞧瞧看,報應阿!全跑掉了!只好土法鍊剛了,用換行的方式去排版,品爸說不重要的TAG可以刪掉,我怎知那些不重要阿!正當我陷在HTML亂碼中,公司的人又一直××的一直叫,等我回頭要再改剛剛的東西,我剛是在那一行><

碎唸了這麼多,我也只改了五頁(哭)

網頁的列印控制

設計網頁的時候, 通常考慮到的是 '讓瀏覽者賞心悅目' 的排版問題。
如果瀏覽者打算列印你的網頁, 或是你的網頁利用資料庫處理了一些資料,
準備製成報表, 這時便會遇到分頁的問題。

怎麼樣讓網頁於列印時自動分成適當的頁數呢?
其實有個簡單的指令, 馬上能讓你達成心願。

這個指令是:
{{{
<P style='page-break-after:always'></P>
}}}

雖然這是 HTML 的 css 而非 Javascript 的指令, 不過配合網頁進入時
所啟動的 Javascript 的 window.print() 印表機交談視窗指令,
更能讓網頁的列印方便許多!

{{{
example.htm

<HTML><HEAD><TITLE>網頁舉例</TITLE></HEAD>
<BODY>

<CENTER><A HREF='print.htm'>連結到想要分頁列印的網頁</A></CENTER>

</BODY>
</HTML>
}}}


print.htm
{{{
<HTML><HEAD><TITLE>自動分頁列印!</TITLE></HEAD>
<BODY onLoad='printPage()'>

<SCRIPT LANGUAGE='JavaScript'>
<!--// 自動列印: 會彈出印表機交談視窗
function printPage() {
window.print();
}
//-->
</SCRIPT>

<CENTER>這是列印的第一頁!</CENTER>

<P style='page-break-after:always'></P>

<CENTER>這是列印的第二頁!</CENTER>

</BODY>
</HTML>
}}}
----
昨天跟同事研究一個小問題,是要把註冊繳費單列印出來,原本這個工作是用word的合併列印來讀取excel裡面的資料,再把它們印出來。 現在想要用網頁+資料庫,讓用戶端可以直接從網頁上瀏覽後再列印,解決方式就是為這個網頁設計一個列印專用的 css樣式表:
<style type="text/css" media="print">
...
</style>

接下來的問題就是A4印表機的整頁內容最大邊界為何,經過昨天的測試大致上得到下列的結果...
#printArea{
width:170mm;
height:258mm;
border:solid 1px #000000;
font-size:12pt;
}
我在<body>區塊裡面放了一個<div>並把它的id名為printArea,
在預覽列印的時候可以看到一個大框框(border:solid 1px #000000;)
調到這個大小(w:170mm,h:258mm)剛剛好佈滿可列印的內容區。

另一個要注意的就是字型與字體的變化:
一般我們在公文書上的字型都是用標楷體居多,所以我們可以這麼定義...
font-family:"標楷體";
字體的部份是要以列印出來的實際大小為準,所以用pt作為字體單位...
exam:
font-size:16pt; /*段落項目的大小 */
font-size:12pt; /* 一般內文的大小 */
font-size:10pt; /* 較小的字體 */
font-size:8pt; /* 如果是要列印出來,那到8pt已經差不多夠小了,再小就不能看嘍! */

因為上列的css都是針對print用的CSS,所以針對網頁瀏覽時呈現方面也要另外製作一個css
<style type="text/css" media="screen">
...
</style>

這是比用Crystal Report更方便的網頁列印Solution,不過有點累人就是了....

列印 html 時,css 要直接用 style tag 不能 include css file,
否則不會產生效果。
----

20080816

目前要寫書的分配工作

  1. 安裝、Hello World(妹妹)
  2. HTTP協定(me)
  3. MVC架構(me)
  4. 連接資料庫的範例(妹妹)
  5. ActiveController
  6. ActiveRecord
  7. ActivePack
  8. 上傳檔案
  9. Migration介紹

20080815

採取 Docbook 合作寫一本書

採取 Docbook 來合作寫一本書,
有幾個工具要學習。

1.vim 編輯器
vim 只是一個單純的文字編輯器,但是它可是寫 Docbook 文件的好工具。
Docbook 格式為一個 xml 檔(基本上是個文字檔),設計給專業書籍用的,
所以參考結構,目錄的自動產生,都相當完整,
但相對而言,xml檔要打很多標記(tag),而且只要語法錯,
就沒辦法轉換成 html 檔,而 vim 可藉由其語法 hilighting 的功能,
讓我們在編輯時,就知道有沒有寫錯語法。

基本 vim 的使用,可看李果正兄這篇 大家來學 Vim 一個歷久彌新的編輯器。

還有家裡還有 Or'eilly 出的「UNIX 超級工具」上下兩本書,
也有介紹基本的 vim 使用。

關於 vim 的學習,最好的方法就是強迫自已多用。
想當初我只要是純文字的東西,一律使用 VIM 來編輯。
用越久,越是發現它的強大。

另外坐而言不如起而行
若妳還沒有把 vim 安裝在家裡,
或是公司電腦,
一切都是白作的。

2.轉換 Docbook 至 HTML
當妳把要寫的書製作成一個 yourbook.xml 檔時,
要經過一個轉換器,把 yourbook.xml -轉換-> yourbook.html,
這樣就可以用IE or Firefox看 yourbook.html,
去了解妳書本大致的模樣。

而轉換目前滿複雜的,要安裝很多工具,
有一篇文章是簡體的,
但還算完整可用,照著作希望妳應該可以完成吧!
DocBook文檔轉換環境設定

再 summary 一下寫書的步驟:

  1. 用 vim(或妳不學,用其它的純文字編輯器)製作 yourbook.xml 檔
  2. 將 yourbook.xml -轉換-> yourbook.html
  3. 用 IE 看 yourbook.html 是否符合呈現的需要
  4. 再回到第1步,作修改

雙手併用,減少滑鼠腕

因為身為資訊人員,長時間必須使用滑鼠,
終於有一天爆發了,手腕一直疼痛,
當然我完全知道原因是使用過度,
唯一的藥方就是減少使用。

於是我申請了一個無線滑鼠,
強迫自已在上班時間利用左手來使用滑鼠,
過了一個月,
左手使用如右手般流利。

晚上在家便使用右手來使用滑鼠,
現在滑鼠腕真的沒了。