The HTML ArchiveFrequently Asked Questions about <abbr >GELL<hy0 />MU</abbr >William F. HammondLast Revision: Part IBasic QuestionsSU-11What is GELLMU?SU-1.12What is XML?SU-1.23Why was GELLMU Created?SU-1.34Can GELLMU Help Me to Write My Web Pages?SU-1.45What is the Diffence between Basic and Regular GELLMU?SU-1.56Are There Other Similar Markups?SU-1.6Part IIRunning GELLMUSU-27On What Platforms Can GELLMU Be Used?SU-2.18What is Needed to Run GELLMU?SU-2.2Part IIIThings in not in GELLMUSU-39Why are So Many Things Not In GELLMU?SU-3.110Why Doesn't ref Automatically Make Anchors?SU-3.211What About SplitFile Source?SU-3.312What About SplitFile Formattings?SU-3.4Part IVRelation of GELLMU to Other ThingsSU-413How is GELLMU Related to latex2html?SU-4.114How is GELLMU Related to hyperlatex?SU-4.215How is GELLMU Related to tex4ht?SU-4.3
Part IBasic Questions1What is GELLMU?GELLMU stands for Generalized Extensible Like MarkUp It is a markup language with syntax resembling in large part that of that is designed to provide a bridge for authors who wish to migrate from to XML (see iref="whatIsXml"question whatIsXml) 2What is XML?XML stands for Extensible Markup Language, which is second generation basic markup language for the World Wide Web The use of the word extensible means that the set of markup tags is not fixed That, in turn, means that XML is not a markup language but rather a family of markup languages with a shared syntax 3Why was GELLMU Created?The author is a math professor who became frustrated in recent years with the extra work required to make his course materials available on the web for his studentsHe found that if he wrote HTML directly, he could not derive adequate printed versions, and he found converters for translating into HTML cumbersome, inaccurate, and unsatisfactoryThere are now better converters; however, the overall idea of translating from LaTeX to HTML is not logically sound (On the other hand, it is logically sound to write a translator from HTML to .)GELLMU is designed as a single source language in which to write from which different formats can be automatically derived with complete reliability For more on single source, multiple output languages for authors see iref="singleSource"question singleSource 4Can GELLMU Help Me to Write My Web Pages?Yes, in two ways There is a choice between basic GELLMU and regular GELLMUIf you are familiar with the tag set for HTML (the basic language used in web pages) and do not want any form for what you write other than a web page, then basic GELLMU provides like notation, which is somewhat more succinct than regular HTML tagging, and newcommandlike macros for writing HTML For this see also iref="related"part IVIf you want to write for more than one ultimate output with a single source markup (see iref="singleSource"question singleSource), then regular GELLMU may be considered 5What is the Diffence between Basic and Regular GELLMU?Basic GELLMU provides minimal (1) like syntax and (2) newcommandlike macros for conscious writing toward an SGML or XML document type such as HTML, DocBook, TEI, SGMLTexi, Regular GELLMU provides also a fuller array of like syntax features and some like shorthand Moreover, the GELLMU didactic production system provides a document type with many like commands 6Are There Other Choices for Single Source, Multiple Output Markup Languages for Authors?Yes Texinfo, the language of the GNUThe free software project of Richard Stallman and the Free Software Foundation. See http://www.gnu.org/ Documentation System, is an example In the 80's Texinfo could be used to provide two forms of a GNU document: (1) Info online hypertext, suitable for the textbased terminals with cursor control of that time and (2) finely typeset text in DVI formatBy the late 80's Charles Goldfarb had created SGML, the very general family of markup languages in which HTML is a member and relative to which XML is a subfamily Although it is formally possible for a language under this umbrella to admit essentially no translation, the intention was to provide powerful languages suitable for multiple outputs and to provide, thanks to the shared syntax, general processing frameworks under which translations can be efficiently and reliably written
Part IIRunning GELLMU7On What Platforms Can GELLMU Be Used?A complete suite of materials for the GELLMU didactic production system is available for the GNU Operating System, Linux, the various flavors of Unix, and modern Windows 8What is Needed to Run GELLMU?Minimally the GELLMU Syntactic Translator, an GNU Emacs Lisp program To use it, you need the Emacs Lisp engine, which is GNU EmacsFor basic GELLMU (see iref="twoGellmus"question twoGellmus) the GELLMU Syntactic Translator is all that you need Its output is the SGML or XML language such as, for example, HTML, for which you are explicitly tagging Of course, you need whatever is required in order for you to deal with that outputFor regular GELLMU with the didactic GELLMU production system you need to have James Clark's nsgmlsSPPerl
Part IIIThings in not in GELLMU9Why are So Many Things Not In GELLMU?The didactic document type is intended to be a base for further development For that reason its design is minimalist Its author believes that the techniques used are adequate for a substantially more elaborate system One who so wishes can move it closer to regular than it already is On the other hand, if it is moved too close to , which is a structured typesetting language, then the range of possible translation targets might be diminishedMore information about this will be found in the href="../doc/glman.html"GELLMU Manual, especially in the appendix entitled href="../doc/glman.htmlrelease"Release Notes 10Why Doesn't ref Automatically Make Anchors?First note that every label command does result in the creation of a base to which one may anchor In the two didactic formattings for and HTML the anchor base is not visible when renderedSome HTML renderers might disclose id anchors with empty content. There are three reasons why ref does not automatically provide a link: Since ref is the same as a name in , there is an effort to emulate 's behavior in this regard There is more than one reasonable way to style an anchor It is extremely easy for an author to use newcommand to reference a label For example, if an author writes newcommandRef1anchirefref1ref1, then Ref is created as a name for providing a label reference (by key, as with ref) with an anchor Or the same newcommand with name string ref instead of Ref is also allowed in GELLMU, though in one would need to use renewcommandSince 's newcommand actually creates a new command whereas GELLMU's newcommand is onetime forward macro substitution 11What About SplitFile Source?The best way to merge document input is at the level of SGML source, i.e., at the stage represented by the output of the syntactic translatorFor example, this will make the parsing error reports from nsgmls easy to locate in GELLMU source since errors are reported by file and line number (The syntactic translator preserves line number alignment between its source and its output, file by file.) Also when the syntactic translator is called separately for different parts of a document, the newcommand definitions are localized to each part, thereby making the resolution of name conflicts easy to track 12What About SplitFile Formattings?As it is, the didactic production system is based on one file per document If that is not what you want, just customize your formatters to produce what you wantThis would make sense, for example, for a collection document class that was constructed to consist of independently authored GELLMU articles While one might want a unified typesetting, one might also want separate HTML versions and separate screensized PDF versionsIn a design like that of the didactic production system the document is seen as a whole at the stage where crossreferencing is handled This makes it possible for crossreferencing in splitfile formattings to comprehend the parts as they relate to the whole
Part IVRelation of GELLMU to Other Things13How is GELLMU Related to latex2html?GELLMU provides like markup for the conscious writing of instances under an XML document type That document type could be HTMLlatex2html, on the other hand, is designed to translate source consciously written as classical or markup 14How is GELLMU Related to hyperlatex?GELLMU provides a way to write HTML consciously using like syntax, while hyperlatex involves translation of a special dialect of There are a number of similar features in hyperlatex including: The use of (not like) markup to write HTMLThe use of a GNU Emacs Lisp program to translate source markup (in this case to HTML)Careful, reliable production of both HTML and typeset forms of a document As it stands in relation to SGML or XML, hyperlatex is specific for HTML The source of a hyperlatex document may be given to hyperlatex's Emacs Lisp program for translation to HTML or to LaTeX, the program, for typesetting with hyperlatex macrosGELLMU's basic layer, which operates at the level of syntax without knowledge of markup vocabulary, may be used for writing under many SGML or XML document types, not just HTML Subsequent to syntactic translation from like markup to standard SGML or XML markup, one may employ any suitable SGML or XML processor for further translation, typesetting, or other processing GELLMU's basic layer for writing in HTML (or in any other SGML or XML document type) directly does not provide typesettingThe GELLMU didactic production system provides what is intended as a first SGMLXML document type for those with experience as authors The system is designed for freestanding separate components, and new components can be introduced for translating to new formats The use of LaTeX, the Program, with GELLMU source is a choice, not a requirement 15How is GELLMU Related to tex4ht?The tex4ht family of applications is conversion software It uses TeX, the Program, configured with special macros aimed at a target format, such as HTML, to create DVI specials in TeX's normal DVI output While one can print the DVI file in the usual way, one may also then submit it to a special postprocessor for writing a translation of the original document in the target format One can achieve very good results this way if the original source is carefully crafted For legacy source this method is likely to produce optimal resultsGELLMU provides like markup for the conscious writing of instances under an XML document type There is very little intersection of this with the functionality of tex4ht except in the relatively rare instances of or source that is carefully crafted under a custom markupGELLMU does not provide a technique for automatic translation of legacy documents although one may sometimes, especially with clever use of its macro facilities, succeed with human effort to port legacy source into useful GELLMU source The item lfaq.glm in the href="./"examples archive is an example of a port