2008年12月27日星期六

此生不再用圆通快递

从网上买了个Palm Treo 650,买家发的是圆通快递。当时对快递行业完全没有认识,加上前几次用顺丰的体验也十分好,也就没有在意这个淘宝的所谓“推荐快递公司”。

后来去圆通网上追踪快件,看它屯在武汉两天,觉得有点不对劲了。于是google圆通,发现原来是骂声一片。开始有点担心,不过又想,毕竟是首都嘛,盼自己点好吧。今天上午,件终于到了,查询结果如下:

走件流程
快件单号 操作时间 快件流程
1205780257 2008-12-24 20:14:22 湖北武汉汉阳/快件揽收扫描
1205780257 2008-12-24 21:47:27 武汉分拨中心/下车扫描
1205780257 2008-12-25 0:24:16 武汉分拨中心/建包操作
1205780257 2008-12-26 13:56:13 北京/下车扫描
1205780257 2008-12-27 6:01:30 北京/上车扫描
1205780257 2008-12-27 7:20:05 北京东城一部/下车扫描
1205780257 2008-12-27 8:22:45 北京东城一部/派件扫描,派件人是宋秀鹏

早上八点多就开始派送,然后我等到下午3点,没有人送件,没有人给我电话。于是在圆通网站上找到“北京东城一部”的电话打过去,“此号码是空号”。然后打北京圆通公司的电话,接线员态度还可以,询问了一些信息之后,告诉我一个号码,估计是可以打通的“北京东城一部”的电话。拨了这个电话,第一次没人接,第二次接了之后把营业员的手机号告诉我叫我直接跟他联系。打通了营业员的手机,那边说“我六点之前”给你送到。我还特意告诉他六点之前一定要送到,我这个件有急用,那边答应得很爽快,不过其实我心里已经在想,六点前肯定送不到的。

六点到了,果然没到,也没有电话或短信。打过去是通的但是没人接。我想我就当你在骑车没法接吧,晚就晚点,给送过来就行了。结果到现在还是杳无音信,打电话过去也没人接。不仅想到一位网友描述圆通派送员的话——生死未卜。正在教室里看书,然后越想越气越想越气,必须要回来把胸中的闷气发泄一番方能干正事。

圆通在东城区有2个分部,东城就这么巴掌大个地方,从上午8点半到下午3点还跑不过来?好,就算北京交通拥堵不堪路线混乱不堪快不起来,那过了这么久都没有送过来你至少跟我联系一下吧,没有。那我打电话催了之后你拍胸脯保证6点之前送过来如果你真送过来了我对你的印象也会还不错,但是你又放我鸽子。的确北京的十二月黑得早街上又冷,那你当初为何要承诺,你就说一个对不起今天有点困难我明天一定送到我也不会说什么。然后,迟到了或者根本不准备今天送过来,那你好歹来个电话或者至少我打过来询问你接一下解释一下吧,打死都不接。好好的一个周六,本来可以出去玩,或者去逛一下超市,或者至少静下心来看一看书,都被毁了。就这样浪费人的时间,你不觉得可耻么?

这次圆通真的是让我愤怒到极点。查询电话多而杂,把顾客像皮球一样踢来踢去;工作人员素质低劣,觉得麻烦就完全不管;还有派送员,我不知道这么些时间你到底在干什么!我不管其他地方的圆通服务如何,反正我此生是再也不会用圆通了。甚至连申通宅急送这些都不敢相信了,以后网购不用顺丰的免谈。贵个几块十几块人民币我也认了,总不至于以后花大价钱来打官司或者把货物丢掉。

如果明天能够送过来还好,如果不能送过来就跟卖家和圆通上海总公司联系,连打官司的心都有。速递整成一个慢递或不递也够可悲的。

Update:第二天,打了很多通电话之后,包裹来了。还好,包裹完好无损,里面的东西也正常。这次算是得了个教训,以后不会再用北京圆通了。

2008年12月24日星期三

自己制作iSilo文档

鉴于不久之后很可能会搞一个palm来玩玩,而自己又有大量的文档,所以想到要把这些文档转换为iSilo专用的pdb文件来看。需要转换的主要有3类,基本上都是先把这些文档转换为html档,然后再用iSilo官方提供的iSiloXC来转换之。下面以chm转pdb来说明。

