2013-03-09 29 views
8

是否有任何寶石可以強制執行ruby/rails編碼慣例,如下面的指南所述。有沒有可以強制執行Ruby代碼約定的寶石?

https://github.com/bbatsov/ruby-style-guide 
https://github.com/bbatsov/rails-style-guide 
+0

我使用紅寶石格式化程序崇高文本2. – phoet 2013-03-09 10:32:06

+0

你如何格式化,你能否詳細說明? – Sam 2013-03-09 10:45:29

+1

https://github.com/CraigWilliams/BeautifyRuby – phoet 2013-03-09 11:13:43

回答

2

我的兩個處理代碼的整潔喜愛的寶石是臭佬(https://github.com/troessner/reek)和甘蔗(https://github.com/square/cane)。我不知道它們會涉及到縮進和間距的細節,但是他們會發現很多Ruby編碼慣例,否則這些慣例會被忽略。

在間距/縮進/外殼等方面,我要麼尋找一個編輯器配置(例如,下載一個Ruby包的TextMate/Sublime Text/EMACS /你有什麼),或看看BeautifyRuby寶石(https://github.com/CraigWilliams/BeautifyRuby)。

+0

甘蔗明確避免了縮進和間距檢查。我從來沒有見過一種既準確又快速的算法,我不認爲能夠編寫一個算法。 (它確實會提取尾部空格和行長。) – 2013-08-04 03:35:53

7

RuboCop是基於Ruby風格指南的靜態代碼分析器,由同一作者。

Rails Best Practices寶石可用於檢測Rails項目中的某些問題。

+1

這是問題的正確答案,不是關於最喜愛的分析器,而是關於檢查'bbatsov/ruby​​-style-guide'和'bbatsov/rails -style-guide'。 – jonas054 2013-11-15 15:06:27