2013-12-01

[完全用 GNU/Linux 工作] 入圍 iT 邦幫忙第六屆鐵人賽決賽

三天前,凍仁收到 iT 邦小財神 的來信,告知了《完全用 GNU/Linux 工作》入圍了,這真的是一件天大的好消息,一掃工作上所有的挫折。

接下來就看能否順利晉級並奪得大獎,這對一位 Blogger 而言可是件無比光榮的事!最後還請大家多多關照剛轉職成「前端工程師」的凍仁,期許三年後的自己可以達到另一個高峰!

2013-11-30

[完全用 GNU/Linux 工作] 30. 銷毀資料 - Shred

過去在 GNU/Linux 裡,凍仁會使用 dd (1),此指令會將資料填零而達到抹除磁碟的功用,但就算這樣還是有被專業人士還原的風險;現在凍仁都改用 shred (2) 指令來完成這項任務,此指令是專門用來撕碎資料的。

2013-11-24

[完全用 GNU/Linux 工作] 29. 檢測硬碟 S.M.A.R.T. 健康狀態

S.M.A.R.T. 是個用來檢測硬碟健康狀況的指標,雖然前文 (26. 使用 Clonezilla 打造不死的作業系統) 提供了軟體層面的備份方式,但硬體總有老舊、損壞的一天。而一台電腦中又以硬碟裡的資料最為重要,這裡凍仁將介紹 GNU/Linux 下檢測、監控的方法。

2013-10-16-palimpsest-smart.png)
▲ 在 GNOME 上我們可使用 磁碟公用程式 (Palimpsest) 來檢測 SMART。

2013-10-31

[完全用 GNU/Linux 工作] 28. 使用 Live CD 修復 Debian/Ubuntu 系統

承上文 (27. Ubuntu 系統版本升級),如今日不幸於系統升級時當機,最嚴重將導致系統無法開啟,這時可以透過 Live CD 進行修復。

MOPCON 2013

MOPCON (Mobile Open Platform Conference) 是南台灣一年一度的大型 conference,其焦點著重於進幾年竄紅的行動裝置 (Mobile) 應用上。去年凍仁臨時拿了 RJ 的名牌聽了第一天的議程學到不少東西 (感謝主辨單位的通融),今年更有幸加入了工作人員的行列。


▲ [Day1] MOPCON 2013 工作人員大合照 (由 CYJ 拍攝)。

說來慚愧,加入資訊組的凍仁並沒幫上什麼忙,反而還比較像是隱藏版的美術組組員,因為某設計師的原因凍仁不曾缺席美術組的會議;好在議程組於活動前開了兩名「文字記錄者」的缺,讓凍仁重新找回到自己在 MOPCON 的定位 [1]

2013-10-30

[完全用 GNU/Linux 工作] 27. Ubuntu 系統版本升級

Ubuntu 是個每六個月會釋出新版的 GNU/Linux 發行版本。它會不時提醒使用者可以進行升級版本的動作,還擁有圖形化的升級介面,是個很貼心的 Linux 系統!但凍仁曾因此中過招,於是都直接於 tty1 (Ctrl + Alt + F1) 使用 Ubuntu Server 的方式升級,就再也不曾出事了。

試想,今日在圖形介面下升級時,若恰巧遇到 X Window 被重啟 (或換掉) 所導致的升級失敗,到頭來還是得回 tty1 下進行救援,那我們一開始不如就直接於 tty1 下使用指令升級不就得了。

2013-10-24

[完全用 GNU/Linux 工作] 26. 使用 Clonezilla 打造不死的作業系統

早期凍仁使用 Ubuntu 做為主要工作環境時,常因為系統升級失敗而不得不走上重灌一途;現在除了會額外安裝備用的系統以外 (先前於 01. 前言 一文提過),平時還會使用再生龍 (Clonezilla) 進行系統層面的備份,以備不時之須。

[完全用 GNU/Linux 工作] 25. 視窗管理及工作區 (下)

2.2. 桌面 (Desktop)


2013-10-12-ccsm-03.png
▲ 圖 5: Desktop 分類的設定。

[完全用 GNU/Linux 工作] 24. 視窗管理及工作區 (上)