1. 首先下载iSiloXC for Linux,并安装libchm-bin。ubuntu/debian用户可以直接apt-get,gentoo对应的ebuild名称为dev-libs/chmlib,其它发行版用户可能要自己编译。
2. 解压缩chm文档:
extract_chmlib source.chm target

然后查看一下target里面的内容,把index.html或类似的table of contents找出来。
3. 准备iSiloXC转换时必须的文件。常规只需要准备ixl文件即可,从这里下载一个样板,然后进行如下修改,把<hotsync></hotsync>段落改为:
<files><path>result.pdb</path></files>

然后把source里面的path改为该index.html的路径。注意这里有一个很关键的地方,就是设置MaximumDepth和MaximumOfflineDepth,这决定了iSiloXC需要去处理的链接的深度,该值太大会浪费不必要的资源,太小则不能完全得到你想要的东西,最好自己试一下。
4. 一切就绪之后,运行:
iSiloXC -xvv mypdb.ixl

然后就等吧。如果是镜像网站的话,可能还是需要较多的时间的。

另外,对于openoffice文档,可以直接输出成html再转换。而对于pdf文档,当然首选的方法是直接用pdf阅读器看,实在不行的话这里可以pdf转换为html,然后再自己转换吧(详贴在这里

ps: 顺便学了一下html语言中的特殊字符:< 要用 &lt;来表示,而> 要用&gt;来表示。还是蛮有趣的
Update:iSiloXC可能不识别linux下的特殊字符如\ 等,所以可能要酌情更改一下html文件。另外,chm解压出来可能并没有可用的index.html文件,可以考虑自己做一个。

2008年12月7日星期日

用cdrecord刻录的新参数

如果google一下的话,会发现大家都说cdrecord -v speed=24 dev=4,0,0 name.iso类似的就可以了。但是dev=4,0,0一类的表示方法早就被抛弃了。

再用google.com而不是google.cn搜索一下的话,会发现有人说改成dev=/dev/cdrw就可以了。ls一下的确有/dev/cdrw,但是还是不行。

所以啊,还是在.bashrc中添加一个alias ls="ls -l"吧,这样你就会发现/dev/cdrw实际上是链接到/dev/scd0的,你就会打出正确的命令:

cdrecord -v speed=24 dev=/dev/scd0 name.iso

Arch20小时

昨天下午,突然没有事情做了,觉得无聊。又不想浪费大好光阴在看书上,于是想,干脆装一个Arch吧,正好让钝化的脑子活动一下。

Arch还是很好装的,而且装得也足够快。装完之后pacman -Syu的时候出错,才看到Arch forum一个黄毛说不用ftp方式装就是SB。此为一囧。不管出错提示,直接pacman -Sfyu干掉它。在此之前要配置仓库镜像,果然脑子太钝了,轻易就相信了Arch官方的list,结果为了更新一个系统就等了4个小时,真佩服我的耐心。之后在linuxsir发现SJTU原来有Arch仓库,此为二囧。不过安装的时候我在纯文字终端看不到linuxsir的帖子也算正常...orz

Arch的纯文字终端真的做得很棒,以至于后来被ati折磨得没话说的时候还在用这个东西打气。刚装上的系统还是有些问题的,比如rc.conf无法add route,比如我的CPU被限制在了800MHz,比如风扇在任何情况下都以最大转速辛勤工作。不过总的来说Arch的维基还是做得不错的,声卡、SLIM、Awesome等都轻易搞定。这里又有一个囧的:我的电脑两周前才装了个awesome3-git,然后在Arch中也装了个awesome3,两个的配置居然都不一样,对于相信地球人都很有时间的awesome的开发者,我很无语。

然后装xorg——原来xorg已经到1.5了哦?我彻底落后了。作为ati的受害者,我还是装了ati提供的catalyst8.12。这个catalyst是最囧的,glxgears和fgl_glxgears都能运行,fglrxinfo也说有direct rendering,但x运行就是蜗牛爬。你好歹给个正常的2D加速吧ATI!这个囧驱动直接导致我用opera以浏览幻灯片方式查找资料查到恶心。于是,在10个小时之后,终于还是恢复了原来的Linuxmint。这里赞一个clonezilla,很快,而且可以用命令行加载各种即插即用硬件,十分好用。

心情沮丧不已,晃荡了2个小时之后,突然在Arch wiki上看到说你可以把Arch装到U盘上,你还可以像装gentoo一样在已有的linux中装arch,而且文档明显比用光盘启动短得多。。。我fxxk!Arch你把这两篇文档放到维基的Main Page就好了。又折腾了几个小时,试了2次,终于看到从U盘启动的Arch了。总结下来,安装方法真的是——十~分~简~单!这次小白经历,终于以“会心的微笑”的美好结局告终。

下面有一些现在还记得的重要的地方:
1. 启动X之前,记得在xorg.conf里面的ServerFlags section里加上Option "AutoAddDevices" "false",不然进入X之后键盘和鼠标就会被禁用,只能直接关机。果然高版本的软件不属于第三世界。
2. 为防X僵死并锁定键鼠,可以在一个vc startx的同时在另一个vc sleep 60 && killall -9 xorg,以在60秒之后自动结束xserver。注意在kill xorg之前要先杀掉awesome和slim这些调用xserver的进程。
3. 安装到USB之前,要先用fdisk在U盘上创建一个主分区并且设置为bootable,否则grub是不认的。Arch维基说U盘最好格式化成ext2格式,所以在U盘系统中操作时更要注意startx的问题。否则直接关机的话会对ext2文件系统造成很大的损害。
4. Arch维基没有说明grub的问题。其实如果是在原有Linux系统中边听歌边安装的话,使用原来的grub就可以了。像我只有1个sata盘,那么U盘的root就是(hd1,0),在kernel行写root=/dev/sdb1就可以了。当然前体是正确用fdisk创建了分区。
5. USB上的Arch是很容易继续加工的,慢慢加工好了之后再复制到根分区稍微改一下应该就可以用了。所以涉及到备份问题。先在U盘系统中pacman -Scc删除从仓库下载的软件包,然后直接在原有的linux中把U盘mount上,cd到U盘中并tar cvpf name.tar .就可以了。一个基本系统只有不到500M,很喜乐啊。

最后想到一点:Arch的仓库会把旧的软件包移除,但是最新的软件包其实还是可能会造成困扰的。

2008年12月4日星期四

The way to CLI

在Linuxtoy上看到关于awesome的介绍后,突然想要摆脱Gnome或KDE或Xfce,决定要尽量向CLI迈进了。于是便有了这篇不短不长的文章。本文着重于常用软件的CLI解决,所以高深的东西就不谈了(其实也没资格)。

1. Awesome的安装
Awesome的维基其实是蛮囧的。我使用的发行版为兼容Ubuntu Hardy的LinumMInt Elyssa,但是按照其官方for Ubuntu Hardy的安装指南却装不上,最后还是用git的方式才把awesome3装上。详见此页,基本生一步一步照做就行了。要注意的是几乎一定会出现该指南中第三个Note所说的错误的,而且解决时后面的路径还是Tab出来吧,如果直接把指南中的代码复制进去会让人崩溃的。

2. Awesome的配置
装好就基本能用了,下面修改一下其默认配置文件基本就可用了:
1). 安装和使用wicked:

