Feb 292008
 

一直都认为Mac的Term很难用,包括内置的,还有很多人推荐的iTerm
我一直都在用iTerm,但是有很多问题,显示不了中文,输入不了中文,在VI或者一些软件下面不能用方向键(甚至我ssh到一台linux主机都不能用)

在windows平台的时候,使用putty或者securecrt等term软件,都有一大堆设置可以使用.而iTerm不停出新版本,也不见有多少个设置.就算用Linux,也没有那么多问题.还真的有狠心把MacBook装成Linux算了的想法

网上没有任何这方面的资料,还到一些blog里面留言询问别人的心得,也没有结果

研究了很久,终于知道怎么处理了

首先是方向键问题,我突然想想有可能emacs的键位可以使用,结果真的可以.^N ^P ^B ^F分别代表上下左右,这样用了一段时间
后来突然想起我在securecrt在设置把TERM改成Linux,改不会是有影响
于是在~/.profile加入

export TERM=linux

果然,方向键都有效了,整个操作变得跟Linux一样.原来securecrt的设置只是主动传给shell,而并不是它自己的设置.而且ssh到linux主机也正常了.后来研究发现,TERM会跟随ssh传递到远端shell,当然你可以自己再修改一次.

然后就是中文问题了,经过研究发现,我的Linux系统里面有一个文件/etc/inputrc
里面有一些关于meta的设置,而MacOS下面并没有这个文件
于是我在~/.inputrc加入一样的meta设置

set meta-flag on
set input-meta on
set convert-meta off
set output-meta on

然后把iTerm的Encoding改成UTF-8

另外还在~/.profile加入

alias ls="ls -wG"

现在ls终于能看见中文,而且输入中文也正常.不过delete文字不太正常,还没找到解决方法.

Mac默认就是按照UTF-8存储中文的,如果连上Linux并不是用UTF-8而是用GBK的话,可以临时修改iTerm的Encoding来查看

Jul 262007
 

linux最好用的BT软件rtorrent在mac下面竟然遇上中文问题,到现在都没有解决的办法
同样用rtorrent的核心libtorrent的bitrocket开发进度缓缓慢慢的,竟然也有中文问题,而且经常突然退出,基本上不能用

不过有一个好消息就是,utorrent这个可能是windows下面最好的BT软件正在开发mac的版本,已经有运行截图放出来了,不过还没有可以试用的版本

最后找了一个Transmission来用,优点嘛,没有,至少能用
下载速度还可以,资源占用也不高
准备推出的0.8版增加了不少新特性,比如可以选择某些文件不下载(不要怀疑,现在的版本的确没有)等等

Mar 022007
 

因为使用Fink的时候,大部分时间都是用source编译,所以似乎没有太大的必要使用Fink了。DarwinPorts跟Fink的主要区别是,DarwinPorts比较像FreeBSD port,只能通过source编译软件包,相对来说比较正统,而且软件包比较丰富,版本也比较新。而Fink主要是能通过Binary安装软件包,但是实际使用上还是用source的多,因为Binary包实在太旧了,而且有些包其实没有Binary包的。另外也听说DarwinPorts还会根据mac的实际需求打一定的补丁。所以转向使用DarwinPorts了。

首先是卸载Fink,非常简单,rm -fr /sw就可以了,不用怀疑,正是Fink文档里面说明的。

然后就可以安装DarwinPorts了。首先要安装好Xcode,没有gcc怎么编译软件呢,随便一个版本的Xcode都可以,mac的网站上可以下载。然后下载DarwinPorts,有两种安装方式,dmg和tar.gz,如果你不是很懂的话,用dmg好了,不过dmg最后一步会明显定住,稍微等一下就行了,如果你还没有安装Xcode的话,那就不用等了,kill掉吧,我怀疑其实就是在编译DarwinPorts。如果你比较喜欢linux的安装方式,下载tar.gz解开,然后运行make & make install一下,具体查看文档吧。不过dmg和tar.gz安装的位置不一样,dmg是安装在/opt/local下面,并且帮你设置好path,独立开来反安装比较方便,rm了就可以了。而用tar.gz来安装的话,默认是安装到/usr/local,很有可能会跟其他软件乱搭在一起,不太好管理,当然你可以通过prefix来改变安装的位置,那是还得设置一下path。所以如果你没有特殊需求的话,用dmg是最好的方法。

