メニューボタン
IBMi海外記事2017.07.27

RDi アウトライン中毒への復帰を告白

Ted Holt 著

RDi のファンとして臆面もなく言わせていただくと、私の「お気に入り機能」のリストはとても長いのですが、リストの一番上近くには常に RPG IV のアウトライン・ビューがあります。何年も前に、ようやく私を前身のCODE (別名 CODE/400) からWDSC (RDi の前身) に移行させたのは、アウトラインでした。

アウトラインを使わないと言っている RDi ユーザーの数に、私はずっと驚いていました。RSE パースペクティブで、もはやアウトラインさえ持っていないユーザーもいます。彼らは、アウトラインをはるか昔に誤って閉じてしまい、それを知るチャンスがなかったからだろうと、私はいつも思っていました。何年も前の Jon Paris の最初の Four Hundred Guru ヒ ントの 1 つが 、how to get your Outline back if you've lost it (Outlineをなくしたときに再入手する方法)に関することだったのはそのためです。

アウトラインは私が初めてそのとりこになって以来、ソースの変更に基づいて動的に更新されるように完全に書き直されたのを含めて何度も改善されてきました。最近の変更としては、検索ボックス、参照されていない項目を除外する機能、プロトタイプからパラメーター「名」を追加する機能などがあります。そしてもちろん、当初から私を魅了したすべての機能がそこにあります-すぐに使うことができる変数定義とプロトタイプ、ソースのサブルーチンまたはプロシージャーへのクイック・ナビゲーション、またあらゆる変数、サブルーチン、またはプロシージャーが定義、使用、変更されている場所への相互参照などです。

それでも、最近ではアウトラインを使う機会が少なくなっているので、タイトルにあるアウトライン中毒へ復帰となるわけです。なぜでしょうか? アウトラインを使って行っていた非常に多くのことが、現在では直接エディターで可能になっているためです。例えば、フィールドの属性 (特に外部記述属性) を知りたい場合、かつては自分のアウトラインに置いていました。しかし最近は、ソースの変数名の上にマウスのカーソルを置いて、定義を表示してくれる吹き出しテキストを確認することが多くなりました。

サブルーチンやプロシージャーに移動する場合、以前は自分のアウトラインにある名前をクリックして、実際のルーチンに配置していました。今は、EXSR またはプロシージャー呼び出し、ステートメントでその名前をクリックし、F3 ショートカット (右クリックしてコンテキスト・メニューの Source > Open Declaration でも可) を使うだけです。特にエディターがフルスクリーン・モードの場合は、はるかに便利なだけでなく、Alt+Left (または Mac の場合は、 Alt+Command+Left) を使って元の場所 (EXSR またはプロシージャー呼び出しステートメントなど) に、はるかに簡単に戻ることができます。F3 ショートカット (その後に Alt+Left で戻る) も、吹き出しテキストに表示されるその定義の詳細内容を確認したり、定義を変更したりしなければならない場合に、ソースの変数の定義の場所にジャンプできます。

新しいコードを作成する場合、かつては、呼び出したい (プログラムまたはプロシージャーの) プロトタイプの名前と必要なパラメーターを再呼び出しするのに完全にアウトラインに頼っていました。今ではその情報は Ctrl+Space ショートカットで起動する Content Assist からエディターで取得できます。プロトタイプ名またはプロシージャー名の先頭数文字を入力すると、その場所に移動します。そうでない場合は、求める対象が見つかるまで候補のリストをスクロールできます。リストから名前を選択したら、エディターが代わりに名前を入力し、パラメーターに合わせて括弧と適切な数のコロンを記入してくれます。Content Assist を使って個々のパラメーターに入力することもできます。プロトタイプで反映されているような、変数ごとにデータ型が適切な変数のリストが供給されます。

エディターに類似の情報を取得できるほかの方法があることがわかっていても、私はアウトラインを使います。フル・アウトラインに照らして、物事をより簡単に考察できる場合があります。例えば、データ構造とそのサブフィールドを調べる、ファイルのレコードのフル・レイアウトを見直す、またはプログラムで利用できるすべてのプロトタイプを検討するなどです。またアウトラインを使って、サブルーチンやプロシージャーがいくつあるか、プロトタイプ呼び出しがいくつあるか、ファイル仕様経由でいくつのファイルにアクセスしたかなど、プログラムの構造に関するヒントがないかその概要を確認します。アウトラインでフィールドを展開すると、値が変更されている行別の標識 (M) など、参照されているすべてのコード行が表示され、各行に移動してコードを検討することができます。また、例えば、コードの変数を見つけるよりも (特に、その機能を使って名前別に項目をソートしたり、名前別にフィルタリングしたりして参照されていない項目を非表示にする場合に) アウトラインで見つける方が簡単に見える場合があります。

私自身、アウトラインを頻繁に使っていると気が付いた時、フルスクリーン編集ウィンドウを使っている時に簡単に見つけることができる特殊パースペクティブを作成したことがあります。このパースペクティブは、エディターとアウトラインの 2つだけで構成されています。自分用に特殊パースペクティブを作成するには、Remote System Explorer パースペクティブ (またはそのカスタマイズ版) から開始し、エディターとアウトラインの 2つを除くすべてのビューを (X をクリックして) 閉じるだけです。アウトラインとエディター間のラインをスライドさせて、アウトラインのサイズを調整したい時があるかもしれません。その時はWindow メニューで「Save perspective as ...」を選択して、新しいパースペクティブに名前を指定します。自分のパースペクティブを「My Outline (マイ・アウトライン)」と呼びます。これは「My RSE」という他の特殊パースペクティブとぴったり合います。

My Outline (マイ・アウトライン) パースペクティブができたので、使い方を説明します。通常は、IBM の Remote System Explorer パースペクティブをわずかにカスタマイズした「My RSE」から始めます。RPG コードに取り掛かっているとき、ソース・メンバー・タブをダブルクリックしてフルスクリーンにします。上記の機能のおかげで、アウトラインがなくても大抵うまくいくことが多いのです。または、右余白のアウトラインの Fast ビュー・アイコンを使うだけで、一時的にエディター上でアウトラインを突然表示させることができます。しかし、特定の編集セッションでアウトラインを頻繁に参照していると気が付いた場合は、右上隅近くの「My Outline (マイ・アウトライン)」パースペクティブをクリックして、フルスクリーン・エディターに沿って配置されている「永久」アウトラインを取得するだけです。RSE パースペクティブから他のビューが必要な他の作業をするために戻る準備ができたら、My RSE パースペクティブをクリックするだけで、まだフルスクリーン編集ウィンドウにいる場合は、メンバー・タブをダブルクリックして、現実の自分の通常 RSE ビューに戻ります。

私は、昔よりもアウトラインを使わないものの、それはお気に入り RDi 機能のリストにあります。あなたもアウトライン中毒なら、似たようなことを別の方法で行う方法、または RPG ソースの編集時にアウトラインにもっと簡単にアクセスできるようにする方法について、こうしたアイデアが多少のヒントになるでしょう。

書いた内容を補足するための簡単なビデオを作成しました。 ここで確認してみてください。

あわせて読みたい記事

PAGE TOP