用qjoypad解决玩stepmania时跳舞毯无效的问题
之前买了一张跳舞毯,在windows下用stepmania玩得挺欢。但家里的机器已经被我删除了windows的一切东西装上arch了。
因为stepmania是开源且跨平台的,于是打算在这台机器上玩一下跳舞毯,让机器挂了一天下载了stepmania中2G多的舞曲,无障碍进入stepmania后,它居然不认得跳舞毯的键。于是就想到了x下可以直接设置键位映射,google上找到了一个用xmodmap的方法,折腾了一下发现貌似不支持joypad相关键的设定。
无奈之际,只好用clyde以关键字"joy" 找了一下,居然发现这类的软件还是挺多的,一个一个挨着试了一下,发现qjoypad最为简单方便。运行后在托盘上有一个图标表示在监视在joystick的按键,只需要右键点击并对对应的joypad进行简单的设置就可以了。
之后当然是将跳舞毯的键映射到键盘上对应的位置,终于可以在linux下玩stepmania了。
常用软件(windows)
记录下自己用到的东东,分类比较乱~~
系统,文档
- total commander,很方便的文件管理器,可惜是收费的,不付费也可以用,不过每次都要做做选择题
- everything,查找文件最方便的东西,只能在ntfs下用
- virtuwin,习惯linux多桌面的朋友可以试试,开源,方便,小巧
- avira,免费的杀毒软件,占用内存很小,很迅速,免费的足矣
- 7-zip,无须多说
- InfraRecorder. 刻录光盘用,小巧快速开源
- ultraISO,又是收费的。。好吧,我看开了
- winDjView,喜欢看电子书的朋友应该知道这个吧
- foxit reader,同上,很小巧快速功能又齐全的浏览器,在linux下会怀念它
- 超星,这个本来不想提,但确实有时要用到,无奈
- office,工作需要
- Uninstall Windows 7 USB DVD Download Tool用来刻录win7光盘到u盘安装
影音图片娱乐
- gimp,有时需要用用
- yed,用来画uml之类的图很好,虽然是java swing界面程序但也不算慢
- imagemagick,有时会批量处理一下图片
- mangameeya,看漫画用的,不过现在都在网上看了,基本上不用了
- klite mega解码包,搭配着mpc用,别无它求
- mplayer,呃。。。有时会用到mplayer
- google talk
- qq,呃
- 旺旺,买东西时用
- itunes,ipod touch要用,也使我好好地将相片和音乐分类了一翻。。。
学习,个人管理
- life balance,挺好用,和ipod touch同步着,不过现在也很少用了,想自己写个web+移动设备上可以自由同步的
- personalBrain,记下一下杂思和关系图,没有规律地用下
- xmind,脑图
- wordnet,有时看看单词的关系挺好玩的
- Visual Thesaurus Desktop Edition,又是玩单词的东西。。。
- supermemo记单词的东西,自己写了个在ipod touch上用着,但觉得还是它好。。。
- rosetta stone
网络
- dropbox,没有它很难受~~可恶,放配置文件,笔记,临时的网上U盘。。。 174.36.30.67 dropbox.com
- mldonkey,不想用verycd的
- utorrent,不想用迅雷
- 迅雷,呃。。。有时得靠它
- firefox
- ->adblock plus,你知道的
- ->autoproxy,你知道的。。。
- ->firebug,最近想搞web开发
- ->web developer,最近想搞web开发
- ->flashgot,下载插件
- ->quickdrag,最开始用myie时候染上的坏习惯~~
- ->vimperator,没有它不行了。。。也是我从chrome撤回的原因。
- ->xmarks,还是这个同步书签最好
174.36.30.71 www.dropbox.com
174.36.30.67 forums.dropbox.com
编程,开发工具
editor,compiler,ide,第三方库
- gvim,编辑简单文本时用,没有深入
- emacs,配置文件放在bitbucket上。。。
- mingw,msys(gcc,make,automake...etc.),写toy时用用,基本上不更新
- cygwin,不是常常用,基本上不更新
- vs2005 + nunit,工作需要
- python,用来写自动化脚本,想用来进行web开发学习,结合django
- ruby,主要是toy
- java sdk + junit,主要是toy
- gambit,用来学SICP
- plt scheme,同上
- googletest,google-sparsehash,很好用的两个库
- boost,至少智能指针无敌,shared_ptr可以放到stl容器中很爽
- sqlite,你知道的
- winPcap
- cgal,拓扑几何图形库,基于浮点数的好像是
- 其它忘记了,待补充
- hg
- svn + 乌龟
- git
- make,automake,autoconf,后面两个不会。。。
- scons,好像很好。。。不会,2
- google app engine,学习中
网络工具
- windump,Wireshark(好像也有linux版的)
- Aircrack-ng,试了一下。。。有机会的时候再用下吧
- Bitvise Tunnelier,自动重连,集成的功能比较多,如果发现什么不爽再回putty吧~~
- puff,mr.zhang,免费windows下的最好选择~~
web app
- google mail
- google docs,可以把pdf放上去,然后哪里看都可以了,还有最基本的文档u盘,日志,笔记~~
- google calander,我有时用来做日记,记下自己做了什么
- remember the milk,想自己写一下类似的,值得学习下
- google reader,浪费了很多时间
- bitbucket.org,爽一个字
- dropbox,好像上面 写了
gambit安装
想重新看看sicp,然后考虑要用哪个环境,作了一翻比较后选定了gambit,主要是执行速度够快,而且够轻。
于是在arch上用clyde找了一个,居然找到一个mingw32-gambit-c的包。。。god,只么好官网下载源代码自己编译。
安装步骤倒也很简单:
./configure --enable-single-host --enable-multiple-versions --prefix=/usr/lib/gambit --enable-symlinks --bindir=/usr/bin --libdir=/usr/lib --includedir=/usr/include --infodir=/usr/share/info --docdir=/usr/share/man --enable-cplusplus make make check sudo make install
参数的意思INSTALL.txt中有详细的解释。
呃,有机会还是学习一下怎样做arch的安装包
开始用zsh(1):globbing
一直不清楚blog的定位是什么,姑且先作为知识的整理和分享好了。
zsh的交互式实在太诱人,反正还没有熟悉bash,还是直接上手zsh好了。切换shell可以直接用chsh -s /bin/zsh
globbing
也就是利用*之类的字符生成多个文件名,除了bsah的模式之外还有一个扩充模式。然后python中也有对应的模块,不知道有什么不同的地方。
基本的模式都很熟悉了:
*.c *.[co] *.[^ch] foo[1-9][0-9]?? mysrc.{c,h} mv {old,new}.c
在默认设置下,zsh可以在在globbing后面加入qualifiers,比如说:
ls -d *(.)
表示只生成plain文件的文件名,其中最后的()里面的是zsh的qualifiers,如果是(@)的话就表示只生成软链文件。下面列举出一些qualifiers,更具体的qualifiers可以参见"man zshexpn"。
- /:目录
- @:软链
- .:plain文件
- %:设备文件,其中%b是指定block设备,%c是char设备
- *:可执行文件(对本用户)
- 权限(就是mod)的过滤,具体有:sStxwrAIEXWR,f???
- ....
如果在qualifiers前面加上^就是相反的意思。
感觉就是,熟悉了qualifiers后find好像可以退休了,不过很多qualifiers都用不着就是了,需要的时候再查查zshexpn的manpage就可以了。
此外zsh还有一个扩展模式,则需要设置EXTENDEDGLOB变量:
setopt extendedglob
下面列出扩展模式的特性:
1. nagative pattern: "^" 和 "~"
在pattern前加上^,就^表示只生成pattern中^后面不符合的文件名。如:
ls -d *.^c
表示只生成后缀不为c的文件名。
在第一个pattern后面加上~和另外一个pattern,表示生成符合第一个pattern不符合第二个pattern的文件名:
ls pattern1~pattern2
2.数字范围
看看example就好:
% ls run<200-300> run234 run240 % ls run<300-400> run303 % ls run<-200> run123 run2 % ls run<300-> run303 % ls run<> run123 run2 run234 run240 run303
3.分组:
% ls (foo|bar).* bar.o foo.c foo.o % ls *.(c|o|pro) bar.o file.pro foo.c foo.o main.o q.c
4.递归搜索子文件夹 **/
ls /path/to/somewhere/**/*.h
几个问题:
1. 扩充失败时会见到:
zsh: no match found: pattern
也就是说找不到适合pattern的文件了。
2. 如果要匹配文件名中的特殊字符,记录要quote,一般用双引号包着就可以。