一款漂亮的Google reader主题
入手奥林巴斯 SP-565UZ
上次同学介绍帮忙做商业项目,赚了一点钱,一直想买个相机,刚好有钱了就买了。本来看好的是柯达的 Z1015IS,不过当下决定要入手的时候。京东、新蛋相继没货,淘宝上的商家也是基本没货。后来看中了奥林巴斯 SP-565UZ,20倍光学变焦,比Z1015IS只好不坏,除了不支持高清摄像,不过这个无所谓。周五的时候跟女朋友一起抱着逛逛的心态去天河电脑城逛逛,随便问了一家,没想到居然有港行的,讨价还价一番,最终买了。
相机(全套配件)+三脚架+充电套装+屏幕膜+镜头布+宇瞻4G TF卡+奥林巴斯原装相机包,花了俺1910大洋。暑假回去给俺老爸老妈还有俺奶奶拍拍。。难得发展了除计算机之外的爱好。

这是俺小试身手:
开启bash的vi模式
bash的默认编辑模式是Emacs。我比较习惯于vim,所以开启了vim编辑模式。开启的方法很简单,编辑 .bashrc 文件。添加:
set -o vi
然后在bash下,执行一下
source ~/.bashrc
使得修改生效。
更多的看看这篇文章:http://www.jukie.net/~bart/blog/20040326082602
另外这里有一个Cheat-Sheet1可供查阅参考。
如果无法查看,可以到这里(Box.net)下载
- A cheat sheet or crib sheet is a concise set of notes used for quick reference. “Cheat sheet” may also be rendered “cheatsheet” or “cheat-sheet.” [↩]
跳出大学里的“网络时间黑洞”
《小强升职记》里面提到了关于时间黑洞的问题,对于现在的大学生来说,更多的是“网络时间黑洞”,很多人打开电脑,看看电影,玩玩游戏,泡泡论坛,收收邮件,看看新闻…刚才想做的事情早抛到脑后去了。
要摆脱“网络时间黑洞”,我觉得应该从使用网络的习惯开始。
武装好浏览工具
很多网站,为了增加浏览者的点击次数和浏览时间,都会增加很多吸引用户眼球的模块,比如在各大门户网站浏览新闻时,侧边栏会有”八卦新闻”,或者其他很吸引眼球的新闻。很多时候,我们会这样跌入网络的海洋,不停的跳转跳转。所以,屏蔽这些分身的信息是很重要的手段。我以Firefox浏览器为例子来说,通过Adblock Plus 这个扩展,我们可以屏蔽掉这些干扰信息.如果仅仅是通过Adblock Plus提供的过滤列表来过滤广告的话,还不能达到我们所要的效果 , 感谢 Adblock-chinalist为我们提供了另外两个过滤列表,综合起来用,效果极佳。
2. Adblock-Strict 说明
如果你已经安装了Adblock Plus,那么直接点击下面两个链接就可以订阅过滤列表:
养成良好的阅读习惯
接下来,就是浏览方式的习惯了,很多人还是习惯于打开网站,浏览网页来获取信息,这样不仅效率低,而且容易丢失自己的初始目的,完全可以通过RSS阅读器来聚合信息,通过RSS阅读器不仅阅读效率高,还有就可以避免“标题党”的烦恼,同时,对于自己所要了解的信息也能够及时掌握,而不至于迷失在网络的海洋。这类阅读器很多,国外有Google Reader,国内有抓虾,鲜果,有道。。。
我用的是Google Reader,因为它与Firefox另外一个扩展:Google Reader Watcher 相搭配,可以实现对信息的更新和把握的平衡,设置好提示时间,Google Reader Watcher会自动获取你Google Reader里面的未读订阅数目。
RSS阅读器虽好,但是滥用了之后也会产生很大的麻烦,浪费很多时间,我曾经就有一段时间患上了“RSS强迫症”,不把Google Reader里面的所有未读项清空,就不罢休,后来调整了一下订阅策略还有阅读习惯,效率大大提高。具体我是这样做的:
1.提高Google Reader Watcher 的更新时间,提高到30分钟以上,并每天规划出一段时间来消灭未读项,比如饭后休憩。
2.对订阅项进行清理、分类。Google Reader提供了(Trends)可以让我们来分析自己的阅读时间和阅读程度,根据这个报表,退订某些重复的,然后我做了以下工作:
把一些精彩文章频出,更新较慢的博客归类到一起,对待他们,仔细阅读;
把信息量大的,诸如cnBeta之流归在独立一类,对待这些更新,以较快速度浏览;
把更新较多,但是信息量不大的,归为一类,快速浏览。
把最重要的放在最显眼的地方
使用GTD的原则来管理自己的日常安排,我使用的是Remember The Milk,将它设置为浏览器首页,这样可以尽可能提示自己该做什么,而不至于迷茫在网络中。
“隔离”通讯工具
在学习或者工作的时候,关闭QQ,MSN, 邮件到达提示等诸多提示功能,避免受到干扰。现在微型博客也是很流行,当Follow的人多了之后,更新的信息总是会打断真正做的事情,我采用的也是延长更新时间的方法。尽量调整到30分钟以上,如果需要全身心投入去做事,那么还是全部关掉吧。
说了这么多,其实归咎起来就是一个原则“屏蔽无谓的干扰源,专注于有用的信息”。
如果你有什么好的方法,欢迎留言分享或者EMAIL跟我交流。
— END – FOR APR. –
Yahoo:VIM for (PHP) Programmers 课件pdf版
翻翻自己的电子书“储存库”的时候,发现了这一个PDF,拿出来分享一下,对于想用VIM写PHP的同学应该是很有帮助。
作者的地址:http://gravitonic.com/
文章地址:http://gravitonic.com/2007/02/vim-for-php-programmers-slides-and-resources
给计算机系学生的建议
最近确实比较烦心,不知道自己应该向广度或者深度进行学习,刚好在TopLanguage上面看到相关讨论,由此看到了Joel1的另外一篇文章:《给计算机系学生的建议》,之前已经看过他的一篇文章《Java语言学校的危险性》收益颇深,现在已经有人在翻译他的一本书《Joel on Software》,强烈期待,强烈推荐!现在全文转发《给计算机系学生的建议》,大家一起共勉:
给计算机系学生的建议
作者: 周思博 (Joel Spolsky)
译: Chen Bin
2005年1月2日
虽然大概一两年前我还在夸夸其谈桌面应用程序是将来的潮流,大学生们现在还是偶尔向我请教职业发展的问题。所以我把我的建议写下来。以供学生们阅读,嘲笑,忽略。
大多数锐气十足的学生从来不向前辈征求意见。在计算机科学领域,这样做是正确的。因为前辈们很可能说些“在2010年前,市场对于那些只会敲击键盘的代码工人的需求将会超过一亿(因此前景是乐观的)”,或者诸如“Lisp语言现在真的很热门”。
我 和那些前辈也差不多,当我给别人建议时,实际上我不知道自己在说些什么。我是如此的落后于时尚,以至于连AIM也搞不明白,而不得不使用 email(恐龙时代的产品,在那个时代,音乐是刻在扁扁的的圆圆的盒子上,噢,那种盒子叫cd)。(译者按:我认为祖儿这里在说反话,后文很多地方作者 都在说反话,读者尽量理解这种美国式幽默吧。)
所以你最好不要理睬我将要说的,你应该立刻去制作某种在线交友软件。
然而,
如 果你喜欢编程,那就感谢上帝吧:你属于幸运的少数人,这些人喜欢工作,他们的工作可以保证他们能过上舒适的生活。大多数人没有这么幸运。对大多数人来说, 工作是不愉快的,忍受工作的目的攒钱,是为了在年满65岁退休后能过上自己想过的生活。如果他们想过的生活不需要灵活的膝盖,明亮的眼镜,轻盈的脚步的 话。
现在让我回到主题,我将提供一些建议。
好了,不罗嗦了,下面就是Joel给计算机系学生们七条免费的建议:
- 毕业前学会写作
- 毕业前学会C语言
- 毕业前学习微观经济学(microeconomics)
- 不要因为某些非计算机课程枯燥无趣就敬而远之
- 学习有大量编程实践的课程
- 不要担心工作都跑到印度去了
- 好好做夏季毕业实习
让 我逐条解释这些建议。但解释之前我要说明一下,如果因为这些建议是Joel的建议你就打算无条件地接受,以至于连我的理由都想跳过,那么你就太单纯,太容 易被别人骗了。如果你是那种单纯的人,我还要给你第八条建议,找心理医生咨询一下如何培养自信(self-esteem)。
毕业前学会写作
如果Linus Torvalds不懂如何布道的话,Linux会成功吗? 正象每一个黑客,Linus精通写作,他知道如何准确地在email和邮件讨论组中使用书面英语表达自己的思想,所以他能够从全世界召集大量志愿者为Linux工作。
你听说过最近风靡全世界的极限编程(Extreme Programming)吗? 即使你不懂什么是极限编程,你至少听说过这个词。为什么?因为宣传极限编程的人都是天才的作者和演说家。
就看看你身边的那些小型的软件开发组织吧,最有权力和影响力的人是那些可以用自信,准确,舒适的英语交流的人。好吧,我承认这些人也许言过其实,但是你无可奈何。
一个合格的程序员和一个伟大的程序员的区别不在于知道多少种编程语言,不在于他们是喜欢Python或者Java,而是在于他们是否擅长表达。他们能够说服,所以他们获得权力。他们能够写清楚明白的评论和接口文档,所以他们使得别人不用重写, 而可以重用他们的代码,否则他们的代码就是毫无用处的。他们也能够写出清晰的用户手册,于是最终用户可以理解他们的代码是做什么用的,明白了他们的工作的 价值。sourceforge埋葬着许多精美的代码,这些已死的代码无人使用,因为代码的作者很少写(或者根本不写)用户手册。
我不会雇佣一个不懂写作的程序员。如果你擅长写,你就很容易找到工作,紧接着你就会被要求写技术规格文档,这意味着你已经被管理层注意到了。
大学里有一些课程,要求你做很多的写作练习,不要犹豫,赶快参加这些课程。不要错过任何要求你每周或者每天练习写作的课程。
给自己建立一个网络日志(weblog)。在上面写的越多,你会写地越容易。写地越容易,你就写地越多,这是一个正向地循环激励。
毕业前学会C语言
我 可没有说是C++。虽然现在用C的工作不多,但是掌握各种编程语言的程序员事实上用C来交流(lingua franca);更重要的是,C比某些“现代”语言更接近机器语言。我不管现在大学里在教什么流行的垃圾语言(trendy junk),你至少得花一个学期接近机器。否则,你不可能使用高级语言写出高效的代码。这意味这你不会有机会写编译器或者操作系统,也许这是更好的编程工作;别人不会相信你能够为大项目设计架构。无论你知道多少高级的控制结构,知道如何进行错误处理,如果你不能解释为什么while (*s++ = *t++);的 意思是进行字符串拷贝(而且对你而言这是世界上最自然,最易懂的代码),那么你就是在对编程一窍不通的状态下编程(programming based on superstition)。打个比方,就好比一个医生不懂基本的解剖学就给你开处方,如果你问这个医生为什么开这种药而不是那种药,他会说因为医药销售 代表说这种药有用。
毕业前学习微观经济学(microeconomics)
我个人对经济学的一些理解:在经济学刚诞生的时候,它只是局限于有限的领域,在这些领域中人们发展和发现了很多有用的理论和很有趣的事实,这些理论和事实是从逻辑上是可以证明的。然后, 经济学开始走下坡路了。 “有限的领域”就是微观经济学,它对于商业可以进行有意义的指导。然后,事情就开始变糟了(以下部分你可以跳过),你接下来碰到的是讨论诸如失业率和银行 利率之间关系之类东东的宏观经济学,很多时候宏观经济学讨论的理论都是无法证明正确或者错误的。接下来事态更加恶化了,经济学中的一些领域开始和物理学搭 界,嗯,学习物理经济学也许你帮你在华尔街找到好工作。言归正传,无论如何请学习微观经济学,因为你需要知道什么是“供给和需求”,什么是竞争优势,什么 是净现值(NPVs,Net Present Value,指项目经济寿命期内现金流入总和与现金流出总和之差额),什么是折扣和边际效用(discounting and marginal utility),如果你真想了解商业是如何运作的话。
为什么计算机系的学生要学习经济学?因为理解商业基本规律的程序员对商业界来说是宝 贵的程序员。我记得无数个程序员使我非常沮丧,因为他们在代码中坚持某些疯狂的设计,这些设计从技术上来说,完美;从资本主义的角度来看,发疯。如果你是 一个理解商业的程序员,商业会给你回报。这就是你要学习经济学的原因。
不要因为某些非计算机课程枯燥无趣就敬而远之
首先,你需要让你的学分平均分(GPA)看起来漂亮点。
不 要低估学分平均分的威力。很多雇主和人事经理(包括我)阅读简历时首先看成绩,为什么?因为这代表了大部分的教授在很长的时期内对你的学业的一个平均的看 法。托福成绩(美国的托福大致相对于我国的高考中的语文考试)?哈,几个小时的测验而已。当然学分不一定说明了一切,如果你修的是很难的课程,学分就有可 能低一点。即使你的学分平均分很高,我还是要看各科分数是否一致。如果你应聘的是软件工程师职位,我为什么要关心你在大学里学的欧洲历史课程分数的高低呢?毕竟,历史很枯燥。那么要是你要编程的部分也是很枯燥的,你是不是要放弃了?事实上,有时候编程是枯燥的,如果你不能忍受编程中的枯燥部分的话,你就不能完成整个工作,雇主不愿意雇佣你这样的员工。
我在大学里修过一门叫做“文化人类学”的课程,因为那时候我也搞不懂我到底要学什么,听起来这么课程可能还蛮有意思的。
出 乎我的意料。我不得不阅读大量讲述巴西热带雨林中的印第安人如何如何的书,让人真昏昏欲睡。听老师讲解也好不到哪去,我发觉看教室外的草如何长更有趣点。 土著人如何烤蕃薯藤和我有什么关系?我为什么要去讨论如何烤蕃薯藤?但是期中考试马上就要到了,我暗暗下定决心,如果我能跨越“文化人类学”这个障碍,以 后也许没有什么能难倒我了。我决心得A并且得到了A。以后当我不得不坐在林肯中心,连看18个小时的瓦格纳的《尼伯龙根的指环》时,我终于明白我为什么要 学习“文化人类学”了,相比之下,我也能忍受这种歌剧了。
学习有大量编程实践的课程
我还记得决定不去读研究生的那一刻。
就是在学习《动态逻辑》(Dynamic Logic)这门课的时候,我记得是耶鲁的Lenore Zuck(一个天才的教师)教的。
修这门课的时候,我已经不再是雄心勃勃了。我可不指望在这么课程中得个A,我梦想的是混个及格。逻辑本质上是很简单的:如果结论正确,前提必须正确。例如,如果“所有读书好的人都能找到工作”并且“张三的读书好”,那么“张三能够找到好工作”。就这么简单。
但是我要学的是动态逻辑, 动态逻辑和一般逻辑差不多,但是要考虑时间因素。例如,“在你开灯之后,你可以看见你的鞋子”加上“过去灯被打开了”意味着“你现在可以看到你的鞋子”
动态逻辑学对于象Zuck教授这样的天才理论家来说非常诱人,因为这门学科的知识也许可以用来证明计算机程序是否正确。我记得在第一堂课上,为了证明“如果你有一盏关着的灯”并且“你按了一下开关”,那么“现在灯亮了”,Zuck教授就使用了两黑板加上边上的墙壁。
证明过程难以置信的复杂。我觉得如此复杂的证明过程很可能会有小错误,但是我没办法证明证明过程本身是正确的。事实上,写在黑板上的证明跳过了很多中间步骤,许多步的证明使用了演绎法,使用了归纳法,以及一些研究生才懂的证明方法。
作为课后作业,我们需要证明以下命题:如果灯过去是关着的,并且现在它是开着的,请证明有人按了开关
我真的试着证明它了。
我花了许多小时,试图证明这个命题。
在 无数个小时的努力后,我发觉Zuck博士的原始的证明有一个逻辑上的错误,也许这个错误是我的笔记抄错了,我不知道。于是我终于认识到,如果为了证明一个 简单的问题需要花三个小时写下几黑板的证明步骤,再考虑到这个漫长的证明过程中可能会引入种种错误,那么这种机制是不可能用来证明任何有趣的东西的。
对动态逻辑学家来说,有用是无关紧要的。
于是我退出了那门课程,发誓永远不会去读计算机系的研究生。
这个故事的主题是,计算机科学和软件开发不一样。如果你非常非常幸运,你的学校会开软件开发的课程。然而,他们也可能不开这样的课程,因为名牌大学认为教授实用技巧的事情应该留给那些二三流的技术学院或者某些释放犯人再安置计划。你可以在任何地方学习编程,我们是耶鲁大学,我们培养未来的世界领导人。你付给耶鲁16万美元的学费就是为了学习如何写循环语句吗?你把耶鲁当成什么地方了?Java速成班吗?哼。
问题在于,我们没有一个专业的学校教授软件开发。所以如果你想成为一个程序员,你可以进计算机系读书(当然计算机科学也值得学习),但是你学的不是软件开发。
如 果走运的话,你可以在计算机系发掘出很多有大量编程实践的课程,就象你能在历史系找到很多提供写作水平的课程一样。这些课程绝对值得学习。如果你喜欢编 程,不要为你不能上教授诸如lambda算子或者线性代数的课程沮丧,在那里你连摸一下计算机的机会都没有。找找看有没有名字中带有“实习 (Practicum)”字样的课程,不要在乎Practicum是个拉丁语。有用的(无奈状)课程就是需要在课程名中塞一些拉丁语,才能从那些装模作样 (Liberal Artsy Fartsy)管理层的眼前蒙混过关。
不要担心工作都跑到印度去了
啊哈,如果你人在印度,你就无所谓了。愿你享受外包带来的工作机会并顺祝身体健康。
但 是我听说现在愿意读计算机系的学生越来越少了。据说原因之一是工作机会都跑到印度去了。我认为这种观点是大错特错。首先,根据眼前的商业时尚选择事业是非 常愚蠢的。其次,即使工作真的都跑到印度和中国去了,编程对于其他有趣的工作来说都是极好的训练,例如业务流程工程(business process engineering)。第三,无论是在美国还是印度,好程序员仍然是非常短缺的,请相信我。当然,现在有许多所谓搞IT的人吵吵嚷嚷地说就业形势不 好,工作太难找。但是事实如何?恕我直言,好程序员找工作还是很容易。第四,你还有更好的主意吗?历史系的毕业生找工作更容易吗?去法学院如何?据我所 知,99%的律师恨他们的工作,每分钟都恨。而且律师一周工作90小时。正象我以前说过的,如果你喜欢计算机,那么感谢上帝,你将属于全世界人中的极少数 的幸运儿,这些幸运儿热爱他们的工作,而且工作也可以提供体面的收入。
实际上,我也不认为报考计算机系的人越来越少有多大的意义。相对于 internet泡沫时期大家都疯狂的往计算机系挤,现在的人数回落只是回归正常水平而已。在泡沫时期,我们这个行业涌入了许多对计算机毫无兴趣的南郭先 生,他们梦想的是拿着高的吓人的薪水加诱人的期权,然后年轻退休。谢天谢地,现在这些人都跑了。
好好做夏季毕业实习
明智的招聘者知道热爱编程的人初中就为当地的牙医写数据库程序,高中就在计算机夏令营教课,为校报规划网站,在某个软件公司做实习。他们找的就是这样的人。
如 果你喜欢编程,你最容易犯的最大的错误就是“有活就接”。我知道,其他专业的学生假期打工可顾不了这些条条框框。但是你不一样,你拥有一种特殊技能,不要 浪费它。当你毕业时,你的简历上应该已经罗列一堆的编程工作实习。让其他人去“为大家提供租车服务”(Tom Welling是个例外,他业余时间去演超人)。
最后,为了让你的生活更容易一点,也为了说明我这篇文章是能够自圆其说的,我将给我自己的公司的做做广告。我的公司Fog Creek软件公司,可以为大学生提供软件开发方面的实习机会。在我们公司,你可以学习“编码,开发,商业”。去年在我们公司实习的Ben就是这么说的,可不是因为我给他什么好处他才这么说。二月一号截至,抓紧机会吧。
如果你听了我的建议,你就会太早地卖掉Microsoft公司的股票,拒绝Google提供的职位,原因是因为你已经拥有自己的公司了。到时候可别后悔,更别怪我,呵呵。
- Joel Spolsky 是纽约市一家小软件公司,Fog Creek Software, 的创始人。他毕业于耶鲁大学,曾在美国微软公司,Viacom, Juno 任软件设计师及经理。 [↩]
Python 中的编码小结
这几天在写一个爬虫,抓取指定网站的某些内容,中文网站的编码大概有两种:GB2312和UTF8。这里顺便就把写Python中要注意的一些内容汇聚一下,作为笔记。
1.文件头声明
对于python文件中包含中文的,应该在该文件头进行声明,加入:
1 | # -*- coding: utf-8 -*- |
一般的python文件头我都是用这一个模板:
1 2 3 4 5 | #!/usr/bin/env python # -*- coding: utf-8 -*- """docstring """ |
我使用VIM作为编辑器,希望每次创建python文件时都按照上面的模板创建,于是在~/.vim目录下面建了一个templates目录,用来存放模板文件,把上面那个目标拷贝保存为python.tpl,存放在之前创建好的~/.vim目录下。然后在~/.vimrc中添加:
1 | autocmd BufNewFile *.py 0r ~/.vim/templates/python.tpl |
这样就能保证每次写的python文件能够保持一致的编码方式。更多用vim写python可以参考之前的《 在vim中编写python 》这篇文章。
2.python中的两种字符串
事实上,python是有两种”字符串”,在python2.6的官方文档中,有Strings 和Unicode Strings 两种Strings。
对于它们之间的相互转换以及GB2312与UTF8的互转,还有encode和decode,在啄木鸟的WIKI上面有详细的解释:
简单的说,其实encode1就是将unicode的字符串转换为特定编码,诸如“GB2312,UTF8”之类。
而decode2就是将本地编码转换为unicode编码的字符串。
所以,比如说要将GB2312转换为UTF8,那么就先将GB2312 decode再encode成UTF8即可,反之亦然。
当Amarok遭遇ntfs
升级Kdemod之后,访问ntfs分区就老是出现怪异的问题,不能在dolphin中直接打开中文文件,或者路径中包含中文的文件。
狂Google一通,还是没有结果。只能寄望kdemod升级了,如果你有什么解决方法,记得告诉我哦(cairuitao [at] gmail.com),这个问题也导致了Amarok不能直接扫描收藏,于是来一个“曲线救国”:
ln -s /media/文件/音乐/ ~/Music
然后在Amaork中指定音乐目录为~/Music,再扫描就可以了。
地球时刻-我们一起行动
引用自维基百科:地球时刻
地球時刻(英语:Earth Hour)是一個全球性節能活動,於3月29日本地時間晚上8時至9時,家庭及商界用戶於該時段內關上電燈及不必要的耗電產品一小時。藉此活動希望能推動電源管理,減少二氧化碳的排放量,並減少過量電燈所引起的光污染問題。與此同時,當天亦是美國國家暗天週2008的開始。
該活動由環保團體世界自然基金會澳洲及悉尼晨鋒報(Sydney Morning Herald)合作發起,並於澳洲悉尼當地時間2007年3月31日,晚上7:30至8:30期間舉行了第一次活動。地球時刻2007有近二百二十萬人參與,相信節省了當天悉尼市市電電源的2.2%至10.2%。踏入2008年,該活動被推廣到世界各地,全球40多個城市,近380個城鎮接力執行該活動。
网易专题:“地球一小时”
“地球时刻”在中国是28日晚上20:30,到时候大家一起行动。
用VIM插件project管理你的项目
终于可以做自己想做并且喜欢做的项目,很高兴可以跟志豪合作,都是崇尚WEB开发的人。
在使用IDE的时候,我们可以很方便的管理项目里面的文件,而在Linux下面进行开发的时候,我们大多用make或者cmake来管理项目,但是当用VIM来进行操作的时候还是比较难的,在集成开发环境(IDE)里面,一般都会有项目的相关文件在窗体中列举出来。在VIM下,已经有人开发了方便管理项目的插件Project.
安装方法跟VIM的其他插件一样,下载project.tar.gz之后,解压到~/.vim下面,就可以启用了,在VIM下面开启该插件的命令是“:Project”,为了方便,你可以在vimrc里面定义一个快捷键映射到”:Project”,Project插件管理项目是通过一个用户自己定义的“项目文件”~/.vimprojects来组织项目的相关内容的。
引用帮助文档里面的一个例子来说明如何用~/.vimprojects来组织项目。
1 2 3 4 5 6 7 8 9 10 11 12 13 | My Project=~/c/project CD=. { GUI Files=gui { gui_window.c gui_dialog.c gui_list.c gui.h } Database Files=data { data_read.c data_write.c data.h } } |
My Project=~/c/project 表示项目名称以及项目根目录。
CD=. 表示打开该项目中的文件时,会自动在根目录基础上完成文件的路径,打开文件。
项目还可以有子项目,这个例子中的GUI Files就是子目录。
GUI Files=gui 表示GUI Files指向项目根目录下的子目录gui。
在VIM中打开Project之后,可以直接在项目上面按Enter键来折叠项目列表,相当方便,打开文件也是直接按Enter就行。
推荐两篇文章:
VIM-Project Plugin 该插件的中文文档
Vim 实用技术 很全面的VIM实用文章


最新评论