如何在NetBeans中添加具有点(blade.php)的自定义文件扩展名?

时间:2013-02-15 20:58:11

标签: php netbeans laravel blade

我需要指定一个自定义扩展名,以便在netbeans中识别为twig文件('blade.php'作为'twig'文件,并为我提供语法高亮显示和代码完成)。使用文件关联选项的问题(在Tools > Options > Miscellaneous > Files中) 就是它不会让我加'。'在像blade.php这样的扩展中,它适用于php,html,css等单一的扩展扩展。

如果有人能帮助我,我将不胜感激!

5 个答案:

答案 0 :(得分:25)

解决方法我发现并且似乎工作(至少Netbeans 8.x +)

  • 转到Tools > Options > Miscellaneous > Files
  • 点击新建
  • 输入 blade 作为新扩展程序(您可以在此处使用任何内容,但这看起来最自然)
  • 点击确定
  • Associate File Type (MIME)选择 TWIG(text / x-twig)
  • 点击整个Options窗口的确定
  • 关闭Netbeans
  • 打开Netbeans配置文件夹 - 在Windows上%AppData%\Netbeans\<version>\
  • 转到子文件夹config\Services\MIMEResolver
  • 打开user-defined-mime-resolver.xml
  • 找到<ext name="blade"/>条目(或上面提到的任何内容)
  • 刀片更改为 blade.php
  • 保存并关闭文件

Voilà,higlighting现在应该在Netbeans IDE中工作:)

答案 1 :(得分:8)

修改user-defined-mime-resolver.xml文件,使其看起来像这样的

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE MIME-resolver PUBLIC "-//NetBeans//DTD MIME Resolver 1.1//EN" "http://www.netbeans.org/dtds/mime-resolver-1_1.dtd">
<MIME-resolver>
    <file>
        <ext name="php"/>
        <name name=".blade" substring="true"/>
        <resolver mime="text/x-twig"/>
    </file>
    <file>
    <ext name="php"/>
        <resolver mime="text/x-php5"/>
    </file>
</MIME-resolver>

在Linux(Ubuntu)上,您可以在以下位置找到此文件:
$HOME/.netbeans/8.2/config/Services/MIMEResolver/user-defined-mime-resolver.xml

在Windows上,您可以在以下位置找到该文件: %AppData%\Netbeans\8.2\config\Services\MIMEResolver\user-defined-mime-resolver.xml

基本上,第一个<file>块扫描任何PHP文件的文件名,看它是否包含&#34; .blade&#34;子。如果是,则将该文件视为Twig文件。如果没有,第二个<file>块将把文件视为普通的PHP文件。

您可能需要&#34; Twig模板&#34; NetBeans插件以获得适当的突出显示:
Tools > Plugins > Available Plugins > Twig Templates

它并不完美......诸如@include之类的刀片指令仍然以明文形式突出显示。但是,我觉得它比PHP语法高亮显着有了明显的改进。

以下来源非常有用:

答案 2 :(得分:3)

很多人正在开发其他系统,就像我在Centos 7上一样,因此这种解决方法几乎有效。

对于CentOS,可能还有其他系统,请按照以下步骤操作,几乎与上面的Windows相同:

  • 打开Netbeans。转到Tools->Options->Miscellaneous,然后选择标签Files
  • File Extension行中,点击New按钮。输入crazywrongname作为扩展名(这对选项2很重要)
  • 在此之下,在Associated File Type (MIME):下选择TWIG (text/x-twig)
  • 选项
  • 点击Apply,然后点击OK
  • 关闭Netbeans

选项1:

以下步骤适用于 CentOS 7 NetBeans 8.1 ,最有可能适用于其他系统,但如果您无法在该路径中找到该文件,选项2在下面。

  • 打开终端并在您喜欢的文本编辑器中打开文件/root/.netbeans/8.1/config/Services/MIMEResolver/user-defined-mime-resolver.xml,例如运行命令nano /root/.netbeans/8.1/config/Services/MIMEResolver/user-defined-mime-resolver.xml
  • 找到参数名称&#34; crazywrongname&#34;在此文件中将其更改为&#34; blade.php&#34;
  • 保存文件
  • 打开Netbeans并享受。

未来的人们,您可能会尝试将文件路径中的Netbeans版本从选项1更改为您的版本,例如14.3或2028年的任何内容。

选项2:

如果您无法在上述确切路径中找到此文件,请运行此命令进行查找:

cd / && grep -rI --exclude-dir=proc --exclude-dir=sys crazywrongname *

这将从root开始搜索整个系统上的特定模式。这就是为什么我们将参数命名为crazywrongname - 所以它在系统上的任何其他文件中都找不到,就像blade那样。它还将排除不应访问的文件夹。如果您不排除它们,您将收到错误并可能挂起您的系统。此外,一些粉红色的独角兽可能会死亡。

找到系统的确切文件路径后,请按照选项1中的其余步骤更改参数名称。

谢谢你,神秘的David Benedeki在回答之后从StackOverflow中消失了,这非常有帮助:)

答案 3 :(得分:0)

我可以看到问题更多是以 NetBeans为中心,因此我还建议您向NetBeans社区提交错误报告。

也许将来他们可以解决这个问题。您也可以链接该问题,以便他们看到用户的反应。

答案 4 :(得分:0)

使用自定义 *BladeDataObject 文件进行模块开发

@MIMEResolver.Registration(
        resource = "BladeResolver.xml",
        displayName = "#LBL_Blade_LOADER" 
)

并在同一个包中创建包含内容的 BladeResolver.xml 文件

<MIME-resolver>
    <file>
        <ext name="php"/>
        <name name="blade" substring="true">
            <resolver mime="text/x-blade"/>
        </name>
    </file>
</MIME-resolver>