好久沒用的 Perl script – 反轉檔名

剛沖好熱騰騰的底片

今天去拿了幾卷沖掃好的底片回來,果然又有幾卷被掃錯了方向,也就是說應該由前往後掃的,卻被由後往前掃,當然在 Lightroom 裡,只要在檢視裡把依檔名排序改成降冪就可以解決顯示順序的問題,但如果是從資料夾裡直接看,順序不對看得就很痛苦,好久以前就有這樣的困擾,所以用 Perl 寫了一個 script,可以把檔名編號反轉。例如:

錯誤的順序: 76320001.jpg 76320002.jpg 76320003.jpg 76320004.jpg
              ↓            ↓            ↓            ↓
正確的順序: 76320004.jpg 76320003.jpg 76320002.jpg 76320001.jpg

看了一下檔案最後編輯的日期是 2011-5-28,已經是快六年前的事了,因為也好久沒有沖掃底片了,有點忘了上次執行它是什麼時候,但沒想到這個 script 還可以正常運作,系統可能都更新好幾次了,也是讓我有點訝異的地方,為了怕以後電腦重灌還是資料不見之類的,放一份到 Gist 上,順便做個記錄。

話說我現在根本完全看不懂 Perl 究竟是在寫什麼鬼了啊! XD

學會活動日曆轉 Google Calendar 的爬蟲

放射線醫學會的網站上其實有個學術活動的日曆,但總覺得每次要連上去看有點麻煩,想把它整合到平時就有在用的 Google Calendar 裡,曾經問過學會有沒有提供 Google Calendar 的格式,說是沒有,後來也是不了了之,所以乾脆自己做了一個 crawler,把資料爬下來後再丟上 Google Calendar,有需要的人歡迎自取。

Read more

用 AutoHotKey 偵測 Smart Card 讀卡機狀態

放在 Smart Card 讀卡機裡的醫事人員卡

因科內最近在注意報告的 24 小時簽章率,這個 KPI 要求正式報告發出後,在 24 小時內使用醫事人員卡做簽章動作的完成率。目前科裡最常遇到的情形是假日沒有帶卡回家,或是家裡電腦沒有讀卡機、沒有安裝背景簽章程式等等,導致未及時簽章。

有一個妥協的方式是,把報告先發成「初步報告」,臨床可以看到報告內容,而又不會造成 24 小時未簽章,等進辦公室可以正常簽章時,再改為正式報告。所以我在會議中便提議,是否直接在報告系統中去偵測,如果沒有插卡,便不讓使用者發正式報告,無奈遭到主管的反對,反對理由是「不可能!簽章系統不是我們做的,無法整合」,但真的一點辦法也沒有嗎?

Read more

小小的改了一下 PTTChrome

PTTChrome Website
▲ PTTChrome 本身是一個架在 GitHub Page 上的網頁,必須搭配 Chrome extension 才能運作

PTTChrome 是一個 Chrome 的 extension,基本上是用瀏覽器的 javascript 來實現 telnet 或 SSH 的連線,好處是在不同平台都可以支援,一套 Chrome 跑天下,自從慢慢把瀏覽器重心從 Firefox 轉到 Chrome 上後,就一直是用這個來上 PTT 了。

Read more

以服務的方式讓 Evernote 可以 Preview Markdown

之前改了一個 everwatch.rb 可以在背景偵測 Evernote 內文的改變,讓 Marked 2 來做 markdown preview,但最近也不知道是不是更新了 Marked 2 (2.5.0),功能執行起來似乎有點異常:

原本運作的方式是用一個 infinite loop 一直 watch Evernote 有無更動,大約每兩秒把資料從 html 的格式轉成純 txt 格式寫進去,但 Marked 2 會出現一直重覆 loading 數次的現象,再加上 Marked 2 會一直從頭 scroll 到修改的地方,還蠻煩的,但原因也不太清楚是什麼。

Read more