Monthly Archives: November 2008

Right-click a file and choose to launch in vim.

Gvim is a good application.  Right-click on a file (e.g. *.html) will give me the option to launch it in gvim.  But gvim has a big problem.  It uses a built-in terminal with limited functionality.  For example, I am used to pressing Shift-k to view the man page for the function where my cursor is.  If I do this is gvim, I’ll get WARNING: terminal is not fully functional, and the man page is filled with “codes” (for creating bold effect I guess) that makes it hard to read the content.

There seems to have no way to workaround this gvim issue, so I decided to stick with vim.  In order to have “right-click then launch in vim in a gnome-terminal”:

1. Right-click on the file with the said extension (e.g. *html).
2. Click on Properties.
3. Choose Open With tab.
4. Click on the Add button.
5. Click on the Use a custom command.
6. Write the command gnome-terminal -x vim
7. Click the Close button.

Now, right-click on the file gives you an option to Open with “gnome-terminal”.  Choose that and you have your file open in vim.

All is good except the name of the option Open with “gnome-terminal” which is wrong.  I want it to be Open with “gnome-terminal-vim”.  So, I write a one line shell script called gnome-terminal-vim with the content:

gnome-terminal -x vim "$1"

Make the script executable and place it somewhere in $PATH.

Lastly, change the command in step 6 to gnome-terminal-vim

That’s it.

Metacity and AWN in Lenny

awn1

Earlier today, I posted my setup of Compiz and AWN.  But then, I found that, my system is taking too much CPU (mostly xorg).  Even during video playing (MP4), xorg hits 90% CPU.  Then, I started to find another composite window manager to replace Compiz.  Metacity is a compite window manager, but when I start AWN, it said:

Error: Screen isn't composited. .....blah blah

Then I try to look around in the net and finally found that, I have to turn on the “composite manager” support in metacity explicitly.  It is off by default.  So, just fire up the gconf-editor, edit the key:

/apps/metacity/general/compositing_manager

set it to true (tick the check box).  That’s all.  My system is now as fast as before and with the AWN!  🙂  Well, there goes all the compiz effects, but usability is more important.

Finally, ~/.gnome2/session (copied from /usr/share/gnome/default.session) has the following content:

[Default]
num_clients=3
0,id=default0
0,Priority=10

0,RestartCommand=gnome-wm --sm-client-id default0
1,id=default1
1,Priority=40
1,RestartCommand=avant-window-navigator –sm-client-id default1

Compiz-Fusion and AWN on Lenny

awn

I’ve been using Compiz-Fusion from Shame repository since Etch.  After installing Lenny, I tried to use the Debian official Compiz package.  Too bad, it didn’t work.  So, I go back to Shame repository.  It just work out-of-box, not to mention, with all latest and greatest features.  Oops, almost out-of-box.  I need to enable composite extension for X myself.

At the end of “/etx/X11/xorg.conf”, add the following:
Section "Extensions"
Option "Composite" "Enable"
EndSection

repos: deb http://download.tuxfamily.org/shames/debian-lenny/desktopfx/unstable/ ./
repo key: wget http://download.tuxfamily.org/shames/A42A6CF5.gpg -O- | apt-key add -

Avant Window Navigator (AWN) is a Mac-OS-like docker.  Etch does not have the package and building from source requires newer libraries also not available in Etch.  Now I have lenny and I have AWN installed.  I’m using the official debian package and pretty happy with it.  Lenny has the latest version of AWN!  Unfortunately, not all applets work and not all available applets are there in the package.  The missing applet that I want the most is: notification-area applet (thanks to debian decision that the applet is not stable!!!).  Without this, checkgmail and scim cannot be shown.  Found a firefox add-on that can do some of the task I used to do with checkgmail (but still not a total replacement).  For scim, luckily I can use key-board shortcut (CTRL+SPACE and CTRL+SHIFT) to enable / change scim input methods.

scim

In Etch, I used to start the compiz-manager in gnome-session, but this time I simply don’t want to waste any time in starting metacity then replace with compiz.  I want Compiz to be the default window manager.  After hours of searching and testing, finally, I found a working solution:

Copy /usr/share/gnome/default.session to ~/.gnome2/session and edit it to your preference.  Mine has the following content:

