Wiki也真是好玩呢…
目前用了一個Perl寫的oddmuse wiki引擎
主要用來整理一些文章吧…
不適合記在Blog的就會放在那裡(目前僅本機使用)
也許以後會研究一下如何跟MT整合
月份: 2004 年 1 月
Apache
之前提到過為了SVN把server換成apache2了,不過後來我發現不用經過apache2也可以用svn的方法,所以就換回apache(因為有php4可用)
用法:
用svnadmin create name 產生資料庫
用svn command svn+ssh://path/to/database 來使用svn
Perl’s module
哈哈…
剛剛又啃了一下perl’s faq
發現可以用 use lib ‘path’; 的方法動態指定 lib 的目錄…
現在只要煩惱 module 的格式了 😀
哦…
如果只是 function 的話,只要照寫就可以了
最後要回傳 1
ex.
#Test.pm:
sub test {
print "test\n";
}
1;
Perl vs Ruby
就說了我是個善變人吧…
洗個澡就變了…
說說我認為Ruby最大的弱點吧…
多國語言處理…@@
我覺得這點Perl作的不錯,舉個例子…
Perl跟Ruby都有提供length這個方法可以計算string的長度
不過Perl對兩個中文字算出來的是“2“,Ruby是“4“
對unicode,Ruby算出來的是“6“…(因為unicode是3個byte)
這個原因影響很大…因為Perl提供看起來很像OO的方法,且正如它
的faq所說,是個適合懶骨頭的語言:P
而Ruby的語法看起來很乾淨,很容易了解,不過…我還沒找到對於
中文的解決方法,也許以後Ruby在這方面會更完整吧^^
很期待完全重寫,更加OO的Perl6
也很期待,更多好用的Ruby模組…
說到模組…完全弄不懂Perl程式模組化方法@@
Python跟Ruby都是直接require或import就好了…
好像Perl程式員都喜歡寫在一個檔案裡?
Ruby加油…
Ruby @@
我覺得我真是個善變又喜新厭舊的人啊…
之前喜歡Python,後來支持Perl,現在又被我挖到了個Ruby….
天啊…到底那個比較好…
Ruby可以說是集Perl跟Python的優點於一身…
我到現在還找不出什麼可以說服我放棄它的…
不過沒有十全十美的東西啊..我現在還攪不太清楚它的多國語言支援如何..
只知道它吃什麼吐什麼…中文還是用utf8比較沒問題…
Gtk2的介面跟Perl比較像,不過它的物件導向介面又比Python好…
真的很直得考慮…
ps.日本人發明的
Perl and Gtk2 menu
今天主要學到了選單(menu)的寫法,不過它使用的資料型態我看不太懂,似乎跟物件有關,看起來很奇怪。
以下是有關menu部份的code
use Gtk2::SimpleMenu;
my $menu_tree = [
_File => {
item_type => "<Branch>",
children => [
_Quit => {
callback => sub { Gtk2->main_quit;},
callback_action => 0,
accelerator => "<ctrl>Q",
},
]
}
];
my $menu = Gtk2::SimpleMenu->new (
menu_tree => $menu_tree,
default_callback => sub { print "hello";},
user_data => "user_data"
);
$vbox->pack_start ($menu->{widget},0 ,0 ,0);
Perl and Gtk2 與中文
趁著還記得趕快記下來^^
Perl的encode轉換做的很不錯喔~~~
Gtk2是吃utf8的,透過轉換可以很方便的使用中文
這是我寫的範例…
#!/usr/bin/perl -w
use strict;
use Gtk2;
use encoding "Big5",STDOUT=>"utf8";
Gtk2->init;
my $title = "Hello 2 !";
my $win = Gtk2::Window->new ("toplevel");
$win->set_title ($title);
$win->set_default_size (200,200);
$win->signal_connect("delete_event",sub { Gtk2->main_quit;});
my $vbox = Gtk2::VBox->new (0, 0);
$win->add ($vbox);
my $str = <<HERE;
測試 測試
哈哈
Perl is very good ^^
HERE
my $label = Gtk2::Label->new ($str);
$vbox->pack_start ($label,1 ,1 ,0);
$win->show_all;
Gtk2->main;
Perl vs Python
唉…
想當初那種熱愛python的感覺,一直覺得perl已經被打敗了。
但是在使用MT後,下定決心要稍稍了解一下perl,沒想到一頭又栽了下去 >_<
終於回來了^^
耶~~~
花了三個多小時終於回來了
回家
明天就要回家了…
好多東西要整理喔 >_<