CotEditor正體中文化

macOS的應用程式都是統一結構,想要製作多國語系並不難(除了編譯過的nib檔案無解),安裝完Xcode就能製作檔案了。相關資料請參考〈Mac程式自己動手做中文化〉。

第一次嘗試製作macOS應用程式的正體中文化檔案,所以特別選擇自己偏好的免費的文字編輯器-CotEditor來製作。翻譯的參考來源以內建的英文、簡體中文和日文為主,一般作業系統詞彙盡量和macOS相同,某些專業詞彙則是找維基百科上的資料複製貼上(例如大量的Unicode區段),其他看不懂的詞彙就是靠Google了。

主畫面

改善FreeFileSync在SFTP中的傳輸效能

簡述一下我使用FreeFileSync和SFTP的傳輸情境。

PC

  1. Apache Web Server:公開的Blog網站。
  2. Bitvise SSH Server:接收Hexo建立好的靜態網頁資料。
  3. 固網:中華電信300M。

MacBook Pro

  1. Hexo:本機的Blog網站資料。
  2. FreeFileSync:上傳Hexo建立好的靜態網頁資料。
  3. 行動網路:LINE MOBILE 10M吃到飽。

FreeFileSync設定

  • 比對檔案內容。
  • 鏡像同步。
  • 資料為100MB的零碎小檔。

Hexo主題使用Lazyload來延遲載入Disqus

Hexo大多數的主題參照〈使Disqus不再拖累性能和页面加载〉的程式碼來修改,基本上應該都能套用。簡單來說,就是把原本Disqus其中一段程式碼另外包成一個loadDisqus()函數使用Lazyload來延遲載入Disqus。因為Disqus整體實在很臃腫,拖累網頁載入速度。

以Hexo Light主題為例,編輯/themes/light/layout/_partial/after_footer.ejs,Disqus程式碼如下:

