Poderosa4.0 シェル補完機能

 Poderosaバージョン4で新しく搭載されたシェル補完機能は、シェルへのコマンド入力を簡単にする機能です。Visual StudioやEclipseのコード補完機能と類似したものです。

intellisense.jpg

シェル補完機能の起動

 次の2つの方法があります。

  1. シェルでの入力の任意の時点で Ctrl + .(ピリオド) を入力
  2. 単語の先頭の文字入力

 こう書くと難しく見えますが、実際に使ってみるのが早いでしょう。(2)は、例えば過去に cd ~/.ssh と入力した履歴がある状態で、cd に続けて ~ を入力するとその時点で ~/.ssh が候補に現れる、ということです。  なお、補完すべき候補が存在しないときはこれらの入力は無視されます。

補完のリスト

 補完の候補になるリストは、過去のコマンド入力から決まります。リストの内容はPoderosaを終了しても記憶されます。  行の途中でリストを表示させた場合、それまでの入力に対して前方一致する候補だけが表示されます。例えば、ls と入力すると、コマンドの履歴の中でlsの引数として与えたことのある内容が並ぶ、ということになります。

補完中の操作

 リストが表示されている間は、次の操作ができます。

Tab / Space一単語だけ確定させます。
Enterコマンド全体を確定します。
ESC何も入力せずリストを閉じます。この後は、同一行においてはCtrl+.によるリスト表示のみを受け付けるようになります。
Ctrl+Sコマンドの入力履歴順とアルファベット順を切り替えます。

 また、一時的にポップアップを禁止させたいときは、コンソールメニューまたはツールバーの「シェル補完」の項目でオフにできます。この切り替えは標準でAlt+Iに割り当てられています。

シェルスキーム

 シェルスキームとは、入力履歴やプロンプトの認識方法の設定を組にしたものです。  例えば、複数のホストで作業しているユーザは、ホストごとに個別の入力履歴を持たせたいでしょうし、同じホストであってもftpやデータベースのメンテナンスのようにホストで起動するアプリケーションが独自のシェルを提供することもあります。  一方、同じ構成の複数のホストを管理するために、同一の入力履歴を持たせたいということもあるでしょう。

 シェルスキームとはこれらの切り替えを可能にする仕組みです。現在のシェルスキームはメニューまたはツールバーから指定できます。

 また、シェルスキームを編集するにはツールメニューのシェルスキームエディタを使います。

schemeeditor.jpg

 シェルスキームエディタでは、次のことができます。

シェルスキームの作成と削除
ただし、標準スキーム(genericという名前です)は削除できません。
プロンプトの設定
Poderosaが入力コマンドを把握するために、プロンプトの形を指定する必要があります。指定は正規表現で、かつ空文がマッチしてはなりません。デフォルトではごく一般的なプロンプトにマッチすると思われる ^[^>#]*(>|#) という正規表現になります。
1文字削除のキー設定
直前の文字を削除するために送るコードを、BackSpaceとDeleteから選びます。
コマンド履歴の削除
ターミナルエミュレータの宿命として、コマンド入力が意図したものなのかタイプミスなのかや、ホスト側で実行が成功したかどうかを判定する方法はありません。リストに余計なものが入ったときには、ここから余計なコマンドを取り除いてください。

主な制限と注意事項

 コマンドに日本語が入ることは想定していません。要望次第ではそこも考慮に入れようと思います。  コマンド入力が複数行に渡る場合、Poderosaは補完を試みますが完全ではありません。これは、複数行入力ではホスト側のシェルがエスケープシーケンスでいろいろと見た目の制御をしてくるためです。

 この機能は、ユーザにストレスを感じさせないことを考えて作りましたが、使い勝手についてはユーザの意見も分かれやすいと思います。まだ十分に洗練されたとはいえない機能ですので、意見・感想をメーリングリスト等に出していただければと思います。


最終更新日時: Wed, 31 May 2006 18:35:46 JST (812d)