自從 2007 年開始接觸 Ubuntu 7.04 以後,凍仁於 x86 電腦上的使用習慣有了大大的改變。與 Windows 相比,除了有更多可以操控視窗的快捷鍵外,更多了工作區的概念。這讓生活在視窗之海的凍仁解了套,也想說一句「我回不去了」,再也不想回到綁手綁腳的 Windows 上了。

2013-10-11-workspace-01.png
▲ 圖 1: 2 x 2 的工作區。

2013-10-22

[完全用 GNU/Linux 工作] 23. 密碼管理員 - FPM2Droid

FPM2 For Android (FPM2Droid) 是 Android 版的 FPM2 密碼管理員,其最大的差異為 FPM2Droid 只有讀取的功能。簡單的說它只是個檢視器,不像 GNU/Linux 上的 FPM2 可以建立及修改資料,所以手機版的 FPM2Droid 非常適合出門在外時使用。

2013-10-21

[完全用 GNU/Linux 工作] 22. 密碼管理員 - FPM2


FPM logo

Figaro's Password Manager 2 (fpm2) 是個基於 Figaro's Password Manager 並使用 GTK+ 2.0 改寫的密碼管理員。它除了會將各個數值使用 AES-256 演算法 (algorithm) 加密以外,還可與特定檔案進行二次加密,兼具安全性與便利性,是凍仁工作上的好幫手。

[完全用 GNU/Linux 工作] 21. 遠端桌面軟體 - Remmina

Remmina 是 GNU/Linux 裡凍仁覺得最好用的遠端桌面軟體!它是從 rdesktop 分支出來的一個專案,並於 Debian 6.0, Ubuntu 10.04 開始收錄至官方套件庫中。支援的協定有 RDP, VNC, NX, XDMCP 和 SSH。

推薦 Remmina 給大家的原因是:它除了支援多種協定之外,還可於狀態通知區快速啟動,這對平時得在各個機器切換遠端中的凍仁而言,是個很貼心的設計。

2013-10-08-remmina-05.png
▲ 於狀態通知區的 Remmina。

2013-10-18

[完全用 GNU/Linux 工作] 20. 增進 SSH 使用效率 - ssh_config

SSH 可說是每台 GNU/Linux 必裝的服務之一,我們可以藉由它,在遠端進行一切的操作。為避免被怪客 (cracker) 入侵,會於提供該服務的機器加上限制,以提高安全性,例如:更改埠口 (Port)、限制 IP 登入或只使用金鑰登入 ... 等。

隨著機器數量及限制增加的同時,使用上的繁瑣及不便也會隨之增加。這時,我們可事先設定各個主機,以便日後的使用。Windows 上的 PieTTY, Xshell 皆有此功能,而在 Linux 裡凍仁則習慣直接編修 openssh-client 的設定檔 $HOME/.ssh/config

2013-10-17

[完全用 GNU/Linux 工作] 19. 虛擬機器 - VMware Player 5

若跨平台虛擬化 (Wine, CrossOver) 的解決方案還是無法解決我們的需求,這時不妨跑個虛擬機器來執行 (對追求效能、繪圖及 3D 動畫製作者不適用)。想跑虛擬機器除了硬體 (CPU, RAM) 得夠力以外,有些 CPU 本身更支援硬體輔助虛擬化,若能啟用它必定能得到最大的效益,否則只是半虛擬化。

2013-09-04-run-vmplayer5.png
▲ Ubuntu 12.04 LTS 上的 VMware Player 5 載圖。

2013-10-16

[完全用 GNU/Linux 工作] 18. 藉由 CrossOver 安裝 Microsoft Office 2007

純文字的世界不是萬能的,雖說有 Markdown, reStructuredTextLaTeX 這些很棒的語法可以編寫文件,可它們還是會有不適用的情形 (例如:老師交待的報告、老闆要的報表 …)。

我們或許可改用 LibreOffice 來過關,但凍仁還是比較喜歡在 GNU/Linux 裡使用 Microsoft Office 的方案,這樣就可以直接避開文件的相容性問題。

2013-09-16-crossover-18.png
▲ Microsoft Office 2007 於 Ubuntu 12.04 LTS 上的截圖。

2013-10-14

[完全用 GNU/Linux 工作] 17. 商業版的 Wine - CrossOver

