程序人生

撰写生活代码,等待编译美好人生
随笔 - 48, 文章 - 0, 评论 - 29, 引用 - 0
数据加载中……

2006年7月6日

Python为自身模块添加属性

试了好半天才始出来,几经曲折,所以写下来:

A模块:
1 import sys, os
2 selfMod = __import__(__name__)
3 setattr(selfMod, "field""value")


在B模块中调用
1 import A
2 print A.field
输出: value

模块A的这种写法与在模块A中直接写field = "value"的效果是一样的。这看起来似乎多余,但是在某些特殊的情况下可以用该方法动态设置当前模块的属性。



posted @ 2008-05-20 02:21 405 Studio 阅读(763) | 评论 (0)编辑 收藏

蔬菜沙拉

前几天跟朋友去吃了一次蔬菜沙拉。做的很精致,但并不合我的口味,但朋友很喜欢。
今天闲暇之际研究一下“沙拉”的来源:
google了一下"define:沙拉"

沙拉(香港称为沙律)通常是配菜,有时会作为一道主菜。 

不详细,在answers.com找了一下:

Originally derived from the Latin sal  for  salt, meaning something dipped into salt. Now normally a dish of uncooked vegetables; either a mixed salad or just one item (commonly lettuce or tomato). 
的确,我们吃的都是卷心菜(当时我以为卷心菜就是生菜 -_-|||)和小西红柿。

食物文化百科:
Although the ancient Greeks and Romans did not use the word "salad," they enjoyed a variety of dishes with raw vegetables dressed with vinegar, oil, and herbs. Pliny the Elder in Natural History, for instance, reported that salads (acetaria) were composed of those garden products that "needed no fire for cooking and saved fuel, and which were a resource to store and always ready" (Natural History, XIX, 58). They were easy to digest and were not calculated to overload the senses or stimulate the appetite.
...........
...........

最终,我在怀疑是不是中国凉拌传入西方之后变味了的结果。

posted @ 2007-12-05 01:43 405 Studio 阅读(413) | 评论 (1)编辑 收藏

感觉我是無賴

这种感觉不好。。

posted @ 2007-12-03 22:04 405 Studio 阅读(249) | 评论 (0)编辑 收藏

Windows DB2 Express-C 9 启动不了的原因

这几天想尝试一下 DB2 Express-C 9 ,找了个Windows的版本,几个"下一步"几个确定之后就装玩了. Reboot以下以为可以开始探索DB2 9了.没想到DB2却怎么都启不来.
折腾了几天才知道原来DB2 服务的启动还跟系统的一些其他服务有联系于是把在服务列表中把Server服务启动了再启动DB2, 启动成功!

posted @ 2007-08-04 17:05 405 Studio 阅读(690) | 评论 (1)编辑 收藏

Vim的16进制模式

今天有人问我VIM能不能像UE那样进行16进制编辑以,一时间没有答上来。执行了一下 :help hex才发现原来用 %!xxd 命令实现。为了方便,在vimrc上做了个map,实现了了<leader> + h切换文本模式和16进制模式,虽然简单,但是很有用 :)

"To hex modle
let s:hexModle = "N"
function! ToHexModle()
  if s:hexModle == "Y"
    %!xxd -r
    let s:hexModle = "N"
  else
    %!xxd
    let s:hexModle = "Y"
  endif
endfunction

map 
<leader>h :call ToHexModle()<cr>

在使用上面这段代码之前,你得确定你设置了<leader>且与你原来的键盘映射不冲突。

posted @ 2007-06-17 15:01 405 Studio 阅读(3839) | 评论 (0)编辑 收藏

Arch下安装Virtualbox

1.下载virtualbox:
当然,在官方下。
http://www.virtualbox.org/wiki/Downloads
这里我用的是 binaries 版本,由于我用Archlinux所以我选了 All distributions
2.安装
说明:以下操作均以root用户身份执行
a)修改下载的文件的属性为可执行:

#chmod +x VirtualBox_1.3.4_Linux_x86.run

VirtualBox_1.3.4_Linux_x86.run是安装文件

b)运行安装程序
#./VirtualBox_1.3.4_Linux_x86.run install 

install 后可以跟安装路径,默认会安装在/opt/VirtualBox-1.3.4/下

c)进入安装目录,并为所有用的so文件做链接到/usr/lib/

