現在喜歡如此稱呼它)的文件之外,你現在能使用它來處理其它用於Delphi開發(諸如SQL,XML,HTML,和XSL文件)的文件,還有其它語言(包括C ++和C# )的文件。 XML和Html編輯在Delphi 6中已經可用了,但是在這一版本中有重大變化。 例如,當編輯一個Html文件時,你有對於句法突出顯示與代碼完成的支持。
用在每一文件上的編輯器設置(包括像標簽Tab這樣的鍵的行為)依賴於所打開的文件的擴展名。 你能在新的編輯器屬性對話框Editor PropertIEs dialog box的新的Source Options page頁中配置這些設置,如在圖表 1.4中顯示。這一特性已被擴展而且更開放,因此你能通過提供一個為了基於XML的文件格式的DTD或者寫一個自定義向導為其它編程語言提供句法的突出顯示。 編輯器的另一個特性,代碼模板(code templates),現在是語言特性(你預定義的Delphi模板在Html或者C#中將沒什麼感覺)。???
圖表1.4:Delphi IDE所支持的多種語言能夠與編輯器屬性對話框(Editor PropertIEs dialog box)的Source Options page頁中的各種各樣的擴展名相關聯。
注釋 C#是微軟在其.NET架構中引入的新語言。Borland 被期待著在其自己.Net環境中支持C#,當前的編碼名為伽利略。
僅僅考慮Delphi語言,被包括IDE裡面的編輯在最近的版本中未改變許多。 然而,它有許多Delphi程序員所不了解並且不被使用的一些特性,因此我認為這值得對它進行一個簡要考查。
Delphi編輯器允許你同時處理若干個文件,使用一個“notebook with tabs”隱喻(metaphor)。 你能從編輯器的一頁的跳到相鄰的一頁,通過按下Ctrl+Tab 快捷鍵組合(或者是按下Ctrl+Shift+Tab快捷鍵組合向相反的方向移動)。 你能拖放(drag-and-drop )編輯器上部標有單元名稱的標簽來改變它們的排序,這樣在任何給定的時間你能使用單一的Ctrl+Tab在你工作的單元之間移動。編輯器的快捷菜單也有一個Pages命令,在一個子菜單 (當許多單元被裝載時這是一個非常方便的特性)中列出所有可供使用的頁。
你也能打開多個編輯器窗口,每一窗口都擁有多個標簽。 這樣做是看見彼此傍靠的兩個單元的源代碼的唯一的方式。( (實際上,當我需要比較兩個Delphi單元時,我總是使用 Beyond Compare—www.scootersoftware.com—一個最好的成本低廉的用於比照的用Delphi 編寫的實用程序。)
幾個選項影響編輯器,如你在圖表 1.4中的編輯器屬性對話框(Editor PropertIEs dialog box)中所見。 然而,你不得不轉向環境選項對話框(Environment Options dialog box )(見 圖表 1.2)的Preferences page來頁設置編輯器的AutoSave 特性。這一選項強迫編輯器在你運行程序時保存所有的源程序文件,以防止程序在調試器中崩潰時(這樣的情況極少發生)的數據丟失。
Delphi的編輯器提供了許多命令,包括一些始於其WordStaremulation ancestry (早期的Turbo Pascal編譯器的)。 我將不討論各種編輯器的設置,因為它們非常直觀而且在聯機幫助中有描述。 然而,注意:只有你查找shortcuts索引項目時,描述鍵盤快捷鍵的幫助的頁面作為一個整體說來是容易理解的。
技巧 要記住的一個技巧是使用Cut 和Paste命令不是移動源代碼的唯一的方式。 你也能選擇並且拖曳詞匯,表達式,或者整個代碼行。 此外,你能通過在拖曳時按下Ctrl鍵復制文本,不是移動它。
代碼浏覽器
代碼探索者窗口,這在編輯的邊上一般地被減少,列出所有類型,變量,和日常事務在一個單元定義,加上其它出現使用中的聲明的單元。 對於復雜的若干類型,諸如類別,代碼探索者能列出詳盡的信息,包括領域,財產,和方法的一張列表。 一旦你開始在編輯中鍵入,所有信息被更新。
你能使用代碼探索者來在編輯中駕駛。 如果你加倍單擊代碼探索者中的輸入之一,編輯跳躍到相應的宣告。 你也能在代碼探索者中直接修改變量,財產,和方法名稱。 然而,如如果當你從事於你的類別時,你想要一個視覺的工具使用,你將看見,,ModelMaker提供許多更多特性。
雖然在你已使用Delphi幾分鐘之後,所有這一切功能是明顯的,但是代碼探索者的一些特性不是如此直覺的。 你有信息布局的充足控制。 同時,你能減少通常在這窗口中通過定制代碼探索者(使樹崩潰能幫助你更迅速制定你的選擇)