🧐

JetBrains IDE (IntelliJ IDEA/PyCharm/PHPStorm/WebStorm) 機能探訪

2022/12/19に公開約4,200字

この記事はLAPRAS Advent Calendar 2022の20日目の記事です。
https://qiita.com/advent-calendar/2022/lapras

はじめに

PyCharm, PHPStormなどのJetBrains社のIDEがないと生きられない身体になって数ヶ月が経ちますが、まだまだ使ってない機能がたくさんあるなぁと感じ、いろいろ触ってみようと思い立って記事にしてみました。

目次

参考になる記事

IntelliJ 公式ショートカット一覧 PDF 日本語版
https://qiita.com/cypher256/items/8ce0527a46bd7cfe43eb
ザッと機能を確認したい場合はにはこちらが良いでしょう。ほとんどの製品でショートカットは共通なので、どれかひとつを覚えれば使いまわしができます。

ショートカットキー探訪

  • 自分がよく使う順に並んでいます。
  • ショートカットキーはLinux版です。

どこでも検索

  • ダブルShift(Shiftキーを素早く2回押します)

困ったときはこれ。とりあえず何でも検索できます。

ファイル検索だけに絞りたいときは、File タブに移動するか、Ctrl+Shift+N を押します。

プロジェクト内ターゲットの検索と置換

  • Ctrl+Shift+F 検索
  • Ctrl+Shift+R 置換

プロジェクト内で文字列の横断検索と置換ができます。

インテンションアクション

  • Alt+Enter

コードの問題をIDEが発見すると当該箇所に下線が引かれるので、そちらにカーソルを合わせてショートカットキーを押すと、問題の解決策を提示してくれます。

複数のカーソルと選択範囲

  • Alt+J 選択範囲に一致する次の文字列を選択する
  • Alt+Shift+J 選択をひとつ戻す
  • F3 選択をひとつスキップする
  • Shift+F3 スキップされた選択を戻す
  • Ctrl+Alt+Shift+J 選択範囲に一致するすべての文字列を選択する
  • Alt+Shift+Insert 列選択モード(ブロック選択)に切り替える

マルチカーソルです。

最近使用したファイルの検索

  • Ctrl+E

最近使用したファイルを一覧表示します。

コードの整形

  • Ctrl+Alt+L

コードをフォーマットします。

どのフォーマッタを使うかを先に設定しておく必要があります。例えば Prettier を使うのならば、以下のように設定します。
https://pleiades.io/help/phpstorm/prettier.html

コードリファクタリング

  • Ctrl+Alt+Shift+T

リファクタリング(安全な削除・コピー・移動・名前の変更など)したい箇所にカーソルをおいてショートカットキーを押します。

ソースコードナビゲーション

  • Ctrl+Alt+Left
  • Ctrl+Alt+Right

定義ジャンプをしたときなどに Ctrl+Alt+Left を押すと元の場所に戻ります。

Git探訪

https://pleiades.io/help/idea/using-git-integration.html

ステータスバーから Terminal を開いてGitを操作することもできますが、IDE内にGitを便利に使う機能が散りばめられていますので使わない手はないです。

ツールウインドウ

ツールウインドウ

画面左のツールウインドウから Commit タブを選ぶと、現在の編集状態が表示されます。
下部にコミットメッセージを書いてcommit, pushなどができます。

上部アイコン

デフォルトでは、画面上部右側に以下のようなアイコンがあります。

上部アイコン

左から、update, commit, push, history, rollback となります。

  • update はただのpullではなくて、submoduleもアップデートしてくれるみたいです。
  • history は開いているファイルの編集履歴をわかりやすく表示してくれます。

ステータスバー右下

画面下のステータスバー右側に現在チェックアウトしているブランチが表示されます。

ブランチ

クリックすると現在のローカルブランチやリモートブランチの状態が表示され、ここから新しいブランチを作成することもできます。

プラグイン探訪

デフォルトでバンドルされているものだけでも必要十分な機能はありますが、追加すると便利なプラグインをいくつか紹介します。

コンテキストメニュー(右クリックメニュー)からGitHubやGitLabのissueやプルリク(MR)に貼り付けるためのリンクをコピーできます。issueを書くときにとても助かります。

同僚のスーパーエンジニアである川俣さんが作成されました。

GitHub Copilot

前後の文脈から、そこに入るべきソースコードをサジェストしてくれます。

Copilot自体は有料ですが、入れる価値はあります。

WakaTime

エディタ操作のタイムトラッキングを行い、リポジトリ、言語、エディタなどでグラフ化してダッシュボードに表示してくれます。

【PR】弊社サービスLAPRASにおいて、自分のポートフォリオにWakaTimeを連携してメトリクスを表示できます(2022.12.19 現在βプログラムです)。他の人に公開することもできます。

CamelCase

単語の kebab-case, SNAKE_CASE, PascalCase, camelCase, snake_case, space case を順に切り替えることができます。ショートカットキーは Shift+Alt+U です。

Key Promoter X

キーボードショートカットの訓練をする鬼コーチです。
ショートカットキーが割り振られている機能をマウスでポチポチすると怒られてショートカットキーを教えてくれます。

最後に

最後に、弊社サービスのご紹介です。
¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨¨
\採用担当者向け👩‍💼/
累計500社以上が利用!優秀なITエンジニア採用に特化したダイレクト・リクルーティングサービス「LAPRAS SCOUT」のトライアル・資料請求はこちら▶ https://scout.lapras.com/
\エンジニア向け🧑‍💻/
クローリングや機械学習による解析で、「技術力スコア」や「経歴MAP化」など、一人ひとりの実績や得意なことを可視化し、自分だけの唯一無二のポートフォリオを自動生成。
「LAPRAS」の無料登録はこちら▶ https://lapras.com/

Discussion

ログインするとコメントできます