PHP
PhpStorm
OriginalOPENLOGIDay 16

PhpStormのオススメ機能

OPENLOGIの大島です:innocent: OPENLOGI AdventCalendarの16日目です。

はじめに

今回は僕が愛用しているPhpStormでオススメの機能を紹介したいと思います。

PhpStormはjetbrains社製のPHP開発に特化したIDEです。開発をサポートしてくれる様々な機能があり、使っているうちにPhpStorm無しでは生きていけない体になってしまいました:innocent:

すでにお使いの方は1つでも新しい発見があれば嬉しいです!
他エディタをお使いの方も「こんな機能あるんだなー」程度でチラッと眺めていただければ:pray:

なお、下記に紹介するほとんどの機能・プラグインはIntelliJでも同様に使えると思います。

設定のカスタマイズについて

ほとんどの操作は上部メニューのPhpStormPreferenceKeymapにて自由にキーバインド(ショートカット)を設定できます。押しづらいものはどんどん変えちゃいましょう。

また、キー割り当てするまでもない操作でも、下記に紹介する検索から実行できます。Editer操作やよく使うものはキーに割り当てて、たまに使うものは検索から実行がいいと思います。

また、各種プラグインはPreference > Plugins > Browse Repositoriesでインストールできます

検索系

これだけ覚えておけば何とかなるやつ:innocent:

Search Everywhere

2回
何でも検索
ファイル、クラス、IDEの操作、設定など何でもでてきます
が、個人的には何でも出てきすぎて逆に見づらいので下記の検索機能を使い分けてます

Find Action

IDEの操作全般を検索&実行できます。
僕は⌥ + Spaceを割り当てています
Monosnap 2017-12-16 14-17-10.png

Navigate→File

⌘ + shift + O
ファイル検索です。検索対象をきちんと入力しなくても、図のように一部をタイプすると拾ってきてくれます。
スクリーンショット_2017_12_14_14_01.jpg

最後に/を入れることでディレクトリも検索できます
Skitch.jpg

Find in Path

⌘ + shift + F
コード内の文字列検索です。正規表現での検索もできます。
またProjectウィンドウでディレクトリをクリックしてから検索することで、その配下のみを検索対象にできます

homestead_localhost_-_stockView2_-____Develop_private_stockView2_.jpg

編集系

Markdown Navigator

公式ページ
Markdown編集のためのプラグインです
プロジェクト外のメモ帳的なプラグインScratchと組み合わせるといい感じ
料金は基本無料で、有料ライセンスを取得すると追加機能が利用できます(年$15.99)

できること

プレビューを確認しながらmarkdownが書けます。
有料版にすると下記のようなこともできます

  • コードブロックの追加機能
    • syntax highlight (これは無料版でできてほしい:pray:)
    • 各言語での補完
    • SQLコードブロック上で⌘ + Enterを押すとクエリ実行
      • 僕はこれに感動してお布施しました:innocent:
  • カラーの細かいカスタマイズとか色々

stockView2] 2017-12-15 09-01-39.png

Live templete

いわゆるスニペットです
Preference > Editor > Live Templeteから設定できます
Preferences 2017-12-16 13-27-56.png

Abbreviation には入力する文字列を、Templete textには生成したい文を入力します
$ $で囲むと変数として扱われ、生成後にフォーカスがあたるようになります

Clone Caret Above / below

Editor操作ですがデフォルトでキーバインドがなかった気がしたので紹介します。
キャレットを複製して複数行編集ができます。keymapで好きなキーに設定しておくといいと思います
個人的には⌥ + ↑ / ↓とかにしてます
openlogi-api] 2017-12-16 13-34-55.png

マクロ

複数のキー操作をマクロとして登録できます。
登録したマクロは通常の操作と同じようにショートカットキーを割り当てることが可能です。繰り返し入力するようなキー操作があれば登録しちゃいましょう
Edit Macrosから登録が可能です。

artisanコマンドの補完&実行(Laravelユーザのみ)

設定方法はこちらの記事が参考になります:pray:

例えばartisan make で何が作れるんだっけ・・?というときもmakeだけ打てば分かります
Monosnap 2017-12-15 09-50-32.png
勿論自前のコマンドも参照できます
コマンドの書き方は毎度忘れてしまうので、補完ができて助かってます

データベース周り

ご存知の方も多いと思いますがデータベースクライアントの機能があります
Find ActionとかでDatabaseで検索してあげればでてきます。最初に使う場合はDBの接続情報を設定してあげましょう

DBコンソール

Databaseウィンドウの右上のコンソールっぽいアイコンをクリックするとでてきます
sessions__homestead_localhost__-_stockView2_-____Develop_private_stockView2_.png

このコンソールが優秀で、テーブル名、カラム名、SQLの構文などをバンバン補完してくれます
こいつのおかげでカラム名がうろおぼえでもスムーズに作業できます:pray:
homestead_localhost_-_stockView2_-____Develop_private_stockView2_.png

Reformat Code を押すといい感じに整形してくれて
homestead_localhost_-_stockView2_-____Develop_private_stockView2_.png

⌘ + Enterでクエリを実行してくれます
stockView2] 2017-12-15 01-10-28.png

テーブル定義

上記のコンソールでテーブル名を⌘ + B⌘ + クリックすることで、テーブル情報をいい感じに表示してくれます
stockView2] 2017-12-15 01-29-06.png

おまけ的な機能

壁紙

背景画像が設定できます。こちらを参考に。

テーマ設定

Material Theme とか色々テーマのプラグインもあります。

Docker Integration

なんかIDEからGUIでコンテナ立ち上げとかできます。
stockView2] 2017-12-16 13-59-01.png

これにはさすがの僕もコマンド叩けばいいんじゃないかという気持ちがしています。いい使い方をご存知の方教えてください:pray:

なお、Vagrantも同様のプラグインがある模様です。

vimモード

IdeaVimプラグインでvimモードにできます。あくまで擬似的なものなので完全に再現されているわけではないことにご注意ください

まとめ

以上、PhpStormの布教活動オススメ機能を紹介しましたが、まだまだ僕も使いこなせていないたくさんの機能があります。「こんなこともできるの?スゲー」と感動するのがPhpStormの楽しさの1つだと思います。みなさんもよかったら使ってみてください:pray: