エディット:
テンプレート、 クリップ、プロトタイプ、ショートカット

エディット機能の概要

 

Maxのバージョン4.5.5から、パッチャー編集環境に多くの機能が含まれるようになり、日常のソフトウェアによる作業をより生産的にするためのカスタマイズが可能になりました。次の一覧表は、これらの機能の概要や、目的、使用法とその範囲について簡単に述べ、ファイルの場所を示しています。

機能
効果
使用法
適用対象
ファイルの場所
テンプレート
(Templates)
共通のスタートポイントを作ります。 File->New menuを選びます。 パッチャーウィンドウ全体。 :patches:templates
クリッピング
(Clippings)
一般的に使用されるオブジェクトのグループをパッチに追加します 。 ロックされていない状態のパッチャーの明いた領域で、[Control]+ クリック、または右クリックすると、メニューが表示されます。その後、Paste From.. .サブメニューから項目を選びます。 パッチャーの内容を他のパッチャーに挿入します。 :patches:clippings
プロトタイプ
(Prototype)
あらかじめ設定されたユーザインターフェイス要素を作ります。 オブジェクトを選択し、Object メニューから Prototypes を選びます。 個別のユーザインターフェイスオブジェクト。 :patches:object prototypes
ショートカット
(Shortcuts)
オブジェクト名とアーギュメントの、過度のタイピング量を減少させます。 ショートカットをタイプし、その後、[ESC]キーを押します。 オブジェクトボックス内のテキスト。 Cycling’74 フォルダの中のInitフォルダ

テンプレート(Templates)

テンプレートは、おそらく、新しい編集機能の中でもっともわかりやすいものでしょう。Max application フォルダ内にある patches フォルダの中には templates と呼ばれるフォルダがあります。このフォルダの中に「ステーショナリ」と呼ばれるアプリケーションを置くことができます。 これは、Max の場合、より大規模な作業を行なうためのスタートとして使いたいパッチャーファイルのことです。一般的な templates フォルダでは、次のようなファイルがあるのを見ることができます。

Max の File メニューの中の New サブメニューはこの構成を反映し、次のようになっています。Templates は Patcher、Table、Text、Timeline の下に表示されます。

New メニューの中のこれらの項目の内の1つを選択すると、パッチャーファイルが開きますが、ウィンドウにはタイトルがついていません( untitled になっています)。そして、ロックされていない状態で、修正されたというマークもありません。これは、audiostart パッチャーがテンプレートとして開かれたものです。(このページに合うように小さくしてあります)

audiostart テンプレートファイルのアイデアはこのようなものです。作成するほとんどのオーディオパッチには、dac~ オブジェクト、gain~ スライダ、オーディオをスタートさせる toggle などがあります。これらを毎回手作業で配置する必要があるでしょうか?

他のテンプレートはパッチャーウィンドウを特定のサイズや形で保存してあったり、特定の背景色を指定してあったり(これはユーザが colors フォルダで行なったものです)するものです。あなたは、おそらく様々なテンプレートが最初のスタートとして役に立つものであると考えると思います。例えば、プラグインを書く場合、通常使っているテスト用のメカニズムと同様に、plugin~plugout~plugconfig オブジェクトによってテンプレートを作ることができます。

テンプレートファイルを修正したい場合には、Fileメニューから Open を選び、application フォルダ内の patches フォルダの中にある templates フォルダを探して下さい。New メニューを使って開かれた場合にのみ、テンプレートファイルは(テンプレートとしての)異なった振る舞いをします。

クリッピング(Clippings)

多くの人は、Max を使用するたびに、結果として同じ小さな「パッチの一部」を繋ぎ合わせる作業を行なっています。これらの「小さなコードの塊り」は、作業をしている同じパッチャーの中で使いたいと思うことがよくあるため、これをサブパッチャーやパッチ・オブジェクト(アブストラクション)として使用する方法はあまり助けにはなりません。パッチ・オブジェクトの場合、容易に編集できないという弱点があります。また、サブパッチャーもパッチ・オブジェクトも、一般的に使用されるオブジェクトのグループを別のウィンドウに置いたものであるため、見やすいとは言えません。

