【问题标题】:Sublime text auto close tags in JSPJSP中的崇高文本自动关闭标签
【发布时间】:2015-11-19 15:58:18
【问题描述】:

在 sublime 文本中,当您键入 </ 时,它会自动为您关闭一个打开的 html 标记。这是一个很棒的功能,不幸的是 JSP 语法似乎无法识别自闭合标签,所以如果我有

<p>
    <cms:pageSlot position="BodyImage" var="feature">
        <cms:component component="${feature}"/>
    </cms:pageSlot>

然后我输入&lt;/,它完成了&lt;/cms:component&gt;,因为它不将&lt;cms:component component="${feature}"/&gt;识别为自结束标记,并认为它是最后一个打开标记。

如何让它关闭&lt;/p&gt;?它不会在 &lt;img.../&gt;&lt;input.../&gt; 上执行此操作,因此必须有办法让它将某些 jsp 标签识别为自闭。

【问题讨论】:

    标签: jsp tags sublimetext3


    【解决方案1】:

    目前我假设您知道如何在Packages/Java 文件夹中查找和编辑文件Java Server Pages (JSP).tmLanguage。如果这是一个错误的假设,请告诉我,我会扩展答案以涵盖该部分。

    将以下内容添加到Java Server Pages (JSP).tmLanguage,我相信您会看到您正在寻找的行为。似乎对我有用。请让我知道它是否适合您。

    <dict>
      <key>begin</key>
      <string>(&lt;/?)((?i:com)\b)</string>
      <key>beginCaptures</key>
      <dict>
        <key>1</key>
        <dict>
          <key>name</key>
          <string>punctuation.definition.tag.begin.html.jsp</string>
        </dict>
        <key>2</key>
        <dict>
          <key>name</key>
          <string>entity.name.tag.inline.any.html.jsp</string>
        </dict>
      </dict>
      <key>end</key>
      <string>((?: ?/)?&gt;)</string>
      <key>endCaptures</key>
      <dict>
        <key>1</key>
        <dict>
          <key>name</key>
          <string>punctuation.definition.tag.end.html.jsp</string>
        </dict>
      </dict>
      <key>name</key>
      <string>meta.tag.inline.any.html.jsp</string>
      <key>patterns</key>
      <array>
        <dict>
          <key>include</key>
          <string>#tag-stuff</string>
        </dict>
      </array>
    </dict>
    

    【讨论】:

      猜你喜欢
      • 2015-07-13
      • 1970-01-01
      • 1970-01-01
      • 2014-02-07
      • 2015-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多