Date: Fri, 17 Mar 2006 17:07:29 +0100 From: Rudolf Cejka <cejkar@fit.vutbr.cz> To: Ceri Davies <ceri@submonkey.net>, Remko Lodder <remko@FreeBSD.org>, doc-committers@FreeBSD.org, cvs-doc@FreeBSD.org, cvs-all@FreeBSD.org Subject: Re: cvs commit: www/en where.sgml Message-ID: <20060317160729.GA98352@fit.vutbr.cz> In-Reply-To: <20060314100021.GA36929@submonkey.net> References: <20060311152536.GD73523@submonkey.net> <20060313152017.GA24077@fit.vutbr.cz> <20060314100021.GA36929@submonkey.net>
next in thread | previous in thread | raw e-mail | index | archive | help
Ceri Davies wrote (2006/03/14): > > 3) Recently I have found yet another problem: Your commit > > www/share/sgml/includes.navdownload.sgml 1.3, which added > > <!ENTITY % relincludes SYSTEM "includes.release.sgml"> %relincludes; > > into includes.navdownload.sgml file, has bad impact, that it is not > > possible to change definitions from includes.release.sgml in translations > > in a standard way anymore, which is to change www/<lang>/includes.sgml. > > Do you have any idea, how to solve this? I did not find anything good yet. > Does it work if that declaration moves to the English includes.sgml (if > there is one)? If you mean <!ENTITY % relincludes SYSTEM "includes.release.sgml"> %relincludes;, I think that not. You need it very early for %beta.testing and %beta2.testing for marked sections in includes.navdownload.sgml. Maybe it would help to move %beta.testing and %beta2.testing out from includes.release.sgml and make special file for them, however locality will be bad then and I'm afraid I would not like this solution. File includes.navdownload.sgml has to be included very early too, because it has to define entity &nav; before includes.header.sgml tries to define it as empty entity. > Failing that, is is possible to declare an ENTITY within > a marked section? > If so, we could use a similar approach in the > includes as /usr/include does perhaps? I could not imagine anything to do in this way. I'm looking at it once again, but I'm not sgml master. Maybe I can see two solutions: 1) Instead of using <!ENTITY % navincludes SYSTEM "includes.navdownload.sgml"> %navincludes; <!ENTITY % includes SYSTEM "includes.sgml"> %includes; it should be sufficient to use just <!ENTITY % navincludes SYSTEM "includes.navdownload.sgml"> <!ENTITY % includes SYSTEM "includes.sgml"> %includes; without calling %navincludes;, which could be moved to share/sgml/includes.sgml between %includes.release; and %includes.header;, however this solution would be just for case for includes.release.sgml. Is it possible to say in includes.header.sgml that if there is defined %navincludes;, call it, otherwise define <!ENTITY nav ''>? 2) It seems to me that it is possible to remove <!ENTITY nav ''> from share/sgml/includes.header.sgml at all and depend on that every occurence of <!ENTITY % includes SYSTEM "includes.sgml"> %includes; defines <!ENTITY % navincludes SYSTEM "..."> %navincludes; too. It has to be in that order: %navincludes; must be called after %includes;, so every file should be changed then, to have here clear including rules (and %relincludes; can be then removed from share/sgml/includes.navdownload.sgml). It seems that there is no file, which depends on default <!ENTITY nav ''>, so no other steps would be needed. If there would be any need for empty nav in the future, we can create empty includes.navempty.sgml, which can substitute current <!ENTITY nav ''> in includes.header.sgml. However everything is untested for now, if there are any output differences after that modifications. -- Rudolf Cejka <cejkar at fit.vutbr.cz> http://www.fit.vutbr.cz/~cejkar Brno University of Technology, Faculty of Information Technology Bozetechova 2, 612 66 Brno, Czech Republic
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060317160729.GA98352>