开发工具 [原创视频] 使用 Emacs 开发 Rails 购物车程序 (一)

zw963 · 2012年07月06日 · 最后由 zw963 回复于 2013年08月08日 · 5888 次阅读

大家好,响应社区某些同志对于的号召,发布了一个使用 Emacs 开发 Rails 的视频。

我希望这个视频可以达到两个目的:

  • 对于不熟悉 Emacs 的朋友,有个初步印象,其实我也很菜,不过作为一个对 Emacs 的入门体验,还是合适的

  • 所以尝试一开始就尽量规范的书写代码并采用 TDD, 我本人也是 Rails 新人,我现在做的肯定不够好,不过我会做的越来越好。我希望我第 N 次录制视频时,我书写代码的过程不仅仅是 Emacs 的示范,而且也是一个优秀的 Rails 开发流程示范。

购物车是个涉及概念很多的程序,我希望自己可以分多次录制,来完成整个购物车项目。我会争取尽快推出下一部分。这是本人平生第一次录制视频,之前还是提前预演了两遍,但还是有点紧张,频频出错,大家见谅啊~

P.S. 上传到土豆后,发现画质好差。呼叫一下@poshboytl , 如何才可以上传到 railscast-china. 谢谢。也要感谢社区@jiyinyiyong , 让我知道了 ffmpeg 这个玩意儿,之前我还真不知道 linux 下面原来可以录桌面视频...

视频土豆地址: http://www.tudou.com/programs/view/IkaXHHEAtvU/

补充一些信息:

  • 开发环境使用 Emacs 自带的 Rinari, 你可能没有看到类似于 textmate 的左侧导航栏,因 Rinari 是根据快捷键以及当前光标所在文件位置来自动判断的。(其中有用到经典的 ido-mode)

  • 编码中,会自动弹出一些常见关键字,这来自于 auto-complete 插件的字典。你可以随意添加所需的关键字到特定的字典,而大把的 snippet, 来自于另一个经典插件:yasnippet-mode.

  • 自动化测试,使用 watchr 来自动检测文件更改,测试框架使用 Rails 自带的 minitest, 并使用 spork 来加速。

  • bash 下面我有定义大量的别名,例如 gits 之类的。有些也不仅仅是别名,可能会调用函数,执行一系列功能,例如 test, 会首先自动重启 spork deamon, 然后运行 watchr 脚本,一般通过名字,大概意思是可以猜出来的。

  • 文件 (代码) 比较或同步工具,使用的是经典的 Beyond Compare 3.

其实有个 GUI 的,yum install istanbul就好了

#1 楼 @bhuztez

你说的是什么玩意儿?伊斯坦布尔?

#2 楼 @zw963 这名字起得有点坑爹,但这东西的确是能用的。

https://live.gnome.org/Istanbul

先顶再看

视频里面,主席为什么不说话呢?性感的声音不需要隐藏嘛~

#5 楼 @lgn21st 楼主的照片雷到大家了,可能怕声音大家听到,更雷到了

画质惨了点儿,肿么一句话都木有啊。。。 哦,我明白了 楼主的意思是EMacs的 NB 不需要解释。。。囧

#5 楼 @lgn21st #7 楼 @tudou #8 楼 @superbatironmans5

不是的。首先,刚开始我曾想过说话的,但是我自己放出来,声音和蚊子哼哼差不多哦... 鬼才知道,怎么跑到土豆上面声音大了好多。

外加,有点紧张。这周末,我试试说话看看喽... (P.S. 我是山西人,不是湖南人)

@zw963 我老家是山西介休,不过成长在天津。。。。 回来录好了别传到土豆了,传到 railscast-china 吧

#9 楼 @zw963 你只要联系上 @poshboytl ,把原始视频传给他,他会帮你传到 http://railscast-china.com 上的,并且会给你一些录制方面的建议,哈哈。

哈哈哈~~ 不错不错~ 你录个有声音版的,我帮你放到 railscasts-china 上去.... 到时候给我个 mp4 格式的视频哟...

