ドラッグアンドドロップとコピーアンドペースト


PCKはドラッグアンドドロップを多用しており、これに慣れれば作業がスピーディになるはずです。もちろん、ドラッグアンドドロップによって実行できる操作は、どれもダイアログボックスでも実行できるようになっていますので、ドラッグアンドドロップを使わなくてもほとんどの機能を利用できます。さらに、ver.2.0.0.0以降では、ドラッグアンドドロップでできることはすべてコピーアンドペーストでも実行できるようになりました(ただし、: pipelineの「補助入力」ダイアログにファイルを追加したい場合には、ドラッグアンドドロップを使ってください。ファイルがクリップボードにセットされているときに「貼り付け」ボタンを押しても、メインの方の入力ダイアログの内容が変わるだけです)。

コマンド行のドラッグアンドドロップ

GUIフロントエンド(ver.2.0以降の: pipelineを含む)の最下部のコマンド行表示行の左には、次の図のように白っぽい四角があります。

 

 

この四角をマウスでクリックし、にドラッグすると、のパイプラインに四角の右側のコマンド行が追加されます(送り元が環境変数を設定できるGUIフロントエンドの場合には、そのGUIフロントエンドで設定された環境変数の内容もに反映されます)。この操作は、のコマンド行の重要な編集手段となっていますので、是非覚えてください。ver.2.0以降では、同じ種類のGUIフロントエンドやcmdline)にドラッグアンドドロップしたときに、ドラッグ先のコマンド行がドラッグ元のコマンド行と同じになるようにもなりました。また、からコマンド行をドラッグすることもできるようになりました。メインダイアログでアイテムが選択されている場合にはそのアイテム、そうでなければパイプライン全体がエキスポートされます。からに複数のアイテムをドラッグアンドドロップしようとすると、次のようなメッセージボックスが表示されます。

 

 

はい」を選択すれば、にそれまで表示されていた内容(及び追加設定されている環境変数)はクリアされて、代わりにドラッグされてきた内容が表示されます。「いいえ」を選択すれば、両方を結合します。「キャンセル」を選択すれば、ドラッグアンドドロップを中止します。

ver.2.0.0.0以降では、ドラッグアンドドロップと同様の効果を持つ「コピー」、「貼り付け」ボタン(「貼り付け」がダイアログボックスに表示されているのはだけですが、ほかのGUIフロントエンドでも、マウスの右ボタンをクリックしたときに表示されるメニューには、「貼り付け」コマンドが含まれています)も追加されました。ただし、ドラッグアンドドロップはクリップボードの内容を壊しませんが、コピーアンドペーストはクリップボードの内容を壊す(壊してGUIフロントエンドのコマンド行情報を格納する)という違いがあります(その代わり、コピーアンドペーストなら、同じデータを繰り返しペーストできます)。

さらに、ver.2.0.0.0以降では、[Shift]キーを押しながらこの四角をクリックすると、次のようなメニューが表示されます(のメインダイアログで選択したときに「補助入力」ボタンが有効にならないGUIフロントエンドでは、「補助入力に移動」は表示されません)。このメニューは、起動後初めてオープンしたときには、かならず「入力ファイル移動なし」が選択された状態になっています。これが選択されているときには、ドラッグアンドドロップでドラッグ先に渡される情報は、以前のバージョンと同様に、コマンド行のみです。

 

 

しかし、「メイン入力に移動」を選択すると、ドラッグ元で入力が指定されていれば、それがドラッグ先の新しい入力になります(「入力ファイル」ダイアログの内容が入れ替わります)。また、「補助入力に移動」を選択すると、ドラッグ元で入力が指定されており、ドラッグ先がなら、のメインダイアログで対応するアイテムを選択し、「補助入力」を選んだときに表示される「補助入力」ダイアログの内容がそれになります(ドラッグ先が以外なら、「メイン入力に移動」が選択されたときと同じ動作になります)。どちらの場合も、ドラッグ元で入力が指定されていない場合には、「入力ファイル移動なし」と同じ動作になります。

なお、ver.2.0.0.0以降とver.1.xでは、ドラッグアンドドロップされるデータの形式が異なります。たとえばver.1.xGUIフロントエンドからver.2.0.0.0にコマンド行をドラッグアンドドロップすることはできませんので、注意してください。

入力テキストのドラッグアンドドロップ

ver.2.3.0.0以降では、エディタなどでテキストを選択し、それをドラッグアンドドロップでGUIフロントエンドにドロップすると、ドロップされたテキストを入力ファイルとして扱い、コマンド行を実行します。ただし、コマンド行として解釈できるテキストファイル(バッチファイル)は、ドラッグアンドドロップするとコマンド行として解釈されます。しかし、[Ctrl]キーを押しながらドロップすれば、コマンド行のバッチファイルも通常のテキスト入力として扱われるようになります。

小さな変換コマンド行を用意し、GUIフロントエンドを「縮小表示」にして、「出力クリップボード」をチェックし、さらに「設定」ダイアログで「標準出力のためにエディタを起動しない」をチェックすると、GUIフロントエンドをエディタのプラグインのように使えます。エディタでテキストを選択し、テキストをGUIフロントエンドにドロップすると、クリップボードに変換後のテキストがセットされます。ドロップした後もテキストが選択されたままになっていれば、ドロップ後、少し時間を空けて[Ctrl]-[V]を押せば、変換後のテキストがクリップボードからペーストされます。ドラッグアンドドロップの場合、GUIフロントエンドに入力フォーカスを移す必要さえありませんので、かなりスピーディにテキストを操作できます。

