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