9/16/2008

ubiquity 真的是“无处不在”

也许是被 Google 的 Chrome 抢了风头,ubiquity 的发布似乎没引起人的注意,但是用过才知道它真的太强大了,感觉 Chrome 多余了:) 网上介绍 ubiquity 已经很多了,就不多说了,在这里说说它的自定义命令,也就是我们可以添加新的命令到 ubiquity 中。

可以打开ubiquity 的命令编译器(chrome://ubiquity/content/editor.html),然后输入:
function cmd_hello_world() {
displayMessage( "Hello, World!");
}
这个编译器是自动保存的,输入以上代码后,调出 ubiquity 界面,输入 hello_world 并回车,就能看到效果了,如果觉得不错可以和大家分享

详细的说明请参考教程:https://wiki.mozilla.org/Labs/Ubiquity/Ubiquity_0.1_Author_Tutorial#The_Ubiquity_0.1_Command_Tutorial

9/09/2008

北京地铁还有隐藏路线?

是的,我是今天才知道。网上是这么描述的:
总共只有3个:福寿岭、高井、54号,都修建于1965年,当时是为了战备,是防范空袭和运送物资的。

现在福寿岭站已经对地铁技校学生开放,高井站对北京军区家属开放,但都尚未对社会开放。54号站为地上车站,已经基本废弃。

每天有早晚各有两班地铁列车经停福寿岭、高井两站。

9/03/2008

试用 Google 浏览器 Chrome

得知Google 推出了自己的浏览器了,虽然暂时还没Linux 版,但我迫不及待想看看它的样子,于是特意切换到Windows 下试用了一把 :D 果然。。。又是如此地简洁,那么地清爽,速度也很快,没有让人失望。对了,about:memory 可以查看内存使用、浏览器进程等情况(Chrome 是多进程的) ,从内到外都让人眼前一亮阿。
不过有一点比较奇怪,我头一次用 IE下载的程序装不了(点击没反应),后来用firefox 下载的安装程序就没问题(大小一样的)

8/28/2008

好用的工具

今天找到两个比较好的工具 devtodo, conky

下班了,回家慢慢补充 :D

(续)
我最后用的 devtodo,感觉不错 :)

8/25/2008

育儿

1.当不让孩子做不该做的事情(如要不该要的东西)哭闹打滚时,父母要视而不见,不要去哄,除非孩子做危险的事情,时间一长孩子自己就不哭了
2.当孩子做错事请时,不要把他自己关在房子里待着,要多交流
3.下班回家后,要大声叫孩子的名字,并说我回来了,然后和孩子一起玩至少20分钟
4.父母每周至少陪孩子外出游玩半天

(以后陆续补充)

安全解决 blocking 问题

[blocks B ] sys-apps/setarch (is blocking sys-apps/util-linux-2.13.1.1)
[blocks B ] sys-apps/mktemp (is blocking sys-apps/coreutils-6.10-r2)
[blocks B ] >=sys-apps/coreutils-6.10 (is blocking sys-apps/mktemp-1.5)

类似上面的问题,在gentoo 系统中是经常遇到问题,一般情况下可以先删除(emerge -C)再安装,但这样做不太安全,特别是对于一些重要的 packages,再安装时会找不到需要用的命令),可以采用下面的方法解决:

emerge --buildpkgonly --nodeps util-linux && emerge -C setarch && emerge --usepkgonly util-linux
emerge --buildpkgonly --nodeps coreutils && emerge -C mktemp && emerge --usepkgonly coreutils

也可以把 package 加到 package.mask 中,然后在 emerge,如下:

把 bash 先加到 /etc/portage/package.mask 中,这样 emerge portage 就不会报错了,然后再把 /etc/portage/package.mask 中的 =app-shells/bash-3.2_p33 拿掉,再 emerge bash

8/22/2008

GDB 技巧

比较有用的命令:

1.p(print) Print value of expression EXP
p/x Print value of variable and format it are x(hex)
2.ptype Print definition of type TYPE
3.whatis Print data type of expression EXP
4.display Print value of expression EXP each time the program stops
5.define Define a new command name
6.layout Change the layout of windows. Layout names are: src/asm/split/regs

举例如下:

获取struct page结构的大小
(gdb) p mem_map
$80 = (struct page *) 0xc1000000
(gdb) p mem_map+1
$81 = (struct page *) 0xc1000020
(gdb) p/x 0xc1000020 - 0xc1000000
$82 = 0×20

p *array@len


自定义函数
(gdb) define nbt
Type commands for definition of “nbt”.
End with a line saying just “end”.
>next
>bt
>end
(gdb) nbt

TUI模式
layout src 仅显示源代码窗口
layout asm 仅显示汇编代码窗口
layout split 显示源代码和汇编代码窗口
layout regs 显示寄存器和源代码窗口,或者寄存器和汇编代码窗口
layout next , layout prev 切换窗口
C+l 刷新屏幕
C-x 1 只用一个窗口
C-x 2 用两个窗口,按多次会有不同两个窗口的组合形式
C-x o active 窗口转移
C-x s 进入和退出TUI SingleKey 模式
C-x a 退出TUI模式,回到传统模式