Solaris 一般桌上管理系統環境:進階使用者和系統管理員指南

限制動作以確定引數

限制動作為特殊類型的引數使動作更精確。 例如,您應該限制 PostScript 檔案的查看器呼叫為只有 PostScript 檔案引數的動作;有了限制,如果指定非 PostScript 的檔案,動作將會回覆錯誤對話。

您可以限制動作,基於:

為指定的資料類型限制動作

使用 ARG_TYPE欄位來指定其動作為有效的資料類型。使用資料屬性名稱。

您可以輸入資料類型的清單,以逗號分開登錄。

例如,以下動作定義假定 GIF 資料類型已建立。

ACTION Open_Gif
 {
 	TYPE					COMMAND
 	LABEL					"Display Gif"
 	WINDOW_TYPE			NO_STDIO
 	ARG_TYPE				Gif
 	ICON					xgif
 	DESCRIPTION			Displays gif files
 	EXEC_STRING			xgif
 }

以引數數目為基礎限制動作

使用 ARG_COUNT欄位以指定動作可以接受的引數數目。有效值為:

*(預設值)—任何數目的引數。其他值對於 * 有優先順序。

n—任何非負數的整數,包括 0。

>n—多於 n 個引數。

<n—少於 n 個引數。

ARG_COUNT 的用途之一就是提供不同的動作圖示行為,視使用者是否連按兩下圖示或在其上定位檔案而定。請參閱下節,“如果要提供不同的連按兩下與定位行為。”

提供不同的連按兩下與定位行為

使用此程序以建立接受定位檔案但當連按兩下動作圖示時不提示檔案的動作。

  1. 建立連按兩下功能的動作定義。

    使用 ARG_COUNT欄位以指定 0 引數。使用語法於不接受定位引數的 EXEC_STRING

  2. 建立定位功能的第二種動作定義。

    使用 ARG_COUNT欄位以指定 >0 引數。使用語法於接受定位檔案的EXEC_STRING

    例如,假定下列兩個指令行可以用於啟動名為 vedit 的編輯程式:

    • 如果要啟動沒有檔案引數的編輯程式:

      	vedit
    • 如果要啟動具有開啟為唯讀文件的檔案引數的編輯程式:

      	vedit -R 檔案名稱
      

      下列兩個動作建立名為 Vedit 動作的定位與連按兩下功能。既然 ARG_COUNT 0 比定位功能定義的暗示 ARG_COUNT * 更特定,第一個動作在資料庫搜尋配對時有優先順序。

      # Double-click functionality
       ACTION Vedit
       {
       	TYPE						COMMAND
       	ARG_COUNT				0
       	WINDOW_TYPE				PERM_TERMINAL
       	EXEC_STRING				vedit
       }
      
       # Drop functionality
       ACTION Vedit
       {
       	TYPE						COMMAND
       	WINDOW_TYPE				PERM_TERMINAL
       	EXEC_STRING				vedit -R %Arg_1%
       }

以引數模式為基礎限制動作

使用 ARG_MODE 欄位以指定引數的讀取/寫入模式。有效值為:

* (預設值)—任何模式

!w—不可寫入

w—可寫入