TAG

首都機能移轉 (2) 歌詞 (2) 靠北文 (40) 戲言 (30) 糟糕 (7) ACG (23) Assembly (2) Boost (2) C (31) C++ (69) CMake (4) CSIE (67) Debian (34) Design_Pattern (2) Django (1) Eclipse (1) en_US (13) FFmpeg (3) FoolproofProject (26) FreeBSD (2) Git (4) GNU_Linux (65) IDE (5) Java (11) JavaScript (19) KDE (15) Khopper (16) KomiX (3) Kubuntu (18) Life (1) Lighttpd (2) Mac_OS_X (2) Opera (1) PHP (2) PicKing (2) Programing (21) Prolog (1) Python (7) QSnapshot (2) Qt (30) Qt_Jambi (1) Regular_Expression (1) Shell_Script (7) Talk (98) VirtualBox (7) Visual_Studio (13) Windows (18) zh_TW (36)

2008年6月30日 星期一

收到Mozilla的紀念T恤

其實上個月就收到了,只是一直到現在才想到。這個活動是在期限內讓自己的Add-ons跟FX3相容的開發者就可以得到一件記念T恤。
對啦,我做的套件只是拿來自high的啦,怎樣?= =
而且其實我常常婊FX3 XD

All pass又飛了

這次裁在PSP手上....我看我可能到畢業都不會All pass了吧。
DD過了...教授加了總分15分[?],不過因為我加分後的總分是75....所以只是拉平均而己。但是真的要真心感謝我的室友...因為我作業都抄他的(汗)。
其他的像SP和OS...沒過我可能會很不爽吧,尤其是SP期末幾乎都我做的...日文從來沒想過會被當掉,結果果然是所有科目最高分。
平均可能還是在六七十分吧...

2008年6月29日 星期日

Why don't they like the "keyword expansion" in VCS

如CVS或是Subversion等版本控制系統都有一個"關鍵字替換"功能,就是如果你在source code裡加入了像是$date$或是$author$等字眼,又打開了關鍵字替換功能,那麽$date$會被展開為最後送交的時間戳記,$author$會被展開為送交這份文件的使用者名稱。其他還有更多關鍵字,端看使用的程式和版本。
聽起來很棒,不是嗎?你可以在文件裡自動加上版本管理資訊,每個人看了都一目了然。
不過很多人不是這麼想的,我們來看看嘴砲名人Linus Trovalds怎麼說
大致上提到的缺點有這些:
它會擾亂merge或是diff工具的行為,因為每次的送交,keyword expansion都會改變,這就導致了VCS每次都要紀錄這些改變,有時候conflict就會發生。想想看你要處理的conflict竟然不是發生在程式碼而是在註解裡的關鍵字吧,心情肯定不會太愉快。
對於二進位檔案[?]來說,keyword expansion是不該發生的。然後你就要小心哪些檔案不該使用keyword expansion。
在VCS裡,這些送交資訊可以很輕易地用log或是info之類的功能查到,而且更詳盡。而當你把source code拿出VCS時,把資訊寫在檔案裡或許是有道理的[?],但是這個工作應該是交給VCS之外的軟體去做,因為它是在拿掉VCS資訊時才做的事。
綜合以上理由,Torvalds老大才會說關鍵字替換是一種弱智的行為,還好他的名字叫Linus Torvalds。

2008年6月27日 星期五

只是想提醒一下

如果我的MSN稱號是寫GNU/Linux,通常代表我在Linux底下。不要叫我做一些很難在Windows以外的地方做的事...我不是高手,不會弄那個。

小畫家明明就很好用

不過是畫幾張圖表罷了幹麻用什麼影像衝擊還是影像商店啊。

現實是殘酷的

動作慢就是會被聰明又動作快的人搶先...
音樂轉檔器才剛開始work就有人作出類似的東西了...看來我自己硬幹還是太慢。這下只能盡量朝完美去做了...

2008年6月26日 星期四

噗哈哈

剛剛找到了PP -ピアニッシモ- 操リ人形ノ輪舞[?]的載點啦~~XD
加上之前載到的カルタグラ〜ツキ狂イノ病〜[?]...嘿嘿嘿...
PS: 我也有和み匣,科科
接下來應該只要等殻ノ少女就全套了吧:P
謎之音: 宅氣権現?

目前的TODO list

  • subversion branch說明文件
  • 熟悉jQuery
  • Khopper持續working,尋找有志同士
  • 報名網站工讀
  • KomiX持續working
  • 準備移駕民雄
  • 準備英檢
  • 準備研究所
  • 處理掉硬碟問題
  • 處理laptop的synaptic問題

突然覺得

我寫專業性的文章都沒什麼人鳥我...
謎之音:因為你不夠專業啊

2008年6月25日 星期三

Pure Virtual Destructor

在virtual function中比較特殊的就是virtual destructor,因為它不會被override,而是被壓進一個stack,先執行derived class的destructor。 因此若要宣告一個pure virtual destructor,它依然不能缺少定義:
/// @file interface.hpp
// ...
class Interface {
    // ...
    virtual ~Interface() = 0;
    // ...
};
// ...
/// @file interface.cpp
// ...
Interface::~Interface() {}
// ...
Reference

Media Player Control DOM for IE

MSDN
簡體

2008年6月21日 星期六

Active Intel wireless cards on Debian Sid

在Debian Etch上裝Intel 3945ABG的驅動需要額外安裝ipw3945的module,但是在lenny之後[?]己經轉移到iwlwifi上,而在kernel 2.6.24及2.6.25之後都己經內建這個模組,所以其實只缺firmware,只要安裝firmware-iwlwifi即可正確驅動....
之前還笨笨地一直在sid上編ipw3945 = =[?]

2008年6月20日 星期五

CrashFox 3

剛剛終於可以在Windows底下用Firefox 3了;因為在Linux底下的IceWeasel不停地crash,下載回來的Firefox 3沒有Qt theme,也不能連網路,就趁著要在Windows上編Qt 4.4.0的機會來試一下正式版。
因為Firefox非常依賴個人設定檔,所以為了方便起見我都是用Portable Firefox。試用的感想是,讓我想砍人的!它不停地讀寫磁碟,我看隨身碟的LED燈這輩子都沒閃得這麼高興過,打個字也頓,開網頁也頓,捲卷軸也頓,回一篇文章我可以花十分鐘。
用完之後我就砍了,前後應該不到二十分鐘吧。
我是不知道Mozilla在想什麼啦,我只知道我開個瀏覽器搞得和開BT一樣,這還是第一次我看網頁的速度瓶頸是在瀏覽器上,而不是網路速度。

2008年6月11日 星期三

阿母的復仇

剛剛看到我媽的離線訊息,她把我的名字打錯了,而且兩個字都錯;突然想起來我小時候都會把我媽名字裡的寫成。君子報仇,三年不晚,何況她等了四倍的時間!XD

2008年6月9日 星期一

台肯

http://www.ptt.cc/bbs/Gossiping/M.1212993378.A.5EF.html 大推
5. Bill Gates等世界大企業老闆都是大學沒畢業

答: 他們在沒讀書的時候已經在創業了, 不是像你們那樣成天混吃等死,

    他們知道他們在幹什麼, 他們有目標. 你不念書那你把你的目標告訴我

nice is nice!

在KDE4的KTorrent放久了會把記憶體吃光的情形,只要在選單命令前加上nice,就可以降低它的優先權,就不會再發生記憶體爆炸了:P

2008年6月6日 星期五

git compress tarbell script - in Python

#! /usr/bin/env python
#-*- coding: utf-8 -*-

import sys, os, bz2, time, optparse

BASE = os.path.basename( os.getcwd() )
TIMESTAMP = time.strftime( '%Y%m%d' )

def main( args = None ):
    if args is None:
        args = sys.argv
    parser = optparse.OptionParser( usage='usage: %prog [options] ' )
    parser.add_option( '-s', '--spec', type='string', dest='spec', help='explicitly sets version string' )
    parser.add_option( '--prefix', type='string', dest='prefix', help='string that before version' )
    parser.add_option( '--postfix', type='string', dest='postfix', help='string that append to timestamp' )
    parser.add_option( '-q', '--quiet', action='store_false', dest='verbose', help='be vewwy quiet (I\'m hunting wabbits)' )
    parser.set_defaults( verbose=True )
    opts, args = parser.parse_args( args=args[1:] )
    if len( args ) < 1:
        parser.print_help()
        return 1

    fileName = '%s-%s.%s' % ( BASE if opts.prefix is None else opts.prefix, args[0] if opts.spec is None else opts.spec, TIMESTAMP )
    if opts.postfix is not None:
        fileName += '-' + opts.postfix
    rData = os.popen( 'git archive --format=tar %s --prefix=%s/ %s' % ( '--verbose' if opts.verbose else '', fileName, args[0] ) ).read()
    cData = bz2.compress( rData )
    fout = open( '%s.tbz2' % fileName , 'wb' )
    fout.write( cData )
    fout.close()
    if opts.verbose:
        print "== compression ==\nbefore:\t%d\nafter:\t%d\nrate:\t%f%%" % ( len( rData ), len( cData ), 100.0 - ( 100.0 * len( cData ) / len( rData ) ) )
 
    return 0

if __name__ == '__main__':
    sys.exit( main() )

我真的覺得Python太好用了....還有我一直沒在做正事= =

2008年6月5日 星期四

git compress tarbell script

#!/bin/sh

if [ $# -lt 1 ] ; then
    echo >&2 "usage: `basename $0` <branch>"
    exit 1
fi

FILE=`basename $PWD`-$1-`date +%Y%m%d`

git archive --format=tar "--prefix=$FILE/" --verbose $1 | bzip2 -fv > "$FILE.tbz2"

KomiX

Main Page: KomiX
git clone git://github.com/legnaleurc/komix.git
License: GPLv2 or later
這是一個看漫畫用軟體,使用Qt4寫成,支援平台為Windows和Linux,且支援Unicode。

Feature

  • 按下空白鍵可依序在圖的四個角落平滑移動,並在需要時換頁。
  • 可開啟檔案或資料夾(未來加入壓縮檔支援,以及網路fetch功能)
  • F11切換全螢幕模式
  • 支援拖拉式開檔
  • Esc縮小至工具列
緣起:
其實只是我超流斷線之後想看漫畫卻剛好沒有合適軟體,隔天它就出現在我的硬碟裡了;然後也順便試作一下Qt的功能。
暗!快要期末考了!
Modified [2008/11/01]
本作品己使用C++改寫,舊版己不再維護。

2008年6月1日 星期日

閃亮亮的KDE4 on Debian

昨天為了完整的amd64系統又重灌了一次,加上全新的KDE4,然後成功裝上了VirtualBox 1.6.0,真是爽!今天早上又找到了w64codecs,看來又可以暫時黏在Linux上一陣子了XD
當Windows不能連BT和驢子,遊戲又能用VirtualBox開,那實在不太有理由再去開它了...