同じパッチを何回も繰り返して使っているような場合、Max application フォルダ内の patches フォルダの中にある clipping フォルダを使うと良いでしょう。clipping フォルダの内容は、パッチャーのコンテキストメニューの Paste From... という項目のサブメニューに追加されます。ことによると、これまでパッチャーのコンテキストメニューを使ったことさえないかもしれませんが、Paste From.. は非常に時間を節約してくれるものですから、チェックしてみるべきでしょう。Paste From... は、パッチャーファイルの内容を、作業中のパッチャーの中にペーストします。その際、カレントのカーソル位置(すなわち、コンテキストメニューを表示させるためにクリックした位置)がコピー元のパッチャーウィンドウの左上隅になるように配置します

パッチャーのコンテキストメニューを表示させるためには、ロックされていないパッチャーの空いている場所で、Maxでは [Control]キーを押しながらクリック、Windows では右ボタンをクリックします。Paste From は最後の項目で、サブメニューにはclipping フォルダにあるすべてのパッチャーがリストとして表示されます。

サブメニューからアイテムの1つを選択すると、その内容が、サブメニューを見るためにクリックした位置にペーストされます。

例えば、次のようなパッチャーウィンドウを考えて下さい。

上のウィンドウは pasty という名前のファイルとして Max/MSP アプリケーションフォルダ内の patches フォルダの中にある clippings というフォルダに保存してあります

これによって、実際にランダムなノートを使う別のパッチャーの中に、Paste From... を使ってこの内容を配置することができます。

[Control] + クリック、あるいは右クリックによって、パッチャーのコンテキストメニューが表示されます。その後、Paste From のサブメニューから pasty を選びます。pasty の中にあったオブジェクトが、クリックした位置に現れます。

clipping フォルダにある、Paste From... メニューの内容には、作業を開始する上での非常に基本的なアイデアが含まれています。Other... という項目を使って任意のパッチャーを開き、その内容を作業中のパッチャーにペーストすることができます。

プロトタイプ(Prototypes)

プロトタイプは、個々のユーザインターフェイスオブジェクトを通常使用するセッティングの組み合わせに変換するものです。

Max ユーザインターフェイスオブジェクトの中には、インスペクタウィンドウで設定できる、数多くの細かい設定を持つものがあります。特に、pictsliderpictctrl のようなオブジェクトにでは美しいスライダやダイアルを作ることができますが、一度作ってしまうと、おそらくそれらはどこかのパッチャーウィンドウに置いたままになってしまうでしょう。そのパッチャーがどこにあるかを思い出し、オブジェクトをファイルからコピーし、編集中のパッチャーの中にペーストしなければなりません。あるいは、それらが見つからずに最初から作り直さなければならないこともよくあります。

プロトタイプは、オブジェクトボックスを除くすべてのユーザインターフェイスオブジェクトに適用できます。

パッチャーウィンドウのパレットの中にあるユーザインターフェイスオブジェクトのアイコンの上にマウスを移動させたとき、あるいはパレットの右側にあるアイコンのメニューをスクロールしたとき、いくつかのオブジェクトでは、パッチャーウィンドウのアシスタンスエリアの中に表示されるオブジェクトの説明に続くカッコの中にそのオブジェクトが持っているプロトタイプの数が表示されます。例えば、次のような文字列では、pictctrl オブジェクトがプロトタイプを1つ持っていることを示しています。

Picture Control (1 Prototype)

新しい pictctrl オブジェクトを作った場合、デフォルトのオブジェクトが作られたことになります。デフォルトのオブジェクトは一般的なサイズで、画像を持たない、特別な動作の設定を伴わないものです。これは、実用的ではありません。しかし、オブジェクトのプロトタイプの1つを選択することによって、たちまち実用的なものになります。プロトタイプの選択は次のように行ないます。