git clone git://git.glacicle.com/awesome/wicked.git
sudo cp wicked/wicked.lua /usr/share/awesome/lib/
sudo cp wicked/wicked.7.gz /usr/share/man/man7/

2). 修改默认主题,其实改一下背景就好了。最简单的方法是把/etc/xdg/awesome/themes拷贝到.config/awesome。以default为蓝本自己修改背景文件即可。较为灵活的方式是把自己的配置文件link到default。
注意:主题配置文件和rc.lua中最好都用绝对路径
3). 去掉窗口之间的缝隙:编辑rc.lua,查找honorsizehints,将其值改为false即可
4). 关于widgets在statusbar(就是桌面最上方的那条bar)中的排列顺序:首先分左右,也就是在statusbar的左端还是右端。这是由定义widget时的aligh='right/left'指定的。然后再按照statusbar中列举的顺序分别排列。左边和右边的顺序各自是独立的。
5). 一个很有用的组合键:ctrl+win+r,可以让awesome重读rc.lua,马上看到修改rc.lua的效果
6). 最后一点注意的:awesome的配置文件的语法千变万化(orz...),所以看官方指南的时候一定要先滑到底部看到底是for awesome2还是for awesome3的指南。更囧的是官方一些for awesome3的widget也不能正常使用。如果不想再去学习一门lua语言的话,还是配置得简单一点吧。

