共有9篇文章被收藏推荐
收录于2007-08-14
认领
报错
推荐
Ibus 输入法
由于种种历史遗留问题,本人惯用的汉字输入习惯和大多数人不一样:双拼输入法,并且是智能 ABC 风格的。这也就决定了我选择输入法的时候首先看它是不是支持我习惯的风格。以前 Google 推出中文输入法的时候,我的反应就很慢,因为不确定它是否支持双拼,后来发现它对智能 ABC 风格的双拼支持的很好,我在 Win 下的输入法就换成了 Google 的。
听说 Linux 下的 Ibus 输入法已经很久了,也是因为同样的原因没去尝试。搜索 “Ibus 双拼”,往往得不到有用的信息。今天在 Ubuntu 中文社区看到一张图,发现已经有双拼支持,才让我下定决心尝试一下。
Ibus 已经被打包到了 ubuntu-cn 的源里(注意,不是 ubuntu),可以直接 apt-get install ibus-pinyin。由于我的 locale 是 en_US.UTF-8,所以 im-switch 不好用,只好将输入法选择写到 ~/.profile 里:
XIM=ibus XIM_PROGRAM=/usr/bin/ibus XIM_ARGS="" GTK_IM_MODULE=ibus QT_IM_MODULE=ibus DEPENDS="ibus"
然后 re-login。网上有各种配置方法,其实我也不知道该怎么写才对,但输入法的启动不就是 X 启动时运行一个脚本嘛,从 /etc/X11/xinit/xinput.d/ibus 拷贝出来的东西总该没错。
第一次启动输入法需要选择 engine,这一点要比 scim 好,scim 默认就把乱七八糟的 engine 都给你配置上,还需要一个个去删除。然后再找配置双拼的地方,开始怎么也找不到,为什么不在 preferences 里呀?最后才想起来去看看那个输入法的语言条,才发现和 Google 拼音一样,启动配置在语言条的最后一个图标。
然后就开始码字,使用感觉是相当的爽的,界面比 scim 好看,用户词库的记忆效果貌似也比 scim 好。而且 scim 在处理双拼时候一直有一个问题:只显示键字母而不显示拼音。就比如“将”这个字用 ABC 双拼打是“jq”,在 scim 里拼音栏只会显示“jq”,而不是把“q”转换成“iang”,ibus 就没有这个问题。
目前来讲,ibus 最大的问题是反应有一点点慢,当打字速度快的时候,可能最后一个键没有记录上就把前面的输出了。比如打“将”时,jq空格,如果空格敲得太快,可能出现的是“就q”,大概也跟我使用的机器比较慢有点儿关系。这篇文章就是用 ibus 敲的,速度还可以忍受。
我把 scim 给删掉了,准备使用 ibus 一段时间,看看它是不是会引起一些程序的工作不正常。对 scim 引起的 KDE 程序崩溃和输入法不可用的毛病我已经容忍很久了,早就祈祷着到 Google 工作的 suzhe 能够继 scim 之后推出 Google 拼音的 Linux 版,目前看来 ibus 大概可以满足一下我的大部分需求。
文献管理软件 JabRef 快速入门
作者:杨文博 < http://blog.solrex.cn >
地址:http://blog.solrex.cn/articles/jabref-quick-guide.html
摘要:这篇博客主要介绍文献管理软件 JabRef 及其使用方法,适用对象为 LaTeX 用户、非 Windows 操作系统用户和用不起 EndNote 的 Windows 用户。
我曾经非常愚蠢地认为手工维护自己的参考文献库就可以了,但随着看过论文的增加,文献的管理成为一件痛苦的差事。最近才领略到使用文献管理软件的方便。 JabRef 的中文教程比较少而不全,所以就写了这篇博客,简要介绍一下这个软件的使用方法。
目录
1. 软件介绍
2. 建立数据库
3. 导入文献条目
4. 管理文献条目
5. 与 vim 结合使用
6. 其它应用
7. 结语
1. 软件介绍
JabRef 是一个开源的参考文献管理软件,使用 Java 语言编写,所以天生具有跨平台特性,通用于安装有 Java 支持的 Windows, Linux 和 Mac,软件主页在:http://jabref.sourceforge.net/。它可以很方便地管理下载到本机的文献,生成 BibTeX 文献数据库,供 LaTeX 或其它软件使用,可以与 Kile, Emacs, Vim, WinEdt 等多种软件结合使用。
JabRef 适合什么人使用?总的来说 JabRef 最大的特点就是使用 BibTeX 格式的数据库,所以它最适合 LaTeX 用户使用;如果仅仅使用它的管理功能,也可以用于本地电子书的管理;对于使用 M$ Office 写论文的用户来说,EndNote 是最好的选择,它能集成到 M$ Word 中,所以不推荐使用 JabRef。
JabRef 当前最新版本是 2.4.1,如果你发现自己的 JabRef 不支持某些特性,最好检查一下版本信息。本文使用 Linux 下的 JabRef 演示,其它系统下应该没有什么不同。
2. 建立数据库
JabRef 的文献数据库是纯文本的 bib 文件,可以将该数据库文件放在该主题文献的目录下。比如要建立一个 p2p 方向相关文献的数据库,只需建立一个 p2p 目录,在 JabRef 中选择 File->New Database,然后 Ctrl-s,将该数据库起名 p2p.bib,保存在 p2p 目录下。然后将 File->Database properties 中的 Database Encoding 设置为 UTF-8(这是因为论文的作者可能是法国人和我们会经常用中文写些注释,所以最好用国际化的字符集), Directory 都设置成点号 .(表示当前目录,这样你就可以将整个目录打个包,扔到另一台 Linux/Win/Mac 机器上照常使用)。
3. 导入文献条目
文献数据库的内容自然是一篇一篇的论文,每篇论文在数据库中占一条记录。那么如何添加论文呢?自然不必全部手工添加,几乎所有的数据库在提供论文下载的同时都有该论文 citation 信息的下载,下面这张图上是计算机科学类常用数据库网站的 citation 下载链接示例。也许你以前不知道它们是做什么用的,但你总能在文章下载页面的某个地方找到它们。
聪明如你,肯定知道该怎么做吧。点开 citation 的链接,将内容保存为相应的文件名。比如 BibTeX 格式的 citation 信息,将其保存到名为 xxx.bib 的纯文本文件中,然后到 JabRef 里选择 File->Import into current database,将该文件导入当前数据库,你就会发现数据库中多了一条记录。当然,JabRef 支持很多 citation 信息格式,但是既然 JabRef 采用 BibTeX 格式管理数据库,我们还是尽量下载 BibTeX 格式的 citation。
每次只导入一条记录未免太麻烦了些,由于很多参考文献信息都是纯文本格式的,那么我们可以将很多条记录分段拷贝到 xxx.bib(或者 xxx.ris 等) 里,然后集中导入。
如果你已经下载到了论文的 pdf 文件,知道论文的标题名和数据库名,那么你就不用再去网站下载 citation 信息,可以直接在 JabRef 中用标题名搜索该论文。比如你知道论文标题叫做 A Survey of xxxxxxx,可以从 IEEEXplore 数据库中获得,那么你可以直接在 JabRef 中选择 Web search->Search IEEEXplore,然后用标题名搜索,点 Fetch,就可以直接得到 citation 信息(但搜索可能出现错误,那么你就需要用 Google Scholar 并且到论文网站上下载了)。
4. 管理文献条目
文献数据库的条目建立起来了,但是这只是一些 citation 和 abstract 信息,那么如何将下载下来的论文 pdf/ps 文件和它们对应的条目关联起来呢?
只需要将下载下来论文的文件名保存成特定的格式,一种方法是文件名中包含 BibTeXkey,如果是 A. Yao 在 2005 年发表的文章,文件名就起为 xxx-Yao2005-yyy.pdf;一种方法是文件名包含论文名。然后修改匹配规则:Options->Preferences->External Programs->Use Regular Expression Search 文本框,比如在当前目录下匹配包含 BibTeXkey 的文件:“./.*[bibtexkey].*\\.[extension]”,在当前目录下匹配包含论文名的文件:“./.*[title].*\\.[extension]”,在子目录中匹配包含 BibTeXkek 的文件:“**/.*[bibtexkey].*\\.[extension]”。如果我们把文献数据库 bib 文件和 pdf 文件放在同一目录下,只需要使用在当前目录下匹配即可。
文件名和匹配关系修改好了,那么我们就可以将论文记录关联到文件了。如果是一次导入很多文献,可以使用批量处理:Tools->Scan database->Sychronize file links,但是同步的时候不要选择 Check existing file links,那样会很慢;处理单一记录的方法是:双击某论文条目,或者选中后按 Ctrl-e,就可以编辑该条目。进入 General 选项卡,在 File 条目后面点 Auto,JabRef 就会按照匹配规则搜索匹配的文件,关联到该条目。如果能搜索到 pdf 文件,关联后该条目的前面会出现一个 pdf 图标,点击该图标,就可以直接打开该论文的 pdf 文件。除了自动匹配以外,也可以使用 Auto 旁边的 + 号手动添加文件。
当然了,文献条目的其它信息我们也可以编辑。比如 ACM 的 BibTeX 中往往不包含摘要信息,我们可以在 Ctrl-e 以后的 Abstract 选项卡中添加对应论文的摘要信息;Springer 的 ris 信息往往过于简单,我们也可以通过网页信息添加一些条目;如果你对某篇文献有深刻印象或者想记一下笔记,可以在 Review 选项卡中记录下自己的想法。
5. 与 vim 结合使用
前面说过,JabRef 可以和很多软件结合使用,但是有一些软件我并不熟悉,所以这里仅仅介绍一下 JabRef 和 vim 关联使用的技巧。
JabRef 是使用 vim server 和 vim 通信的,所以这要求双方使用同样的 vim server 名。在 JabRef 一端,Options->Preferences->External Programs->Vim Server Name 文本框中就是 vim server 名,你可以使用默认的 vim 服务器名 vim,也可以修改成任意名字,比如 solrexvim;在 vim 一端,编辑 LaTeX 文件时不要使用通常的命令启动 vim,要加上 vim 服务器名,比如 vim --servername solrexvim --remote-silent xxx.tex,这条命令的意思是:使用 vim 连接到服务器 solrexvim 修改 xxx.tex 文件,如果该服务器不存在,就创建它。
等 JabRef 和 Vim 都启动了以后,如果在编辑 tex 文件的时候想加入某条文献的引用,只需要在 JabRef 上方的工具栏中先选择出 Vim,然后再点击该图标,vim 光标所在位置就会自动加入该文献的引用。
6. 其它应用
总的来说,JabRef 的作用主要是参考文献管理工具,但是也可以使用它来做一些其它的工作,比如个人数字图书馆。每个人电脑里可能都有一些电子书,有的人特别多。为了查阅方便,一般都会把电子书分门别类放到一个目录树中,每次找文件都要进到很深的目录下;有时候为了系统兼容性,避免使用中文文件名,理解一个文件对应哪本电子书成为一件痛苦的事。如果使用 JabRef 作为文件管理工具,就可以根据作者,书名排序或者直接检索,会方便很多。
7. 结语
本文简要介绍了 JabRef 的基本使用方法。我也是刚刚接触这个软件,对其体会并不深刻,可能 JabRef 还有很多特性可以加以发掘,就留给大家一起探索吧。
连着忙了几天,今天闲话几句。
关于微软正版验证
我家希希说:“我要被黑屏了,怎么办呀?我要学 Linux!”
我说:“没关系,你把自动更新服务关掉就行了。”
我家希希说:“我还是想学 Linux!”
微软准备在 2008 年 10 月 20 日对中国用户启动的 WGA 计划这几天被吵得沸沸扬扬,搞得几乎人人自危,生怕被黑屏了。本人的评论如下:
-
对此措施,我持欢迎态度。这件事起码给中国的盗版用户提了个醒:软件是有知识产权的!用盗版的操作系统很开心,用盗版的应用软件也很开心,到最后是中国整个落后的软件产业不开心,软件民工们也不开心。
-
对于效果,我持保留态度。我相信中国盗版产业中广大劳动人民的智慧!
-
对于影响,我持乐观态度。这是一个 Linux 和免费软件的机遇。此次 WGA 计划一出,势必会督促那些已经有学习其它操作系统愿望的用户真正动起手来,也会使那些使惯了盗版 Office 的人考虑一下免费的优秀国产软件 WPS Office,进而认识到许多优秀的免费软件并不比收费软件差。
最后友情提醒一下,WPS Office 2007 目前已更新到支持 M$ Office 2007 文件格式( .docx, .xlsx, .pptx ),永中也于本月 13 号推出了免费的永中 Office 2009 个人版,支持 Windows 和 Linux 平台;免费的国产软件 Foxmail 和"进口软件" Thunderbird 都可以替代 Outlook ; Ubuntu 8.10 Linux 操作系统还有 14 天就发布了。
关于看论文
最近被老师逼着快速浏览了大量论文,发现自己以前看论文的效率还是太低。眼高手低的毛病总是改不了,做研究还是要潜心进去。
关于看书
每天睡前逼着自己看一会儿书效率挺高的。豆瓣上我在读的书已经超过二十本了,平日很难分出大块时间看,目前已经利用睡前十分钟解决了两本。躺床上用台灯看书的感觉蛮惬意的,置身于黑暗中的一小片光明,仿佛又回到了中学时代。当然这也得益于现在宿舍的环境布置,床头就是写字桌,要是像以前在中关村时住上铺的话,势必就会影响室友的睡眠了。
关于 writeos
九月份更新了两次,十一假期无暇写字,第三章到现在还没写完,我希望十月底能完成发布第二个版本。上个星期一个墨西哥的小伙子加我 Gtalk,问这本书的问题,开始我还以为是华裔,后来知道人家根本不懂中文,没办法只好推荐他去看代码注释。也许等我再完成两章之后,会和某些朋友合作开始将它翻译成英文。
十一黄金周长假结束几天了,但回来之后时间一直安排得很满,没空更新博客。今天北京下了点小雨,羽毛球打不成,轮滑也玩不了,就写几个字吧。
继买火车票不顺之后,我再次经历了凄惨的火车旅途。9 月 28 号那天赶到北京火车站的时间有点儿晚,T65 已经开始检票很长时间了,当我赶到站台上时,发现车厢门口仍然挤着一些人。我本以为人还没有上完,谁知道走近一看却发现是挤不上去,整个车厢跟上班高峰期的北京地铁似的。懊恼迟到之余,总得往上挤呀,于是开始一点一点往里蹭,整整蹭了半个小时,只蹭进去一米!还好蹭进去了一米,关车门的时候没把我关在外面,T65 的乘务员太厉害了,愣是把那么多人给劝下来,准时关上了车门,按点开出了北京站。
发车之后乘务员打开车厢内厕所门,我和另外两个人就躲进了厕所里,期间被上厕所的人赶出去几次,但最后还是在里面呆了七个小时。自从我五岁以后,就再也没坐过那么挤的火车,车厢里站的地方都没有,相比而言还是厕所里舒服一些。但随之而来就有一个问题,困了怎么办?因为厕所里有三个人,只能站着睡觉,那个痛苦呀!我只能用手吊在窗户的栏杆上打瞌睡,稍微一深睡,腿马上支撑不住,膝盖一弯就要往下掉。当时我真的羡慕那些四条腿的马啊牛啊,它们真厉害,能站着睡觉。
这种情况一直持续到第一个停车站,徐州。站了七个多小时到凌晨五点,我腿疼得实在受不了了,就趁在徐州停车时人刚下完,而上车的人还没进来之时,冲到车厢中部,找了一个相对大一点儿的位置,打开我带的小马扎,坐了下来。好歹算是相对舒服地趴在自己腿上睡了两个小时,这时候坐得屁股又开始疼了。于是站站坐坐,坚持到九点到南京,总算能解放了,当时那个心情舒坦啊!
在南京的生活倒是很轻松啦,无非是陪女友逛逛街、吃吃饭,没什么好说的,也不太好说 :)
回京的 T66 车票女友早已帮我买好,所以旅途还算顺利。托曹磊同学的福,咱拿的硬座车票也能混进软座候车室候车,所以上车时候没遇到什么困难,车厢里人也远不如来程时多。曹磊和我没有买到同一节车厢,一夜无事,坐着睡到天亮。只是到天津以后他旁边的人下车,我们才坐一起聊了聊天。
下车后出北京站时,居然偶遇胡昊(就是小百合 BBS 上的 phoenixinter 啦),此人可是我仰慕已久的南大计算机的算法牛人呀!(baosheng 不要觉得不爽哈)他在港科读 PhD,目前在 MSRA 实习,做一些搜索引擎的研究课题。排队等安检和乘地铁时聊了几句,算是认识了一下久仰的名 ID 真人。
10 月 6 号早上到的北京,赶到实验室坐了一会儿,下午还是没坚持住,在宿舍睡到近 5 点,把整个下午的班都给逃了。我的黄金周就在无比安逸的睡眠中结束了!
实验室的 DNS 服务器挂了,没办法上网,顿时觉得挺没意思,就骑车回宿舍了。最近几天的效率挺低的,看不进去文章。汲汲地妄想早点找出点问题来做,却总是不得其门而入。偶尔稍微想得远那么一点儿,就发现别人早已写过文章。上天那,给我点儿灵感吧!
这几天北京的气温骤降,已经到了着长袖长裤的时候了。晚上打羽毛球时,好不容易热出点汗,被冷风一吹,鸡皮疙瘩都要起来。但心境却不能因天气而冷却下来,杂杂呀!
前天烦躁时看了篇我大学导师写的武侠小说《龙飞凤舞》,也是该先生闲暇时所作。身为数学系副教授,拥有数学博士和计算机硕士头衔的他,今年却又考取了历史系的博士,真是颇觉意外。不知道人生这路,到底还能有几个新起点?
其实浮躁的另一个原因也来自于“十一”假期的临近。无论在公司或是学校,一个长假总是会影响成员的效率。谁也不想在长假前给自己留一个未完成的状态,所以总是盼望着能在长假前结束已有的工作且不愿开启新工作。
不管如何,长假要开始了,我要回南京散散心,暂时忘掉这些事情吧。




