Laravel起動できるようになったからVS Codeを最適化した

2020-05-03

無料で使えるエディターでLaravelユーザーが使っているエディターを調べたところ、Visual Studio Code(以下 VS Code)とAtomがよく使われているようです。

Atomの方がLaravelのユーザー数が多いそうですが、VS Codeがすでにダウンロード済みなのでVS Codeを使用することに決めました。(とはいえAtomもこの機会のダウンロードしました。)

VS Codeはいろいろできるらしいのですが、よくわかっていないのでいい機会なのでLaravelがサクサク使えるように最適化しようと思います。

VS Code Laravel & PHP最適化

VS Code初心者なのでLaravelに特化したものだけでなくPHP含めLaravel開発環境最適化したいと思います。

動作環境

ざっくりMacのEl capitan。
VS Code Version: 1.44.2。
Laravel Framework 7.6.2

VS Codeに拡張機能を追加する

追加した拡張機能の機能紹介は簡易的なものなので、詳しくは拡張機能のfeatureをみてみるかググってみてください。

VS Code extensions laravel

参考サイト:Laravelで気持ちよく開発をするための拡張機能のまとめ | Qitta
参考サイト:VSCode extensions for Laravel and PHP development

Laravel Snippets

Laravel Snippetsはコードを補完してくれます。

Snippetsの種類が多くて迷います。Laravel 5 Snippetsを使用している方がネット上に多かったので初心者はそれをインストールしておけば無難そうです。

Laravel 5 Snippetsは名前がLaravel Snippetsに変更されたようでLaravelのバージョン5以上(今の所7まで)に対応しているようです。

laravel snippets

Laravelでblade(テンプレートエンジン)を使用する場合はLaravel Blade Snippetsをインストールなど、環境に合わせてインストールすると良さそうです。
Laravel Bladeの記事を多く見かけるので、きっと便利なんだろうなということでこちらも合わせてインストールしました。

Bladeを使用される場合はさらにLaravel goto viewもインストールしておくべきだとか。
あまりインストールしすぎても手に負えなさそうなので使ってからBlade関連は再度厳選しようと思う。

Laravel Artisan

Laravel ArtisanをインストールするとArtisanコマンドがVS Codeで使用できるようになります。

ターミナルで実行していたコマンドがVS Codeから実行できるようになります。
(F1キーでコマンド入力Windowが開きます)

候補出してくれるし(スニペット機能)打つ手数も減るし最高ですね。

PHP Intelephense

PHP IntelephenseはPHPのコーディングのスピードをあげて時間節約に最適だそう。

バージョンにもよるそうですが、追加したら設定をしておく必要があるようです。

PHP Debug

PHP DebugはPHPデバッグ時に役立つ拡張機能。

実行中の変数が見れるとか便利。

ファイル関連の拡張機能追加

PHPとLaravel以外にも便利そうな拡張機能があったのでついでに追加しました。

advanced-new-file

ファイルをパスで簡単に移動できるようです。

advanced-new-file

command + alt + n(winはcontrol + alt + n)でファイルのパスが表示され、フォルダを選択したあとファイル名を打ち込めばファイルを開くことができます。なければ作成される。

advanced-new-file

長い目でみれば、時間短縮になるらしい。

File Utils

File Utils を使うとファイルやディレクトリの名前変更、複製、移動、削除が行えます。そのためいちいちフォルダー開いてなどしなくて済むようです。

command + p (またはF1)を押し「>file」などと入力するとオプションが出てきます。

「>file : duplicate」で簡単に複製できたり、便利そうです。

おわり

VS Codeめちゃくちゃ便利ですね。
テキストエディタのちょっとプログラマよりくらいに思っていた自分が恥ずかしいです。
無料ソフトでここまでできるとは驚きでした。

laravel, php

Posted by Nakamoto