2008-12-19 49 views
5

在Netbeans 6.5的工具 - >選項 - >字體&顏色 - >語法對話框中,您可以更改Netbeans文本編輯器的外觀和風格。當您選擇一種語言時,您會看到您的字體/配色方案的預覽。但是,當我預覽Java時,語法更改的選項比預覽窗口中顯示的要多得多。如果我能夠查看更強大的代碼段,我可以看到更多選項的直接影響。如何更改Netbeans字體和顏色預覽文檔?

如何提供預覽文檔以查看我的字體/顏色更改?

UPDATE:

尋找到這個多一些之後,我已經能夠縮小問題一點。從我所知道的情況來看,Netbeans中的所有內容都被認爲是一個插件。 GUI編輯器是一個插件,甚至文本編輯器也是一個插件。這意味着實際上分析Java代碼並執行語法突出顯示的Netbeans實際上也是一個插件(因爲Java只是Netbeans強調的多種語言之一,所以這是一個插件)。

我認爲fromvega與他的建議是正確的。用於創建清單文件編輯插件的教程指出了我的正確方向。本教程將回避作爲用於字體/顏色預覽的示例文檔的文件。它告訴你如何在這個新的插件項目中創建一個。 (位於「在NetBeans系統文件系統中註冊選項」,第4部分。關於頁面下方的4/5)。

我的下一個想法是尋找Java語法編輯模式插件並查找此文件並使用更豐富的示例文件進行更新。我查看了安裝目錄並且空了,但是我發現在我的用戶設置目錄中看起來像是合適的文件。在我的用戶目錄中有一個包含許多子文件夾的配置目錄(Windows:C:\ Documents and Settings \ saterus.netbeans \ config)。

我一直在這個目錄裏面徘徊了一下,但是隻找到了manifest教程中提到的xml文件。我一直無法找到我認爲應該在那裏的Java插件的無擴展樣本文件。

因爲我現在碰到一堵磚牆,所以我想我會把它扔回SO社區,看看你們是否可以做出最後的飛躍並找到解決方案。

回答

2

所顯示的文檔(每個MIME類型)都在「系統文件系統」中的特定文件夾中指定(這是一個NetBeans概念,它是由各個模塊的貢獻組成的虛擬文件系統;這是NetBeans中動態註冊的功能)。

模塊通常在插件中名爲「layer.xml」的文件中指定其系統文件系統貢獻。創建插件模板通常會爲您創建。

例如,下面是Python的例子註冊:

 
<filesystem> 
    ... 
    <folder name="OptionsDialog"> 
     <folder name="PreviewExamples"> 
      <folder name="text"> 
       <file name="x-python" url="PythonExample.py"/> 
      </folder> 
     </folder> 
     ... 

這裏,PythonExample.py是在同一目錄層文件的樣本文件。

因此,您需要做的是創建一個插件,覆蓋您關心的MIME類型的現有註冊並提供備用示例文檔。您可能需要先隱藏現有註冊(請參見http://doc.javanb.com/netbeans-api-javadoc-5-0-0/org-openide-filesystems/org/openide/filesystems/MultiFileSystem.html中的_hidden 部分)。

希望這會引導您朝着正確的方向前進。

但是,考慮到這一點,我們可能應該讓預覽區域可編輯 - 所以人們可以在其中關閉任何他們關心的代碼片段。這不會是持久的,所以無論何時你改變語言,你都會得到原始樣本 - 但它提供了一種快速查看自己的代碼的方法。這不僅適用於字體顏色自定義,還適用於格式預覽面板。

我已經提交了對問題的NetBeans此: http://www.netbeans.org/issues/show_bug.cgi?id=155964

- 托爾

0

我想你只能用一個新的插件來實現,因爲你需要一些解析來定義什麼是什麼。

給一臉這些教程中,我還沒有詳細閱讀他們,但他們似乎告訴你如何做你想要的:

http://platform.netbeans.org/tutorials/nbm-mfsyntax.html http://www.antonioshome.net/kitchen/netbeans/nbms-coloring.php

+0

我不認爲這是問題。他正在查看用於更改語法着色的對話框,並且看到示例文檔中沒有出現某些項目(例如「局部變量聲明」)(它有點Java,但沒有局部變量)。他想知道如何更改示例文檔。 – 2008-12-19 22:14:13

+0

正如我之前所說,我認爲要更改樣本文件,需要將他的手放入一些代碼中。 – fromvega 2008-12-21 19:01:02

4

只是誰想要這個改變自己,可以在UNIX機器上使用grep來定位即

grep -lr "some part of the current sample code" /path/to/netbeans 

文件I用這種方法來找到紅寶石例如文件名,並從該確定了它保持在ORG-netbeans的模塊-ruby.jar作爲被叫RubyExample文件。通過簡單地修改該文件,我可以構建一個更好的樣本文件供我自己使用。

希望這可以幫助別人!