SCRIPT (markup)
{{Short description|Markup language for IBM computers}}
SCRIPT,Stuart E. Madnick and Allen G. Moulton (1968) {{cite web|url=http://web.mit.edu/smadnick/www/papers/J002.pdf | title=SCRIPT, An Online Manuscript Processing System | accessdate=2012-09-12}} IEEE Transactions on Engineering Writing and Speech, Vol. EWS-11, No. 2, pp. 92-100. any of a series of text markup languages starting with Script{{cite manual
| title = CMS SCRIPT User's Manual
| publisher = IBM
| id = GH20-0860
| title = Control Program-67/Cambridge Monitor System (CP-67/CMS) Version 3 Program Number 3600-05.2.005 User's Guide
| chapter = SCRIPT
| version = First Edition
| publisher = IBM
| date = October 1970
| url = http://bitsavers.org/pdf/ibm/360/cp67/GH20-0859-0_CP-67_Version_3_Users_Guide_Oct1970.pdf
| id = GH20-0859-0
| pages = 143[127]–177[163]
| mode = cs2
}}
under Control Program-67/Cambridge Monitor System (CP-67/CMS) and Script/370{{cite manual
| title = SCRIPT/370 Text Processing Facility Under Virtual Machine Facility/370 (VM/370) Program Description/Operations Manual Program Number 5796-PAF
| version = First Edition
| publisher = IBM
| date = November 1972
| url = http://bitsavers.org/pdf/ibm/370/CMS/SH20-1114-0_SCRIPT_370_Text_Processing_Facility_Nov72.pdf
| id = SH20-1114-0
| mode = cs2
}}
under Virtual Machine Facility/370 (VM/370) and the Time Sharing Option (TSO) of OS/VS2; the current version, SCRIPT/VS,{{cite manual
|title = DCF V1R4.0: SCRIPT/VS User's Guide
|version = Third Edition
|publisher = IBM
|date = May 1999
|url = http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsmu2m00/CCONTENTS
|id = S544-3191-02
}}{{Dead link|date=October 2023 |bot=InternetArchiveBot |fix-attempted=yes }}{{cite manual
|title = DCF: SCRIPT/VS Language Reference
|version = Eighth Edition
|publisher = IBM
|date = September 1998
|url = http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsml7m00/EDITION?DT=19990324064833
|id = SH35-0070-07
}}{{Dead link|date=October 2023 |bot=InternetArchiveBot |fix-attempted=yes }}{{cite manual
|title = DCF V1R4.0: SCRIPT/VS Text Programmer's Guide
|version = Eighth Edition
|publisher = IBM
|date = August 1999
|url = http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsmp7m00/CCONTENTS
|id = SH35-0069-07
|mode = cs2
}}{{Dead link|date=October 2023 |bot=InternetArchiveBot |fix-attempted=yes }} is part of IBM's Document Composition Facility (DCF){{cite manual
|title = Document Composition Facility and Document Library Facility General Information Program Numbers 5748-XX9 5748-XXE
|version = Eleventh Edition
|publisher = IBM
|date = January 1991
|url = http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/DSM02M00/CCONTENTS?SHELF=dsm0pa01&DN=GH20-9158-10&DT=19910521163021
|id = GH20-9158-10
}}{{Dead link|date=October 2023 |bot=InternetArchiveBot |fix-attempted=yes }} for IBM z/VM and z/OS systems. SCRIPT was developed for CP-67/CMS by Stuart Madnick{{cite web|url=http://www.sgmlsource.com/history/roots.htm|year=1996|title=The Roots of SGML - A Personal Recollection|author=Charles F. Goldfarb|accessdate=2012-02-26|archive-date=2012-12-20|archive-url=https://web.archive.org/web/20121220071917/http://www.sgmlsource.com/history/roots.htm|url-status=dead}} at MIT, succeeding CTSS RUNOFF.
SCRIPT is a procedural markup language. Inline commands called control words, indicated by a period in the first column of a logical line, describe the desired appearance of the formatted text. SCRIPT originally provided a 2PASS option to allow text to refer to variables defined later in the text, but subsequent versions allowed more than two passes.
History
In 1968 "IBM contracted Stuart Madnick of MIT to write a simple document preparation ..."{{Cite journal|last=Hannotte|first=Dean|date=March 19, 1985|title=Put Your Text In Top Form|url=https://books.google.com/books?id=mI2TxlvjaksC&dq=PC+Magazine+March+1985+Script%2FPC&pg=PA211|journal=PC Magazine|publisher=Ziff-Davis|volume=4|issue=6|pages=209–211, 213, 221|via=Google Books}} to run on CP/67.{{cite journal |title=SCRIPT, An On-Line Manuscript Processing System
|year=1968|doi=10.1109/TEWS.1968.4322339|s2cid=51633921|last1=Madnick|first1=Stuart E.|last2=Moulton|first2=Allen|journal=IEEE Transactions on Engineering Writing and Speech|volume=11|issue=2|pages=92–100}} He modeled it on MIT's CTSS RUNOFF.{{cite web |title=What does sCrIPT mean?
|quote=SCRIPT was developed for CP-67/CMS by Stuart Madnick at MIT, succeeding CTSS RUNOFF.
|url=https://www.definitions.net/definition/sCrIPT}}{{cite web
|title=History of UNIX Manpages |url=https://manpages.bsd.lv/history.html
|quote=1967: SCRIPT (Stuart Madnick). In 1967, Madnick ported the RUNOFF code to the IBM CP67/CMS at IBM as SCRIPT. The documentation of SCRIPT explicitly ...}}
In 1974, William Dwyer at Yale University ported the CP-67 version of Script to the Time Sharing Option (TSO) of OS/360 under the name NSCRIPT.{{cite book
| title = User's Guide and Catalog of Programs
| publisher = SHARE PROGRAM LIBRARY AGENCY
| year = 1977
| id = 360D-03.5.008
| page = 24
| url = http://bitsavers.org/pdf/ibm/share/SHARE_PgmCatalog_Jan77.pdf
}} The University of Waterloo rewrote and extended NSCRIPT as Waterloo SCRIPT,{{cite book
| title = Introduction to SCRIPT
| date = November 29, 1978
| publisher = University of Waterloo Computing Centre
| mode = cs2
}}
also in 1974, making it available for free to CMS and TSO users for several releases before eventually charging for new releases.
By 1978, IBM's Script/370, running on VM/CMS, had evolved into Document Composition Facility (DCF),{{cite book
| title = Document Composition Facility: User's Guide Program Number S748-XX9
| id = SH20-9161-0
| date = July 1978
| edition = first
| url = http://bitsavers.org/pdf/ibm/370/DCF/SH20-9161-0_Document_Composition_Facility_Users_Guide_Jul78.pdf
| mode = cs2
}}
supporting SCRIPT/VS on CMS, DOS/VS, OS/VS1 and OS/VS2, and supported the IBM 3800. In addition, there was a PC/MS-DOS version called SCRIPT/PC.{{cite book
| title = SCRIPT/PC
| id = 1502414
| volume = Book 1 How to Use
| series = Personal Computer Productivity Series
| edition = First
| date = January 1984
| mode = cs2
}}
Native SCRIPT control words
Native Script control begin with a period and have a space prior to operands. They normally begin in column 1, but you may code multiple control words, separated by semicolons, on a single line.
The description and table below refer to selected control words in DCF; older versions are similar.
SCRIPT allows space units in control words to be specified in a number of units including inches, centimeters, millimeters, picas, ciceros, m-spaces, or device units (pels at the current device resolution). Vertical space units are assumed to be lines unless otherwise specified.
class="wikitable" | |||
control word | function | example | |
---|---|---|---|
.sp | Inserts blank vertical space | {{code|2=groff|.sp 1}} | Inserts one blank line |
.ce | Centers following lines | {{code|2=groff|.ce 2}} | Centers the following two lines on the current page or column |
.ez | Controls EasyScript | {{code|2=groff|.ez P foo bar}} | Starts paragraph with text foo bar; equivalent to &P.foo bar after .ez on |
.im | Imbeds a file at the current location | {{code|2=groff|.im BLRPLT}} | Inserts the file 'BLRPLT SCRIPT' |
.ju | Turn on/off justify mode | {{code|2=groff|.ju on}} | Requests that subsequent lines be justified until .ju off is encountered |
.rh | Specify running head information | {{code|2=groff|.rh}} | Identify following lines as running head until .rh off is encountered |
.df | Define a named font | {{code|2=groff|.df examp type('Century Schoolbook' 10 light)}} | Specifies attributes for font named 'examp'. |
.bf | Specify font for following text | {{code|2=groff|.bf title}} | 'title' is the name of a font identified by a .df control word. |
.se | Assigns a value to a variable symbol | {{code|2=groff|1=.se month = January}} | Assigns a value to the variable &month that will replace every subsequent occurrence of &month in the input text until &month is redefined. |
SCRIPT macros
Script includes a facility for user-defined macros and for automatically reading a profile containing macro definitions and other commands. Several packages for semantic tagging, including GML and EasyScript, are built on top of this facility.
Generalized Markup Language
{{Main|Generalized Markup Language}}
IBM's Generalized Markup Language (GML) is a descriptive markup layer describing the logical structure of a document. Both SCRIPT/VS and the GML Starter Set are part of IBM's Document Composition Facility (DCF), used in the System/370 platform and successors. The tag sets of the BookMaster{{cite web
| title = 5688-015 IBM Host Publishing Systems BookMaster R4
| id = 5688-015
| url = http://www.ibm.com/common/ssi/cgi-bin/ssialias?infotype=dd&subtype=sm&htmlfid=897/ENUS5688-015
| access-date = August 4, 2021
| work = IBM United States Sales Manual
| date = 5 August 2008
| publisher = IBM
}}
| title = BookMaster V1R4.0 Bookshelf product on Printing and Publishing CD
| url = http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/Shelves/edf01a02
| archive-url = https://archive.today/20130628042800/http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/Shelves/edf01a02
| archive-date = June 28, 2013
| url-status = dead
| publisher = IBM
}}
and BookManager BUILD/MVS{{cite web
| title = BookManager READ/MVS and BUILD/MVS V1R3.0 Bookshelf
| url = http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/Shelves/eoxeoy07
| archive-url = https://archive.today/20130628042624/http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/Shelves/eoxeoy07
| archive-date = June 28, 2013
| url-status = dead
| publisher = IBM
}}
products are built on a foundation of the GML Starter Set syntax and implementation.
The Standard Generalized Markup Language (SGML) is a descendant of GML. While DCF does not directly handle SGML, there is an SGML translator available as a separate product.
=EasyScript=
EasyScript is a set of macro definitions and profiles included with Script/370{{cite manual
| author = IBM
| title = SCRIPT/370 Text Processing Facility Under Virtual Machine Facility/370 (VM/370) Program Description/Operations Manual Program Number 5796-PAF
| version = First Edition
| publisher = IBM
| date = November 1972
| url = http://bitsavers.org/pdf/ibm/370/CMS/SH20-1114-0_SCRIPT_370_Text_Processing_Facility_Nov72.pdf
| id = SH20-1114-0
}} Version 3{{cite manual
| author = IBM
| title = SCRIPT/370 Version 3 User's Guide Program Number: 5796úPHL
| version = First Edition
| publisher = IBM
| date = September 1976
| url = http://bitsavers.org/pdf/ibm/370/CMS/SH20-1857-0_SCRIPT_370_Version_3_Users_Guide_Sep76.pdf
| id = SH20-1857-0
| mode = cs2
}}
| title = SCRIPT/370 Text Processing Facility Under Virtual Machine Facility/370 (VM/370) Systems Guide Program Number 5796-PAF
| publisher = IBM
| url = http://bitsavers.org/pdf/ibm/370/CMS/LY20-0762-0_SCRIPT_370_Text_Processing_Facility_Systems_Guide_Nov72.pdf
| id = LY20-0762-0
| mode = cs2
}}
For compatibility, DCF also includes EasyScript. that implements a primitive version of GML. Tags are variables whose values have been set to control words, allowing multiple tags in a single line.
.ez on
&P.This is a paragraph.
&N1.First item
&N2.First subitem
&N2.Second subitem
&N1.Second item
is roughly equivalent to
This is a paragraph
- First item
- First subitem
- Second subitem
- Second item
=GML Starter Set (GMLSS)=
The GML Starter Set (GMLSS){{cite manual
| title = IBM Document Composition Facility: Generalized Markup Language Starter Set User's Guide
| publisher = IBM
| id = SH20-9186-07
| date = January 1991
| edition = Eighth
| mode = cs2
}}
| title = IBM Document Composition Facility: Generalized Markup Language Starter Set Reference
| publisher = IBM
| id = SH20-9187-06
| date = January 1991
| edition = Seventh
| mode = cs2
}}
is a set of macro definitions and profiles that implements{{cite manual
| title = Document Composition Facility Generalized Markup Language Implementation Guide
| id = SH35-0050-02
| date = March 1985
| edition = Third
| url = http://bitsavers.org/pdf/ibm/370/DCF/SH35-0050-2_Document_Composition_Facility_Generalized_Markup_Language_Implementation_Guide_Rel_3_Mar85.pdf
| publisher = IBM
| mode = cs2
}}
a set of tags that has more of a semantic orientation than the raw Script/VS control words. Tags begin with a colon and end with a period, and may contain attributes between the name and the closing period; a line may contain multiple tags.
=BookMaster=
=BookManager=
BookManager is a family of products for producing and reading online books. BookManager BUILD/MVS and BookManager BUILD/VM are layered on top of SCRIPT and BookMaster and can run on z/VM and z/OS.{{cite web|url=http://publib.boulder.ibm.com/infocenter/zos/v1r13/index.jsp?topic=%2Fcom.ibm.zos.r13.bkma900%2Fw3bib.htm|year=2011|title=z/OS V1R10.0-V1R12.0 Library Server Getting Started|author=IBM Corporation|accessdate=2012-02-27}} Other BookManager BUILD products for generating text run on Linux, Windows or OS/2 and convert files produced by various word processors to BookManager format. BookManager Read products for viewing text run on a variety of systems. BookManager BookServer is a multi-platform system to "serve your electronic books to HTML browsers."{{cite web
| title = IBM BookManager BookServer for Windows V2.3, IBM BookManager BookServer for AIX and Linux V2.3, and IBM BookManager Build for Windows V2.3 Increases Ease of Use
| id = LTR 201-273
| year = 2001
| url = http://www.ibm.com/common/ssi/cgi-bin/ssialias?subtype=ca&infotype=an&appname=iSource&supplier=897&letternum=ENUS201-273
| work = Announcement Letters
| publisher = IBM Corporation
| accessdate = 2012-02-27
}}
BookManager electronic documents typically have filenames ending with the extension .BOO. IBM offers several no charge tools to work with and read BookManager documents including a reader/viewer called IBM Softcopy Reader.{{Cite web|date=2019-04-17|title=Downloadable free BookManager tools and components|url=https://www.ibm.com/support/pages/downloadable-free-bookmanager-tools-and-components|access-date=2021-10-04|website=www.ibm.com|language=en}} An independent developer, Ken Bowling, created and released software that uses IBM's BookManager code libraries to convert BookManager documents to PDF.{{Citation|last=Bowling|first=Kevin|title=boo2pdf|date=2020-12-17|url=https://github.com/kev009/boo2pdf|access-date=2021-10-04}}
See also
References
{{reflist}}
External links
- {{cite book|publisher=IBM Corporation|title=DCF: SCRIPT/VS Language Reference|year=1999|url=http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsml7m00/CCONTENTS|archive-url=https://archive.today/20121209094755/http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsml7m00/CCONTENTS|url-status=dead|archive-date=December 9, 2012}}SH35-0070-07
- {{cite book|publisher=IBM Corporation|title=DCF V1R4.0: SCRIPT/VS Text Programmer's Guide|year=1999|url=http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsmp7m00/CCONTENTS|archive-url=https://archive.today/20121216085212/http://publibfp.dhe.ibm.com/cgi-bin/bookmgr/BOOKS/dsmp7m00/CCONTENTS|url-status=dead|archive-date=December 16, 2012}}SH35-0069-07
- [http://mit.edu/saltzer/www/publications/ctss/AH.9.01.html "CTSS PROGRAMMER'S GUIDE Section AH.9.01, 12/66"]