7

Ruby が構文的に正しく、基本的なコード ガイドラインに従っていることを確認するために、Rubocop を使用したいと考えています。

それとは別に、このルールがあります。タブを使用してインデントし、誰でもレンダリング方法を決定できるようにします (2 つまたは 4 つのスペースのように表示します)。

問題は、rubocop がタブのインデントをまったく拒否するように設計されているように見えることです。

これらすべてのルールを上書きして、スペースに準拠させるにはどうすればよいでしょうか?

編集: このモジュールhttps://github.com/bbatsov/rubocop/blob/master/lib/rubocop/source_parser.rbをオーバーライドして、ファイルのすべてのタブを 2 つのスペースに置き換えて、gem の錯覚を作成することを考えています...

4

5 に答える 5

6

悔い改めない邪悪なタブユーザーとして、私はそのようにハッキングしてしまいました. 0.32.1 のこの差分:

--- processed_source.rb.orig    2015-07-28 05:53:52.199418557 +0100
+++ processed_source.rb 2015-07-28 05:54:04.750420458 +0100
@@ -13,7 +13,7 @@
                 :parser_error, :raw_source

     def self.from_file(path)
-      file = File.read(path)
+      file = File.read(path).gsub(/^(\t+)/) {|m| '  ' * m.size }
       new(file, path)
     rescue
       abort("#{Rainbow('rubocop: No such file or directory').red} -- #{path}")

これで完全に溶け込むはずです。ぶははは。

于 2015-07-28T05:01:37.327 に答える
0

このモジュールhttps://github.com/bbatsov/rubocop/blob/master/lib/rubocop/source_parser.rbをオーバーライド して、ファイルのすべてのタブを2つのスペースに置き換えて、宝石の錯覚を作成します...

于 2014-06-06T22:11:38.457 に答える