#cd /opt/VirtualBox-1.3.4/ #ln *.so /usr/lib/

d)把要运行virtualbox的用户加入vboxusers组

# gpasswd -a ausername vboxusers 

我运行这个命令后用groups命令发现ausername没有立刻被加到vbxousers组,这时你要重启以下。(我想应该有更好的办法,虽然我没有找到)
e)加载virtualbox 核型模块
#modprobe vboxdrv f)
3.运行virtualbox

# /opt/VirtualBox-1.3.4/VirtualBox


posted @ 2007-02-20 23:11 405 Studio 阅读(818) | 评论 (0)编辑 收藏

配置xinetd

     摘要: 今天打算把所有得网络服务都用xinetd来启动。找了几篇文章看了看。很快FTP,CVS,SSH都搞定了,然后配置Postgresql。死活起不来。于是去找xinetd的官方文档,这才发现原来很多的文章都没有很详细地说明type这个参数得作用。我误以为象ssh那样省去Type也没有问题。下面是官方文档对type得说明:
xinetd can manage 3 types of services :
...........  阅读全文

posted @ 2007-02-15 16:52 405 Studio 阅读(712) | 评论 (0)编辑 收藏

不错的鼠标增强软件 Strokeit

strokeIt_show.jpg 我向来喜欢在Firefox里用鼠标手势。今天找到一个软件,叫strokeit这软件可以让你在任何windows程序下使用鼠标手势。记得搞系统编程的时候我也曾想过做一个这样的东西。对于搞过Windows核心编程的人来说,应该觉得原理比较简单——鼠标钩子,但当我仔细试用之后,感觉作者做得非常用心。小小的软件提供了许多十分贴心的功能。而默认的设置也是经过作者用心配置的。更让人兴奋的是,这是一款完全免费的软件!!

posted @ 2007-01-14 13:41 405 Studio 阅读(389) | 评论 (0)编辑 收藏

用find实现批量压缩

一开始还以为要用for才才能做得了,今天仔细研究了一下find命令,只要一行就搞定了。
以下命令实现了对当前目录下的所有文件夹分别执行tar命令。

find . -type d -exec tar -vcf {}.tar {} \;


下面对这句东东解释一下:
  • "-type d" -type是find的一个参数 d表示文件夹。也就是说只搜寻当前目录下的文件夹
  • "-exec tar -vcf {}.tar {} \;"   该参数表示把搜索出的结果(文件名)给指定的命令进行操作。-exec 后跟的第一个参数应该是一个命令,这里是tar。{}是搜索的结果。另外要注意,命令必须以 \;结束(注意\前的空格)


posted @ 2007-01-13 20:27 405 Studio 阅读(920) | 评论 (0)编辑 收藏

Bash Shell脚本学习小结

     摘要: shell是很有趣的东西,今天从新学习了一下shell编程的一些基本知识,温故而知新。这里做个今天学习的总结  阅读全文

posted @ 2007-01-13 20:01 405 Studio 阅读(10039) | 评论 (3)编辑 收藏

VIM & Firefox


今天整个下午都给了Firefox和VIM。一开始看了一篇VIM的文章,学习和复习了一些VIM的技巧,VIM永远都是这么强大,似乎总是有学不完的有趣的东西。搞了半个小时的VIM习惯了“hjkl”的操作,竟然看网页的时候习惯性是去按h、j,试图通过这两个按钮来滚动网页。于是便突发奇想能不能修改Firefox的热键像VIM一样。Google了一下,竟然有我这样的想法的人还真不少。在一位老兄的Blog上列出了三种方法。我用了第一种,使用keyconfig扩展。
  1. 首先到 http://mozilla.dorando.at 上安装keyconfig.xpi插件(本文附件)
  2. 进入~/.mozilla/firefox/[yours].default/目录,编辑文件prefs.js,将一下内容插入到文件末尾: user_pref("keyconfig.main.xxx_key_ScrollPageUp", "!][][][goDoCommand('cmd_scrollPageUp');"); user_pref("keyconfig.main.xxx_key_ScrollPageDown", "!][][][goDoCommand('cmd_scrollPageDown');"); user_pref("keyconfig.main.xxx_key_ScrollLineUp", "!][][][goDoCommand('cmd_scrollLineUp');"); user_pref("keyconfig.main.xxx_key_ScrollLineDown", "!][][][goDoCommand('cmd_scrollLineDown');"); user_pref("keyconfig.main.xxx_key_ScrollLeft", "!][][][goDoCommand('cmd_scrollLeft');"); user_pref("keyconfig.main.xxx_key_ScrollRight", "!][][][goDoCommand('cmd_scrollRight');"); user_pref("keyconfig.main.xxx_key_ScrollTop", "!][][][goDoCommand('cmd_scrollTop');"); user_pref("keyconfig.main.xxx_key_ScrollBottom", "!][][][goDoCommand('cmd_scrollBottom');"); user_pref("keyconfig.main.xxx_key_findTypeLinks", "!][][][goDoCommand('cmd_findTypeLinks');");
  3. 先关闭firefox,然后再保存修改过的prefs.js文件。否则,firefox关闭后会清空 firefox的剪贴板,同时重写prefs.js文件,所以需要先复制上面的代码,再关闭firefox,最后保存prefs.js文件。
  4. 重新启动firefox,在tools->keyconfig中设置相应的快捷键。
