Vim Rubyデバッガー

最近まで、私はNetbeansでRubyコードを書きました。 物事はクールで非常に快適ですが、私は長い間Vimを見ていました。それは痛々しいほど強力なテキストエディターであり、Beanは夢にも思いませんでした。 何回か切り替えようとしましたが、コードで何らかのギャグに遭遇するとすぐに、Vimを閉じ、Netbeansを開き、ブレークポイントを設定して、何が間違っているのかを見つけ始めました。 一般的に、私はデバッガーに慣れています。



しばらく苦労した後、VimでRubyデバッガーを作成するというアイデアが生まれました。 彼はコードrails.vim、NERDTree.vimを開き、VimScriptを学び始めました。 レッスンをしてくれたtpopeとMarty Grenfellに感謝します(おそらく彼らは決してそれを読んだり、学ぶことはないでしょう)。 プラグインはgithubで見ることができます。



プラグインでできること



1. ruby-debug-ide gemを使用して、Rubyスクリプトをデバッグします。

2.ブレークポイントの設定/削除、変数の監視、コードの移動。

3.コマンドを手動で入力します。 例:RdbCommand p Post.allは、Postモデルのすべてのエントリを表示します。



必要なもの



正しく動作するために、プラグインには以下が必要です。

  1. Vimバージョン> = 7.0、 +記号+ clientserverオプションを使用してコンパイル。 これは次の方法で確認できます。





    :echo has("signs") && has("clientserver") && v:version >= 700







    結果は= 1でなければなりません
  2. インストールされたgem ruby​​-debug-ide
  3. Linuxを使用している場合は、 lsofをインストールする必要があります

設置

  1. リポジトリのクローンを作成します。



    git clone git://github.com/astashov/vim-ruby-debugger.git







  2. 結果から、必要なのはvimフォルダーのみで、残りは開発専用です。 vimの内容を〜/ .vim /(またはWindowsの場合はvimfiles)にコピーします。



    その結果、3つのファイルを取得する必要があります。

    • plugin / ruby​​_debugger.vim-プラグイン自体
    • doc / ruby​​_debugger-ドキュメント
    • bin / ruby​​_debugger.rbは、Vimとruby-debug-ide gemの間の中間Rubyスクリプトです。 それらの間のすべてのコミュニケーションは彼を通して行われます。


  3. 次に、Vimを実行して実行します







    :helptags ~/.vim/doc







    プラグインのドキュメントをインストールします。 コマンドで読むことができます



    :help ruby-debugger







インストールが完了しました!



使用する

  1. Vimを起動します。 gvimを使用する場合、Vimサーバーが自動的に起動します。vimの場合、servernameオプションを使用して起動する必要があります:vim --servername VIM
  2. たとえば、ある鉄道プロジェクトに行きます。
  3. デバッガーコマンドでサーバーを起動します



    :Rdebugger







    (デフォルトでは、スクリプト/サーバーwebrickを実行します。別のスクリプトをデバッグする必要がある場合は、次を実行できます。



    :Rdebugger foo.rb







  4. ブレークポイントをどこかに設定します(デフォルトでは<Leader> bコマンドで、ほとんどの場合は\ bです)。
  5. ブラウザのブレークポイントでページを開きます。 Vimは、ブレークポイントがトリガーされた行に自動的にジャンプします。
  6. 次に、変数を見て、一般的にコードを見て回ります-楽しんでください! :)


チーム



デフォルトでは(もちろん、.vimrcでそれらをオーバーライドできます)、次の略語が適用されます。



それらをオーバーライドする方法については、 ruby-debugger-detailsを参照してください。



バグに遭遇した場合、または新しいクールな機能を思いついた場合



その後、Githubの問題のレポートに大いに感謝します。 anton / sbk / astashov.netに書き込むこともできますが、Issuesのレポートの方が優れています。 :)プラグインはほとんどすべてのアクションを〜/ .vim / tmp / ruby​​_debugger_logファイルに記録するため、このファイルの内容をバグに添付することをお勧めします。



LinuxとWindowsでパフォーマンスをテストしました。 Linuxでは、プラグインはより良く機能します。Windowsでは、バックグラウンドでプロセスを開始する方法がまだわかりません。そのため、サーバーと中間のrubyスクリプトでウィンドウがちらつきます。 持っていないので、MacOでチェックしませんでした。



そして最後に、プラグインのスクリーンショット:

スクリーンショットVim Ruby Debugger







All Articles