內容輔助

內容輔助可以幫助您在結構化文字編輯器中,插入或完成標示或功能,或者完成一行程式碼。 程式檔中的游標位置提供了內容輔助的環境定義資訊,可作為完成上述作業(選取及插入巨集)的建議。

大部分的結構化文字編輯器都具有內容輔助這項功能。 如果您需要具有內容輔助的編輯器清單, 請參閱標記語言的結構化文字編輯器。 如果您想知道如何取得內容輔助功能, 請參閱在結構化文字編輯器取得內容輔助

下列幾節將說明 HTML 內容輔助、JavaScript™ 內容輔助和 JSP 內容輔助的特性。

HTML 內容輔助

HTML 很有彈性,因為有的 HTML 元素可讓您選擇性的省略結束標示, 例如,PDTDDLITHEADTRTDTH 等等。 其他定義為沒有內容的 HTML 元素,可能一律都要省略結束標示,例如,BRHRLINKMETAIMG。 這種彈性會使 HTML 程式碼頁面編輯器的內容輔助功能,沒有嚴格限制標記語言的精確性。

當您需要完成標示名稱、在起始標示內新增屬性名稱值配對或從屬性值的列舉清單中選取時,HTML 內容輔助尤其有用。

雖然內容輔助只會顯示未指定在起始標示內的屬性名稱,但它不會將標示的文法限制列入考量。 比方說,HTML 中的 HEAD 元素只容許 TITLE 標示在其內容中出現零或一次。如果內容輔助提示發生在已含有 TITLE 標示的 HEAD 內容內,內容輔助仍會在其提議清單中顯示 TITLE

不過,如果根據 DTD/綱目,需要屬性,這個屬性會顯示在清單頂端,且它的圖示會有一個黃圈。

如果游標位於可使用內容輔助的位置,就會顯示可用選項的蹦現式清單。 這份清單是依據環境定義而定。比方說,如果您在開始段落標示 (<p>) 後直接使用內容輔助,內容輔助清單中的第一個項目將會是對應的結束段落 (</p>) 標示。

內容輔助清單會顯示現行游標位置的所有可用標示(包含範本在內)。 下圖顯示出段落標示範例的預設內容輔助清單:
HTML 內容輔助

標示提議是按字母順序來列出的。 如果您在提示內容輔助之前輸入 <(以起始新標示),且開始輸入要新增至標示中的屬性的前一兩個字母,這份清單就會自動重新整理,以反映符合您輸入的型樣之提議。如果在提示內容輔助之前,您沒有輸入 <,您可以按一下提議清單內,再輸入標示的起始字母,以減少一些捲動尋找所需標示的時間。

當您輸入要新增至標示中的屬性名稱或列舉屬性值的前一兩個字母時,這份清單就會自動重新整理,以反映符合您輸入的型樣之提議。

限制: Linux 當使用 Linux(Motif 或 GTK)和 DBCS 語言環境時,按兩下內容輔助清單,有時會使 Java™ VM 終止。 如果要選取清單中的項目,請利用方向鍵和 Enter 鍵,不要按兩下清單。

JavaScript 內容輔助

JavaScript 內容輔助清單中的項目, 前面會有 Internet Explorer 圖示、Netscape 圖示或是兩者都有, 表示這兩個或其中一個瀏覽器,是否支援特定的 JavaScript 物件、方法或功能。 如果出現 Internet Explorer 圖示,就表示 Internet Explorer 5.0 版或更新的版本支援這個物件、方法或函數。如果出現 Netscape 圖示,就表示 Netscape Navigator 4.7 版或更新的版本,支援這個物件、方法或函數。如果沒有出現瀏覽器圖示,而是出現一個問號圖示 (Question mark icon), 就表示不知道瀏覽器是否支援這個物件、方法或功能。

下圖顯示 JavaScript 檔內的預設內容輔助清單:
JavaScript 內容輔助

程式碼提議是按字母順序列出。 如果您在提示內容輔助之前輸入 . (包括空格),且開始輸入要新增之程式碼的前一兩個字母,就會自動重新整理這份提議清單來反映符合輸入型樣的提議,以(稍微)減少尋找想要的程式碼所需要的捲動量。

JSP 內容輔助

您可以使用內容輔助,其中有多種將 Java 和 HTML 程式碼內嵌在 JSP 頁面中的選項。

所有的 JSP 標示都會併入範本清單中,而且會採用 XML 格式(如 <jsp:expression>)。 比方說,如果要新增 JSP scriptlet 標示,請將游標移到檔案中的適當位置,再按 Alt + / 鍵來使用內容輔助。 請從提議清單中,選取 JSP Scriptlet 內容輔助, 在文件中插入 <% %>

這樣,就會把 Scriptlet 插入標示 <% %> 中。 例如:
<% System.currentTimeMillis() %>

這個範例將計算 Java 陳述式,以取得目前的時間(毫秒)。

如果要讓陳述式的結果插入檔案中,請在陳述式的前面放置等號 (=)。例如:
<b>This is the time : <%= System.currentTimeMillis()%></b>
當您在 Scriptlet 內時,您正在撰寫純 Java 程式碼。 因此,內容輔助的運作方式完全和它對 Java 編輯器的運作方式相同。 比方說,如果您在 System 之後要求內容輔助,內容輔助會顯示一份方法清單。
註: Java 內容輔助只能在 Web 專案中運作,因為它需要用來尋找適當 Java 類別的建置路徑。
另外還有一些特殊標示,如 useBean。 例如:
<jsp:useBean id="useBean" class="java.lang.String"/>

useBean 標示讓您可以建立一個 Bean,稱為 aString,其類型為 String。以後您使用內容輔助時,這個 Bean 就會被視為已宣告的變數。比方說,如果您在 aString 之後使用內容輔助,如下所示:

<% aString。%> 
內容輔助清單會顯示可用的方法。這是因為 aString 已經宣告作為類型為 String
如果您在 a 之後使用內容輔助,如下所示:
<% a %> 
內容輔助知道有 aString 存在,因此會將其顯示在內容輔助清單中。
相關概念
標記語言用的結構化文字編輯器
相關工作
在結構化的文字編輯器取得內容輔助
新增和移除 HTML 範本
使用條款 | 讀者意見
(C) Copyright IBM Corporation 2000, 2005. All Rights Reserved.