hjkl解决了,但是我还希望能像vim那样有命令模式,这似乎网上还没有人实现,有空想研究一下Firefox的插件把这功能搞出来。:)

顺便把今天下午看的VIM文章Efficient Editing With vim学到的新知识总结一下:

1.可视模式的新发现:
  • 刚接触VIM得时候就已经开始使用“V”了,但是<C - v>这特性几天才知道。这个快捷键按下之后可以选定任意的文字块。注意,是任意的,不会受行的限制。
  • 使用ma可以在某一行创建标记,在普通模式则直接m后跟字幕就可以创建一个标记,例如:mk,在当前行创建了一个名为k的标记
  • 普通模式使用'(单引号)后跟标记名,可以快速转到标记的行。例如: 'k,光标会自动定位到标记名为k的行
  • 在命令模式使用:marks可以查看当前的所有标记
  • '.可以跳转到最后一次的编辑点。
3.重复
  • 普通模式下使用.(句号)可以重复上一次的命令。
4.使用多剪贴板
  • 操作方式:使用"(双引号)+寄存器名+操作。
  • 把内容存入剪贴板:例如:"qyy,使用名为q的寄存器作为剪贴板保存当前行。
  • 从剪贴板中取内容:例如:"qp, 从名为q的寄存器中取出内容,作为粘贴的内容来粘贴。
5.编写代码时常用命令
  • ]p 自适应粘贴,跟普通p的功能一样。
  • % 在普通模式,当光标处于某个括号{},大括号(),中括号[]上时,按下%光标会跳到该括号,大括号,中括号的另一  相匹配的部份。
  • >>和<< 向左、向右缩进。
  • gd Go to the definition (or declaration), 普通模式,在某个变量或者方法名上使用该命令,会高亮代码中所有该变量或方法,然后可以通过n和N来跳转光标到这些变量上。

posted @ 2007-01-11 20:45 405 Studio 阅读(968) | 评论 (0)编辑 收藏

3个月后的一贴

三个月没有写Blog,这几个月都忙得乱七八糟的。用乱七八糟来形容一点也不过份。太多东西要忙,忙得自己有时都不知道自己在搞什么。有时回忆起大一大二的悠闲日子好是怀念。
今天打开收藏夹,猛然想起自己还有个Blog。于是上来自言自语几句。。。

推荐个网址:
http://linuxtoy.org/
LinuxTOY 是一个致力于提供 Linux 相关资讯的专题站点。

还在这网站上发现了这个东东:
http://www.songbirdnest.com/
Firefox还真是牛,可以做播放器。


posted @ 2006-12-16 01:38 405 Studio 阅读(241) | 评论 (0)编辑 收藏

跟我聊天

今天发现有人用这个东东,我也来玩玩。

posted @ 2006-08-30 23:25 405 Studio 阅读(220) | 评论 (0)编辑 收藏

《手》- 莫文蔚

第一次听这歌是在冰鱼工作室录制的锵锵三人行的片头里,是“祈雨坊主”的翻唱。之后在Kugoo里搜索才知道原唱是莫文蔚,收录在她的专辑《如果没有你》里。也许是第一映象的原因,总是觉得原唱还不如翻唱。
很安静的一首歌,但是很动人。似乎总是能牵起心中的一些回忆,但并不知道是哪一段回忆。。。

