Antworten:
Ich persönlich mag es, ein Key-Mapping für die Ausführung verschiedener Tools einzurichten. Mein Mapping für PHPUnit sieht folgendermaßen aus (hinzugefügt zu ~ / .vim / ftplugin / php.vim, erreichbar unter https://github.com/archwisp/linux-home/blob/master/.vim/ftplugin/php.vim ):
nnoremap ,u :!./bin/runtests %<CR>
Wenn Sie also eine Unit-Testdatei bearbeiten, drücke ich einfach ", u" und das für das Projekt spezifische Skript runtests wird mit dem aktuellen Dateinamen als Argument ausgeführt. Ich erstelle für jedes Projekt ein Runest-Skript, da jedes Projekt unterschiedlich eingerichtet ist und ich so die gleiche Schlüsselzuordnung für jedes Projekt verwenden kann. Ein weiterer Vorteil ist, dass dieses Skript von der Befehlszeile oder von einem fortlaufenden Integrationspaket ausgeführt werden kann.
Ein Beispiel für ein runtests-Skript finden Sie hier: https://github.com/archwisp/MindFrame2/blob/master/bin/runtests
Ich kenne PHPUnit auch nicht, aber ich hätte es eingestellt &makeprg
zu phpunit und dann namens make on %
:
:set makeprg=phpunit
:make %
und navigieren Sie dann mit zwischen :copen
, :cc
. :cn
, :cp
(: h quickfix) - unter der Annahme, dass phpunit fehlgeschlagene Zusicherungen mit dem üblichen Fehlerformat kompatibel sind: "file: line: error message", andernfalls wird eine Optimierung durchgeführt &efm
wäre notwendig.