Community
    • Login

    HTML folding with inline comments

    Scheduled Pinned Locked Moved General Discussion
    folding
    7 Posts 3 Posters 6.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Keith WhiteK
      Keith White
      last edited by

      In Notepad++, using the “HTML” language option, a <tr> line with an inline comment fails to be recognised as foldable. The last closing “>” on the <tr> tag is shown in black whereas it should be shown in blue. I’m guessing the comment is confusing the syntax highlight and code folding. I’ve checked over this line and it looks correct. Is it me or is this a bug?

      I couldn’t include the code line here due to the spam protection on this forum.

      Many thanks

      1 Reply Last reply Reply Quote 0
      • guy038G
        guy038
        last edited by

        Hello Keith,

        I don’t create HTML files, myself ! So, when you say :

        a <tr> line with an inline comment fails to be recognised as foldable.

        Do you mean a line of the form :

        <tr>  <!-- Some comment text -->
        

        If I’m not mistaken, after opening an HTML file and regarding this part of the code, below ( don’t care about this exact code ! )

        <tr>  <!-- Some comment text -->
          <td height="20" align="center" valign="top">
            <table border="0" cellpadding="0" cellspacing="0" bgcolor="white">
              <tr><!-- Some other comment text -->
                <td></td>
              </tr>
            </table>
          </td>
        </tr>
        

        On my 6.8.8 locale N++ configuration, the two <tr> tags, of the above example, are :

        • correctly displayed, in blue, even if the tag is just closed to the comment text

        • normally foldable and unfoldable

        Best Regards,

        guy038

        1 Reply Last reply Reply Quote 0
        • Keith WhiteK
          Keith White
          last edited by

          Hi. Thanks for replying. I did want to put the code into my post, but this forum won’t allow it (spam protection blocks it). I just tried again using a code block, but got the same message:-

          “Post content was flagged as spam by Akismet.com”

          The comment is inside the tr tag itself (the comment is actually an ASP-style tag that gets replaced with data prior to the web server sending it).

          1 Reply Last reply Reply Quote 0
          • Keith WhiteK
            Keith White
            last edited by Keith White

            Done it. Slightly changed my tr line and got it through

            <table>
            	<tr class="lists" <!--#4dtext ([job header]job number)-->>
            		<td>
            		</td>
            	</tr>
            </table>
            
            1 Reply Last reply Reply Quote 0
            • PeterJonesP
              PeterJones
              last edited by

              I am not a Notepad++ expert, nor am I an expert in the ins and outs of HTML syntax… however, the consensus in my searches seem to indicate that you cannot have valid HTML with a comment embedded inside a tag. (for example, https://stackoverflow.com/questions/14020482/how-to-comment-within-an-html-attribute and https://stackoverflow.com/questions/5926580/html-comments-inside-opening-tag-of-the-element both indicate it’s not possible – though neither provides an explicit reference for it not being legal.)

              For HTML5, I was, however, able to piece together the following from the w3c HTML5 spec: the 6-step outline (http://dev.w3.org/html5/spec-author-view/syntax.html#writing) only indicates comments external to other elements; the elements definition (http://dev.w3.org/html5/spec-author-view/syntax.html#elements-0) explicitly allows comments to also be inside normal elements (ie, between start and end tags); however, the start tags section (http://dev.w3.org/html5/spec-author-view/syntax.html#start-tags) does not specify that comments are allowed inside the start tag (neither do the end tags or attributes definitions) – so I believe it’s thus not legal HTML5.

              However, as you clarified, your notation isn’t actually an HTML comment; it’s a server-side processor directive that never gets transmitted as HTML. As such, it doesn’t have to follow the rules for HTML, since it’s not HTML. However, as non-HTML, it’s somewhat unfair to expect an HTML syntax highlighter to properly understand every potential server-side extension that’s not part of HTML. However, if it’s a standard extension, such as ASP, I would expect setting the Notepad++ language to that language (such as ASP) would process correctly. And I see that setting to Language=ASP for your snippet also doesn’t highlight properly; I don’t know enough about ASP to know if it’s legal ASP or not, or whether your “ASP-style” means it’s not even really ASP.

              1 Reply Last reply Reply Quote 0
              • Keith WhiteK
                Keith White
                last edited by

                Hi

                You are correct, the HTML only becomes valid at run-time. I just tested using some actual ASP code within a tr tag and Notepad++ recognises it properly, even with the Notepad++ Language set to HTML. Not unreasonable considering ASP is quite widely used.

                When I said ASP-style, the comment tags are actually for 4D (4D.com) which is not a well known development platform.

                I guess I was hoping that because my server-side tags are HTML comments and are already highlighted as such, that they could then be ignored for the remaining syntax highlighting/code folding.

                But since the syntax isn’t actually valid HTML in the editor, it’s fair that the syntax highlighting and code folding don’t recognise it. ;-(

                Thanks for the replies though.

                1 Reply Last reply Reply Quote 0
                • Keith WhiteK
                  Keith White
                  last edited by

                  So how do I turn this into a feature enhancement request?

                  “Enhance HTML syntax highlight and code folding for comment based server side extensions inside HTML tags”

                  Many thanks.

                  1 Reply Last reply Reply Quote 0
                  • First post
                    Last post
                  The Community of users of the Notepad++ text editor.
                  Powered by NodeBB | Contributors