WebStorm 2018.3の新機能

JavaScript と TypeScript

Autoimports in JavaScript

JavaScriptの自動インポート

プロジェクトの依存からJavaScriptで必要なインポートを追加します。これはパッケージ内にTypeScript定義がある場合、またはパッケージがESモジュールとして書かれたソースを含む場合に働きます。

パラメータヒント

JavaScriptファイルでパラメータヒントが表示されます。メソッドとファンクション内でパラメータの名前表示しますのでコードが読みやすくなります。

マルチラインTODO

TODOコメントを複数行書けます。TODOに続くコメントはエディタでハイライトされ、TODOツールウィンドウでリストアップされます。TODOコメントで2行目以降はインデントをつけることで通常のコメントと区別してマルチラインTODOコメントとして認識されます。

メソッドのオーバライド

親クラスかインターフェースのメソッドを補完候補からオーバーライドする際、自動的にパラメータや super() 呼び出し、型情報を追加します。

アロー関数式にコンバート

新しいインテンション(Alt-Enter)で関数を代入するアロー関数式に変換してクラスメソッド、フィールド、または変数に定義できます。

‘null’と’undefined’チェックの改善

静的解析が賢くなりundefined または nullの値を検出して、メソッド呼び出しを行ったり、関数に渡したり、プロパティが参照されたりするパターンを検出します。

フレームワーク

Angularサポートの改善

Angularテンプレートにおけるコード補完と変数、pipe、async pipe、テンプレートリファレンス変数のの定義箇所へのジャンプがより正確になりました。AngularとAngularJSサポート回りで50を超える既知の問題を修正しました。

Node.js API

Parameter info and documentation for Node.js API のパラーメータ情報とドキュメンテーションはnode.d.tsを使ってより詳細に表示されます。実装の詳細を確認したい場合も、Go to definitionでは依然d.tsではなくNode.jsソースコードにジャンプ可能です。

Vuetifyサポート

Vuetify バージョン 1.1またはそれ以降のコード補完が可能になりました。

Reactサポート改善

全てのライフサイクルメソッドをコード補完でサジェストします。未定義と思われるコンポーネントについても警告します。

HTML と スタイルシート

Accessibility inspections for HTML

HTMLのアクセシビリティインスペクション

よりアクセシブルな HTML コードを書けるよう、Web Content Accessibility Guidelines(WCAG)の推奨に従って警告を出します。十数のテクニックをカバーしており、またAlt + Enterを押せばクイックフィックスも可能です。

Rerun failed tests

ルールセットの移動と抽出

Extract ruleset アクションでCSS宣言から新しいルールセットを抽出できます。

移動リファクタリングでは CSS、SCSS、Sass、Less、Stylusファイルからほかのファイルへ移動出来ます。

新しいCSSコードスタイルオプション

CSS、SCSS、Sass、Less、Stylusのスタイル設定にuse of blank linesが加わりました。さらにブロック内のCSSプロパティをアルファベット順またはカスタム順にソート出来ます。

タグの削除

HTMLとJSX タグUnwrap/Remove アクション作動時にインデントを自動的に整えるようになりました。

テスト

Easier navigation for tests

テストのナビゲーション

Structure view (Cmd + F12)ではファイルのテストスイートのテスト名を表示します。テスト名をタイプすれば絞り込んでジャンプすることが出来ます。

失敗したテストにスタックトレースがあれば、テスト名をダブルクリックして失敗した行へ直接ジャンプ出来ます。

ツール

Debug Node.js worker threads

Node.jsワーカースレッドのサポート

Node.js worker をデバッグ出来るようになりました。Node.js 10.12またはそれ以上を使い、 --experimental-worker フラグを追加してください。ワーカースレッドAPIのコード補完も可能です。

More flexibility with ESLint and TSLint

ESLint と TSLintがよりフレキシブルに

lintの設定ファイルでseverity levelレベルをオーバーライドし、lintが検出したものをエラーとして、または警告として確認出来ます。

TSLint エラーについてはAlt-Enterに続いて右アローキーでを押します。TSLint ルールを無効化する特別なコメントを入力出来ます。

package.jsonの補完

package.jsonファイル内の依存について、最新のバージョンや依然のバージョンについて補完候補を提示するようになりました。

Protractorテストの実行

Protractor testのガターに表示されるアイコンでテスト単体を、またはスイートを実行/デバッグ出来ます。

Live Edit

Live Edit機能がChromeエクステンションなしに機能するようになりました。

バージョン管理

GitHub PRs

GitHubプルリクエスト

GitHubプルリクエストの初期サポートが実装されました。GitHub Pull RequestsツールウィンドウでPRを確認できます。diffをプレビューしたり、PRからコンテクストメニューを使ってローカルブランチを作って通常のブランチと同じくマージしたりできます。

Gitサブモジュールのサポート

ついにGitサブモジュールをサポートします!クローン、アップデート、コミット、diffの確認、コンフリクトの解決まで行えます。

ホワイトスペースを無視

diffビューだけでなくマージ中もホワイトスペースを確認出来るようになりました。Merge Revisions for ダイアログで Ignore ドロップダウンメニューを使ってホワイトスペースを隠したり、トリムしたりできます。

プリコミットフックサポートの改善

コミットダイアログはプリコミットフック(例えばlint-stagedを使う場合など)によって行われた変更を正しく扱えるようになりました。

IDE

New search popup

新しいどこでも検索

プロジェクトとIDE内をより効率的にナビゲート出来ます。改善されたSearch Everywhereは他のナビゲーションダイアログであるFind ActionGo to classGo to fileGo to symbolと統合されま、tabキーで別の検索コンテクストに移動出来ます。もちろん全てのナビゲーションダイアログは依然これまでと同じショートカットでアクセスできます。

High-contrast theme

ハイコントラストテーマ

JetBrainsは全てのユーザーに最高の体験をもたらすことにコミットしています。そこで今回ハイコントラストテーマを今回実装しました。

スクリーンリーダーサポートの強化

スクリーンリーダサポートを強化し、行番号、VCSアノテーション、デバッガ、ガターアイコンも読むことが出来るようになりました。

プラグイン設定ページ

設定画面のPluginsページを刷新し、より簡単にプラグインを検索、インストール、更新、アンインストール、管理出来るようになりました。プラグインを名前だけでなくタグでも検索出来るようになりました。また検索結果をダウンロード数、名前、レート、featured、更新日でソートすることが出来ます。

フォルダをドラッグしてオープン

FinderやエクスプローラからIDEのウェルカムスクリーンへフォルダをドラッグすればWebStormで開けます。