新しいオブジェクトを作るとき、オブジェクトを配置したい場所にカーソルを置き、クリックします。しかし、通常行なうようにマウスボタンを放すのではなく、ボタンを1秒間程度押し下げたままにしておきます。そうすると、すべての利用できるプロトタイプのリストによるメニューが表示されます。そのうちの1つを選ぶと、そのオブジェクトに対して直ちにプロトタイプが適用されます。

・オブジェクトを作った後、オブジェクトを選択し、Object メニューの Prototypes サブメニューの中の項目を選んで下さい。選択したオブジェクトに、メニューから選んだプロトタイプが適用されます。

・オブジェクトのコンテキストメニューを使って Prototypes サブメニューを表示させて下さい。そのためには、パッチャー内のオブジェクトを [Control] + クリック、あるいは右クリックします。選んだプロトタイプが、クリックしたオブジェクトに適用されます。

プロトタイプの適用は元に戻すことができます。しかし、1度にプロトタイプを適用できるオブジェクトは1つだけです。

プロトタイプの保存

希望にかなうオブジェクト設定のコレクションを作成したら、これを後々使用するためのプロトタイプとして保存することができます。保存したいオブジェクトを選択し、Object メニューから Save Prototype...を選びます。

表示されたウィンドウでプロトタイプに名前をつけ、Save ボタンをクリックして下さい。プロトタイプは object-prototypes フォルダのサブフォルダに保存されます。

保存したパッチャーの中でプロトタイプを適用したオブジェクトを使っている場合でも、次にパッチャーを開いたときにプロトタイプが保存されているかどうかを心配をする必要はありません。プロトタイプ機能は、まさに編集ツールです。これは単に、オブジェクトを、プロトタイプファイルの指示にしたがって作成された新しいオブジェクトで置き換えるものです。言い換えれば、プロトタイプは "パッチ・オブジェクト(アブストラクション)"とは異なり、オブジェクトへの参照ではありません。既存のプロトタイプを上書き保存しても、そのプロトタイプを使って作成されたオブジェクトはまったく影響を受けません。

プロトタイプとオブジェクトデータ

プロトタイプを保存する前に Include Data をチェックしておくと、プロトタイプにオブジェクトからのプリセットデータを含めることができます。既存のオブジェクトの中のデータは、プロトタイプが持つプリセットデータ、あるいはデフォルトデータによって、常に置き換えられます。場合によっては、オブジェクトの「データ」が、そのプリセットデータである必要がないこともあります。例えば、umenuubumenu オブジェクトのメニュー項目のテキストはパッチャー内にオブジェクトと共に保存されますが、これはプリセットではありません。(選択されたカレントのメニュー項目はプリセットとして保存されます)。オブジェクトの接続、パッチャー内のスクリプトで使用する名前(存在する場合)、イメージバーガー(imageburger:オブジェクトに関連づけられた画像)は、プロトタイプが適用されてもそのまま保たれます。

bpatcher オブジェクトのためのプロトタイプ

プロトタイプ機能の最もパワフルな使用法の1つは、bpatcher オブジェクトを使った、一般的に使用されるパッチャー要素のコレクションを作成する機能の利用です。プロトタイプは bpatcher のカレント(現時点)の設定(例えば、クライアントパッチャーの表示領域)を保存します。これは、パッチと共に利用したいビジュアルな「部品(コンポーネント)」のカタログを作ろうとする場合に役に立つことがあります。

テキストオブジェクト(オブジェクトボックス内のテキスト)の選択

訳注:「テキストオブジェクト」はオブジェクトボックス内に書き込まれるテキスト(例えばオブジェクト名 'counter' など)の文字列を指します。

