Solaris 共通デスクトップ環境 上級ユーザ及びシステム管理者ガイド

第 16 章 ワークスペース・マネージャのカスタマイズ

この章では、デスクトップ・ワークスペース・マネージャのカスタマイズの方法について説明します。

ワークスペース・マネージャは、デスクトップが提供するウィンドウ・マネージャです。他のウィンドウ・マネージャのように、次のものをコントロールします。

さらに、次のデスクトップ・コンポーネントをコントロールします。

これらのほとんどは、スタイル・マネージャで変更できます。スタイル・マネージャは、よく行われる変更を簡単に素早く実行できるようにします。他のリソースは手動で設定しなければなりません。

ワークスペース・マネージャは dtwm です。Motif ウィンドウ・マネージャに基づきます。

リソース設定の追加情報については、「アプリケーション・リソースの設定」を参照してください。

ワークスペース・マネージャ構成ファイル

ワークスペース・マネージャは、ウィンドウ・メニュー、ワークスペース・メニュー、ボタン割り当て、および構成ファイルからのキー割り当てに関する情報を獲得します。

ワークスペース・マネージャは、次のいずれかのファイルを使用します。

ワークスペース・マネージャは、上記に示した順で構成ファイルを検索し、最初に見つけたファイルを使用します。

2 つ以上のセッション言語を使用するユーザは、個人用の言語依存構成ファイル HomeDirectory/.dt/language/dtwrmcHomeDirectory/.dt/dtwmrc より優先させて作成できます。

個人用構成ファイルを作成または変更するには

個人用ワークスペース・マネージャ構成ファイルは、HomeDirectory/.dt/dtwmrc です。このファイルが存在している場合は使用します。

  1. [デスクトップツール] アプリケーション・グループの [Dtwmrc の編集] をダブルクリックします。

    すでに個人用 dtwmrc ファイルがある場合は、エディタに読み込まれます。ファイルがない場合は、sys.dtwmrcHomeDirectory/.dt/dtwmrc にコピーされてからエディタに読み込まれます。

  2. ファイルを編集します。

  3. エディタを終了します。

    ファイルは、その元のソースに関わらず、個人用 dtwmrc として保存されます。

システム共通構成ファイルを作成するには

システム共通のワークスペース・マネージャ構成ファイルは /etc/dt/config/language/sys.dtwmrc です。

    /usr/dt/config/language/sys.dtwmrc/etc/dt/config/language/sys.dtwmrc へコピーします。


注 -

HomeDirectory/.dt/dtwmrc が存在する場合は、このファイルを使用しません。


他のファイルを取り込む (参照する) には

    次の構文を使用します。

   include
    {
      path
      path
      ...
    }

たとえば次の行は、/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 つのワークスペースが提供されます。ワークスペース・スイッチに関連付けられたポップアップ・メニューを使用して、ワークスペースの追加や削除ができます。

/usr/dt/app-defaults/C/Dtwm ファイルは、workspaceCount リソースを持っています。このリソースには、次のようにワークスペースのデフォルト数が設定されています。

Dtwm*0*workspaceCount: 4
Dtwm*workspaceCount:  1

画面 0 には、複数のワークスペースが指定されています。他の画面には、1 つのワークスペースが指定されています。

/etc/dt/config/C/sys.resources ファイルを作成して (あるいは、既に存在する場合は、そのファイルを変更して)、ワークステーション上のすべての新規ユーザのために、ワークスペースのデフォルト数を変更できます。

    0*workspaceCount リソースを使用して、一次画面のシステム共通デフォルトを設定します。

       Dtwm*0*workspaceCount: number
    

たとえば次のリソースは、一次画面のシステム共通ワークスペース数を 6 に設定します。

Dtwm*0*workspaceCount: 6

ワークスペース・マネージャのリソースの設定については、「アプリケーション・リソースの設定」を参照してください。

たとえば次のリソースは、ワークスペース数を 6 に設定します。

	Dtwm*workspaceCount: 6

システム共通ワークスペース名を指定するには

内部的には、ワークスペースは番号割り当て規則 wsn (n は 0、1、2 など) によって番号が付けられます。たとえば、4 つのデフォルト・ワークスペースは、内部的に ws0 から ws3 までの番号が付けられます。

    title リソースを使用して指定したワークスペース名を変更します。

   Dtwm*wsn: name

