YouTrack 2020.1 リリース:絵文字によるリアクションを実装 😀

他の言語でこのブログの記事を読むことができます:

release2020_1_blog@2x.001
YouTrack 2020.1をリリースしました!YouTrackにリアクションを実装しました 😀 また、この喜びやその他の感情を絵文字リアクションを使って表現できるようになりました😀 リアクションの通知が導入されたため、リアクションを見逃すこともありません。

その他のYouTrack 2020.1における機能強化として、コミュニティベースの言語ローカライゼーションに貢献したい人が誰でもユーザーインターフェースから直接コンテキスト内翻訳を利用できるようになりました。加えて、管理者がワークフローを書かずに込み入ったユースケースに対応できる機能や、開発者向けにVCS統合を改善するためのカスタムフィールド設定が追加されました。

詳細については、このページを読み進めてください。 Continue reading

Posted in お知らせ | Leave a comment

IntelliJ IDEAのローカル履歴が大切なコードを救います

私たちはIntelliJ IDEA の how2pro(how to pro = プロになる方法)に関するブログポストを連載中です。今回は真の救済手段になり得る古き良き機能であるLocal History(ローカル履歴)について詳しくお伝えしたいと思います。

単にコミット間の差分を記録するバージョン管理システムとは異なり、ローカル履歴はそれ以上の機能を提供します。 この機能はコードの編集、テストの実行、アプリケーションのデプロイといった各種イベントをトリガーにプロジェクトのリビジョンを自動的に記録します。

ブログのバナー

ローカル履歴は個人用のバージョン管理システムとしての役割を果たし、プロジェクトにまだバージョン管理を採用していない場合でも削除済みファイルを復旧したり、個別の変更を呼び出したり、ファイルを元の状態に戻したりできるようにします。 また、何らかの操作を行う前にパソコンが突然再起動した場合には、回復用のソースとして機能します。

デフォルトではローカル履歴の保存期間は5日間ですが、この値は調整可能です。

変更の復元

あるファイルを最後にコミットしてから多数の変更を加えた結果、重要なコードを大量に削除してしまったことに気が付いたとしましょう。 この場合は「Undo」アクションは役に立ちません。あまりにも変更箇所が多すぎるため、このアクションを使う場合は他の変更を破棄せざるを得ないからです。

そこでローカル履歴の出番です! エディタ内のどこかを右クリックし、Local History | Show History を選択するか、Ctrl+Shift+A(WindowsおよびLinux)または⇧⌘A(macOS)を押してから ‘local history’ と入力してください。

すると、左側には現在ファイルの保存済みリビジョンがタイムスタンプ付きでリスト表示され、右側の差分ビューアには対象ファイルの各リビジョンと現在の状態との差分が表示されます。

復元したいコード片を見つけ、左ペインにある山形のボタン(»)をクリックするだけでそれをコピーできます。

ローカル履歴からのコード復元

削除済みファイルの復元

バージョン管理されていないファイルを誤って削除してしまった場合は、Projectビューで対象ファイルを含むフォルダを選択し、そのフォルダのローカル履歴を呼び出してください。

その後、復元したいファイルを含むリビジョンを選択してから対象ファイルを右クリックし、Revert Selectionを選択してください。

ローカル履歴からのファイル復元

ローカル履歴の詳細については、ドキュメント (英語版はこちら)をご覧ください。

ローカル履歴はIntelliJ IDEA Ultimateでも無料のCommunity Editionでも、その他のIntelliJベースのIDEでも使用できます。 コードを1行も失いたくないなら、今すぐIntelliJ IDEAをダウンロードしてお試しください!

Happy Developing!

[原文] Original post in English is written by Anna Gasparyan

Posted in IntelliJ IDEA | Leave a comment

Hub 2020.1リリース:組織ベースのプロジェクトのグループ化に対応

他の言語でこのブログの記事を読むことができます:  

release2020_1_blog.001

HubはJetBrainsのチーム向け製品(CI/CDサーバー:TeamCity、課題管理システム:YouTrack、コードレビュー:Upsource)を統合するための無料の管理ツールです。

Dashboard_ja-jp

Hub 2020.1では組織によるプロジェクトのグループ化、Hubのユーザーインターフェースから直接コミュニティ翻訳を提案できる機能、Swaggerのサポートを導入しています。

詳細については、このページを読み進めてください。

Continue reading

Posted in お知らせ | Leave a comment

Windows上のJetBrains IDEで.vmopitonsファイルに「-Dfile.encoding=UTF-8」指定時に起動しない問題

こんにちは。JetBrains堀岡です。

IntelliJ IDEA等のJetBrains IDE製品をWindows上でお使いの一部のお客様から2020年3月のアップデート後や2020.1 EAP/ベータ版においてIDEが起動しない問題をご報告いただいていおります。

現在問題の調査中(関連していると思われるJDKのIssue:JDK-8241129)ですが、問題の症状や回避策について説明いたします。

banner1

問題の症状例

Windows環境のIntelliJ IDEA(またはPhpStorm, PyCharm, RubyMine, CLion, GoLand, Rider, DataGrip等その他のJetBrains IDE)を2019.3.4にアップデート後、IDEが起動しない。

