2006/04/29

編譯中文版的pine及相關設定

英文原版的pine在Subject及Body上寫中文,
常會有些問題,過去都以下列的方式改成中文pine:

抓source:
ftp://ftp.cac.washington.edu/pine/pine.tar.bz2

抓中文patch:
http://people.freebsd.org/~avatar/ports/patches/pine/

解壓後patch到source:
patch -p0 < pine4.64.patch

改pine目錄裡的makefile檔案:
修改一些參數,把debug的參數拿掉及滑鼠相關參數拿掉:
Linux改makefile.lnx
Solaris改makefile.gs5若用gcc的話
DEBUG= -g -DDEBUG -DDEBUGJOURNAL
改成
DEBUG= #-g -DDEBUG -DDEBUGJOURNAL

不在Xwindow上用pine的話,把Mouse的參數拿掉:
STDCFLAGS= -DLNX -DSYSTYPE=\"LNX\" -DMOUSE
改成
STDCFLAGS= -DLNX -DSYSTYPE=\"LNX\" #-DMOUSE

改pico目錄中的檔案:
Linux改makefile.lnx
Solaris好像是改makefile.gso若用gcc的話
把debug的參數拿掉,就不會產生出一堆.pine-debug1之類的檔案!
DEBUG= -g -DDEBUG
改成:
DEBUG= #-g -DDEBUG
不用mouse:
STDCFLAGS= -Dlnx -DJOB_CONTROL -DPOSIX -DMOUSE
改成:
STDCFLAGS= -Dlnx -DJOB_CONTROL -DPOSIX #-DMOUSE
然後編譯:
./build NOSSL NOLDAP slx

再把編好的pine,pico,pilot copy到 /usr/local/bin
pine.conf pine.conf.fixed copy到/usr/local/lib
無此兩檔案就自行把想要的參數編入,
就完成!

常設pine.conf之值:
user-domain=XXX.edu.tw
url-viewers=/whereis/lynx
character-set=big5

在.pinerc中
可在信件中,按h,可看信件的原始碼:
feature-list=enable-full-header-cmd
(可設到pine.conf中)

改變From:的內容:
customized-hdrs=From: "我我我"
指定signature檔案之位置:
signature-file=~XXX/.signature
跟上述customized-hdrs設定後,看不出這有什麼改變到什麼?
personal-name=XXXXX
有關header方面也可這樣設:
feature-list=enable-full-header-cmd,
no-enable-full-header-and-text,
no-downgrade-multipart-to-text

用新版的pine,從4.44版之後,就沒法順利寄majordomo的純文字格式信件,
而中文pine 4.44的patch,上述的網址找不到了,
好在自己有存下來,放到:
http://backup.mc.ntu.edu.tw/DOCS/SOFTWARE/Linux/pine4.44.patch.gz
舊版pine的source在:
ftp://ftp.cac.washington.edu/pine/old/pine4.44.tar.Z

若透過NFS用pine來讀信,好像在compile的時候要改,
elm也是要改compile的參數設定,
年代舊遠已忘了。

2006/04/28

手動轉OpenWebMail的address.book成vCard

搞不清楚什麼是 X-OWM-UID
http://www.acatysmoof.com/posting/openwebmail-patches/041025/vCard_data_structure/

然後用下列的perl script就轉成!
-----------------------------

open(F,'./address.book');
while() {
chomp;
my($name, $email) = split('@@@',$_);
my $xuid = make_x_owm_uid();
print qq~
BEGIN:VCARD
VERSION:3.0
N:;$name;;;
FN:$name
EMAIL:$email
TZ:08:00
CLASS:PUBLIC
REV:2006-04-28T09:13:50Z
X-OWM-CHARSET:big5
X-OWM-UID:$xuid
END:VCARD
~
;
}
close(F);

sub make_x_owm_uid {
my ($uid_sec,$uid_min,$uid_hour,$uid_mday,$uid_mon,$uid_year) = gmtime(time);
my @chars = ( 'A' .. 'Z', 0 .. 9 );
my $longrandomstring = join '', map { $chars[rand @chars] } 1..12;
my $shortrandomstring = join '', map { $chars[rand @chars] } 1..4;
my $uid = ($uid_year+1900).sprintf("%02d",($uid_mon+1)).sprintf("%02d",$uid_mday)."-".
sprintf("%02d",$uid_hour).sprintf("%02d",$uid_min).sprintf("%02d",$uid_sec)."-".
$longrandomstring."-".$shortrandomstring;
return $uid;
}

2006/04/26

FC5上裝mlterm

抓 mlterm-2.9.2-2.src.rpm
http://sourceforge.net/project/showfiles.php?group_id=129380

rebuildrpm前要先裝:
yum install fribidi-devel

參考別人的設定:
-----------------
http://blog.yam.com/candyz/archives/cat_46808.html
用 dports 裝了 mlterm gtk+ variants
mlterm 的好處是,同時支援各種語言
不過,目前我還是以 mrxvt(Big5 環境) 及 urxvt (UTF-8 環境) 為主
因為 mlterm 之前不會調,字型很難看,就沒去用
裝起來後,去問 google 一些問題
現在用起來好多了
記錄一下設定:
~/.mlterm/main

bg_color=black
fg_color=white
geometry=80x24
receive_string_via_ucs = true
logsize = 1024
scrollbar_mode = right
scrollbar_view_name = sample

~/.mlterm/font

BIG5=16,kc16f;20,taipei20;24,kc24f;
ISO10646_UCS4_1 = -efont-fixed-medium-r-normal--24-240-75-75-c-120-iso10646-1
ISO10646_UCS4_1_BIWIDTH = -efont-biwidth-medium-r-normal--24-240-75-75-p-120-iso10646-1

若是要使用 anti-alias 的功能,要修改 ~/.mlterm/aafont 加入類似以下的內容:
~/.mlterm/aafont

ISO8859_1=字型;
BIG5=字型;
JISX0208_1983=字型;

然後還要在 ~/.mlterm/main 裡增加:
use_anti_alias=true

執行 mlterm 時,可以用 -w 來指定字型的大小,如:
mlterm -w 24
-----------------------
http://jouston.no-ip.com/archives/cat_linux.html
mlterm下使用不會掉字的CJKUnifont
一陣子被mlterm困擾了很久。有些字都變成方框看不到。尤其是檔案的"檔",還有"円鐧焜堃卢"這些字。

解決的方法是:

# mkdir ~/.mlterm/ # touch ~/.mlterm/aafont # vi ~/.mlterm/aafont

插入

ISO10646_UCS2_1_BIWIDTH=AR PL ShanHeiSun Uni-iso10646-1;
ISO10646_UCS2_1=Adobe Courier;

這兩行就可以了。
------------------------------
http://fractal.csie.org/~eric/utf8note/