Windows 上多數的軟體在 GNU/Linux 裡都有替代方案 (請參考《OSSF自由開源軟體常見問答手冊》),但還是有無法取代的軟體 (例如:Adobe Photoshop, Forticlient, Microsoft Office 等)。有些我們可使用 WinePlayOnLinux 這類的模擬器來執行 (例如:WinSCP, 軒轅劍 3 等),可它們不見得穩定;對於追求穩定和不考慮跑虛擬機器的伙伴而言,有商業公司支持的 CrossOver 也是個不錯的選擇。

2013-10-11

[完全用 GNU/Linux 工作] 16. 於 Vim 裡使用 sdcv

撰寫上文 (15. 文字界面的字典 sdcv) 時找到 Yunt在 Vim 裡使用 sdcv 的 plugin,凍仁現在只需使用 \w 即可快查單字,連原先輸入的動作都省了,這下就可以得到有選字取詞功能的 sdcv 了 (詳情請參考 vim-sdcv)。

2013-10-03-sdcv-vim.png
▲ 可選字取詞的 Vim。

2013-10-09

[完全用 GNU/Linux 工作] 15. 文字界面的字典 - sdcv

sdcv 可以說是文字界面的星際譯王 (StarDict),它能使用星際譯王的字典詞庫,所以不用怕哪天沒人維護 StarDict,與其開啟圖形介面來查個單字,不如直接開終端機來的迅速。以下凍仁就列出幾項優缺點:
  • 優點:
    • 可於各種 terminator 使用,搭配 Guake 有加分效果。
    • 可使用相同的字典詞庫。
    • 可與純文字的工具搭配使用。
  • 缺點:
    • 需自備字典詞庫
    • 無法選字取詞。
    • 無法使用網路辭典。

[完全用 GNU/Linux 工作] 14. 色碼擷取器 - Gpick, Gcolor2

在開發網頁時多少會自訂些顏色來符合網站整體的風格,這時凍仁會先透過「色碼擷取器」來挑選適合的顏色。在 GNU/Linux 裡我們可以使用 GpickGcolor2 來擷取它們。

Gpick 是個基於 C++ 及 GTK+ 所開發的進階色碼擷取器,完整度比 Gcolor2 高上不少。前者除了色碼擷取 (Color picker) 跟色碼產生器 (Scheme generation) 以外,更多了協助色碼擷取的貼心放大鏡以及版面預覽 (Layout preview) 功能。

2013-10-01-gpick-01.png.png
▲ Gpick 截圖。

2013-10-08

[完全用 GNU/Linux 工作] 13. Pentadactyl

Pentadactyl 是個號稱「只用五隻手指」就可以完全操控 Firefox 的 Vim-like 套件,而且相似度極高,不管是 hjkl 的操作模式、自訂快捷鍵 (keymap) 還是更換佈景主題 (colorsheme) 它都辦得到。

它與 Vimperator 的差異在於:前者是在 Firefox 實作出 100% 的 Vim;後者優化了瀏覽上的使用者體驗,並標榜它是可用、簡潔、穩定及具有設計的。事實上後者對於新版的 Firefox 較不友善,常跟不上更新 (或許是該怪 Firefox 更新速度過快),除此之外前者的高自訂性以及其它的林林總總讓凍仁最後選擇了 Pentadactyl。

2013-09-30-pentadactyl-01.png
▲ Pentadactyl 操作手冊 (:help)。

2013-10-03

[完全用 GNU/Linux 工作] 12. Vim 套件管理 - NeoBundle

原生的 Vim 已經很棒了,但為了讓它更好用,我們可以藉由擴充套件 (plugin) 來加速開發及編寫文章的速度。但隨著 plugin 的增長我們會更難管理,這時只需多裝個套件管理員 (Vim plugin manager) 就可以解決此難題。

NeoBundle 是個基於 Vundle 而發展的 Vim plugin manager。只需編寫一個設定檔就可以管理所有的 plugin。除了可省去個別安裝的時間,也可透它進行更新、重新安裝及觀看紀錄 ... 等,就好比 Firefox, Google Chrome 一樣。

2013-09-30-neobundle.vim.png
▲ 使用 NeoBundle 安裝套件。

[完全用 GNU/Linux 工作] 11. Hacking Vim