posted @ 2006-08-26 06:03 405 Studio 阅读(358) | 评论 (0)编辑 收藏

google和baidu的超长域名

今天在群里有兄弟发了两个域名:

GOOGLE的变态域名:
http://www.mamashuojiusuannizhucedeyumingzaichanggoogledounengsousuochulai.cn
中文拼音:“妈妈说就算你注册的域名再长GOOGLE都能搜索出来”

然后百度也跟着注册了个:
http://www.mamashuojiusuannizhucedeyumingzaichangbaidudounengsousuochulai.cn
中文拼音:“妈妈说就算你注册的域名再长百度都能搜索出来” 

后来有人把域名注册资料查了一下:

mamashuojiusuannizhucedeyumingzaichanggoogledounengsousuochulai.cn 注册资料

Domain Name: mamashuojiusuannizhucedeyumingzaichanggoogledounengsousuochulai.cn
ROID: 20060619s10001s55234958-cn
Domain Status: ok
Registrant Organization: 台山市新视野网络有限公司  
Registrant Name: 袁艳伯
Administrative Email: ogilvy@gmail.com
Sponsoring Registrar: 厦门精通科技实业有限公司
Name Server:ns3.dns-diy.com
Name Server:ns4.dns-diy.com
Registration Date: 2006-06-19 19:21
Expiration Date: 2007-06-19 19:21

mamashuojiusuannizhucedeyumingzaichangbaidudounengsousuochulai.cn 注册资料

Domain Name: mamashuojiusuannizhucedeyumingzaichangbaidudounengsousuochulai.cn
ROID: 20060620s10001s55330994-cn
Domain Status: ok
Registrant Organization: 北京鼎立四方科技发展中心
Registrant Name: 许晓刚
Administrative Email: bigfoot@51icp.com
Sponsoring Registrar: 厦门华商盛世网络有限公司
Name Server:ns1.520idc.net
Name Server:ns2.520dns.net
Registration Date: 2006-06-20 11:53
Expiration Date: 2007-06-20 11:53

也不像官方注册的域名,不直到是什么目的呢。。。

posted @ 2006-08-22 20:55 405 Studio 阅读(496) | 评论 (0)编辑 收藏

感受db4o

面向对象数据库一直都只是知道这个概念而不有去真正的尝试过。直到今天看了db4o的

“白皮书”,不得不为其便捷的操作和而震动。使用关系数据库的时候我们一直在考虑如何ORM。而db4o的出现给了我们一种更方便快捷的方法来存取对象。正如CSDN里的评论“db4o结束了长达15年"对象导向软件应使用哪种查询语言"的辩论”。相信面向对象的数据库的未来会越来越广阔。

posted @ 2006-08-22 20:38 405 Studio 阅读(297) | 评论 (0)编辑 收藏

网友言论

今天在CSDN上有人问JSP有没有数据绑定,看来那位老兄是.net那边过来的。(小心,是不是间谍哦)
然后有位达人来了一句经典,录下:

搞java需要的不仅仅是耐心!就和耕田一样,现在还没有联合收割机

posted @ 2006-07-25 15:59 405 Studio 阅读(309) | 评论 (0)编辑 收藏

Linux下Eclipse不认识Tomcat

刚配置完Tomcat,想在Eclipse下试一试,随便些了个HelloWorld,然后Run on Server。Eclipse之前没有建过Sever的,于是提示要创建一个Server,但是没想到给了我个错误提示:
Could not load the Tomcat server configuration at /opt/tomcat/conf. The configuration may be corrupt or incomplete.
本以为是环境变量配置错误。检查了一下,没有问题,而且Eclipse以外,直接运行服务器也正常。
折腾了半天,看了下
cyril@405Studio:/opt$ sudo ls -l tomcat
total 
68
drwxr
--r-- 2 root root  4096 2006-07-23 17:39 bin
drwxr
--r-- 6 root root  4096 2006-04-15 02:09 common
drwxr
--r-- 3 root root  4096 2006-07-23 19:41 conf
-rwxr--r-- 1 root root 11357 2006-04-15 02:11 LICENSE
drwxr
--r-- 2 root root  4096 2006-07-23 18:20 logs
-rwxr--r-- 1 root root   688 2006-04-15 02:11 NOTICE
-rwxr--r-- 1 root root  6384 2006-04-15 02:09 RELEASE-NOTES
-rwxr--r-- 1 root root  6964 2006-04-15 02:11 RUNNING.txt
drwxr
--r-- 5 root root  4096 2006-04-15 02:09 server
drwxr
--r-- 4 root root  4096 2006-04-15 02:09 shared
drwxr
--r-- 2 root root  4096 2006-07-23 17:39 temp
drwxr
--r-- 8 root root  4096 2006-04-15 02:09 webapps
drwxr
--r-- 3 root root  4096 2006-07-23 18:20 work