オプション文字列のドラッグアンドドロップ

ver.2.3.0.0以降では、オプション文字列のテキストをペースト、または[Shift]キーを押しながらのドロップで受け付けるようになりました。以外のフロントエンドに、そのフロントエンドが指定できるオプション文字列が含まれているテキストをペーストまたは[Shift]ドロップすると、コマンド行とダイアログコントロールが変化します。

ファイル、フォルダのドラッグアンドドロップ

ver.1.xまでは、ファイル情報のやり取りに関しては、エクスプローラからファイルをドラッグアンドドロップすることしかできませんでしたが、ver.2.0.0.0以降は、エクスプローラでコピーしたファイルをペーストしたり、「入力ファイル」ダイアログまたは「入力」グループボックスからファイル情報をコピー、ドラッグしたりすることができるようになりました。GUIフロントエンドからコピー、ドラッグされたファイル情報をエクスプローラにペースト、ドロップすると、エクスプローラ内でのコピーアンドペースト操作と同様に、ファイルをコピーすることができる場合があります(Windows 9x/Meのエクスプローラにペーストすると、コピーアンドペーストではなく、カットアンドペーストされるようです。Windows 2000Windows XPでテストしたときにはコピーアンドペーストになりました。また、Windows 98でも、ドラッグアンドドロップなら、コピーされるようです。また、標準添付のクリップボードビュアは、エクスプローラからコピーされたファイルデータなら表示できますが、PCKからコピーされたファイルデータは表示できません)。

ファイル情報をコピー、ドラッグしたいときには、「入力ファイル」ダイアログ内の「コピー」ボタン、ドラッグ用四角形を使います。ダイアログ内で選択されているファイルがある場合には、そのファイル、そうでなければ、ダイアログ内のすべてのファイルがコピー、ドラッグされます。「入力ファイル」ダイアログを持たないGUIフロントエンドの場合には、「入力」グループボックス内に「コピー」コマンドとドラッグ用四角形が含まれています(ただし、dirfe: を除く)。これらを使えば、「入力ファイル」ダイアログを持つGUIフロントエンドと同様に、ファイル情報をエキスポートできます(ただし、エキスポートできるファイルは1つまたは2つだけですが)。

 

 

ドロップ、ペーストは、コマンド行情報の場合と同様です。GUIフロントエンドのどれかのウィンドウにドロップすれば、ドロップと見なされますし、メインダイアログの「貼り付け」ボタン(またはメインコンテキストメニューの「貼り付け」コマンド)を選択すれば、ペーストと見なされます。

キーボードのキーを押していない状態で(正確に言えば、後述のキー以外のキーを押していても同じ結果になります)エクスプローラや他のGUIフロントエンドからファイルをドラッグドロップまたはコピーアンドペーストすると、そのファイルが入力ファイルとして使われます(「入力の指定」参照)。複数の入力を受け付けるGUIフロントエンドの場合、ファイルをドロップすると、次のようなメッセージボックスが表示されます。

 

 

メッセージボックスに書かれているように、「はい」を選択すれば追加、「いいえ」を選択すれば置換が行われます。

キーボードのキーを押していない状態でエクスプローラからディレクトリをドラッグドロップすると、そのディレクトリがカレントディレクトリになります(「作業ディレクトリ」参照)。

Ctrl-Shiftドロップ

 [Ctrl]キーと[Shift]キーの両方を押しながら、cmdline)以外のGUIフロントエンドにファイル1個分のファイル情報をドロップまたはペーストすると、そのファイルが入力ファイルではなく、出力ファイルとして指定されます。複数のファイルをドラッグしたときには、[Ctrl]キーと[Shift]キーの両方を押していても、それらのファイルは入力ファイルとして使われます。

エクスプローラで1個のディレクトリを選択し、[Ctrl]キーと[Shift]キーの両方を押しながら、cmdline)以外のGUIフロントエンドにドラッグドロップすると、次に出力グループボックスの「参照」ボタンを押したときに表示されるディレクトリがそのディレクトリに変わります。ほとんどのGUIフロントエンドでは、「入力ファイルの追加」ダイアログでも同じディレクトリを使いますので、ディレクトリのCtrl-Shiftドラッグは、入力ファイルのスピーディな指定のためにも役に立ちます。ただし、ファイルの場合と同様に、複数のディレクトリをドロップしても無意味です。

Ctrlドロップ

 [Shift]キーを押さず、[Ctrl]キーを押しながら.batファイルをドロップまたはペーストしたとき、GUIフロントエンドがその.batファイルを解釈できる場合には、「ロード」ボタンを押してそのファイルを選択したときと同じように、.batファイルの内容をロードします。

Shiftドロップ

一部のGUIフロントエンドは、[Ctrl]キーを押さず、[Shift]キーを押しながらファイルやディレクトリをドロップまたはペーストしたときに、上記とはさらに異なる動作をします。

dir)、dir)、ls)、pipe line)、command line)に[Shift]キーを押しながらディレクトリをドロップすると(以外は複数可)、そのディレクトリに移動するのではなく、そのディレクトリをコマンドの引数として渡すことができます。

findstr)、grep)、sed)、awk)、perl)、python)、ruby)に[Shift]キーを押しながらファイルをドロップすると、パターンファイルやスクリプトファイルを指定できます。複数のファイルを指定できるものには、複数のファイルをドロップできます。