5

在 Netbeans 6.5 的工具 -> 选项 -> 字体和颜色 -> 语法对话框中,您可以更改 Netbeans 文本编辑器的外观。当您选择一种语言时,您会看到字体/配色方案的预览。但是,当我预览 Java 时,语法更改的选项比预览窗口中显示的要多得多。如果我能够查看一段更健壮的代码,我将能够看到更多选项的直接效果。

如何提供预览文档来查看我的字体/颜色更改?

更新:

在对此进行了更多研究之后,我已经能够缩小问题的范围。据我所知,Netbeans 中的所有内容都被视为插件。GUI 编辑器是一个插件,甚至文本编辑器也是一个插件。这意味着 Netbeans 中真正分析 Java 代码和语法高亮的部分也是一个插件(因为 Java 只是 Netbeans 高亮的众多语言之一,所以这是一个插件是有道理的)。

我认为 fromvega 的建议是正确的。创建清单文件编辑插件的教程为我指明了正确的方向。本教程避开了用作字体/颜色预览的示例文档的文件。它告诉你如何在这个新的插件项目中创建一个。(位于“在 NetBeans 系统文件系统中注册选项”,第 4 部分。大约在页面下方的 4/5 处。)

我的下一个想法是寻找 Java 语法编辑模式插件并找到该文件并使用更丰富的示例文件对其进行更新。我查看了安装目录,发现是空的,但我在我的用户设置目录中找到了合适的文件。在我的用户目录(Windows:C:\Documents and Settings\saterus.netbeans\config)中有一个包含很多子文件夹的 config 目录。

我一直在这个目录中四处寻找,但只找到了清单教程谈到的 xml 文件。我一直找不到我认为应该存在的 Java 插件的无扩展名示例文件。

由于我暂时碰壁了,我想我会把它扔回 SO 社区,看看你们是否可以做出最后的飞跃并找到解决方案。

4

3 回答 3

4

只是对于任何想要自己更改它的人来说,都可以在 unix 机器上使用 grep 来定位文件,即

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

我使用这种方法来定位 ruby​​ 示例文件名,并从中确定它作为名为 RubyExample 的文件保存在 org-netbeans-modules-ruby.jar 中。通过简单地更改该文件,我能够构建一个更好的示例文件供我自己使用。

希望这对某人有帮助!

于 2010-02-04T16:35:25.533 回答
2

显示的文档(对于每种 mime 类型)在“系统文件系统”(这是一个 NetBeans 概念,它是由各个模块的贡献组成的虚拟文件系统)中的特定文件夹中指定;这就是动态注册功能的方式在 NetBeans 中)。

模块通常在插件中名为“layer.xml”的文件中指定它们的系统文件系统贡献。创建插件模板通常提供为您创建它。

例如,以下是 Python 示例的注册方式:

<文件系统>
    ...
    <文件夹名称="选项对话框">
        <文件夹名称="PreviewExamples">
            <文件夹名称="文本">
                <file name="x-python" url="PythonExample.py"/>
            </文件夹>
        </文件夹>
        ...

这里,PythonExample.py 是与图层文件在同一目录下的示例文件。

因此,您需要做的是创建一个插件来覆盖您关心的 mime 类型的现有注册并提供替代示例文档。您可能需要先隐藏现有注册(请参阅 _hidden 部分http://doc.javanb.com/netbeans-api-javadoc-5-0-0/org-openide-filesystems/org/openide/filesystems/MultiFileSystem.html)。

希望这会引导您朝着正确的方向前进。

然而,考虑到这一点,我们可能应该让预览区域可编辑——这样人们就可以在那里剪切和粘贴他们关心的任何代码片段。这不会是持久的,因此每当您更改语言时,您都会返回原始示例 - 但它提供了一种查看您自己的代码的快速方法。这不仅适用于字体和颜色自定义,还适用于格式预览面板。

我为此向 NetBeans 提出了问题: http://www.netbeans.org/issues/show_bug.cgi?id=155964

-- 托尔

于 2008-12-22T21:25:12.113 回答
0

我认为你只能通过一个新插件来实现这一点,因为你需要某种解析来定义什么是什么。

看看这些教程,我没有详细阅读它们,但它们似乎向你展示了如何做你想做的事:

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

于 2008-12-19T21:18:39.100 回答