Vim 是功能完整且強大的文字編輯器 (Text Editor,以下簡稱 Editor),相信接觸過 GNU/Linux 的伙伴都曾接觸過。相信不少人對於它的印象就如同 COSCUP 2011 的經典名句「第一次用 vi 時進的去出不來」一樣,不過凍仁相信,只要事先做過些功課,便可習得第一成的功力,待大成後,其帶來的便利性是其他的 Editor 難以取代的!

write 11.hacking-vim.md with Vim.
▲ 使用 markdown 語法撰寫鐵人賽文章的截圖。
視窗切割及 CtrlP 火力展示,其怖景主題為 fu

2013-10-01

[完全用 GNU/Linux 工作] 10. Shell Script

Shell script 說穿了就是把 bash 各種的指令 (command) 包進一個 script 裡,並搭配條件判斷式、迴圈 (loop) 及應付各種狀況,更可與排程 (Cron Job) 結合進行週期性的作業。

隨著使用的指令及撰寫的 script 增加,對電腦的整體觀念及熟悉度也會隨之提升。這種完全操控電腦的招式就藏在日常生活中,等著大家去發現!這就是為什麼凍仁會堅持要學習指令的原因,依賴圖形介面是難以得到累積的。以下就讓凍仁介紹些 script。

2013-09-30

[完全用 GNU/Linux 工作] 09. Hacking Bash

真要說 GNU/Linux 有哪裡吸引人,那就是 bash 裡的純文字世界了 (它可是比 Windows 上的命令提示字元還強大呢!),只要我們熟知各種指令及純文字編輯器,就可以完全駕馭電腦,當電腦的主人。但 Bash 的博大精深凍仁很難用一篇文章來解釋,這裡只能簡述些凍仁平時常用的部份,相信《鳥哥的 Linux 私房菜》上面會寫的比凍仁更詳細。

2013-05-20-linux_logo-on-centos5.png
▲ 原生的 Bash (on CentOS)。

2013-09-26

[完全用 GNU/Linux 工作] 08. 電源管理 - PowerTOP

PowerTOP 是個分析、監控電力消秏的節能工具程式,它是由 Intel 於 2007 年以 GPLv2 授權釋出的開放原始碼專案。我們可以使用它找出 GNU/Linux 上秏電的套件,並透過停用不必要的功能以達到省電的效果,是筆記型電腦 (Laptop) 必裝的實用工具。

2013-09-25-powertop-01.png
▲ PowerTOP 的起始畫面。

2013-09-25

[完全用 GNU/Linux 工作] 07. 簡易的防火牆

從 2008 年開始 Ubuntu 8.04 LTS 多了個簡單的防火牆「ufw (Uncomplicated Firewall)」,它簡化了 iptable 複雜的指令及參數,讓人們能快速上手,之後更出現了圖形介面的 Gufw (甚至連指令都免了)。原先為了 Ubuntu 而誕生的 ufw 現在也成功移植到基於 Debian 發展的 GNU/Linux (ezgo, Linux Mint) 以及 Arch Linux

2013-09-24

[完全用 GNU/Linux 工作] 06. 安裝驅動程式

要想完全駕御一台電腦並將發揮到最大功效,我們必需讓軟體 (女方) 與硬體 (男方) 互相認識且達到良好的溝通,而這些負責溝通的軟體我們稱之為驅動程式 (媒婆)。在 Windows 上有裝置管理員,在 Ubuntu 上也有圖形界面的硬體驅動程式 (Jockey) 可以使用,但在 Debian 或是其它的發行版本上不見得會有 (Jockey 並不是萬靈丹,GNU/Linux 硬體支援度已比先前進步不少,但多少還是會發生找不到的情形),這時我們就必須使用 lspci 指令來取得各個 PCI 裝置的型號,並一步步補完之。

2013-09-23-jockey-gtk.png
▲ jockey-gtk on Ubuntu 10.04。

2013-09-23

[完全用 GNU/Linux 工作] 05. 套件庫及鏡像站

