开发工具 请教大家有没有自动格式化 Ruby 源代码的工具?

gene_wu · 2012年01月18日 · 最后由 hardywu 回复于 2013年05月14日 · 10021 次阅读

我简单搜了一下,没找到,是不是因为 ruby 语法太灵活造成无法自动 format?

第一 在 SublimeText2 中, 使用 Ctrl+A(全选) 然后 Edit-Line-Reindent (如果你很熟系 ST2 你也可是设置快捷键)

第二 在 Netbeans(6.9.1) 中, Source-Fornat(快捷键 Alt+Shift+F)

我对 Fomat 的理解就是 代码自动缩进,不知道和你的理解是否一致? 还有 Ruby 的语法灵活,但是不影响 Format。 顺便问问,你用什么开发工具?

我用的 vim,以前用 python 和 C 都比较方便,因为调用外部的命令比如 lint 和 pylint 之类的

其实我也就是要个 intent 的缩进,vim 的 yy p 之类的不会自动给你缩进,要自己调整,所以想偷懒,呵呵

Vim 里面全选,然后按 =

#1 楼 @ery nb 挺渣的,别用了。以前用重型 IDE 的时候就只感觉 rubymine 不错 (no mac)

最好是一开始就写好

=的确给力,谢谢大家!

如果你用https://github.com/carlhuda/janus 一定要用<leader>fef 比=更给力

#5 楼 @jinleileiking nb 官方已经放弃 ruby 了,所以我也放弃 nb。ruby mine 不错,但是速度比 nb 还慢。最近 sublime text 2 变成了我的主要工具。目前正在研究 vim。

= 自動程式縮排對齊 若您在 VIM 中撰寫 C/C++ 程式,可以利用「gg」指令將游標移到視窗最上方、利用「v」切換到選取模式、再用「G」將游標移到檔案尾端 (即達到全選的功能),最後按「=」,VIM 便會幫你的程式做自動對齊

转自 http://homepage.ttu.edu.tw/u9106240/page_main/vim_menu.html

BTW Ruby 依然适用

#8 楼 @camel

其实是一样的。 操作上实际比 gg=G 多了个字符 ^^

https://github.com/carlhuda/janus/blob/master/janus/vim/core/before/plugin/mappings.vim nmap fef ggVG=

请问你是做什么软件的?

c-x h then tab in emacs

netbeans..

Sublime Text 的 reindent 相当地不靠谱,感觉是遇到注释它就晕了,甚至会晕嵌套的 if…… NetBeans 倒是不错

Sublime 有个 Beautify Ruby 插件

beautify Ruby 也有问题,比如文件必须保存之后 才能正确格式化,没保存的将恢复到原始代码再格式化,前段时间我做了一个修改版本用着,有时间我整理一下 发布一下。

话说 nb 的格式化却是很牛 b 如果 sublime 能有这样的格式化插件就完美了

我有一个Matz 亲自编写的 Ruby代码格式化工具, 嘿嘿

#20 楼 @hexawing
完成了这个缩进工具的一个版本:请试用一下。有问题我可以修改,我会一直维护下去. 具体地址:https://github.com/zmbacker/RubyFormat

go 自带代码格式化命令行工具

go fmt hello.go

#23 楼 @zmbacker 用上了。謝謝分享。

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