看样子可能是权限的问题。
于是
sudo chmod -R 777 /opt/tomcat/
再次启动Eclipse创建服务器完成!
总结:
Eclipse使用Tomcat作为服务器来开发的时候,需要对tomcat安装目录的文件进行读写操作,所以应该赋予Eclipse对tomcat安装目录的读写权限。



posted @ 2006-07-23 20:04 405 Studio 阅读(1560) | 评论 (0)编辑 收藏

Linux下JDK,Tomcat的配置

 每次重装之后总是忘记Ubuntu下的J2EE开发环境配置,备份一下:

1.安装JDK:
sudo apt-get install sun-java5-jdk 

2.配置环境变量:
在/etc/profile末尾添加如下代码:
#Java Environment
export JAVA_HOME=usr/lib/jvm/java-1.5.0-sun
export CLASSPATH
=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
export PATH
=.:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
要让以上环境立即生效输入命令: source /etc/profile
说明:其中的usr/libjvm/java-1.5.0-sun的路径,要看具体jdk的版本和实际安装路径来确定

2.安装Tomcat
下载Tomcat的Linux版本解压到某目录即可(例如:/opt/apache-tomcat-5.5.17)

3.配置Tomcat的环境变量(如果使用Eclipse开发环境,需要在原/etc/profile末尾加上如下代码):
#Tomcat setup
export TOMCAT_HOME=/opt/apache-tomcat-5.5.17
export CLASSPATH
=$CLASSPATH:$TOMCAT_HOME/common/lib
默认Tomcat服务器的端口是:8080
测试: http://localhost:8080

posted @ 2006-07-23 18:25 405 Studio 阅读(3506) | 评论 (9)编辑 收藏

体会两句话

句一:
工欲善其事,必先利其器
今天配置IDE的体会。

句二:

两个人交换两个苹果,交换之后一个人还是只有一个苹果;但是两种思想,两个灵感,拿来交换,之后每个人就同时获得了这两个思想和灵感!
跟JR交流技术的体会

posted @ 2006-07-21 01:57 405 Studio 阅读(228) | 评论 (0)编辑 收藏

VIM实用教程

在某位兄弟的Blog上看到的,虽然很多知识都知道。但是还是转载了,因为感觉这作为入门教程很不错。
希望会有更多的人喜欢VIM!

什么人适合使用 VIM ?
追 求编 辑 效 率的 程序员
VIM 的作者是程序员
他为程序员开发了许多有用的功能
其 它经 常 处 理纯 文本的 人 员
中小型企业 Web 开发人员
编写 LaTeX 文档的研究人员
Unix / Linux 系统管理员

什么人不适合使用 VIM ?
生 活、 工 作 和学 习无需 和 纯 文本 打 交道 的 人
处理其它类型的文件有专门的工具
打 字速 度 慢 于智 能感知 运 行 速度 的 人
VIM 目前暂不支持智能感知
被强大的 IDE 惯坏了的人
强大顺手的 IDE 比方便快捷的编辑器更重要


Linux 下中文处理
编 辑时 不 能 输入 中文
:set encoding=cp936
菜 单显 示 是 乱码
:so $VIMRUNTIME/delmenu.vim
:so $VIMRUNTIME/menu.vim


选择喜欢的字体
通 过菜 单 与 对话 框选择 字 体
编辑 ­­> 选择字体
只有等宽字体可以被选中
适合程序员使用的字体基本原则
Bitstream Vera Sans Mono
0Oo 1Il
记 住选 中 的 字体 名称
:set guifont?
将显示结果抄下来备用