每個 GNU/Linux 都有屬於它的哲學及用途,以下就讓凍仁簡述一下自己的看法。

  • Debian: 堅守自由軟體精神,擁有嚴謹的非營利組織團隊,支援眾多平台,例如 NOKIA N900Raspberry Pi。主要分成穩定版 (stable)、測試版 (testing)、及不穩定版 (unstable)。
  • Ubuntu: Debian 的不穩定版分支,其設計目的為使用者導向,易上手且驅動支援較完整,主要分成桌面版 (desktop) 及 伺服器版 (server),並於每兩年發布長期支援版本 (LTS)。
  • RHEL: 由 Red Hat 公司釋出,其主要對象為追求穩定的公司行號。
  • CentOS: 依照開放原始碼所釋出的 RHEL,也可說是社群版的 RHEL,但不包含一些封閉的軟體。

2013-09-22

[完全用 GNU/Linux 工作] 04. 套件管理

有了網路我們就可以開始安裝套件,但要怎麼安裝套件也是門大學問,而且在不同的 GNU/Linux 發行版本 (Distribution) 中所使用的套件管理系統 (Package Management System) 也不同。Debian 血統上常用的有 dpkg, apt 和 aptitude,Red Hat 血統上常用的有 rpm 和 yum。(圖形界面中也有不少套件管理員可使用,在此凍仁就不多加贅述)。

作業系統 Debian/Ubuntu CentOS/RHEL
套件管理系統 dpkg aptitude apt rpm yum
apt-get apt-cache
列出所有的套件 -l


-qa list
搜尋 -l | grep search
search -qa | grep search
檢看詳細資訊 -I show
show -qi info
安裝 -i install install
-ivh install
更新套件庫
update update


升級
upgrade upgrade
-Uvh update
移除 -r remove remove
-e remove
移除 (含設定檔) -P purge purge


清除已下載的套件
clean clean

clean
▲ Debian/Ubuntu, CentOS/RHEL 上常見套件管理指令。

2013-09-21

[完全用 GNU/Linux 工作] 03. 網路設定

灌好 Linux 後的第一步就是要想辦法上網,因為有了網路我們就是無敵的!可以藉此 Google 到所需知識,也可透過網路上的套件庫及鏡像站取得各式的軟體 (有點類似 Android 或 iOS 商城,只不過它是 Open Source 的,任何人都可以自由的修改並散佈),在 Linux 的世界裡我們可以使用各種方式與網路連線。

一位專業的 MIS 是不能靠圖形界面打天下的,我們除了要學會怎麼在各種情境下上網,還必須了解其背後的運作原理。

2013-09-20

[完全用 GNU/Linux 工作] 02.建立開機媒體 (隨身碟、光碟)

規劃好作業系統及分割區後,我們還需要一個開機媒體才行進行安裝。在以前 (或為了相容性) 都得用燒錄光碟才可進行安裝手續;現在我們可以使用隨身碟 (Flash Disk) 來代勞。請注意隨身碟容量務必大於光碟映像檔 (image)!

凍仁常用的光碟鏡像站。

2013-09-19

[完全用 GNU/Linux 工作] 01. 前言

至今的 GNU/Linux (以下簡稱 Linux) 已相當成熟,跟凍仁剛接觸時比起來桌面環境 (Desktop Environment) 這塊真的是成長很多,但建議別過渡依賴它。在 Linux 的世界裡我們可以使用指令 (command) 操控一切,並進而成為電腦的主人;圖形化介面只是輔助,大多在 X Window 下可使用的圖形化軟體 (套件) 也都有對應的指令可使用。
都有對應的指令可以使用。

在開始之前,我們得先規劃一下,對於一位專業的 MIS 而言是不能完全捨棄 Windows 的 (至少在台灣是如此),因為您的客戶大多都還在 Windows 上;而 Linux 的部份凍仁習慣多割個分割區裝上 Debian stable 及 Ubuntu,這樣可以確保自己不會因為升級失敗而無法工作。

完全用 GNU/Linux 工作

GNU/Linux 至今已經相當成熟並足以應付日常生活之使用,凍仁也於 2009 年開始使用它來工作至今,希望可以透過第 6 屆 iT 邦幫忙鐵人賽匯整些較有系統的文章以及分享些上班的經驗。

2015-05-09

此系列文章已整合至 GitHubGitBook 上,請至 http://chusiang.gitbooks.io/working-on-gnu-linux/ 觀看最新版本。

此封面為 +Violet Chen 所設計。