パッチャーの中のオブジェクトから "テキスト" としてコピーしたデータを格納した場合、パッチャー内で行なう「選択」についての曖昧さが浮き彫りになります。オブジェクトボックス、メッセージボックス、あるいは comment の上でクリックした場合、これは "ボックス" を選択したのでしょうか、それともボックスの中の "テキスト"を選択したのでしょうか? Maxは次のように動作します。

・ボックスがテキスト編集のための選択を行なわれたように見えていて、それをコピー、あるいはカットした場合、ボックスの中の "テキスト" がクリップボードにコピーされます。この場合、 "ボックスを作るためのデータ" がコピーされたわけではありません。

・"ボックス全体" が選択された場合、ボックス自身(すなわち、ボックスを作るためのデータ)がクリップボードにコピーされるため、そのオブジェクトのコピーを他の場所へペーストすることができます。

Max は「ボックスの中のテキスト」と「全体としてのボックス」を明確にしてコピーします。テキストオブジェクトの内側でクリックし、テキスト選択を行なって編集しようとしていた場合、コピーしていたオブジェクトからの「テキスト」がペーストされます。そうでない場合、「オブジェクト全体」としてペーストされます。

テキストオブジェクトをクリックすると、その内部のテキストを編集するための選択を行ないます。オブジェクトをクリックし、マウスボタンを放す前にドラッグすると、(少なくとも見た目には)テキスト編集ができる状態にはなりません。

ボックスを選択するために周囲をドラッグした場合、(少なくとも見た目には)内部のテキストを編集するための選択をにはなりません。

パッチャーウィンドウでのテキスト選択のためのオプション設定に関する詳細は、「Maxファンダメンタル」というマニュアルの「メニュー」セクションの中にある「Option メニュー」の、Text Selection... についての記述を参照して下さい。Typing Automatically Edits Selected Box オブションがオンの場合(これがデフォルトの設定です)、ロックされていないパッチでタイプすると、オブジェクト全体が選択されている場合でも、キーを押した情報が選択されたオブジェクト内のテキストオブジェクトに送られ、編集することができます。このオプションがオフの場合には、オブジェクト内のテキストをタイプして編集する前に、テキストが(下の図のように)選択状態で表示されているか、テキストの中に挿入ポイントが存在する状態でなければなりません。

Select Text on Click オプションがオンの場合(これがデフォルトの設定です)、ボックスをクリックし、動かさなければ、直ちにテキストが選択され、テキスト編集が可能になります。これがオフの場合、ボックスをクリックしたときには常にオブジェクト全体として選択されます。再びクリックするとオブジェクト内のテキスト全体を選択するようになり、さらにもう一度クリックすると、クリックした位置に挿入ポイントが移動します。この動作は Mac OS X のファインダと同じものです。

さらに便利な機能として、(Mac、Windows双方での)[Enter] キーの役割の変更があります。[Enter]キーは、テキストオブジェクトのテキスト編集モードに入ったり、テキスト編集モードから抜け出したりする動作を行ないます。。例えば、次のようにオブジェクト全体を選択していたとします。

[Enter]キーを押すと、ボックスの内部はテキスト編集ができる状態になります。

もう一度 [Enter]キーを押すと、変更があればそれが更新されます。そして、オブジェクト全体が選択された状態に戻ります。[Enter]キーを押すことによって、二つの選択モードの間で切り替えを行なうことができます。

Mac OS X マシンには [Return] キーと [Enter] キーが別々にありますが、Windows XP マシンは [Enter] キーしか持っていません。Windows XP の [Enter]キーは、 Mac OS X の [Return] キー、および [Enter] キーの [Shift] + [Enter] として機能します。そのため、Windows XP では、テキストオブジェクトのテキスト編集中に [Enter] キーを押すと新しい行を追加し、[Shift] + [Enter] がテキスト選択モードとボックス選択モードの間切り替えを行ないます。

Options メニューにはオプション編集用パッチが追加されています。これを使って、Select Text on Click やTyping Automatically Edits Selected Box の設定を変更することができます。