3. 一些常用的CLI程序
1). 终端模拟器urxvt:为什么用urxvt呢?因为默认的xterm要正确显示中文还是需要一番设置的,想要速成的话还是用urxvt吧。ubuntu下安装rxvt-unicode就可以了。之后在rc.lua中把xterm改成urxvt,我还加上了一些优化参数如下:

-tr:打开透明支持
-tint color:在打开透明支持的前提下,在背景上做一个单色alpha蒙版
-fg color:终端下主要字体的颜色。比如我使用的是一个黑色背景,则应该把该选项设置为亮色,如white,cyan,magenta等
-sr:把滚动条放在右边,比较符合习惯

在awesome中win+enter可以呼出默认终端,所以就不需要把上述优化参数加在.bashrc中了
另外,使用urxvt远程登入时会被提示unknown terminal而导致一些功能无法使用。解决方法是把本地机器的/usr/share/terminfo/r/rxvt-unicode拷贝到远程机器的同一目录中。
2). 音频播放器:个人还是比较习惯用mocp,安装的时候可以把它的ffmpeg插件也一并安装了。当然还有mp3blaster和mpd等可选,不过前者强烈不推荐,后者想要速成的话还是放弃吧。
mocp的爆音问题:其实是PCM设得太大了,其它程序也会有爆音的。我的解决方法是让mocp内置的音量调节功能不要去调节PCM而去调节Master。编辑.moc/config,找到关于alsa或oss的段落,把首选device从PCM改成Master就可以了。
mocp显示中文:当然可以把所有音乐的标签转换成utf8,不过为了兼容性考虑还是算了吧。我采用的是一种折衷的方法,让mocp不要去读取标签,改为直接显示文件名。在.moc/config中找到ReadTags,把值设为no就可以了。
mocp背景透明:编辑theme文件,把background和frame的背景色改为default就可以了。
3). 视频播放器:毫无疑问的mplayer,快捷键man去吧。关于中文字幕问题,要在.mplayer/config中加上subcp=936
4). 辞典:星际译王的终端接口sdcv
5). 文件管理器:推荐gnu的MC(midnight commander)。F1~F10为功能键。
默认使用vim编辑器:在mc的选项中取消“使用内置编辑器”,然后

sudo update-alternatives --config editor

选择vim.basic
设置透明:在.mc/ini最后加入

[Colors]
base_color=normal=white,default:marked=magenta,default

其实还可以完全透明掉,不过不知道为什么我这里总是不成功。不想折腾,爱折腾的可以自己google一下,绝对是可以实现的。
设置文件操作规则:编辑/etc/mc/mc.ext,看一下文件头的说明吧,语法还是很好懂的。
6). 图片查看器:用feh吧。推荐在rc.lua中把feh设置为浮动窗口启动(搜到Mplayer,然后把feh也像模像样加进去就可以了)
7). Todo list:本来想用todo.txt的todo.sh的,不过很神奇这个东西有语法错误。然后基于不折腾原则,找到了ikog,可用性还不错,也是基于todo.txt的

4. 其它需要注意的终端操作
awesome的program launcher:如果使用默认配置文件的话,win+F1就可以打开launcher了,之后应该输入命令
调节音量:amixer set Master/PCM 5%+,具体的man amixer
查看电池电量:acpi
终端的复制/粘贴操作:复制的话选中就可以了,粘贴一般可以用shift+insert,在opera中要用鼠标中键,不过应该可以map到键盘
休眠:sudo pmi action suspend

至此,实现了无折腾达到基本可用。之后怎么搞,爱深入研究什么东西就看个人意愿了。恩,也不知道我的the way会不会继续更新下去。