若有需要勘誤的部份,觀迎大家來信至 working-on-gnu-linux (at) drx.tw,(當然您也可以上 GitHub 網站送 Pull Request 或發 issues),讓此書可以更完美。

2013-09-01

手動更新 Adobe Flash Player on Debian 7.0

近來使用 Debian 7.0 (Wheezy) 的 Iceweasel 19.0 觀看線上影片時會有 Flash Player 版本過舊的問題,不管怎麼進行系統更新都沒用,原來 Debian 底下還有專門更新 Flash player 的指令,手動升級一下就可解決此問題。


▲ 需使用新版的 Flash Player 才會有以上畫面。

2013-08-10

Drupal 高雄小聚: Drupal 基礎環境架設 on Windows

緊接著凍仁於 6 月分享完 Drupal 7 上的 Multi-site 後,我們請到了健哲大哥分享此次的主題,有銜接到凍仁之前的主題並在深入講解各個細節,當然兩者先後順序換一下會更好

此次小聚除了拿到課堂講義以外,講師居然還事先錄好各個實作的影片,達成光速 Demo 的境界,真的很用心,這點凍仁還不曾嘗試。這裡就附上當日的筆記,希望可以幫上準備入門的 Drupaler。

2013-07-27-wamp.png
▲ 此心智圖使用 Freeplane 製作,附上 Flash 版連結。

2013-07-20

DrupalCamp Taipei 2013


凍仁從系統管理者轉職成網頁開發者的路上不是那麼的順利,除了得從頭學習外,同時還有職業病 RSI 纏身,為了在這種情況下繼續工作凍仁開始使用學姊小企鵝推薦的 Drupal 架站,雖說裝好就能用,但也只比小朋友做出的網站好看一點,離完美還有很大距離。後來得知一年一度的 DrupalCamp Taipei 2012 早在七月結束的凍仁就許下明年要參與的小小願望,相信可以藉此習得更多的技能。

DrupalCamp Taipei 2013 技術志工名牌。

2013-06-19

在 Debian 7.0 (MATE) 裡使用 Guake terminal

Guake terminal 是個具有下拉 (Drop-down) 功能的 Terminal 摸擬器,也是凍仁現在必裝的套件之一。其最大的優點是可以快速喚出 Terminal 以增進生產力,例如 Blog 寫到一半臨時想打個指令,這時只需藉由 F12 [1] 就可快速喚出/隱藏 Guake;若您使用的桌面環境為 KDE,請改用 Yakuake

Guake on MATE x Debian 7.0

2013-05-21

"$TERM too long - sorry" on URxvt run screen

凍仁改用 rxvt-unicode (URxvt) 為主力的 Terminal Emulator 後,於 Server 上的 Debian 6.0 的機器上使用 screen (4.00.03jw4) 指令時會有 $TERM too long - sorry. 的錯誤訊息,不知 Arch Linux Forums 一文提交 patch 有沒有被接受,不過凍仁在 T410 上跑的 Debian 7.0 (4.01.00devel) 則無此問題。

2013-05-20

藉由 linux_logo 自訂 ssh 歡迎訊息

Linux_Logo 是個 motd (message of the day) 產生器,我們可以藉由它來客製化 ssh 登錄時的歡迎訊息。

▲ linux_logo on Debian 6.0

▲ linux_logo on CentOS 5.8

取消 Evernote Web Clips 的 「正在上傳未儲存狀態」on Firefox 21

近來凍仁家 Firefox 上的 Evernote Web Clips 5.6.1 一直無法離開正在上傳未儲存狀態也就是會一直保持 的樣子無法恢復到正常模式 ,這是個己被證實的 bug,目前只有手動修復一途,凍仁目前己在 Debian 7.0 上的 Iceweasel 及 Ubuntu 12.04 上的 Firefox 21 實作成功。

2013-04-15

Ricoh imagio Neo 220 PRCS 驅動安裝 on Windows 7 64 bit

相信不少辨公室都會擺台 Ricoh 的影印機,偏偏凍仁手邊的這台官網上就是找不到對應的 Windows 7 64bir 的 RPCS Driver,或許是當時 Windows 7 64bit 還沒現世才會連官網上都沒有,好在得到善心人士的幫忙,這下把它丟到 Google Drive 以後就不怕找不到了。

