SublimeText3でRuboCopを利用しよう
SublimeText3にパッケージ"SublimeLinter-rubocop"を導入した際の「ハマリどころ」と実際のインストールについて説明します。
はじめに...
-
RuboCopとは?
Rubocop は Ruby の静的コード解析ツールです。Ruby Style Guide で概説されているガイドラインの多くが強制されるでしょう。
参照:RuboCop なるものがあるらしい
導入して捗るの?
Rubocop は Ruby の静的コード解析ツールです。Ruby Style Guide で概説されているガイドラインの多くが強制されるでしょう。
参照:RuboCop なるものがあるらしい
RuboCopそのものは、
$ gem install rubocop
上記のようにインストールすれば使用できるようになりますが、毎回、コマンドを打つのも大変なので、SublimeText3のパッケージ"SublimeLinter-rubocop"を導入してチェックしてもらおうというお話です。
前提条件
- OS X EI Capitan バージョン10.11.6
- RuboCopインストール済み
- RuboCopの .rubocop.yml はプロジェクトのルートディレクトリ配下に作成済み
- SublimeText3にパッケージ"SublimeLinter"導入済み
SublimeLinterが導入されていないとSublimeLinter-rubocopは動きません。
インストール方法(+ハマリポイント)
SublimeText3に Package Control: Install Package を利用し、SublimeLinter-rubocopをインストールしたものとして説明します。
SublimeText3のメニューバーから
基本設定>PackageSettings>SublimeLinter>Settings-User
を選択して下記のファイルを開きます。
{
"user": {
"debug": true, //SublimeText3のconsoleでデバッグをする
"delay": 0.25,
"error_color": "D02000",
"gutter_theme": "Packages/SublimeLinter/gutter-themes/Default/Default.gutter-theme",
"gutter_theme_excludes": [],
"lint_mode": "background",
"linters": {
"rubocop": {
"@disable": false,
"args": [
"", //<== --configと記載
"" //<== 使用したい.rubocop.ymlのpathを記載
],
"excludes": []
},
"ruby": {
"@disable": false,
"args": [],
"excludes": []
}
}, //以下省略
}
ここで上記のコメントで記載しているように --config と .rubocop.ymlのpath を設定しなければならないのですが、正しいpathを設定しておらず、SublimeLinter-rubocopが正常に動きませんでした。
もし、 SublimeLinter.sublime-settings のUserファイルが白紙の場合は、
SublimeText3のメニューバーから
基本設定>PackageSettings>SublimeLinter>Settings-Default
を選択してDefaultのファイルをコピペして利用すれば良いです。
書き換えが終わったら、SublimeText3を再起動してください。
実際に動かしてみた
文字 | 意味 | 色 |
---|---|---|
. | Clean(問題なし) | なし |
C | Convention(慣習違反) | 黄色 |
W | Warning | 黄色 |
E | Error | 赤色 |
F | Fatal | 赤色 |
リアルタイムで警告を表示してくれるので、表示された警告に関しては潰していきましょう。他の方にコードレビューを受ける前に最低限のミスはなくせることが導入の一番のメリットだと思います。
これでもダメなら...
SublimeText3のconsoleにてエラー原因の調査を行ってみるのも手かと思います。
SublimeLinter.sublime-settings
のdebug
をtrueにして、SublimeTextを再起動します。
View
>Show Console
で表示されたエラーメッセージを確認します。
参照:エラーの原因を調査する
参考記事
Author And Source
この問題について(SublimeText3でRuboCopを利用しよう), 我々は、より多くの情報をここで見つけました https://qiita.com/jokura_yamato/items/dd316e756a021b90d03e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .