pretty code

2022年2月6日 星期日

第一次使用家用試劑檢測 COVID-19

明天就是上班日了,我們公司需要在前一天上傳檢測結果,第一次使用的感覺是很囉嗦,步驟有點多,重點還要等 15 分鐘,確實是有點麻煩。

我老婆之前上課時也需要每幾天快篩一次,她們是使用羅氏,照她的說法是比我們的簡單一點。

這個春節的後兩天,每天都有第一次任務可以解鎖XD


2022年2月5日 星期六

世界上最遙遠的距離就是明明快到家了,但卻被迫上國道繞一個交流道再開回家

今天不知為什麼到處都是慢車?雖然我本身也不會開很快,但我都會儘量維持在速限的上限,不要造成其他用路人的困擾。

早上為了避開環快中線的幾台慢車,想說快到安坑交流道入口前還有機會切出來到環快的最外側車道,沒想到不知啥時更改了標線?改成一路上都是雙白線,說真的當時腦袋真的會突然一片空白,還好在地郎不是假的,身體自動反應切到北上車道,於是人生第一次在往新店環快上了國道繞了一圈回家XD

回到家不死心的查了一下地圖,我果然沒記錯,以前是可以有機會切出來的,也算是一個難得的經驗?

2022年1月29日 星期六

Use Qt5 on Kobo

從 Qt 5開始,不像 Qt 4 擁有一個 Qt Windows System (QWS),取而代之的是 Qt Platform Abstraction (QPA),這是為了方便移植 Qt 去各個平台。

Kobo 為閱讀器軟體寫了一個 QPA,名稱是 kobo,故可以看到 Nickel 啟動時,會帶參數 "-platform kobo" 來啟動相關程式。


我們想要撰寫自己的 QPA,可以參考下面。

官方資料,目前資料不多,只能看 code


網友寫的


曾試著使用 Kobo 自己的 QPA,要設定變數 export QT_PLUGIN_PATH=/usr/local/Kobo,雖然有寫了一個簡單的 Hello World App,但啟動時看不到任何視窗,也許如國外網友所說,QPA 跟 Nickel 綁得太緊無法直接拿來使用。

看來還有很長一段路要走 ~~~

2022年1月25日 星期二

Shell Script 速成

記錄一下常用語法,懶得每次都要 Google 或是看 PDF 電子書。

變數篇

變數宣告
ABC=XXXXXXX
$ABC

要傳遞出去變環境變數
export ABC=XXXXXX

雙引號中的變數會被展開,單引號則是普通字串
"${ABC}/${DEF}"

上次指令結果
$?

將指令結果變成變數
ABC=$(ls | grep XX) or ABC=`ls | grep XX)

取得不含指令本身之目錄名稱,%表示從後面找最短匹配並丟掉
$(dirname $0)
${0%/*}

Array
Ans=(1258 1414)

取 Array 第一個元素
${Ans[$i]}

取得 Array 元素個數
${#Anss[@]}


流程篇

[ ] 前後要留一個空格

隱形 if ~ then 語法
$ABC 存在則做某事,-d 則是表示目錄
[ -e $ABC ] && do something

if 語法,有特殊字元要跳脫,例如大於或小於
if [ "$? == "0" ]; then
    echo "ok"
else
    echo "error"
fi

不需跳脫 <
if [[ $ABC < $DEF ]]; then
    echo '$ABC < $DEF'
fi

for loop 使用
for ((i=0; i<$max; i=i+1))
do
     echo $i
done

Logs=("abc" "def")
for log in ${Logs[@]}
do
    echo $log
done

2022年1月23日 星期日

私密社團的必要性

一直以來都很討厭 FB 私密社團的設定,想要瀏覽討論,還得先加入社團,遇到這樣的限制,我連想要看的心情都沒有了。

如果是一般人就算了,明明是賣產品的,不知為何要設定私密?真心讓我想不通。

也許、應該、有機會讓我想要購買新機的,但就因為我看不到討論,故少了這麼一次機會。

當然我沒有怪公司,只是如果是我開公司,或是負責行銷方面的業務,我也會選擇私密社團嗎?

2022年1月22日 星期六

沒事還是少逛 PTT 八卦版

昨天中午在逛八卦版時,又看到一個心酸的個案,雖然我本人也是阮囊羞澀,想了想還是把電競筆電剩下的一半預算拿去做好事,不然個案年關難過呀!

再見了我的筆電,再見了我的暗黑 2 重製版,想要玩到購買的新遊戲,我看是沒機會了XD

順便檢視一下去年的費用支出,我應該要再省一點的,記帳完都沒在檢討的,這樣有跟沒有沒啥兩樣。

2022年1月19日 星期三

Kobo 字型顯示問題分析

今天在討論區看到有網友在發問為何 Kobo 無法顯示兩種字型?感覺這個問題很有意思,於是便分別在 Readmoo 和 Kobo 買了同樣的書,書名為《二人生活》。

初步分析結果,Readmoo 有分別針對不同句子指定字型,例如 body 是 gfont,特別的句子則是 kfont,而 kfont 我猜是楷體的意思,應該是 Readmoo 內部自己定義的。

至於 Kobo 其 CSS 檔案確實沒有指定第二種字型,只有單純指定顏色。

故我針對某句加了 Kobo 的內建字型來實驗,經實測還是無法指定字型。

網路查了一下,需使用 kobopatch 才能解決此問題。

使用 "Un-Force user font-family in KePubs:" 為關鍵字去查詢,終於在 kobopatch 的 yaml 檔案中看到註解。原來原本 Kobo 是可以使用兩種字型,但在開放使用者自訂字型後,Kobo 使用了一種簡單粗暴的方法來把原本電子書裡面的字型強制改成使用者的自訂字型,故才產生無法同時顯示兩種字型的問題。

長知識了,還好我對顯示多種字型沒什麼感覺,我只要可以顯示我的 Kindle 圓體就好了XD

2022/01/19 更新

本著實驗的精神,實際來試一下 kobopatch 的流程,雖然我是寫程式的,還是覺得有點複雜,跟我當初第一次閱讀 NickelMenu 的說明文件一樣XD

kobopatch 說明文件有提到,需要去該網站下載對應版本的韌體(kobo-update-4.30.18838.zip),並放入 src 資料夾內,但我進去該網站時,我的防毒軟體不知為何會跳出有毒的提醒?雖然我是相信那些開發者的,但既然我本來就有 telnet 進去機器的能力,簡單下個指令把我要的 .so 檔 tar 出來就好,再包成 kobopatch 程式要求檔名的 zip 檔(kobo-update-4.30.18838.zip)。

tar czvf KoboRoot.tgz -c /usr/local/Kobo libnickel.so.1.0.0

接著修改根目錄的 kobopatch.yaml,因為我想使用 override 的方式,避免去動原本 src 裡面的 yaml 檔案。


最後則是點擊 kobopatch.bat,如果沒有錯誤,在 out 資料夾便會出現我們常用的 KoboRoot.tgz,之後再用原本 patch 的方式更新系統即可。

patch 後的 libnickel.so.1.0.0 的差異如下:


接著修改 Kobo 原書的 CSS 檔案,簡單在原本顏色的 class 增加字型設定。


最後呈現出來的結果。