▲ 辨公室的 Ricoh imagio Neo 220。

2013-03-29

對調 Ctrl 和 Caps Lock 鍵位

Ctrl 是個使用度非常高的組合鍵,例如剪下、複製、貼上、強制取消執行中的指令、切換上下頁 ... 等等,反觀 Caps Lock 只有在切換英文及大小寫時才會用到,可整體排列上 Ctrl 離左手的距離反而比較遠,這對盲打或需長時間使用鍵盤的人而都不是件好事,這表示我們得花更多的時間跟力氣來移動雙手。

逐漸上手 Vim 的凍仁總覺得 Ctrl 位於左下角操作起來有些不順,反而覺得跟 Caps Lock 對調鍵位使用比較合適,凍仁在對調 CtrlCaps Lock 鍵位後整體手感提升了不少。在此提供大家不用購買 HHKB 鍵盤也可以體驗的方法。

▲ 此圖為當初設計 Vi 時的 ADM-3A 終端機鍵盤,其排列與現今鍵盤的排列有些許差異。

2013-03-24

HHKB Pro 2

近來凍仁得了不輕的 重複使力傷害 (RSI),不管是左手還是右手都痛得要命,害得凍仁都不太敢碰電腦,整理筆記的進度也因此停滯下來,後來在 KaLUG 的聚會中得知 Richard Matthew Stallman (RMS) 這位駭客前輩也有 RSI 的隱疾,並隨身攜帶 HHKB 這把鍵盤,似乎是述說著它可以減緩 RSI 的病情。

「買一把來試試看就知道了!」

找到藉口的凍仁也很幸運得到社群前輩的幫助,並成功加入 Happy hacking keyboard 的行列哩。

▲ HHKB Pro 2 (墨) 與 Cherry G80-3494

2013-01-29

行事曆 (Calendar) on Drupal 7

先前在建置某網站時曾提過要有行事曆,也想過直接嵌入 Google Calendar 的方案,但對某些使用者而言並不友善,所幸該網站凍仁是建置在 Drupal 上的,只需將 Calendar 模組設定好即可,毋需再重新造輪子了。

套用 Corolla 主題的迷你行事曆 (min-calendar)。

2013-01-22

邁向企鵝畫家的第一步

近來對 Ubuntu 的熱情漸漸的消了,一來是繼續關注下去似乎賺不太到錢,由其是在南部,二來是沒幾家公司有在用 Ubuntu,作了四年的夢也是該醒了。

「不如先圓其他的夢吧」突如其然的聲音這麼告訴凍仁,是該先圓圓塗鴉的夢了,每日一張,期待有召一日能畫出屬於凍仁的四格漫畫,當然主角會是這隻 Tux-Z 喔!

凍仁的第一張手稿。

2013-01-20

安裝 Toshiba Satellite C850 無線網卡驅動 on Ubuntu 12.04

昨日於 Drupal-TW 高雄小聚協助 kenyuan190 伙伴補完 rtl8723e 這張無線網卡 (WLAN, Wireless) 的驅動,在此分享一下,剛裝好 Ubuntu 後似乎會同時發生有線 (eth0)及無線 (wlan0) 網卡都無法使用的情形

凍仁當時的解法是先使用 Android 手機的「USB 數據連線」上網,若發現 Network manager (右上的網路管理員) 一直轉不停,可以先行停用它,並使用 dhclient usb0 來取得 IP。

2013-01-15

PHP: Commands out of sync; you can't run this command now

近日凍仁使用 PROCEDURE 及動態 LIMIT 改寫某 PHP 網站的列出最後 10 筆資料功能,套上新程式碼後,再持續送出 query 就會跳「 Commands out of sync; you can't run this command now」的錯誤訊息,其 MySQL 文件的解釋如下:

18.2.8 Commands out of sync in client 錯誤

如果你在你的客戶代碼中得到 Commands out of sync; You can't run this command now,你正在以錯誤的次序調用客戶函數!

這可能發生,例如,如果你正在使用 mysql_use_result() 並且在你已經調用了 mysql_free_result() 之前試圖執行新查詢。如果你在 mysql_use_result()或mysql_store_result() 之間試圖執行返回數據的 2 個查詢,它也可能發生。