ワークスペース・マネージャのリソースの設定については、「アプリケーション・リソースの設定」を参照してください。

たとえば次のリソースは、4 つのデフォルト・ワークスペースを指定した名前に設定します。

Dtwm*ws0*title:  Anna
Dtwm*ws1*title:  Don
Dtwm*ws2*title:  Julia
Dtwm*ws3*title:  Patti

追加背景を作成するには

  1. 背景イメージを作成します。ビットマップ・ファイルまたはピックスマップ・ファイルにしてください。

  2. 次のいずれかのディレクトリに背景を指定します (ディレクトリを作成しなければならない場合もあります)。

    • システム共通背景: /etc/dt/backdrops

    • 個人用背景: HomeDirectory/.dt/backdrops

  3. ワークスペース・メニューから [ワークスペースマネージャの再起動] を選択します。

システム共通背景と個人用背景は、/usr/dt/backdrops の組み込み背景に追加されます。

既存の組み込み背景は、同じ名前の個人用背景またはシステム共通背景を作成することによって置き換えることができます。

グラフィック・イメージで背景を置き換えるには

背景は、ディスプレイのルート・ウィンドウ全体を覆っています。スタイル・マネージャの [背景] ダイアログ・ボックスは、背景が透過的である NoBackdrop 設定を提供します。

すべてのワークスペース背景の背後には、1 つのルート・ウィンドウしかありません。したがって、ルート・ウィンドウにあるグラフィック・イメージは、すべてのワークスペースで存在します。どのワークスペースがルート・ウィンドウを背景で覆うかを指定できます。ただし、NoBackdrop が有効である場合、表示可能なイメージはすべてのワークスペースで同じになります。

  1. グラフィック・イメージを作成します。

    これは、ルート・ウィンドウにイメージを表示するためのツールの形式でなければなりません。たとえば xsetroot を使用する場合は、ビットマップ・ファイルを作成しなければなりません。

  2. ファイルが存在しない場合は、実行可能ファイル HomeDirectory/.dt/sessions/sessionetc を作成します。

    sessionetc ファイルは、ログインするたびに実行されます。

  3. コマンドを入力して、sessionetc ファイルのイメージを表示します。

たとえば次のコマンドは、ルート・ウィンドウに指定したビットマップを表示します。

xsetroot -bitmap /users/ellen/.dt/icons/root.bm

ワークスペース・マネージャのメニュー

ワークスペース・マネージャには、次の 3 つのデフォルト・メニューがあります。

ワークスペース・メニュー - ルート・メニューとも呼ばれます。ポインタが背景にあるときに、マウス・ボタン 3 を押すと表示されます。このメニューは、ボタン割り当てによってマウス・ボタンに関連付けられています。

ウィンドウ・メニュー - ポインタがウィンドウ・メニュー・ボタン (ウィンドウ枠の左上隅) 上にあるときに、マウス・ボタン 1 または 3 を押すと表示されます。このメニューは、windowMenu リソースによってボタンに関連付けられています。

フロントパネル・メニュー - ポインタがフロントパネルのウィンドウ・メニュー・ボタン上にあるときに、マウス・ボタン 1 または 3 を押すと表示されます。

ワークスペース・マネージャのメニュー構文

ワークスペース・マネージャのメニュー構文は、次のとおりです。

Menu MenuName
 {
    selection1 [mnemonic] [accelerator] function [argument]
    selection2 [mnemonic] [accelerator] function [argument]
    ...
 }

たとえば、次の Restore というラベルの付いたメニュー項目は、ウィンドウを元に戻します。メニューが表示されたときに R と入力してもウィンドウは復元されます。拡張文字 F5 を押しても同じです。

Restore   _R   Alt<Key> F5   f.normalize

注 -

ワークスペース・マネージャのメニュー構文の詳細は、dtwmrc(4) のマニュアル・ページを参照してください。