C:\Users\<User名>\ に 以下のメッセージを含むjava_error_in_idea_xxxxxx.log エラーログが生成される。

————— T H R E A D —————

Current thread (0x000000001a947800): JavaThread “AWT-EventQueue-0” [_thread_in_native, id=9756, stack(0x000000001d2a0000,0x000000001d3a0000)]

Stack: [0x000000001d2a0000,0x000000001d3a0000], sp=0x000000001d39d210, free space=1012k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [awt.dll+0x90cd6]

siginfo: EXCEPTION_ACCESS_VIOLATION (0xc0000005), reading address 0x0000000000000058

 

原因/発生条件

現在のところ、以下の条件を満たす場合、JBR(JetBrains Java Runtime)がクラッシュするため、IDEが起動しないことが確認されています。

  • IDE起動時に参照されるJava VM Option file(.vmopitons設定ファイル)に「-Dfile.encoding=UTF-8」が指定されている
  • IDEに同梱・使用しているJBR(JetBrains Java Runtime)のバージョンが、Java version: 11.0.6+8-b520.43amd64 
    • IntelliJ IDEA 2019.3.4や2020.1.EAP等JetBrains IDEの2020年3月の更新版に含まれています。

JBRのバージョンは以下のメニューから確認可能です。

[Help] – [Collect Troubleshooting Information]

Windows上のIntelliJ IDEA 2019.3.4での出力例

Build version: IntelliJ IDEA 2019.3.4 Build #IU-193.6911.18 March 17, 2020
Java version: 11.0.6+8-b520.43amd64
Operating System: Windows 10 (10.0, amd64)
JVM version: OpenJDK 64-Bit Server VM JetBrains s.r.o

問題の回避方法

(1) .vmoptionファイルを編集し、「-Dfile.encoding=UTF-8」を削除または「#」でコメントアウトする。

.vmoptions設定ファイルの場所については以下を参照。

JetBrains Toolboxを使用していない場合

例(IntelliJIdeaやidea64はご使用の製品により異なります):

