ワークスペース・マネージャのカスタマイズ dtwm、「ワークスペース・マネージャ<$nopage>」を参照してください<$nopage>ウィンドウ・マネージャ「ワークスペース・マネージャ」も参照してくださいMotif ウィンドウ・マネージャ、「ワークスペース・マネージャ<$nopage>を参照してください この章では、デスクトップ・ワークスペース・マネージャのカスタマイズの方法について説明します。 ワークスペース・マネージャ定義 ワークスペース・マネージャは、デスクトップが提供するウィンドウ・マネージャです。他のウィンドウ・マネージャのように、次のことをコントロールします。 ウィンドウ枠コンポーネントの外観 ウィンドウの重なり順やフォーカス動作などのウィンドウの動作 キー割り当てとボタン割り当て アイコン化されたウィンドウの外観 [ワークスペース]メニューと[ウィンドウ]メニュー さらに、次のデスクトップ・コンポーネントをコントロールします。 ワークスペース。いくつものワークスペースを管理し、各ワークスペースごとにどのウィンドウを開いているか監視します。 ワークスペース背景。スタイル・マネージャを使用して背景を変更しますが、背景の管理はワークスペース・マネージャの機能のひとつです。 背景ワークスペース背景 フロントパネルワークスペース・マネージャによって管理されたワークスペース・マネージャフロントパネルの管理フロントパネル。フロントパネルは独自の構成ファイルを使用しますが、そのファイルはワークスペース・マネージャが作成および管理します。 これらのほとんどはスタイル・マネージャで変更できます。スタイル・マネージャは、よく行われる変更を手間をかけずにすばやく行えるようにします。他のリソースは手動で設定しなければなりません。 ワークスペース・マネージャは dtwm です。Motif ウィンドウ・マネージャをベースとしています。 関連項目 ワークスペース・マネージャのリファレンス情報については、dtwm(1) および dtwmrc(4) のマニュアル・ページを参照してください。 ワークスペース・マネージャのリソースの設定については、 を参照してください。 フロントパネル構成ファイルの情報については、 を参照してください。 リソース設定の追加情報については、 を参照してください。 ワークスペース・マネージャ構成ファイル<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>構成ファイル</Secondary></IndexTerm><IndexTerm><Primary>構成ファイル</Primary><Secondary>ワークスペース・マネージャ</Secondary></IndexTerm><IndexTerm><Primary>構成ファイル</Primary><Secondary>ウィンドウ・マネージャ</Secondary></IndexTerm> ワークスペース・マネージャは、ウィンドウ・メニュー、ワークスペース・メニュー、ボタン割り当て、構成ファイルからのキー割り当てに関する情報を獲得します。 ワークスペース・マネージャは、次のファイルのいずれかを使用します。 個人用ファイル: HomeDirectory/.dt/dtwmrc ファイルdtwmrc システム・カスタム・ファイル: /etc/dt/config/language/sys.dtwmrc ファイルsys.dtwmrc 組み込みファイル: /usr/dt/config/language/sys.dtwmrc ワークスペース・マネージャは、上記に示した順で構成ファイルを検索し、最初に見つけたファイルを使用します。 2つ以上のセッション言語を使用するユーザは、個人用の言語依存構成ファイル HomeDirectory/.dt/language/dtwrmcHomeDirectory/.dt/dtwmrc より優先するものとして作成することができます。 個人用構成ファイルを作成または変更するには<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>個人用カスタマイズ</Secondary></IndexTerm> 個人用ワークスペース・マネージャ構成ファイルは HomeDirectory/.dt/dtwmrc です。このファイルが存在している場合は、これを使用します。 [デスクトップツール]アプリケーション・グループの [Dtwmrc の編集]アクションdtwmrc ファイル編集 [Dtwmrc の編集]をダブルクリックします。 すでに個人用 dtwmrc ファイルがある場合は、エディタに読み込まれます。ない場合は、sys.dtwmrcHomeDirectory/.dt/dtwmrc にコピーされ、それからエディタに読み込まれます。 ファイルを編集します。 エディタを終了します。 ファイルは、その元のソースにかかわらず、個人用 dtwmrc として保存されます。 システム共通構成ファイルを作成するには<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>システム共通のカスタマイズ</Secondary></IndexTerm> システム共通のワークスペース・マネージャ構成ファイルは /etc/dt/config/language/sys.dtwmrc です。 /usr/dt/config/language/sys.dtwmrc ファイルsys.dtwmrc/etc/dt/config/language/sys.dtwmrc へコピーします。 HomeDirectory/.dt/dtwmrc が存在する場合は、このファイルを使用しません。 他のファイルを取り込む(参照する)には<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>他のファイルの取り込み</Secondary></IndexTerm> 次の構文を使用します。 include { path path … } include 文、ワークスペース・マネージャ・ファイル内の たとえば、次の行は /users/ellen/mymenu ファイルを参照します。 include { /users/ellen/mymenu } include 文は、構成ファイルをすべてコピーせずに機能を追加する場合に有用です。たとえば、すべての構成ファイルを管理せずに新しいキー割り当てを作成したいとします。この場合、次の内容の HomeDirectory/.dt/dtwmrc ファイルを作成できます。 include { /etc/dt/config/C/sys.dtwmrc } Keys DtKeyBindings { Alt<Key>F5 root f.menu Applications } Menu Applications { “GraphicsApp” f.exec “/usr/bin/GraphicsApp/GApp” … } ワークスペース・マネージャを再起動するには<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>再起動</Secondary></IndexTerm> 構成ファイルに対する変更内容を有効にするには、ワークスペース・マネージャを必ず再起動してください。 [ワークスペース]メニューから[ワークスペースマネージャ の再起動]を選択します(ポインタが背景上にあるときにマウス・ボタン3を押します)。 ワークスペースのカスタマイズ<IndexTerm><Primary>ワークスペース</Primary><Secondary>カスタマイズ</Secondary></IndexTerm> ワークスペース名やワークスペース数の変更など、多くのワークスペースのカスタマイズは、デスクトップのインタフェースを使用して行うことができます。ただし、システム共通デフォルトを設定するリソースは、ワークスペース・マネージャが提供します。 システム共通のベースのワークスペース数を変更するには<IndexTerm><Primary>ワークスペース</Primary><Secondary>〜の数</Secondary></IndexTerm> デフォルトのデスクトップ設定では、4つのワークスペースが提供されます。ワークスペース・スイッチに関連付けられたポップアップ・メニューを使用して、ワークスペースを追加したり削除したりできます。 ワークスペース・マネージャは、デフォルトのワークスペース数を変更するためのリソースを提供します。 workspaceCount リソースを使用して、ワークスペースの数を設定します。 Dtwm*workspaceCount: numberworkspaceCount リソース ワークスペース・マネージャのリソース設定については、 を参照してください。 たとえば、次のリソースは、ワークスペース数を 6 に設定します。 Dtwm*workspaceCount: 6 システム共通ワークスペース名を指定するには<IndexTerm><Primary>ワークスペース</Primary><Secondary>名前</Secondary></IndexTerm> 内部的には、ワークスペースは番号割り当て規則 wsnn は 0, 1, 2 など)によって番号が付けられます。たとえば、4つのデフォルト・ワークスペースは、内部的に ws0 から ws3 までの番号が付けられます。 title リソースを使用して指定したワークスペース名を変更します。 title リソース Dtwm*wsn: name Dtwm*wsn.title: name ワークスペース・マネージャのリソース設定については、 を参照してください。 たとえば、次のリソースは4つのデフォルト・ワークスペースを指定した名前に設定します。 Dtwm*ws0*title: Anna Dtwm*ws1*title: Don Dtwm*ws2*title Julia Dtwm*ws3*title Patti 追加背景を作成するには<IndexTerm><Primary>背景</Primary><Secondary>追加</Secondary></IndexTerm> 背景イメージを作成します。ビットマップ・ファイルまたはピックスマップ・ファイルにしてください。 背景ファイルの位置 次のディレクトリのいずれかに背景を指定します(ディレクトリを作成しなければならない場合もあります)。 システム共通背景: /etc/dt/backdrops 個人用背景: HomeDirectory/.dt/backdrops [ワークスペース]メニューから[ワークスペースマネージャの再起動]を選択します。 システム共通背景および個人用背景は、/usr/dt/backdrops の組み込み背景に追加されます。 既存の組み込み背景は、同じ名前の個人用背景またはシステム共通背景を作成することによって置き換えることができます。 グラフィック・イメージで背景を置き換えるには<IndexTerm><Primary>背景</Primary><Secondary>グラフィック・イメージを使用</Secondary></IndexTerm> 背景は、ディスプレイの ルート・ウィンドウ ルート・ウィンドウ全体を覆っています。スタイル・マネージャの[背景]ダイアログ・ボックスは、背景が透過的である NoBackdrop 設定NoBackdrop 設定を提供します。 すべてのワークスペースの背景の背後には、ひとつのルート・ウィンドウしかありません。したがって、ルート・ウィンドウにあるグラフィック・イメージは、すべてのワークスペースで存在します。どのワークスペースがルート・ウィンドウを背景で覆うか指定できます。ただし、NoBackdrop が有効である場合、表示可能なイメージはすべてのワークスペースで同じになります。 グラフィック・イメージを作成します。これは、ルート・ウィンドウにイメージを表示するためのツールの形式でなければなりません。たとえば xsetroot を使用する場合は、ビットマップ・ファイルを作成しなければなりません。 ファイルがすでに存在しなければ、実行可能ファイル HomeDirectory/.dt/sessions/sessionetc を作成します。sessionetc ファイルは、ログインするごとに実行されます。 コマンドを入力して、sessionetc ファイルのイメージを表示します。 たとえば、次のコマンドは、ルート・ウィンドウに指定したビットマップを表示します。 xsetroot -bitmap /users/ellen/.dt/icons/root.bm ワークスペース・マネージャのメニュー<IndexTerm><Primary>メニュー</Primary><Secondary>ワークスペース・マネージャ</Secondary></IndexTerm><IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>メニュー</Secondary></IndexTerm> ワークスペース・マネージャには、次の3つのデフォルト・メニューがあります。 [ワークスペース]メニュー[ワークスペース]メニュー定義 ルート・メニューとも呼ばれます。ポインタが背景にあるときにマウス・ボタン3を押すと表示されます。このメニューはボタン割り当てによって、マウス・ボタンに関連付けられています。 [ウィンドウ]メニュー[ウィンドウ]メニュー定義 ポインタがウィンドウ・メニュー・ボタン(ウィンドウ枠の左上隅)上にあるときにマウス・ボタン1または3を押すと表示されます。このメニューは windowMenu リソース windowMenu リソース によって、ボタンに関連付けられています。 フロントパネル・メニューフロントパネルメニュー ポインタがフロントパネルのウィンドウ・メニュー・ボタン上にあるときにマウス・ボタン1または3を押すと表示されます。 ワークスペース・マネージャのメニュー構文<IndexTerm><Primary>[ウィンドウ]メニュー</Primary><Secondary>構文</Secondary></IndexTerm><IndexTerm><Primary>[ワークスペース]メニュー</Primary><Secondary>構文</Secondary></IndexTerm> ワークスペース・マネージャのメニュー構文は、次のとおりです。 Menu MenuName { selection1 [mnemonic] [accelerator] function [argument] selection2 [mnemonic] [accelerator] function [argument] … } where: selection メニューに表示されるテキストまたはビットマップ。テキストにスペースを入れるときは、テキストを引用符で囲みます。ビットマップには、@/path 構文を使用します。 mnemonic メニューが表示されたときに、キーボード・ショートカットとして動作する1文字。_character という形式で指定します。 accelerator メニューが表示されているかどうかにかかわらずアクティブなキーボード・ショートカットです。アクセラレータの構文は modifier<Key> Keyname で、修飾子は、CtrlShiftAlt(拡張文字)、および Lock です。すべての可能なキー名のリストについては、システムの “X11 include” ディレクトリの keysymdef.h ファイルを参照してください。 functionワークスペース・マネージャ関数 これを選択したときに実行される関数です。関数のリストについては、dtwmrc(4) のマニュアル・ページを参照してください。 argument 関数の引き数です。詳細については、dtwmrc(4) のマニュアル・ページを参照してください。 たとえば、次の Restore というラベルの付いたメニュー項目は、ウィンドウを元に戻します。メニューが表示されたときに “R” と入力してもウィンドウは復元されます。拡張文字[F5]を押しても同じです。 Restore _R Alt<Key> F5 f.normalize ワークスペース・マネージャのメニュー構文の詳細については、dtwmrc(4) のマニュアル・ページを参照してください。 既存のワークスペース (ルート) メニューを変更するには<IndexTerm><Primary>[ワークスペース]メニュー</Primary><Secondary>変更</Secondary></IndexTerm><IndexTerm><Primary>$nopage>ルート・メニュー、「ワークスペース・メニュー」を参照してください</Primary></IndexTerm> 編集するため、適切なファイルを開きます。 個人用: HomeDirectory/.dt/dtwmrc システム共通: /etc/dt/config/language/sys.dtwmrc これらのファイル作成の詳細については、 を参照してください。 [ワークスペース]メニューの記述を編集します。 デフォルトの[ワークスペース]メニューは DtRootMenuDtRootMenu です。 Menu DtRootMenu { “Workspace Menu” f.title “Shuffle Up” f.circle_up “Shuffle Down” f.circle_down … } 新規ワークスペース (ルート) メニューを作成するには<IndexTerm><Primary>[ワークスペース]メニュー</Primary><Secondary>作成</Secondary></IndexTerm> 編集するため、適切なファイルを開きます。 個人用: HomeDirectory/.dt/dtwmrc システム共通: /etc/dt/config/language/sys.dtwmrc これらのファイル作成の詳細については、 を参照してください。 新規メニューを作成します。 Menu menu_name { … } を参照してください。 ボタン割り当てを作成または編集して新規メニューを表示します。 既存のメニューを新規メニューに置き換える場合は、[ワークスペース]メニューを表示するボタン割り当てを編集します。 <Btn3Down> root f.menu menu_name メニューが追加メニューである場合、新しいマウス・ボタンを割り当てます。たとえば、次のようにボタンを割り当てると、背景上で[Shift]キーとマウス・ボタン3を押したときにメニューが表示されます。 Shift<Btn3Down> root f.menu menu_name [ワークスペース]メニューから[ワークスペースマネージャの再起動]を選択します。 新規ウィンドウ・メニューを作成するには<IndexTerm><Primary>[ウィンドウ]メニュー</Primary><Secondary>新規</Secondary></IndexTerm> [ウィンドウ]メニューは、ワークスペース・マネージャに組み込まれ、通常はカスタマイズしません。アプリケーション間でウィンドウの動作の一貫性を保つには、ウィンドウ・・メニューをあまり大幅に変更しないでください。 編集するため、適切なファイルを開きます。 個人用: HomeDirectory/.dt/dtwmrc システム共通: /etc/dt/config/language/sys.dtwmrc これらのファイル作成の詳細については、 を参照してください。 新規メニューを作成します。 Menu menu_name { … } windowMenu リソースを使用して新規メニューを指定します。 Dtwm*windowMenu: menu_name [ワークスペース]メニューから[ワークスペースマネージャの再起動]を選択します。 ボタン割り当てのカスタマイズ<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>ボタン割り当て</Secondary></IndexTerm><IndexTerm><Primary>ボタン割り当て</Primary></IndexTerm><IndexTerm><Primary>マウス割り当て、「ボタン割り当て」を参照してください</Primary></IndexTerm> ボタン割り当て は、ウィンドウ・マネージャ機能とマウス・ボタン操作および可能なキーボード修飾キーとを関連付けることです。ボタン割り当ては、すべてのワークスペースに適用されます。 デスクトップのデフォルトのボタン割り当ての定義は、DtButtonBindingsDtButtonBindings というボタン割り当てセットのワークスペース・マネージャ構成ファイルに定義されています。 Buttons DtButtonBindings { … } ボタン割り当て構文<IndexTerm><Primary>ボタン割り当て</Primary><Secondary>構文</Secondary></IndexTerm> ボタン割り当ての構文は次のとおりです。 Buttons ButtonBindingSetName { [modifier]<button_nameMouse_action> context function [argument] [modifier]<button_nameMouse_action> context function [argument] where: button_name Btn1—左マウス・ボタン Btn2—中央ボタン (3つボタン・マウスの場合) または左右ボタン (2つボタン・マウスの場合) Btn3—右ボタン Btn4—3つボタン・マウスの場合のボタン1とボタン2 Btn5—3つボタン・マウスの場合のボタン2とボタン3 modifier CtrlShiftAltLock mouse_action Down—マウス・ボタンを押し続ける Up—マウス・ボタンを離す Click—マウス・ボタンを押して離す Click2—マウス・ボタンをダブルクリックする Drag—マウス・ボタンを押しながらドラッグする context 割り当てを有効にするにはポインタがどこにあればいいかを示します。必要に応じて、複数の内容は、“|” で区切ります。 root—ワークスペース・ウィンドウ window—クライアント・ウィンドウまたはウィンドウ枠 frame—内容を除くウィンドウ枠 icon—アイコン title—タイトル・バー app—クライアントのウィンドウ(枠を除く) function ウィンドウ・マネージャ関数のひとつ。有効な関数のリストについては、 dtwmrc(4) のマニュアル・ページを参照してください。 argument 任意のウィンドウ・マネージャ関数の必須引き数。詳細については、dtwmrc(4) のマニュアル・ページを参照してください。 たとえば、次の行を入力すると、ポインタが(クライアントのウィンドウ内ではなく)ワークスペース・ウィンドウにあるときにマウス・ボタン3を押すと DtRootMenu に記述されたメニューが表示されます。 <Btn3Down> root f.menu DtRootMenu ボタン割り当て構文の完全な情報については、dtwmrc(4) のマニュアル・ページを参照してください。 ボタン割り当てを追加するには<IndexTerm><Primary>ボタン割り当て</Primary><Secondary>追加</Secondary></IndexTerm> 編集するため、適切なファイルを開きます。 個人用: HomeDirectory/.dt/dtwmrc システム共通: /etc/dt/config/language/sys.dtwmrc これらのファイル作成の詳細については、 を参照してください。 ボタン割り当てを DtButtonBindings 定義に追加します。 クリックおよび押す操作について同じボタンを別の関数に割り当てないでください。また、2つ以上の関数を同じボタンおよび内容に割り当てないでください。 [ワークスペース]メニューから[ワークスペースマネージャの再起動]を選択します。 新規ボタン割り当てセットを作成するには<IndexTerm><Primary>ボタン割り当て</Primary><Secondary>新規セットの作成</Secondary></IndexTerm> 編集するため、適切なファイルを開きます。 個人用: HomeDirectory/.dt/dtwmrc システム共通: /etc/dt/config/language/sys.dtwmrc これらのファイル作成の詳細については、 を参照してください。 新規ボタン割り当てセットを作成します。 を参照してください。 buttonBindings リソースbuttonBindings リソースに新しい名前を設定します。 Dtwm*buttonBindings: ButtonBindingsSetName [ワークスペース]メニューから[ワークスペースマネージャの再起動]を選択します。 既存のボタン割り当てを新規のボタン割り当てに置き換えます。保持したいボタン割り当てがあれば、DtButtonBindings からコピーします。 キー割り当てのカスタマイズ キー割り当て とも呼ばれる キーボード割り当て は、キーの組み合わせとワークスペース・マネージャ関数とを関連付けます。キー割り当ては、すべてのワークスペースに適用されます。 キーボード割り当てとして共通キーの組み合わせを使用するときは注意してください。たとえば、[Shift]キーと[A]キーを押すと通常は現在のウィンドウに文字[A]が表示されます。([Shift]+[A]キー)を関数に割り当てた場合は、通常の動作をしません。 デスクトップのデフォルト・キー割り当て<IndexTerm><Primary>キー割り当て</Primary><Secondary>デフォルト</Secondary></IndexTerm> デスクトップのデフォルト・キー割り当ては、DtKeyBindings というキー割り当てセットのワークスペース・マネージャ構成ファイルに定義されています。 Keys DtKeyBindings { … } キー割り当て構文<IndexTerm><Primary>キー割り当て</Primary><Secondary>構文</Secondary></IndexTerm> キー割り当ての構文は次のとおりです。 Keys KeyBindingSetName { [Modifiers]<Key>key_name context function [argument] [Modifiers]<Key>key_name context function [argument] … } where: Modifiers CtrlShiftAlt、および Lock。複数の修飾子を指定できますが、それぞれをスペースで区切ります。 key_name 関数をマップするキー。文字または数字のキーの場合、key_name 名は通常キーの上に刻印されます。たとえば、“a” というキーは “a”、“2” というキーは “2” と名付けられます。同様に、“Tab” キーは “Tab”、The “F3” キーは “F3” です。 他のキーについては、名前が省略されずに書かれます。たとえば、“+” キーは plus と表示されます。システム依存ディレクトリにある keysymdef.h ファイルには、キー名に関する追加情報があります。 context このアクションを有効にするためのキーボード・フォーカスを必ずもつ要素。割り当てを2つ以上の内容に適用すると、内容を連結することができます。複数の内容は、“|” 文字で区切ります。 root—ワークスペース背景 window—クライアント・ウィンドウ icon—アイコン function ウィンドウ・マネージャ関数。有効な関数のリストについては、dtwmrc(4) のマニュアル・ページを参照してください。 argument 任意のウィンドウ・マネージャ関数の必須引き数。詳細については、dtwmrc(4) のマニュアル・ページを参照してください。. たとえば、次のようなキー割り当てを行うと、[Alt]+[F6]キーを押すことにより、アプリケーションの一時ウィンドウへキーボード・フォーカスを切り替えることができます。 Alt<Key>F6 window f.next_key transient キー割り当て構文の完全情報については、dtwmrc(4) のマニュアル・ページを参照してください。 キー割り当てセットをカスタマイズするには<IndexTerm><Primary>キー割り当て</Primary><Secondary>新規セットの作成</Secondary></IndexTerm> 編集のため、適切なファイルを開きます。 個人用: HomeDirectory/.dt/dtwmrc システム共通: /etc/dt/config/language/sys.dtwmrc これらのファイル作成の詳細については、 を参照してください。 一意の KeyBindingSetName で新規キー割り当てセットを作成します。デスクトップのデフォルト・キー割り当てセット DtKeyBindings をガイドとして使用します。 keyBindings リソースkeyBindings リソースに新規セット名を設定します。 Dtwm*keyBindings: KeyBindingSetName [ワークスペース]メニューから[ワークスペースマネージャの再起動]を選択します。 既存のキー割り当ては新規のキー割り当てに置き換えられます。保持したいキー割り当てがあれば、DtKeyBindings から新規セットにコピーします。 デフォルト動作とカスタマイズ動作との切り替え<IndexTerm><Primary>ワークスペース・マネージャ</Primary><Secondary>Motif への変更</Secondary></IndexTerm> Motif デフォルト動作と共通デスクトップ環境 (CDE) のデスクトップ・ウィンドウ動作を切り替えるには、次のようにします。 [Alt]+[Shift]+[Ctrl]+[!] を押します。 ダイアログ・ボックスの[了解]をクリックします。 デフォルト動作に切り替えると、フロントパネル、任意のカスタマイズ・キー、ボタン割り当てが解除されます。