新規メニュー項目をワークスペース・メニューに追加するには

  1. フロントパネルの [ツール] サブパネルにある、[メニューに項目を追加] をクリックします。

    [アイテムをワークスペース・メニューに追加] ダイアログが表示されます。

    Graphic

  2. 絶対パスを入力するか [ブラウズ] をクリックし、新しく追加するファイルのパスを選択します。

    指定したファイルは、通常はこのホストで使用可能です。このファイルは、実行可能ファイル、またはホストに登録されているデータ型のファイル (たとえばオーディオやマニュアルページ) である必要があります。

    ファイル名を含んだ絶対パスが、テキストボックスに表示されます。

  3. [追加] をクリックして、ファイルをメニューに追加します。

    ファイルが、ワークスペース・メニューの一番上に追加されます。デフォルトのアイコン (ある場合) とファイル名が、メニュー項目のアイコンとテキストとして使用されます。


注 -

ワークスペース・メニューのメニュー項目の位置を変更するには、「ワークスペース・メニューを変更するには」を参照してください。


ワークスペース・メニューを変更するには

  1. フロントパネルの [ツール] サブパネルにある [ワークスペース・メニューのカスタマイズ] をクリックします。

    ワークスペース・メニューの階層構造がファイル・マネージャの構成フォルダとして表示されます。このフォルダ内のファイルは各メニュー項目を表し、サブフォルダは各サブメニューを表します。ワークスペース・メニューフォルダ内の配列を変更して、ワークスペース・メニューの配列を変更します。

    Graphic

  2. 新しい位置に移動したいメニュー項目を、該当するサブフォルダにドラッグ&ドロップします。

    ツリー表示モードでファイル・マネージャを使用する場合のヘルプについては、『Solaris 共通デスクトップ環境 ユーザーズ・ガイド』を参照してください。

  3. 不要なメニュー項目を削除する場合は、該当するファイルをフロントパネルのごみ箱にドラッグします。

  4. メニュー項目の名前を変更したい場合は、該当するファイル名かフォルダ名を編集します。

  5. すべての変更が完了したら、ファイル・マネージャの [ファイル] メニューから [ワークスペース・メニューの更新] を選択してファイル・マネージャを終了します。

    ワークスペース・メニューに、ワークスペース・メニューのフォルダで変更した内容が反映されます。

新規ワークスペース (Root) メニューを作成するには

  1. 次のいずれかのファイルを開きます。

    • 個人用: HomeDirectory/.dt/dtwmrc

    • システム共通: /etc/dt/config/language/sys.dtwmrc

    これらのファイルの作成方法の詳細は、「ワークスペース・マネージャ構成ファイル」を参照してください。

  2. 新規メニューを作成します。

       Menu menu_name
        {
          ...
        }

    詳細は、「ワークスペース・マネージャのメニュー構文」を参照してください。

  3. ボタン割り当てを作成または編集して新規メニューを表示します。

    既存のメニューを新規メニューに置き換える場合は、ワークスペース・メニューを表示するボタン割り当てを編集します。

       <Btn3Down> root  f.menu  menu_name
    

    メニューが追加メニューの場合は、新しいマウス・ボタンを割り当てます。たとえば次のようにボタンを割り当てると、背景上で [Shift] キーとマウス・ボタン 3 を押したときにメニューが表示されます。

       Shift<Btn3Down> root  f.menu  menu_name
    
  4. ワークスペース・メニューから [ワークスペースマネージャの再起動] を選択します。

新規ウィンドウ・メニューを作成するには


注 -

ウィンドウ・メニューはワークスペース・マネージャに組み込まれ、通常はカスタマイズされません。アプリケーション間でウィンドウの動作の一貫性を保つには、ウィンドウ・メニューを大幅に変更しないでください。


  1. 次のいずれかのファイルを開きます。

    • 個人用: HomeDirectory/.dt/dtwmrc

    • システム共通: /etc/dt/config/language/sys.dtwmrc

    これらのファイルの作成方法の詳細は、「ワークスペース・マネージャ構成ファイル」を参照してください。

  2. 新規メニューを作成します。

       Menu menu_name
        {
          ...
        }
  3. windowMenu リソースを使用して新規メニューを指定します。

       Dtwm*windowMenu: menu_name
    
  4. ワークスペース・メニューから [ワークスペースマネージャの再起動] を選択します。

ボタン割り当てのカスタマイズ