configurationディレクトリ(2019.3まで | 2020.1以降
C:\Users\<User名>\.IntelliJIdea2019.3\config\idea64.exe.vmoptions(通常vmoptionsファイルのカスタマイズはこちらのファイルが使用・優先されます)
及び・または

<インストール先>binディレクトリ
C:\Program Files\JetBrains\IntelliJ IDEA 2019.3.3\bin\idea64.exe.vmoptions(デフォルトのインストール先。idea64.exeと同じフォルダに.vmoptionsファイルがある。)

参考:vmoptionsについて  https://intellij-support.jetbrains.com/hc/en-us/articles/206544869-Configuring-JVM-options-and-platform-properties

JetBrains Toolboxを使用している場合

  • Toolboxがデフォルトで使用する.vmoptionsの編集

ToolboxのからIDE名の右側の六角アイコンをクリックし、Settingsを選択します。

ToolboxIJSettings

Java Virtual Machine options の [Edit…] からエディタを起動し編集します。

ToolboxVMoptions2

[Edit…] ボタンを押してもエディタが起動しない場合、適当な場所(デスクトップ等)に拡張子が.vmoptionsの ファイル(例: foo.vmoptions)を作成し、Windows上でエディタ等と.vmoptionsファイルの関連付けを行ってから再度お試しください。

  • (2020/3/30追記)ToolboxでインストールされたIDE実行ファイルと同じ場所に存在する.vmoptionsの編集

ToolboxでインストールされたIDEのexeファイルと同じ場所にある<IDE実行ファイル名>.vmoptionsファイルを変更している場合、以下を手順で.vmoptionsファイルを確認、編集してください。

Install locationのShowをクリックし、インストール場所を開く

ToolboxIDEInstallLocation

<ToolboxによるIDEインストール場所>以下のbinディレクトリ内にある<IDE実行ファイル名>.vmoptionsファイルを同様に編集する。

vmoptionForToolboxInstalledIDEexe

(2)古いバージョンまたはJBR 8バンドル版を使用する

何らかの問題の回避等のため、.vmoptionsファイルで、-Dfile.encoding=UTF-8の指定が必要な場合、 JetBrains Toolboxを使用して以前のバージョンに戻す、またはIDEのダウンロードページ(https://www.jetbrains.com/ja-jp/idea/download/other.html) 等 から以前のバージョンまたはJBR 8バンドル版(2019.3.xでは一部IDEで利用可能)を使用してください。

ただし、2020.1以降はJRB 8バンドル版は提供されない予定なので注意が必要です。JBRの修正をお待ちください。

問題の修正予定

この問題の修正状況の通知、早期修正を希望する場合、JetBrainsのissueページでvote(いいねアイコン)をお願いします。
https://youtrack.jetbrains.com/issue/JBR-2210

参考: YouTrack(JetBrains製品の課題管理システム)で課題に対して投票(Vote)及び更新情報を購読する方法
https://intellij-support.jetbrains.com/hc/en-us/articles/207241135-How-to-follow-YouTrack-issues-and-receive-notifications

その他

フィードバックやご質問等ございましたら、twitterか日本語営業窓口までお知らせください。

Posted in お知らせ, テクニカルサポート | Leave a comment

JetBrains AcademyでPythonを学習しましょう!

JavaとKotlinに加えてPythonがJetBrains Academyで学習できるプログラミング言語に仲間入りしました。 Pythonのトラックを準備しました。皆さんのご利用をお待ちしています!

バナー

Pythonのトラックを開始するか、スタートガイドを読んで詳細を確認してください。

Pythonを学習する理由

2019年開発者エコシステムの現状のアンケート結果によれば、Pythonは最もよく学習されている言語だということが分かっています。 学習する理由はさまざまですが、ここではPythonで書かれた次の「Hello, World!」プログラムを簡単に見てみましょう。

また、次はJavaで書かれた「Hello World!」プログラムです。

今すぐPythonの学習を開始したくなりましたか?

その気にならなかった方のために、Pythonに関する参考情報をいくつか紹介します。

JetBrains AcademyでPythonを学習する理由

JetBrains AcademyPyCharm Eduは、次のように対話的なプロジェクトベースの学習プラットフォームと強力なプロ仕様の開発ツールを兼ね備えています。

  • 単なる講義ではなく、開発を通して学習することができます。 プロジェクトを選び、それをビルドするのに必要なコンセプトを含むカリキュラムを履修してください。 学習内容をすべてアプリケーションにまとめてみましょう。
  • 上達するにつれて利用できるようになる新しいトピックやプロジェクトを調べてみましょう。 知識マップに移動すると、あなたの進捗に加えて利用可能なトピックのすべての範囲とそれらの関係が表示されます。
  • PyCharmは最も人気のあるPython開発ツールでありPyCharm ProfessionalエディションとCommunityエディションの合計シェアは35%となっています。 プラットフォームがPyCharm Educationalエディション(PyCharm Edu)と完全に統合されているため、プロ仕様のツールを使いこなして優秀な開発者になることができます。

Pythonのトラックを開始する気になりましたか! 何かお困りの場合は、スタートガイドでヘルプを参照してください。

教育ツールチーム一同より

[原文Original post in English is written by Tatiana Vasilyeva

Posted in PyCharm, お知らせ | Leave a comment

Spaceの2020年ロードマップ

Space 2020へようこそ! ここでは今年の計画や優先事項をお伝えし、私たちの方向性が正しいことや、皆さんが最も期待し必要としている機能を届けられる計画になっているかどうかを確かめたいと思います。 Space 2020の公式リリースは今年の第3四半期または第4四半期を予定しています。

ロードマップ
Spaceは現時点で早期アクセスプレビューで提供されていますが、その一般公開の目標は将来的な統合チーム環境としてのSpaceの背景にある概念、主な考え方、価値を提供することでした。 そのため、私たちはソフトウェア開発プロセスに完全対応するために必要不可欠ではあるものの、公開プレビューではまだ利用できない多くの機能を公開時に明らかにしました。

Space 2020リリースの主な優先事項

I. 自動化:CI/CD

私たちはソフトウェア開発プロセスの重要な要素の一つであると考えているCI/CDおよび汎用的な自動化向けの包括的ソリューションを製品の発売と共に発表しました。 しかし、私たちはこの機能をリリースできるようになるまでは保留することを決定しました。 Space 2020では、様々なデプロイ ターゲットに対応した包括的な継続的デリバリーソリューションを提供する予定はありません。 ただし、基本的なCIソリューション(パイプライン非対応)の提供を目指しています。

最初に提供を予定している機能

  • コンテナのサポート:「コンテナ化」可能なタスクがあれば、ほとんどの場合はそれを自動化して実行できるようになります。 コンテナの中ではあらゆるコマンド(デフォルトのコマンドを含む)、スクリプト、または任意のKotlinコードを実行できます。
  • Gradleの拡張サポート: Gradleのテストを報告し、専用コマンドを使ってGradleのビルド実行を単純化できます。
  • サービスコンテナ: データベースコンテナなどの追加コンテナをメインのコンテナと一緒に実行できます。
  • 他のSpaceモジュールとの統合: Space APIを利用して自動化スクリプトから直接他のモジュールと連携できます。 例えば、ビルド失敗時にチャットにメッセージを送信できます。
  • Packagesとの統合: Maven成果物(artifacts)をPackagesのリポジトリに公開できます。

II. 作業:課題、チェックリスト、パーソナルToDoリスト

Spaceのプロジェクト管理は、トップダウン計画・ボトムアップ分析・実行という3つの主な段階で構成されています。 私たちの目標はあらゆる段階で全機能のサポートを提供し、確実にそれぞれの段階を密接に統合させることです。 皆さんからのフィードバックから、Spaceのプロジェクト管理機能に高い需要があることが分かりました。 そのため、2020のリリースではプロジェクト機能を最重要項目の一つにしました。

チェックリスト

チェックリストのコンセプトを修正し、作業を分解する手順に適用しやすくする予定です。 これにより、エピックやイテレーションとチェックリストとの連携が容易になります。 また、課題との統合にも取り組んでおり、チェックリスト項目を新しい課題に変換したり、その課題を既存の課題にリンクしたりするオプションを追加しています。

課題

  • 課題の一括更新機能(複数の課題を選択し、担当者・ステータス・タグ・期限日などを更新するための視覚的なUIを含む)
  • 課題とチェックリストに対して、サブシステムの責務(Responsibilities)を使用
  • 期限日関連の処理を改善(フィルタリング、通知)
  • カスタムフィールドのサポート
  • UIとユーザビリティの改善

パーソナルToDoリスト [新着]

仕事中にToDoリストから項目を消すことに最高の喜びを感じるのなら、SpaceのパーソナルToDoのコンセプトはあなたにぴったりです。

Spaceでは、ToDoリストは個人的な短期計画に役立つツールです。 このツールを使えばSpaceでのさまざまな活動を収集し、コードレビューの実行、チャットメッセージへの返信、ブログ投稿の閲覧、課題へのコメント、ナレッジベースの記事やドキュメントの閲覧などの実行可能な項目にワンクリックで変換し、今日明日に達成するように計画することができます。

ToDoリストは不要な情報と過剰な情報をそぎ落とし、ワンクリックで日常業務を整理できるシンプルながらも強力なツールであると信じています。 パーソナルToDoリストはモバイルアプリでも使用できるようになります。

III. ナレッジベース [新着]

現在開発を進めているナレッジベースは、Spaceで最も要望の多い機能の一つです。 Books(ブック)はSpaceナレッジベースの主なエンティティです。 Books(ブック)はデザインガイドやPMM(Product Marketing Manager)サバイバルガイドのようなトピック別、JetBrainsミュンヘンオフィスなどの場所別、またはSpace、IntelliJプラットフォームなどのプロジェクト別に整理できます。

Spaceナレッジベースの初期バージョンには以下の機能が含まれます。

  • マイドキュメント:
    • ドキュメントをブログやブックに後から公開できます。
    • ドキュメントの共有。
  • ブックと記事
  • プロジェクトドキュメント – プロジェクト内のブック
  • 共同編集 – MarkdownまたはWYSIWYG(元のドキュメント形式に依存します)
  • 公開履歴

IV. 拡張性とアプリケーション

Spaceでは拡張性のサポートに重点的に取り組みました。 アプリケーションはSpaceで拡張機能を構成、再利用、共有するための主な手段です。

直近に計画しているアプリケーションの機能には以下があります。

  • 着信Webhook
  • スラッシュコマンドとチャット経由の連携
  • 外部ツールからの通知のサポート
  • HTTP APIの改良

権限については以下の対応を予定しています。

  • よりきめ細かい権限スキーム(リポジトリ単位、ブック単位など)
  • アプリケーションの権限管理
  • 単純なHTTP APIアクセスシナリオ向けの永続トークン

認証に関しては次の機能を予定しています。

  • 二要素認証とアプリケーションパスワード
  • SAML 2.0
  • ログイン試行回数の制限とCAPTCHA

データのインポート

私たちはメンバー、チーム、場所、プロジェクト、リポジトリ、ドキュメント、ナレッジベース、ロール、課題などのリソースを簡単かつ快適に移行できる手段を提供することを目標としています。

一般的に使用される形式(CSV、JSON、XMLなど)からの単純なインポート機能を提供する予定です。 Spaceは1回限りのインポートをサポートする予定です。 高度な移行ウィザードのような拡張機能は、当社の技術パートナーが制作することを前提としています。

アプリの配布

Marketplace経由でアプリケーションを配布する仕組みを提供する予定です。

Space開発に関するその他の重要な方向性

I. IntelliJベースのIDEのプラグイン

現在、私たちがIDEプラグインに関して最も注力している事は、以下のようなIDEからのコードレビュープロセスのサポートです。

  • 公開中のレビューの概要と、それらを絞り込むためのオプション
  • 担当中のレビューに関する通知
  • 詳細およびレビュー担当者リストの編集
  • コメントと回答
  • 新規ブランチレビューの作成

その他の機能:

  • 初期プロジェクトのセットアップ
  • パッケージ検索
  • IDE内で不明なSpaceのパッケージ参照を直接解決
  • IDEからのSpace自動化スクリプトの編集とローカル実行

II. 会議とカレンダー

最近では誰もが何らかのカレンダーを利用しています。 そのため、私たちは以下のツールとの統合機能を提供することに注力しました。

  • Google カレンダー
  • Microsoft Outlook 予定表

二番目の優先事項は、スタンドアロンモードでSpace Calendarsのサポートを確保することです。 この目標を達成するため、以下の機能に対応する予定です。

  • 外部メンバーの招待
  • 招待の送信
  • 招待への応答
  • 今後のイベントに関する通知(デスクトップ、モバイル)
  • すべてのカレンダーイベントに対応したCalDAV API

新機能

  • 会議、休暇申請、その他の不在ステータスを統合したカレンダー
  • 終日会議
  • 定例会議の改善:単発イベントの削除または更新

III. チャットとモバイルアプリ

Spaceのチャットにはあらゆる通知が集約されています。 チャットはすべてのモジュールの通知を配信するため、私たちはスマート通知のグループ化、デフォルト値の設定、柔軟な設定など、最適な通知メカニズムが不可欠であると考えています。 また、この点についてはモバイルアプリ(iOSおよびAndroid)でも集中的に取り組んでいます。

チャットおよびモバイルアプリの計画には以下の実装が含まれています。

  • チャット内の全文検索
  • 組織のワークフローに沿った課題、コードレビュー、ダイレクトメッセージ関連通知の柔軟なグループ化
  • 音声通話とビデオ通話
  • 新規コミットや新規自動化ジョブを含むさまざまなイベントの購読を拡充
  • チャット内アプリケーション(ボットやサードパーティ製品の統合)
  • パフォーマンスの改善
  • Spaceからメンション可能なエンティティを追加(@teams、@projects、@locations)
  • 不在ステータス、会議、最新の活動状況(IDEでの作業、ブログ投稿の書き込みなど)に関する情報や独自のステータスを含む統合ユーザーステータス。

IV. コラボレーターロール

組織のメンバーではないものの、Spaceを権限が制限された状態で利用できる外部メンバーを追加したいというご要望が多数寄せられていました。 外部メンバーのロールは利害関係者、顧客、パートナー等に使用できます。

その他に追加を予定している機能

  • Gitの地域間レプリケーション
  • リポジトリ変更のカスタムワークフロー
  • ターン制コードレビュー
  • コードレビューのルール設定機能(レビュー担当者数、レビュー担当者のロールなど)
  • 自動コードレビュー作成と処理ルール
  • NuGetとNPMのサポート
  • パッケージリポジトリのクリーンアップポリシー
  • 脆弱性検索との統合
  • チャット、ブログ、チーム、課題、コード、オンラインヘルプ内の全文検索
  • コンテキストベースの候補を提供するよりスマートなデータ分析(タイムゾーンの違い、空き状況など)

フィードバックをお寄せください

以上が今後リリース予定のSpace 2020の計画です。 あなたのチームや会社でSpaceをより活用いただくための機能はございましたか?本ブログへのコメントや課題トラッカーに機能リクエストを投稿してご意見をお寄せください。

まだSpaceをお試しでない場合は、今すぐSpace EAPへの招待をリクエストしてください。 EAP期間中は無料でご利用いただけます。

[原文Original post in English is written by Valerie Andrianova

Posted in Space, お知らせ | Leave a comment

IntelliJ IDEAのショートカット:トップ 15

IntelliJ IDEAは、編集、ナビゲーション、リファクタリング、デバッグ、その他定期的に行うほぼすべての操作に関連するコマンドに対してキーボードショートカットを実装しています。 これらのショートカットを体で覚えて自然に操作できるようになることは、フロー状態(集中した生産性の高い状態)で開発作業を行うことに役立ちます。

IntelliJ IDEAのYouTubeチャンネルに投稿されたこちらの動画で、これらすべてのショートカットの実際の動きを確認できます。

Alt(Option) + Enter(空気を読む)

最もよく知られているものから始めましょう。 このキーボードショートカットは現在のコンテキストに適したアクションを表示し、あらゆるものを修正する目的で使用できます。

コードにエラーが見つかった場合は、そのエラーにカーソルを合わせてAlt+Enterを押すと問題に対する修正案がリストで表示されます。

また、警告や提案がある場所でAlt+Enterを使用し、これらの提案のいずれかを受け入れることもできます。

さらに、エラーや警告または提案のないコードでAlt+Enterを使用すると、インテンションアクション(個人的には静的なimportを追加できるのが気に入っています)と有効ではあるものの警告を行うことのないインスペクションが表示されます。

Alt + Enterの使い方を示すアニメーションGIF

F2

エディタ内でエラーや警告を1つずつチェックするのにマウスは使いたくないものです。ですから、F2で次のエラーや警告または提案にジャンプしてください。 F2でエラーに移動し、Alt+Enterを実行し、全ての提案を表示させ、その中から選んで解決する(または、Shift+Alt+Enterを使って最初の提案を適用することもできます)というリズムを体で覚えましょう。

F2の使い方を示すアニメーションGIF

⌘1 または Alt+1

ツールウィンドウを開く場合もマウスは必要ありません。 ⌘1(MacOS)またはAlt+1(Windows/Linux)を押すと、プロジェクトウィンドウが開いてそこにフォーカスが移ります。 矢印キーを使用してツリー内を移動し、入力して検索できます。

Cmd+1の使い方を示すアニメーションGIF

Esc

エディタにフォーカスを戻すには、Escを押してください。どのツールウィンドウを開いていても、エディタに戻ってコーディングを継続することができます。実際、Escは変更を適用せずにポップアップを閉じるのに便利です。

エディタ内での移動に関するその他のヒントは、「エディタの基本」をご覧ください。

Escの使い方を示すアニメーションGIF

⌘E または Ctrl+E

プロジェクトウィンドウは、必要なファイルに移動する方法としては最適ではないかもしれません。 ⌘E(MacOS)またはCtrl+E(Windows/Linux)を使えば最近開いたファイルを表示できます。このポップアップには最近使用したファイルが表示され、その中を矢印キーを使用して移動できます。 また、ここからツールウィンドウを開くことができます(キーボードショートカットを持たないものを含む)。IntelliJ IDEAの他のウィンドウと同様、ここで入力を行うことで特定の項目を検索できます。

Cmd+Eの使い方を示すアニメーションGIF

⌘B または Ctrl+B

コード内から別のコードに移動したいことは多々あります。 ⌘B(MacOS)またはCtrl+B(Windows/Linux)でシンボルの宣言に移動できます。 例えばフィールドの上でこのショートカットを押すと、そのフィールドの宣言にカーソルが移動します。クラス名の上で押した場合はクラスファイルに移動します。⌥⌘B(MacOS)またはCtrl+Alt+B(Windows/Linux)を押すと、代わりに実装に移動することができます。

これら最後の2つのショートカットのようなその他のヒントについては、「ソースコードナビゲーション」をご覧ください。

Cmd+Bの使い方を示すアニメーションGIF

Alt+F7

宣言部ではなく、コードの使用箇所を検索したいことはよくあります。Alt+F7を押すと、コードの使用箇所がすべて表示されます。例えばインターフェース名の上でAlt+F7を押すと、そのインターフェースを実装しているフィールド宣言やクラスなど、そのインターフェースの使用箇所すべてが表示されます。

Alt+F7の使い方を示すアニメーションGIF

Ctrl Ctrl

Ctrlを2回押せば、どこからでもあらゆるものを実行できます。IDEの中でも、開いているファイルの中でも、CtrlをダブルクリックすればRun Anythingウィンドウが開きます。デフォルトでは最近使用した実行構成のリストが表示されます。ただし、実行する項目の名前を入力して他の実行構成を検索することもできます。

Ctrl Ctrlの使い方を示すアニメーションGIF

⌥↑ / ⌥↓ または Ctrl + W / Shift + Ctrl + W

⌥ と上下矢印キー(MacOS)およびCtrl+WまたはCtrl+Shift+W(Windows/Linux)を使用してカーソル付近にあるコードの選択範囲を拡張または縮小することができます。選択範囲を拡張すると、IntelliJ IDEAは拡張された範囲内にある次の有効な式を自動的に選択します。⌥↓(MacOS)またはCtrl+Shift+W(Windows/Linux)を押すと選択範囲が再びカーソルの位置まで縮小されます。

Alt+UpまたはDownの使い方を示すアニメーションGIF

⌘/ または Ctrl + /

ある行内のどこかで⌘/(MacOS)またはCtrl+/(Windows/Linux)を押すと、行コメントでそのコード行がコメントアウトされます。コメント済みの行で同じショートカットを押すと、その行のコメントが解除されます。

コードブロック全体を選択した場合、⌥⌘/(MacOS)またはShift+Ctrl+/(Windows/Linux)を使用してブロックコメントを追加できます。 そのコードブロック内のどこかでカーソルを使用してこのショートカットを再度押すと、ブロックコメントが削除されます。

Cmd + スラッシュの使い方を示すアニメーションGIF

⇧⌘⏎ または Shift+Ctrl+Enter

Complete Current Statement(現在のステートメントを完成)を呼び出す⇧⌘⏎(MacOS)またはShift+Ctrl+Enter(Windows/Linux)は、コーディング中に最も便利なショートカットの一つです。 コーディング中に「現在のステートメントを完成」をよく使用している場合、ほとんどの場合はコードの最後にセミコロンが単純に追加されます。 しかし、このショートカットはより複雑なコードで機能します。例えば “for” ループを書いているときにこのショートカットを押すと、IntelliJ IDEAが該当ブロック内に中括弧を追加し、カーソルを配置します。“if” ステートメントでは丸括弧と中括弧を追加し、やはり適切な場所にカーソルが配置されます。 IDEがステートメントを完成させるのにそれ以上コードを追加する必要がない場合でも、このショートカットを使用して次に必要な場所にカーソルを置けるのは便利です。

Shift+Cmd+Enterの使い方を示すアニメーションGIF

⌥⌘L または Ctrl+Alt+L

⌥⌘L(MacOS)またはCtrl+Alt+L(Windows/Linux)を使用すれば、プロジェクトの標準に合わせて簡単に現在のファイルをフォーマットできます。これはファイル内で変更された行のみ、あるいはファイル全体をフォーマットするように設定できます。 標準によって中括弧が要求されている場合は、フォーマットで中括弧を追加することもできます。 別のフォーマット範囲を指定したい場合は、⇧⌥⌘L(MacOS)またはShift+Ctrl+Alt+L(Windows/Linux)をクリックし、例えばファイル全体を再フォーマットすることを選択できます。

Cmd+Lの使い方を示すアニメーションGIF

⌃T または Shift+Ctrl+Alt+T

IntelliJ IDEAで自動化されているリファクタリングのほとんどには個別のショートカットが割り当てられていますが、⌃T(MacOS)またはShift+Ctrl+Alt+T(Windows/Linux)という1つのショートカットでそれらすべてを利用することができます。あるシンボルや選択範囲でこのショートカットを押すと、利用可能なリファクタリングオプションが表示されます。そのいずれかを矢印キーで選択して入力するか、リファクタリングの左側にある数字を使用して選択することができます。 この特定のリファクタリングが存在する場合、ダイアログにはそのキーボードショートカットも表示されるため、次回は直接それを利用できます。

Ctrl+Tの使い方を示すアニメーションGIF

⇧⌘A または Shift+Ctrl+A

実はここで紹介したショートカットは、すべて覚えておく必要はありません。 Find Action(アクションを検索)を呼び出す⇧⌘A(MacOS)またはShift+Ctrl+A(Windows/Linux)を使用すれば、IntelliJ IDEA内の任意のアクションを検索できます。 ドロップダウンにはアクションだけでなく、そのショートカットも表示されるため、ショートカットを覚えて練習することができます。Find Actionではアクションは言うまでもなくIDEの設定も検索でき、検索結果から直接設定を変更できるようになっています。また、ツールウィンドウを検索して開くこともできます。

Cmd+Shift+Aの使い方を示すアニメーションGIF

Shift Shift

究極のショートカットはSearch Everywhere(どこでも検索)です。Shiftキーを2回押すと、あらゆるものを検索できる検索ボックスが開きます。 Findアクションと同様、このショートカットを使って設定を変更できます。 検索ボックスにはデフォルトで最近のファイルが表示されますので、⌘E / Ctrl+Eの代わりにこのショートカットを使用することができます。検索対象を入力すると、クラス、ファイル、シンボル、アクションからの結果を確認できます。Search Everywhereはコマンドにも対応しているため、例えばエディタの設定を検索できます。

Shift Shiftの使い方を示すアニメーションGIF

その他の情報

これらのショートカットやその他のヒントに関しては、「キーボードショートカットをマスターする」のセクションをご確認ください。 キーマップを確認(および変更)できることを覚えておいてください。そこでも便利なキーボードショートカットを検索し、独自のショートカットを作成できます。 デフォルトのキーマップをダウンロード・印刷(ページの下)してコーディング中に常時見える場所に置くこともできます。

また、略語(abbreviation)を作成して頻繁に使用する項目を素早く検索できるようにしておくのも便利です。 また、Ubuntuユーザーは特に、OSショートカットとの競合に関する非常に有用なセクションを確認しておいてください。

もう一つ最後にお伝えしたいヒントがあります。マウス操作を卒業し、キーボード操作を積極的にマスターしたい場合は、Key Promoter Xプラグインをお試しください。 マウス操作を行うと、対応するアクションのキーボードショートカットが表示されます。これはショートカットを学習するための素晴らしいリマインダーになります!

IntelliJ IDEAの主なキーボードショートカットを覚えておけば作業に集中し続けることができ、より生産性の高い開発者になることができます。

Happy Developing!

[原文Original post in English is written by Trisha Gee

Posted in IntelliJ IDEA, お知らせ | Leave a comment

JetBrainsの20周年記念のサマリー

私たちはJetBrains 2019年のハイライトの特別セクションで、大切なコミュニティの皆さんと共にオンラインで2月5日にJetBrainsの20周年記念を祝いました。 皆さんからの心からの温かい誕生日メッセージに感謝します。 皆さんのご好意に感謝すると共に、心温まる多くの誕生祝いの中からいくつかをピックアップしてご紹介します。

@RobEden氏のTwitter投稿
JetBrainsの皆さん、20周年おめでとうございます! あなた方のツールのおかげで、私は開発者としての腕を上げることができました。 どんなに会社が成長しても、いつも明らかに自分の意見が重要視されていることが気に入っています。 #JB20Bday

@CalvinNrnha氏のTwitter投稿
@androidstudio を使い始めましたが、その素晴らしい機能セットに感謝していました。 その後、それがIntelliJ IDEAをベースにしていることを知りました。 そして @pycharm @WebStormIDE @intellijidea @kotlin を使い始めました。今では言語を学習する際にはJetBrainsがその言語向けのIDEを作っているかどうかを真っ先に調べることにしています。 #JB20Bday

Davyd McColl氏のFacebook投稿
どのJetBrains製品が気に入ってるかって? 全部気に入ってますよ! 私はRider、Webstorm、Datagrip、dotPeekを毎日使っています。 JetBrainsの製品ならば、わかりやすいです。

Mikael Rozee氏のLinkedInでの発言
もう8年ほどJetBrainsの製品を使っています。 私は複数のテクノロジーや言語間をかなりスムーズに移行することができています。いつも頼りになる堅牢なIDEがあることを知っているからです。

Bernard Deffarges氏のLinkedInでの発言
20周年おめでとう! 私はIntelliJを20年間使っていますが、今も楽しく開発していますよ。 IntelliJはリリースのたびにどんどん役に立つ相棒になっています。 私は新しい会社に入社するときは必ず「JetBrainsのツールで開発できますか?」と最初に聞くことにしています。 本当に素晴らしい作品を作りましたね!

@Ned.yotov氏のInstagram投稿
おお、20周年ですか 0.0 私はJajaScriptを6、7年前に始めたばかりでいろいろなIDEやエディタを試していましたが、友達から大学向けの学生ライセンスでWebStormを使うことを勧められましたよ。 私は可能な限り学生向けのエディションを使っていましたが、その後は自分でお金を出してライセンスを取得するようになりました。自分でいろんなショートカットやプラグインを使って思う存分にカスタマイズした最高のIDEだからです。もう他に乗り換える気になりませんよ。:) #JB20Bday

JetBrainsの20周年記念祝典は2月7日(金曜日)まで続き、その間にケーキ、ゲーム、音楽、ダンス、何時間もの楽しいイベントを盛り込んだ豪華な社内パーティーが開催されました。 こちらに私たちのオフィスでの催しの一部をご紹介します。

クリックするとスライドショーを表示

実に素晴らしい20年でした。この先何が起ころうとも、私たちは常に次のマイルストーンを目指します!

Posted in お知らせ | Leave a comment

Kotlin Heroes 3:JetBrainsとCodeforcesからのプログラミングチャレンジ

次回のKotlin Heroesコーディングチャレンジの登録が始まっています! JetBrainsとCodeforcesが共同開催する3回目のプログラミングコンテストとなります。 今すぐ登録しましょう。実施日は2月27日 13:35 UTC(協定世界時) (日本時間22:35)です。

kotlin_heroes_banners-22

Kotlin Heroesの概要と参加すべき理由

Kotlin Heroesは、Kotlinプログラミング言語の開発元であるJetBrainsと最も有名なプログラミングコンテスト主催者であるCodeforcesが共催するプロジェクトです。 過去のKotlin Heroesのチャレンジでは、1回のイベントにつき700名以上が参加しました。 参加者の主な目標は、与えられた課題に対する正しい解答を期限内に提供することです。 課題には簡単なものから難しいものまで難易度の異なる複数のタスクが含まれており、強い関心を持った初心者にとっては魅力的で、経験豊富なユーザーにとってはやりがいのある内容になっています。

コンテストの開催時間は2時間30分を予定しています。 参加者には徐々に難易度が増す7~10件の課題が1つずつ与えられ、課題の解決に使える言語はKotlinだけです。 参加者は正解した課題の数に応じてランク付けされ、上位3名の参加者は$512、$256、$128の賞金をそれぞれ獲得します。 上位50名の参加者は、Kotlin HeroesのTシャツとKotlinピンバッジが授与されます。 さらに、1件以上の課題を解決した参加者全員の中からKotlin Heroes限定Tシャツが抽選(50名様)で当たります。

Kotlin Heroesは、Kotlin言語が競技プログラマーにもたらす能力や機能について学習できる素晴らしい機会です。 これはICPCの次のステージに備えて訓練できるだけでなく、皆さんが競技プログラミングで目標を達成するのに役立つ高速かつ強力な新言語を採用する絶好の機会です。

参加資格と準備について

参加にあたり、経験や経歴による制限はありません。 どなたでもご参加いただけます。 必要なのは、Codeforcesプラットフォームへのご登録だけです。

登録する

初心者の皆さんへ。Kotlinや一般的にプログラミングを始めたばかりであるかどうかは重要ではありません。Kotlin Heroesはあなたのスキルを磨き、Kotlinの特徴や良さを掴むのに適したイベントです。

経験豊富なエンジニアの皆さんへ。Kotlin Heroesはあなたの知識を高める新しい活躍の場を提供しています。 アルゴリズムやデータ構造に対するあなたの理解力を試す機会をお探しの場合でも、単に競争しながら難問に対する最適な解答を見つけてみたいと思っている場合でも、Kotlin Heroesはやりがいのあるイベントです。

競技プログラマーの皆さんへ。 このチャレンジでは強力な新ツールを試すチャンスがあります。 また、競技プログラミングのシーズンに向けて準備しながらさらにスキルを磨くのにも役立つイベントです。

チャレンジに向けて準備するには、Kotlin競技プログラミングのチュートリアルをチェックしてください。 Codeforcesは、Kotlin Heroesチャレンジの開催9日前から始まる練習ラウンドも提供します。 解答はすべて公開されているため、課題をまだ解いていなくても回答を見ることができます。 他にもKotlinでの問題解決能力を磨く方法をお探しの方は、過去問をチェックしてください。

Posted in Kotlin, お知らせ | Leave a comment

JetBrains Mono — 開発者向けの新しい書体

私たちは1年前に非常に野心的な目標を打ち立てました。それは、誰もがより快適にコードを書けるようにするフォントを作ることでした。 そしてついにその目標を達成しました!

JetBrainsMonoTypeface

他の等幅フォントの何が問題なのでしょうか?

私たち開発者は一日の大部分をコードを見て過ごします。 そのため、画面上のテキストを見やすくするために常に最適なフォントを探していても不思議ではありません。 しかし、多くの一般的なフォントのロジックでは、コードを読む場合と書籍を読む場合の違いが考慮されているとは限りません。 私たちの目はさまざまな方法でコードを追います。コードを横方向に読むのと同じくらい縦に読む必要があることもしばしばです。これは文章に沿って常に同じ方向に目を走らせる読書とは対照的なものです。

そのため、私たちはJetBrains Monoを作るにあたって、何よりもまず長時間コーディングを行う際に目の疲れを引き起こす可能性のある問題に注力しました。 このフォントを開発する際には文字の大きさや形、文字間のスペースの量、等幅フォントで自然に設計したバランス、不要な細部、判りにくい文字の違い(Iやlなど)、合字のプログラミングなどを考慮しました。

今回は開発者専用の新しいオープンソースの書体であるJetBrains Monoを発表することができ、大変嬉しく思います。 JetBrains Monoが世に溢れる等幅フォントと何が違うのかを確かめ、ご愛用のコードエディタでお試しください(なお、JetBrains MonoはJetBrains IDEのバージョン2019.3には既に同梱済みです。また、バージョン2020.1より標準フォントとなります)。

Happy building!

Posted in お知らせ | Leave a comment