正好我一致想找人录 emacs with Rails 的视频呢... :D

土豆和 youku 效果是很坑爹的.... 我以前本来打算 railscastschina 都用 tudou 和 yoku 的。结果发现效果不行,特别是 编辑器文字看不清楚...

先写好台词,这样就会不那么紧张一些 :D

#12 楼 @poshboytl

谢啦。明后天周六周日,我争取可以重新录一个有声版的。

#14 楼 @zw963 youku 好像清晰些,可以放 youku,速度也快

国内最高清的视频 Host 应该是渣浪,而且也没有水印

哎,那个..ffmpeg 录视频,录声音那部分我网上找的命令没成功,楼主怎么对付的?

#5 楼 @lgn21st 小弟才疏学浅,不知为什么楼主叫主席?

#18 楼 @kevin__liu 因为北京的前面活动是他组织的,自然我们就封他是主席了

#18 楼 @kevin__liu 我觉得应该是楼主以前的头像~ :)

emacs 用着很爽,但是设计与现代脱节严重,无法适应

以前是 Emacs 党,后来转到 OS X 下发现文本编辑直接是 emacs 绑定。又因为 textmate 的作者是 Emacs 党,迁移毫无痛感。现在只是用下 org-mode,真心觉得 org-mode 要比 markdown 记东西爽很多。

#13 楼 @poshboytl

嗨~ 周六周日有点事儿,没有时间录,有时间我会详细写一份计划,然后录制一份带语音的视频发送给你。毕竟如果带解说,可能会附带讲解大量的 Emacs 自身的东西,时间可能会比现在长很多。

还是谢谢 XD 们的支持!

#12 楼 @poshboytl mac 下有免费的录制软件吗?都是那些,望告知一二。

yasnippet 的候选项选择还是只能用鼠标?当初就觉得好不习惯,最初的版本其实是可以按数字键选择的

#27 楼 @hbin 我很久没用 Emacs 了,只是看视频里是用鼠标点的,故有此问。

#27 楼 @hbin the fking manual 还是我 08 年时看的老样子,/x-prompt 还是不一定能按数字键来选(取决于你的 window system),而我说的最初的版本,就是那个 /minibuffer-prompting

#28 楼 @dotnil

眼睛真毒啊~ 我从头到尾,就动了这一下下鼠标,就被你看到了。

有快捷键的。C-n,C-p, 光标上下键。只是我很少遇到这种候选菜单,所以总是忘记使用快捷键。

(事实上我忘记使用的快捷键多了去了)

其实我想改为 M-n, M-p 的。不过不知道哪里改。(我 auto-complete 是 M-n,M-p)

#21 楼 @moonjourney 其实你打开 Linux 的终端,Ctrl + p,Ctrl + n,Ctrl + w,都是继承 Emacs 的快捷键。

#31 楼 @Rei 还有 C-a C-e M-f M-b

#30 楼 @zw963 哈哈哈,yasnippet 是我们学校一个学弟搞的,我算是早期用户之一哇,对后来的 x-prompt 印象深刻,正是因为它不能用数字键来选。配置估计不好改,x-prompt 是调 window system 的实现,得改它的设置才行了

#33 楼 @dotnil

我靠,难道 yasnippet 真是中国人写的??? 不可能吧,我接触这么久,包括帮助那么多,没有一点点中文的迹象。你是哪个学校的?

@zw963 是浙江大学的人写的,不过现在 maintainer 是外国人。

#34 楼 @zw963 一开始确实是中国国人写的。 不过好像刚更新了 0.7 .

#34 楼 @zw963 楼主能介绍一下,emacs 用的插件吗

#34 楼 @zw963 是的,浙大的,计算机 05 的应该,现在应该在 MIT 了,叫 pluskid,http://pluskid.org/

选择一个 region,然后直接调出<%= %> 是怎么做到的,自己定义的 Snippet 吗?

#39 楼 @machine

是的。因为挺常用的。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号