STERFIELD

2019/05/07

vimでdebug

vimでdebug

はじめに

前々回の投稿で扱ったデバッガをvim(CLI)にて再現しました。
普段はIDEでなくvimで作業するため
実運用的にこちらを採用していきます。

他のブログで紹介されているものと特に異なるのが
【vimを起動する環境とPHPを起動する環境が同じ】
という点にご留意ください。(一応同条件のものは少数だが確認しました)

良かった点

  • ツールの行き来が無いので無駄な作業が減る
  • 慣れてるvimの操作の分めちゃくちゃ速い

微妙, 悪かった点

  • vim内部でダイナミックにpythonを実行できるようコンパイルし直し
  • 独自のdbgpというプロトコルを認識する必要がある
  • IDEと違ってnginxのポートと重複しちゃだめ(?)

最後の点で恥ずかしながら苦戦を強いられました。

Chromeにアドオンの導入

今回使用するブラウザとしてChromeを挙げます。

こちらからダウンロードしてインストール。

拡張機能の設定から”Xdebug helper”のオプションに進み
“IDE key”のところを”others”と任意の文字列を設定します。
ここでは”VIM_DEBUG”としました。

以上でブラウザの設定は終わり。

XDebugの導入

いつもの環境はremi-php56のPHP 5.6をインストールしているので

にてインストール完了。

自動的に /etc/php.d/15-xdebug.ini が生成されるので
以下の部分をコメントインし指定の値として設定後、再起動する。

最初ポートを9000にて検証していたが
nginxにて既に使っていてLISTEN出来なかった?ため9005に変更。

あとはphp-fpmを再起動すれば終わり。

vimの設定

まずはvimの再コンパイルから。
コンパイル時のオプションに以下を追加してmake。

オプションはpython2.6と3.6がインストールされている一ケース。

で +python/dyn +python3/dyn が表示されていればOK.

次にプラグインのインストール

ポート等は以下の設定で上書き更新出来る。
表示周りやキーマップの設定もカスタマイズ可。

編集するvimに対して実行されるPHP(もといxdebug)が同じ環境なので
serverオプションは127.0.0.1となる。

vimの設定はこれにて終わり

Author Profile

著者近影

スターフィールド編集部

SHARE

合わせて読みたい