<% if (config.disqus_shortname){ %>
<script type="text/javascript">
var disqus_shortname = '<%= config.disqus_shortname %>';
  var disqus_config = function() {
    this.page.url = '<%= page.permalink %>';
    this.page.identifier = '<%= page.path %>';
    this.page.title = '<%= page.title %>';
  };
(function(){
  var dsq = document.createElement('script');
  dsq.type = 'text/javascript';
  dsq.async = true;
  dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
  (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
}());
</script>
<% } %>

使用Cloudflare Workers執行Google Analytics

原因:

我一直以来都在使用Google Analytics统计自己的博客和几个网站访问情况。但是一个gzip以后都还有45KB大小的analytics.jsCache-Control还只有7200秒;Google国内的数据中心会被抽风不说,www.google-analytics.com域名早就上了各个广告屏蔽软件的黑名单。

說明:

  • 該方案所收集的數據有限,如需更詳細數據請用Google Analytics提供的程式碼。
  • Cloudflare Workers免費方案額度為一天/10萬個請求,對於流量很小的個人網站是綽綽有餘。大流量網站不適用──且收集的數據需要很詳細吧。

參照其方法,到Cloudflare新建一個Workers,在Script頁面將work.js內容複製貼上(因為是即時頁面讀取較慢,瀏覽器會一直提示停止執行):

Hexo Light主題新增Highlight.js語法突顯效果和CSS表格樣式

Hexo Light主題的CSS表格會影響到程式碼區塊顯示,雖然新增的CSS表格沒問題,但程式碼區塊卻會跑版。而且該主題語法突顯效果實在太不明顯了,乾脆換上Highlight.js(有多種樣式可選),一併解決語法突顯效果和CSS表格影響程式碼區塊跑版兩種問題。

安裝Highlight.js

前置作業

關閉Hexo內建Highlight功能,避免和Highlight.js衝突。編輯_config.yml設定檔,將highlight設為false

highlight:
   enable: false
   .
   .
   tab_replace:

下載Highlight.js,並解壓縮檔案。將檔案複製到Hexo主題內的資料夾:

  1. /highlight/highlight.pack.js檔案複製到/themes/light/source/js資料夾。
  2. 參考Highlight.js demo,我個人選擇Github樣式。將/highlight/styles/github.css檔案複製到/themes/light/source/css/highlight自訂資料夾。

使用資料夾分層管理Hexo文章且不影響永久連結

Hexo的_config.yml的永久連結如果設為:title/,文章預設結構為不分類的放在_posts資料夾,顯得雜亂而難以尋找。
Hexo文章未分類

其中永久連結變數可改用:name/該變數代表檔案名稱本身,如此便能和文章結構分離。因為文章量不多,故以年份子資料夾來分類。編輯_config.yml,Writing的new_post_name改為:year/:title.md

# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://carlos.my-net.tw
root: /
permalink: :name/
permalink_defaults:
.
.
.
# Writing
new_post_name: :year/:title.md # File name of new posts

Tasker 5.9.2加入ADB WiFi

Tasker公布5.9.2加入ADB WiFi。通常手機沒有root要執行一些進階操作,需要USB線接電腦輸入adb shell指令來完成。現在手機不用root也不用一直接著電腦,就能在Tasker直接使用adb shell指令來執行進階操作。

例如:

  • Toggle Airplane Mode
  • Toggle Mobile Data
  • Enable/disable apps
  • Kill apps
  • Simulate touch input on your screen
  • Simulate pressing physical device keys

缺點:
手機每次重開機後,還是得用USB線接電腦輸入adb shell指令取得ADB WiFi權限。使用方法請參考〈ADB WiFi Permission〉。

Android adb shell指令列表(目前Tasker支援不完整,後續會加入更多指令支援):
https://developer.android.com/studio/command-line/adb#shellcommands

從美亞購入健身環大冒險(Ring Fit Adventure)

每晚在家運動30分鐘,已持續一個多月,後來覺得藉由任天堂Switch體感遊戲來運動,比較有趣也沒那麼悶。搜尋到〈健身環大冒險(Ring Fit Adventure)〉為剛發售的遊戲,竟熱門到買不到,台灣網購沒現貨,連黃牛價都缺貨。

PTT網友都到美國Amazon訂購,運費+匯率換算後也不貴。遊戲為全區多國語言版,其中包含繁體中文。Ring-Con本身沒保固,台灣代理商說購買七天內可換,超過七天需付費維修。考量美版和台版相差無幾,便向美國Amazon的Deep Discount Entertainment賣家訂購。

購買須注意:

  • 要直送台灣,請向Deep Discount Entertainment訂購,其他家都太貴。Amazon自賣沒有直送台灣,需找代運轉寄。
  • 某些代運地址會因無法(禁止)寄送而被Amazon鎖帳號。

詳細購買流程請自行搜尋,現在美國Amazon的網站和App都有繁體中文介面,資料填寫和訂購並不困難,不過姓名和地址還是要填英文。

訂單會顯示運費和預收關稅,Amazon關稅採多退少不補,我收到貨沒補稅,共85.93美元。刷卡匯率由信用卡公司轉換,當天訂購即收到郵局VISA刷卡簡訊,金額為台幣2662元。
美國Amazon訂單

macOS Catalina(10.15)安裝HoRNDIS失敗的問題

macOS要透過Android手機使用USB網路共用(Tethering),還是得安裝HoRNDIS。但是官網下載的9.2版安裝包,在macOS Catalina(10.15)一定會安裝失敗,甚至導致莫名重開機。

幸好討論區裡的開發者特別編譯一個未簽署版本,繞過Gatekeeper:

Here’s a version packaging the exact same binary-identical .kext together with a modified install script. This does mean the .pkg is unsigned (so you’d have to trust me and bypass Gatekeeper with the right-click-and-open method). I’ll try to get a PR to the project in place soon.
HoRNDIS-9.2-catalina_install.pkg.zip

該PKG檔的安裝速度較慢,安裝完成確認Pixel 3 XL可以使用USB網路共用。

中華電信預付卡攜碼到LINE MOBILE 111 10M吃到飽

LINE MOBILE這次雙11又祭出111 10M吃到飽,比中華電信預付卡划算,適合超低資費又想上網吃到飽的使用者。可惜這是特案,可遇不可求。

LINE MOBILE 111 NP訂單

方案比較

電信 中華電信預付卡 LINE MOBILE 111
價格 儲值半年共1000元 月租111元
流量 共8GB 限速10M吃到飽
合約 12個月
網內 0.05元(秒) 免費
網外 0.1元(秒) 免費11分鐘,超過0.11元(秒)

攜碼

11號收到LINE MOBILE申請資格後,先到中華電信辦理攜碼,再到LINE MOBILE下訂單。如果趕不及辦理攜碼,先下訂單取得資格,再去辦理攜碼,時間不要拖太久,避免攜碼失敗浪費時間。