安装好之后就开始使用了,DarwinPorts只提供命令行方式,但是提供了一个很好用的交互方式,由于我们需要用root权限来运行DarwinPorts,因此输入sudo port,然后键入你的密码,就能进入交互方式了。下面是一些常用的命令:
* help 查看帮助
* quit 退出交互
* install 安装软件包
* deps 查看软件包依赖
* sync 同步软件包信息到最新的
* selfupdate 更新DarwinPorts本身
* list 列出软件包
* search 查找软件包
* outdated 列出需要更新的软件包

更多的使用请查看文档吧。

Feb 272007
 

Mac是一个Unix内核的操作系统,这使它可以使用\*nix下面大量的软件。当然你可以自己去下载每个软件source然后编译,但是包的依赖关系是相当麻烦的事情。其实已经有软件可以负责管理和编译\*nix软件,那就是DarwinPorts和Fink了。

DarwinPorts和Fink做的东西很类似,Fink类似Debian apt,而DarwinPorts类似FreeBSD port,相对来说,我是比较喜欢FreeBSD port的,其实Gentoo portage更好一些。

因为用DarwinPorts installer安装到最后一部总是定住不动(后来怀疑是因为没有装Xcode,反正装了Xcode之后就可以安装了),所以一直都是使用Fink,也因为Fink有个不错的GUI,FinkCommander。其实我之前都是用FinkCommander的,而且都是直接用Binary方式安装软件包。但是Binary包不是很新,例如svn只是1.2,mysql只是4.1。而且selfupdate老是不成功,提示没有dev-tools。查看Fink的文档,原来是依赖Xcode。于是上mac的网站拉了900M多的Xcode 2.4下来。安装完了发现dev-tools已经安装好的状态,于是运行fink selfupdate一把,发现很多软件包的版本都更新了,svn变成1.4了,mysql也有5.0,但是必须从source安装。

现在也习惯用命令行来使用Fink了,以下是Fink的常用命令:
* list 列出所有包,前面有i的是已经安装,有(i)是已经安装但是版本不是最新的
* list (package) 查找包
* selfupdate 更新包定义,包括source安装的包,最好先运行一次这个,而且Binary包其实都破旧的,建议都通过source来安装,需要Xcode
* install (package) 安装包,如果带有–use-binary-dist参数就是安装Binary包
* remove (package) 删除包
* update-all 更新所有已经安装的包,selfupdate之后就运行这个吧

更多的命令查看文档吧

Feb 272007
 

在Mac下用Firefox2的时候,时不时有些字会变成问号,终于在一个blog找到答案

>再说一下为什么Mac OS X下的基于Gecko引擎的浏览器会出现缺字情况。
>Gecko引擎是Mozilla基金会在开发,用于其Mozilla、Thunderbird和Firefox等产品。Camino毫无疑问也是跟随它们的脚步。在Mac OS X中,目前的Gecko引擎使用了苹果公司在1984年开发的QuickDraw技术渲染界面。QuickDraw当年主要用于Mac OS的窗口、文本、对话框、图标和其它图形对象的渲染,缺点是:对多国语言的支持有限(导致Firefox和Camino中出现缺字情况),只能作单色 antialias(导致文本效果比Safari差别很大)。步入Mac OS X时代,QuickDraw被苹果公司新的基于PDF的Quartz渲染系统代替,后者是现代Mac OS X的核心图形架构(Safari是可用来作对比的浏览器,由于采用了Quartz渲染文本,字体饱满很多)。
>庆幸的是,Gecko引擎摆脱QuickDraw、加入Quartz支援已经排到Firefox开发人员的日程上来。如果不出意外,下一个大版本升级后的Firefox,应该能给我们惊喜(事实上,补丁已经在官方trunk中)。

于是去下载最新的trunk来试用

果然解决了这个问题

可惜trunk其实就是firefox3,很多插件不支持,Web Developer,FireBug等等都不能用。不过没有插件的firefox3至少能比得上Safari吧,也至少比有插件但是缺字的firefox2强吧