[Default]
num_clients=3
0,id=default0
0,Priority=10
0,RestartCommand=compiz-manager --sm-client-id default0
1,id=default1
1,Priority=40
1,RestartCommand=avant-window-navigator --sm-client-id default1

VIOS 撞车 第3次

accident

我的vios在今天经历了第三场车祸。车尾在今年内第二度被撞。虽然没有年初那一次般的严重,但计划好周末回家乡的行程就泡汤了。希望车子能尽快修好吧!

Find broken symlinks

I’m going to make some directory moving and it will break some symlinks.  So, I need to find out those broken symlinks and update them accordingly.  After some googling, I found a nice and easy way:

find . -type l | while read i ; do test -e $i || ls -l $i; done

The command not only show you the broken symlinks but also the missing destination file (or directory, etc).

Enabling / Disabling services in Debian

Enabling / disabling services in Debian is easy.  Just add / remove symlinks in /etc/rcX.d directory that points to /etc/init.d/serviceName.  This is simple and it works.  Just now, I found an easier way, using sysv-rc-conf.  First you need to install it

aptitude install sysv-rc-conf

Then, run it with root user.  A nice console GUI appears and show you all available services in the system.  You just need to enable / disable the appropriate check-boxes by pressing space bar or mouse click.  Becareful, all changes take effect immediately.

This is how it looks:

sysv-rc-conf

ACE+TAO and Naming Service

Building ACE+TAO and Naming Service can be difficult.  The default build which compiles everything takes hours to complete.  To speed up the process, I usually compile the items I want selectively.  But it took hours as well, because I’ve been making mistake due to the clarity of the documentation.  I did it again yesterday but this time I’m going to write down the steps, so that I won’t need to go through the reading, testing, redoing another round.

cd ~
tar jxf ACE+TAO-x.y
mv ACE_wrapper ACE+TAO-x.y
export ACE_ROOT=~/ACE-x.y
cd $ACE_ROOT
echo '#include "ace/config-linux.h"' > $ACE_ROOT/ace/config.h
echo 'include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU' > $ACE_ROOT/include/makeinclude/platform_macros.GNU
make -C ace -j3
make -C apps/gperf/src -j3
make -C TAO/TAO_IDL -j3
make -C TAO/tao -j3
make -C TAO/orbsvcs -j3 Naming_Service-target

《你怎么说》没了!

星期日晚上七点(昨晚)、RTM2的时事、政经清谈节目《你怎么说》突然不见了!替补上的是个非常cheap的(看过后的感觉),探讨文化艺术的节目。刚看了《独立新闻在线》的报道,《你怎么说》是被腰斩了。最后的导火线可能是上星期的节目中,邀请了郭素沁。说是“最后的导火线”,因为节目的性质,而国政政府又太过没用,节目中常有批评政府施政的谈话。

《你怎么说》是我唯一收看的RTM2节目。这之后,没有理由再收看国营电视台了。

《犬と私の10の約束》(我与狗狗的十个约定)

看了这影片,感觉很不错。比较喜欢前半部,女主角小时候的部分。觉得比较感人、比较真。影片尾声时女主角母亲的绘本,还有片终时一连串的照片,让我感动啊!

与狗狗的十个约定是什么呢?(狗狗是说话的一方)

1. 请一定要耐心聆听我的话
1. 私の話を  がまん強く  聞いてください

2. 信赖我  我永远是你的伙伴
2. 私を信じて。  私は いつでも  あなたの味方です。

3. 多和我一起游戏
3. 私と  たくさん遊んで

4. 别忘记我也有感情哦
4. 私にも心が  あることを  わすれないで

5. 不要和我吵架
5. ケンカは  やめようね

6. 如果我不听你的话 那一定是有原因的
6. 言うことを  聞かないときは  理由があります

7. 你能去学校 还有朋友 可是我只有你
7. あなたには  学校もあるし  友達もいるよね  でも  私には  あなたしかいません

8. 即使我变老了也要和我做朋友哦
8. 私が年をとても  仲良くして  ください

9. 我的寿命只有十年左右 所以请珍惜我们一起生活的时间
9. 私は  十年くらいしか  生きられません  だから  一緒にいる時間を  大切にしようね

10. 我不会忘记和你一起度过的时光 当死去的时候 拜托你 请一定要在我身旁
10. あなたと  すごした時間を  忘れません  私が死ぬとき  おねがいします  そばにいて。

ごめんね 小黄