VIM 基本操作
VIM 是一个有模式的编辑器
Normal 模式下按键序列对应命令
按 i 键进入 Insert 模式
按 : 进入 command 模式
Insert 模式下可以输入文本
按 ESC 回到 Normal 模式
Command 模式下输入命令
有模式导致 VIM 快捷键长度较短


使用 hjkl
VIM 支持使用方向键移动光标
在 insert 状态下移动光标会比较方便
使 用 h jk l 移 动 光 标 编 辑 效 率 更 高
距离近,按键方便,眼睛无需离开屏幕


vimtutor
vimtutor 是 VIM 入门非常好的学习材料
Linux 用户
在终端中输入 vimtutor
启动字符界面的 vimtutor
W in d o ws 用 户
在开始菜单中找 vimtutor 快捷方式
启动后出现乱码,重新选择一个中文字体即可


查找替换
准 备工 作
打开 VIM ,按 i ,输入:
this is a test
查 找替 换
按 ESC 回到 normal 状态,输入:
:%s/ /^M/g
其中 ^M 使用 Ctrl­v Ctrl­m 的方式输入
将所有空格替换为回车,文本变为 4 行


行的拼接
查 找 \n 替 换 为 空 格 可 以 实 现 拼 接
这 里使 用 j 命 令拼 接 行
按 ggVG ,全选
按 : ,此时命令行显示为:
:'<,'>
在其后输入 j ,回车
拼接完毕


复制粘贴与重复动作
在 normal 状态下按 yy ,复制当前行
按 1 2 p , 屏幕 上 即 出现 1 3 行 上述 字 样
12 表示将其后的命令执行 12 次
p 表示粘贴到当前行之后
VIM 里大部分命令都可以加上数字表明执行次数


列操作
选 中全 文 第 一列
按 gg 跳到开头
按 Ctrl­v 进入列选择状态
按 G 跳到末尾
将 每行 第 一 列变 为大写
按 U 表示把选中内容变大写
按 u 表示把选中内容变小写
按 ~ 表示翻转原有大小写
在 每行 前 面 加一 个星号 和 一 个空 格
选中第一列
按 I 进入插入状态
输入 * ,按 ESC
选 中前 两 列 后按 x , 可以 进 行 列删 除
编程时可以用于批量注释和批量解注释


宏的录制
将 所 有 偶 数 行 的 a 改 成 an o th er
录 制宏
按 gg 进入第一行
按 qm 进入宏录制状态,录制到寄存器 m
按 j 进入第二行,按 $ 跳到行末
按 2b ,光标停在字母 a 上
按 caw ,输入 another ,按 ESC ,按 j 进入下一行
按 q 结束宏的录制


宏的播放
单 次播 放
按下 @m ,执行 m 寄存器中的宏
可以发现第 4 行的 a 也变成了 another
多 次播 放
输入 1000@m
可以发现所有偶数行的 a 都变成了 another
到达文件底部时宏执行出错,会自动停止
最终并没有真的执行 1000 次


点命令
在 每行 末 尾 添加 一个感 叹 号
执 行次 数 不 多的 简单操 作 无 需使 用 宏
按 gg 进入第一行,按 A 进入行尾添加状态
输入 ! ,按 ESC ,按 j 进入第二行
按 . 表示重复前一个操作,即行尾添加 !
反复按 j.j.j.j.
推荐大家左手鼠标
:%s/$/!/g


VIM 入门
2 1 天 学习 计 划
多读文档,少走弯路
第一周:每天一遍 vimtutor
熟悉基本操作,做到随心所欲
第 二周 、 第 三周 :通读 用 户 手册
读用户手册的同时修订出适合自己的 .vimrc
目前手册有中文版译本可供下载

posted @ 2006-07-07 15:53 405 Studio 阅读(3148) | 评论 (0)编辑 收藏

爱上口哨

音乐是一种美妙的东西,它可以用任何的方式来表达!今天上了一个口哨专题的Blog口哨音乐网其中说到了很多关于口哨知识。听了李贞吉的专辑《唇音乐》真有余音绕梁,三月不知肉味之感。这是人类最原始的管弦乐器,也许是因为它属于我们的身体,所以人类能更自如地操控它,更能用它来表达自己的内心。
爱上了口哨!:)

posted @ 2006-07-06 19:57 405 Studio 阅读(302) | 评论 (0)编辑 收藏