2008年9月28日 星期日

Vim - 設定外部編排程式

在 irc 上頭有朋友問是否有自動編排程式碼的程式,答案是有的。若要寫 C 你可以使用 GNU 的 Indent ,寫 perl 則有 perltidy 。

在 Ubuntu/Debian 皆有套件可直接安裝使用 GNU Indent。

$ sudo apt-get install indent
GNU Indent 預設為 GNU Style 若要調整程式碼風格,可以在 ~/.indent.pro 內設定。(請參見 man indent 或參考 GNU Indent Manual )

GNU Indent 的使用方式為:

$ indent [filename]
這樣會顯示編排後的程式碼,若用

$ indent file1 > file2
則會在 file2 存入編排後的程式碼。

如果你有使用 vim ,你也可以將 GNU Indent 與 vim 的 [==] 功能做結合 ( 請參見 :help [==] ),vim 內有有名的 gg=G 大絕招可以編排整個檔案,預設是用 vim 去編排的,若要使用外部程式編排,可以使用 set equalprg 功能,在 .vimrc 內設定:

set equalprg=/usr/bin/indent
則在 vim 內選取區域後可按下等號,則 vim 會將此區塊傳至外部程式,再將外部程式的輸出結果替換。

另外透過 autocmd 可以搭配不同的檔案類型設定不同的 indent program。

譬如說我常用 perltidy 那麼可設定

au Filetype perl :set equalprg=perltidy
我所使用的 .perltidyrc:
-l=78
-i=4
-ci=4
-se
-vt=2
-cti=0
-pt=1
-bt=1
-sbt=1
-bbt=1
-nsfs
-nolq
-wbb="% + - * / x != == >= <= =~ !~ < > | & >= < = **= += *= &= <<= &&= -= /= |= >>= ||= .= %= ^= x="
以及 .indent.pro:
-br -nce
-cdb -sc
-bad
-i8
-ci4
-di8
-nbc
-bfda
-bls
-ip0
-hnl

2008年9月21日 星期日

Y!

我在 Y! Hackday.

2008年9月4日 星期四

還記得上次我們單位督導時,當時,我和副處長坐在黑色軍用箱型車中,此時外頭茫茫大雨,空氣中安靜的只能聽見外頭大雨滴落和冷氣聲,副處長突然搭起一些話,這些話說得突然,但卻好像能夠直接穿透我的心似的,他似乎可以看見我在想什麼。

副處長直接給了我一些建議,我也覺得這些建議確實是過去在我身上許多事情很關鍵的點。到現在我仍會常常想起這些建議。

9, 4

因公務北上時,順道在附近的醫院小量了一下身高體重,竟發現體重已經從 62kg 變為 69kg 了。

一方面是挺高興的,因為一直覺得吃不重的我總算是得以豐腴一點了。但另一方面又覺得平常吃都吃不胖,這下次突然胖起來是不是身體出了什麼怪問題?

過了十四天終於從部隊的約束中解放出來,一倒在床上便睡到隔天十點,下午兩點又繼續睡到當天晚上十一點,又從凌晨兩點繼續睡到隔天九點。

這些日子以來欠的睡眠債還真是多啊。

而且發覺自己的記性好像開始有些靠不住,有時甚至會把今天發生的事情當作是昨天發生的事情。對於周遭狀況的掌握能力、處理能力好像也頗為遲鈍。究竟是我本來就這樣了呢?還是最近才變得如此?

世界翻動的速度如此之快,一回來又發覺世界又往前前進了一大步,我在此時憎恨自己只能待在發展有限的部隊裡頭。看著周遭許多絕頂聰明的人才不斷的超越,只覺得自己實在不夠聰明不夠努力。專業方面沒有頂尖也就算了,人際關係方面好像也處理的不太好。

那麼到底我還能有什麼作用呢?只能作為一個不起眼又渺小的螺絲釘嗎?
從前那個想要學很多東西的那個我跑去哪了呢?他迷失在情緒的黑洞裡頭嗎?