ボタン割り当ては、ウィンドウ・マネージャ関数と、マウス・ボタンのオペレーションおよび可能なキーボード修飾キーとを関連付けることです。ボタン割り当ては、すべてのワークスペースに適用されます。

デスクトップのデフォルトのボタン割り当ては、DtButtonBindings というボタン割り当てセットのワークスペース・マネージャ構成ファイルに定義されています。

Buttons DtButtonBindings
 {
   ...
 }

ボタン割り当て構文

ボタン割り当ての構文は次のとおりです。

Buttons ButtonBindingSetName
{
     [modifier]<button_nameMouse_action>   context  function  [argument]
     [modifier]<button_nameMouse_action>   context  function  [argument]
     ...
}

たとえば次の行を入力すると、ポインタが (クライアントのウィンドウ内ではなく) ワークスペース・ウィンドウにあるときにマウス・ボタン 3 を押すと、DtRootMenu に記述されたメニューが表示されます。

<Btn3Down>      root     f.menu     DtRootMenu

注 -

ボタン割り当て構文の詳細は、dtwmrc(4) のマニュアル・ページを参照してください。


ボタン割り当てを追加するには

  1. 次のいずれかのファイルを開きます。

    • 個人用: HomeDirectory/.dt/dtwmrc

    • システム共通: /etc/dt/config/language/sys.dtwmrc

    これらのファイルの作成方法の詳細は、「ワークスペース・マネージャ構成ファイル」を参照してください。

  2. ボタン割り当てを DtButtonBindings 定義に追加します。

    クリックおよび押す操作という異なる関数を同じボタンに割り当てないでください。また、2 つ以上の関数を同じボタンおよび内容に割り当てないでください。

  3. ワークスペース・メニューから [ワークスペースマネージャの再起動] を選択します。

新規ボタン割り当てセットを作成するには

  1. 次のいずれかのファイルを開きます。

    • 個人用: HomeDirectory/.dt/dtwmrc

    • システム共通: /etc/dt/config/language/sys.dtwmrc

    これらのファイルの作成方法については、「ワークスペース・マネージャ構成ファイル」を参照してください。

  2. 新規ボタン割り当てセットを作成します。詳細は、「ボタン割り当て構文」を参照してください。

  3. buttonBindings リソースに新しい名前を設定します。

       Dtwm*buttonBindings: ButtonBindingsSetName 
    
  4. ワークスペース・メニューから [ワークスペースマネージャの再起動] を選択します。


    注 -

    既存のボタン割り当てを新規のボタン割り当てに置き換えます。保持したいボタン割り当てがある場合は、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]
    ...    
 }

たとえば、次のようなキー割り当てをすると、[Alt] + [F6] キーを押すことにより、アプリケーションの次の一時ウィンドウへキーボード・フォーカスを切り替えることができます。

Alt<Key>F6     window     f.next_key     transient

注 -

キー割り当て構文の詳細は、dtwmrc(4) のマニュアル・ページを参照してください。


キー割り当てセットをカスタマイズするには

  1. 次のいずれかのファイルを開きます。

    • 個人用: HomeDirectory/.dt/dtwmrc

    • システム共通: /etc/dt/config/language/sys.dtwmrc

    これらのファイルの作成方法の詳細は、「ワークスペース・マネージャ構成ファイル」を参照してください。

  2. 一意の KeyBindingSetName で新規キー割り当てセットを作成します。デスクトップのデフォルト・キー割り当てセット DtKeyBindings をガイドとして使用します。

  3. keyBindings リソースに新規セット名を設定します。

       Dtwm*keyBindings: KeyBindingSetName 
    
  4. ワークスペース・メニューから [ワークスペースマネージャの再起動] を選択します。


    注 -

    既存のキー割り当ては、新規のキー割り当てに置き換わります。保持したいキー割り当てがある場合は、DtKeyBindings から新規セットにコピーします。


デフォルト動作とカスタマイズ動作との切り替え

Motif 1.2 デフォルト動作と CDE デスクトップ・ウィンドウ動作を切り替えるには、次のようにします。

  1. [Alt] + [Shift] + [Ctrl] + [ ! ] キーを押します。

  2. ダイアログ・ボックスの [了解] をクリックします。

デフォルト動作に切り替えると、フロントパネル、任意のカスタマイズ・キー、およびボタン割り当てが削除されます。