3.5 Comments

  Comments are an SGML construction, and are normally only valid inside a DTD. However, as 第 3.4 节 shows, it is possible to use SGML syntax within your document.

  The delimiter for SGML comments is the string “--”. The first occurrence of this string opens a comment, and the second closes it.

例 3-8. SGML generic comment

<!-- test comment -->
<!-- This is inside the comment -->

<!-- This is another comment    -->

<!-- This is one way
     of doing multiline comments -->

<!-- This is another way of   --
  -- doing multiline comments -->

  If you have used HTML before you may have been shown different rules for comments. In particular, you may think that the string <!-- opens a comment, and it is only closed by -->.

  This is not the case. A lot of web browsers have broken HTML parsers, and will accept that as valid. However, the SGML parsers used by the Documentation Project are much stricter, and will reject documents that make that error.

例 3-9. Erroneous SGML comments

<!-- This is in the comment --

     THIS IS OUTSIDE THE COMMENT!

  -- back inside the comment -->

The SGML parser will treat this as though it were actually:

<!THIS IS OUTSIDE THE COMMENT>

This is not valid SGML, and may give confusing error messages.

<!--------------- This is a very bad idea --------------->

As the example suggests, do not write comments like that.

<!--===================================================-->

That is a (slightly) better approach, but it still potentially confusing to people new to SGML.

3.5.1 For you to do...

  1. Add some comments to example.sgml, and check that the file still validates using nsgmls.

  2. Add some invalid comments to example.sgml, and see the error messages that nsgmls gives when it encounters an invalid comment.

本文档和其它文档可从这里下载:ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

如果对于FreeBSD有问题,请先阅读文档,如不能解决再联系<questions@FreeBSD.org>.
关于本文档的问题请发信联系 <doc@FreeBSD.org>.