Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

TeX

From Wikipedia, the free encyclopedia
Typesetting system
For other uses, seeTex (disambiguation).
icon
This article'slead sectionmay be too short to adequatelysummarize the key points. Please consider expanding the lead toprovide an accessible overview of all important aspects of the article.(July 2025)

TeX
DeveloperDonald Knuth
Initial release1978; 48 years ago (1978)
Stable release
3.141592653[1] / 5 February 2021; 5 years ago (2021-02-05)
Written inWEB/Pascal
Operating systemCross-platform
TypeTypesetting
LicensePermissive free software
Websitetug.org
Repository
TeX
Filename extension
.tex
Internet media type
Initial release1978; 48 years ago (1978)
Type of formatDocument file format

TeX (/tɛx/), stylized asTeX, is atypesettingprogram that was designed and written by computer scientist and Stanford University professorDonald Knuth[2] and first released in 1978. The term now refers to the system of extensions – which includes software programs called TeXengines, sets of TeXmacros, and packages which provide extra typesetting functionality – built around the original TeX language. TeX is a popular means of typesetting complexmathematical formulae; it has been noted as one of the most sophisticated digitaltypographical systems.[3]

TeX is widely used in academia, especially inmathematics,computer science,economics,political science,engineering,linguistics,physics,statistics, andquantitative psychology. It has long since displacedUnix troff (the previously favored formatting system), in mostUnix installations (althoughtroff still remains as the default formatter of the UNIX documentation). It is also used for many other typesetting tasks, especially as the basis forLaTeX,ConTeXt, and othermacro packages.

TeX was designed with two main goals in mind: to allow anybody to produce high-quality books with minimal effort, and to provide a system that would give exactly the same results on all computers, at any point in time (together with theMetafont language forfont description and theComputer Modern family oftypefaces).[4] TeX isfree software, which made it accessible to a wide range of users.

History

[edit]

When the first paper volume of Knuth'sThe Art of Computer Programming was published in 1968,[5] it was typeset usinghot metal typesetting on aMonotype machine. This method, dating back to the 19th century, produced a "classic style" appreciated by Knuth.[6] When the second edition was published, in 1976, the whole book had to be typeset again because the Monotype technology had been largely replaced byphototypesetting, and the originalfonts were no longer available. When Knuth received thegalley proofs of the new book on 30 March 1977, he found them inferior. Disappointed, Knuth set out to design his own typesetting system.

Knuth saw for the first time the output of a high-quality digital typesetting system, and became interested in digital typography. On 13 May 1977, he wrote a memo to himself describing the basic features of TeX.[7] He planned to finish it on hissabbatical in 1978 (though ultimately the language's syntax was notfrozen until 1989[citation needed]).Guy Steele happened to be atStanford during the summer of 1978, when Knuth was developing his first version of TeX. When Steele returned to theMassachusetts Institute of Technology that autumn, he rewrote TeX's input/output (I/O) to run under theIncompatible Timesharing System (ITS) operating system. The first version of TeX, called TeX78, was written in theSAIL programming language to run on aPDP-10 under Stanford'sWAITS operating system.[8]

For later versions of TeX, Knuth invented the concept ofliterate programming, a way of producing compilablesource code and cross-linked documentation typeset in TeX from the same original file. The language used is calledWEB and produces programs in DEC PDP-10Pascal.

TeX82, a new version of TeX rewritten from scratch, was published in 1982. Among other changes, the originalhyphenation algorithm was replaced by a new algorithm written byFrank Liang. TeX82 also usesfixed-point arithmetic instead offloating-point, to ensure reproducibility of the results across different computer hardware,[9] and includes a real,Turing-complete programming language, following intense lobbying by Guy Steele.[10] In 1989, Donald Knuth released new versions of TeX andMetafont.[11] Despite his desire to keep the program stable, Knuth realized that 128 different characters for the text input were not enough to accommodate foreign languages; the main change in version 3.0 of TeX is thus the ability to work with8-bit inputs, allowing 256 different characters in the text input. TeX3.0 was released on March 15, 1990.[12]

Since version 3, TeX has used an idiosyncraticversion numbering system, where updates have been indicated by adding an extra digit at the end of the decimal, so that the version numberasymptotically approachesπ. This is a reflection of the fact that TeX is now very stable, and only minor updates are anticipated. The current version of TeX is 3.141592653; it was last updated in 2021.[13] The design was frozen after version 3.0, and no new feature or fundamental change will be added, so all newer versions will contain onlybug fixes.[14] Even though Donald Knuth himself has suggested a few areas in which TeX could have been improved, he indicated that he firmly believes that having an unchanged system that will produce the same output now and in the future is more important than introducing new features. For this reason, he has stated that the "absolutely final change (to be made after my death)" will be to change the version number toπ, at which point all remaining bugs will become features.[15] Likewise, versions of Metafont after 2.0 asymptotically approache (currently at 2.7182818), and a similar change will be applied after Knuth's death.[14]

Pronunciation and spelling

[edit]

The name TeX is intended by its developer to be pronounced/tɛx/, with the final consonant ofloch.[16] The letters of the name are meant to represent thecapitalGreek letterstau,epsilon, andchi, as TeX is an abbreviation ofτέχνη (ΤΕΧΝΗtechnē), Greek for both "art" and "craft", which is also the root word oftechnical. English speakers often pronounce it/tɛk/, like the first syllable oftechnical. Knuth instructs that it be typeset with the "E" below the baseline and reduced spacing between the letters. This is done, as Knuth mentions in hisTeXbook, to distinguish TeX from other system names such as TEX, the Text EXecutive processor (developed by Honeywell Information Systems).[17]

Syntax

[edit]

TeX commands commonly start with abackslash and are grouped withcurly braces. Almost all of TeX's syntactic properties can be changed on the fly, which makes TeX input hard to parse by anything but TeX itself. TeX is amacro- andtoken-based language: many commands, including most user-defined ones, are expanded on the fly until only unexpandable tokens remain, which are then executed. Expansion itself is practically free from side effects.Tail recursion of macros takes no memory, and if-then-else constructs are available. This makes TeX aTuring-complete language even at the expansion level.[18] The system can be divided into four levels: in the first, characters are read from the input file and assigned a category code (sometimes called "catcode", for short). Combinations of a backslash (actually, any character of category zero) followed by letters (characters of category 11) or a single other character are replaced by a control-sequence token. In this sense, this stage is like lexical analysis, although it does not form numbers from digits. In the next stage, expandable control sequences (such as conditionals or defined macros) are replaced by their replacement text. The input for the third stage is then a stream of characters (including the ones with special meaning) and unexpandable control sequences (typically assignments and visual commands). Here, the characters get assembled into a paragraph, and TeX's paragraph breaking algorithm works by optimizing breakpoints over the whole paragraph. The fourth stage breaks the vertical list of lines and other material into pages.

The TeX system has precise knowledge of the sizes of all characters and symbols, and using this information, it computes the optimal arrangement of letters per line and lines per page. It then produces aDVI file ("DeVice Independent") containing the final locations of all characters. This DVI file can then be printed directly given an appropriate printer driver, or it can be converted to other formats. Nowadays,pdfTeX is often used, which bypasses DVI generation altogether.[19] The base TeX system understands about 300 commands, calledprimitives.[20] These low-level commands are rarely used directly by users, and most functionality is provided by format files (predumped memory images of TeX after large macro collections have been loaded). Knuth's original default format, which adds about 600 commands, is Plain TeX.[21] The most widely used format isLaTeX, originally developed byLeslie Lamport, which incorporates document styles for books, letters, slides, etc., and adds support for referencing and automatic numbering of sections and equations. Another widely used format,AMS-TeX, is produced by theAmerican Mathematical Society and provides many more user-friendly commands, which can be altered by journals to fit with their house style. Most of the features of AMS-TeX can be used in LaTeX by using the "AMS packages" (e.g.,amsmath,amssymb) and the "AMS document classes" (e.g.,amsart,amsbook). This is then referred to asAMS-LaTeX.[22] Other formats includeConTeXt, used primarily for desktop publishing and written mostly by Hans Hagen atPragma.

Design

[edit]

The TeX software incorporates several aspects that were not available, or were of lower quality, in other typesetting programs at the time when TeX was released. Some of the innovations are based on interesting algorithms, and have led to several theses for Knuth's students. While some of these discoveries have now been incorporated into other typesetting programs, others, such as the rules for mathematical spacing, are still unique.[as of?]

Mathematical spacing

[edit]
Mathematical text typeset using TeX and theAMS Euler font

Since the primary goal of the TeX language is high-quality typesetting for publishers of books, Knuth gave a lot of attention to the spacing rules for mathematical formulae.[23][24] He took three bodies of work that he considered to be standards of excellence for mathematical typography: the books typeset by theAddison-Wesley Publishing house (the publisher ofThe Art of Computer Programming) under the supervision of Hans Wolf; editions of the mathematical journalActa Mathematica from around 1910; and a copy ofIndagationes Mathematicae, aDutch mathematics journal. Knuth looked closely at these printed papers to sort out a set of rules for spacing.[25][26] While TeX provides some basic rules and the tools needed to specify proper spacing, the exact parameters depend on the font used to typeset the formula. For example, the spacing for Knuth'sComputer Modern fonts has been precisely fine-tuned over the years and is now set; but when other fonts, such asAMS Euler, were used by Knuth for the first time, new spacing parameters had to be defined.[27]

The typesetting of math in TeX is not without criticism, particularly with respect to technical details of the font metrics, which were designed in an era when significant attention was paid to storage requirements. This resulted in some "hacks" overloading some fields, which in turn required other "hacks". On an aesthetics level, the rendering of radicals has also been criticized.[28] TheOpenType math font specification largely borrows from TeX, but has some new features/enhancements.[29][30][31]

Hyphenation and justification

[edit]

In comparison with manual typesetting, the problem ofjustification is easy to solve with a digital system such as TeX, which, provided that good points for line breaking have been defined, can automatically spread the spaces between words to fill in the line. The problem is thus to find the set of breakpoints that will give the most visually pleasing result. Many line-breaking algorithms use agreedy algorithm, where the breakpoints for each line are determined one after the other, and no breakpoint is changed after it has been chosen.[32] Such a system is not able to define a breakpoint depending on the effect that it will have on the following lines. In comparison, TeX utilizes a globally optimizingline-breaking algorithm developed by Donald Knuth and Michael Plass[33] that considers all the possible breakpoints in a paragraph.

Formally, the algorithm defines a value calledbadness associated with each possible line break; the badness is increased if the spaces on the line must stretch or shrink too much to make the line the correct width. Penalties are added if a breakpoint is particularly undesirable: for example, if a word must behyphenated, if two lines in a row are hyphenated, or if a very loose line is immediately followed by a very tight line. The algorithm will then find the breakpoints that will minimize the sum of squares of the badness (including penalties) of the resulting lines. If the paragraph containsn{\displaystyle n} possible breakpoints, the number of situations that must be evaluated naively is2n{\displaystyle 2^{n}}. However, by using the method ofdynamic programming, the complexity of the algorithm can be brought down toO(n2){\displaystyle O(n^{2})} (seeBig O notation). Further simplifications (for example, not testing extremely unlikely breakpoints such as a hyphenation in the first word of a paragraph, or very overfull lines) lead to an efficient algorithm whose running time isO(nw){\displaystyle O(nw)}, wherew{\displaystyle w} is the width of a line. A similar algorithm is used to determine the best way to break paragraphs across two pages, in order to avoidwidows ororphans (lines that appear alone on a page while the rest of the paragraph is on the following or preceding page). However, in general, a thesis by Michael Plass shows how the page-breaking problem can beNP-complete because of the added complication of placing figures.[34] TeX's line-breaking algorithm has been adopted by several other programs, such asAdobe InDesign (adesktop publishingapplication)[35] and theGNUfmtUnixcommand line utility.[36]

If no suitable line break can be found for a line, the system will try to hyphenate a word. The original version of TeX used a hyphenation algorithm based on a set of rules for the removal of prefixes and suffixes of words, and for deciding if it should insert a break between the two consonants in a pattern of the formvowelconsonantconsonantvowel (which is possible most of the time).[37] TeX82 introduced a new hyphenation algorithm, designed byFrank Liang in 1983, to assign priorities to breakpoints in letter groups. A list of hyphenation patterns is first generated automatically from a corpus of hyphenated words (a list of 50,000 words). If TeX must find the acceptable hyphenation positions in the wordencyclopedia, for example, it will consider all the subwords of the extended word.encyclopedia., where. is a special marker to indicate the beginning or end of the word. The list of subwords includes all the subwords of length 1 (.,e,n,c,y, etc.), of length 2 (.e,en,nc, etc.), etc., up to the subword of length 14, which is the word itself, including the markers. TeX will then look into its list of hyphenation patterns, and find subwords for which it has calculated the desirability of hyphenation at each position. In the case of our word, 11 such patterns can be matched, namely1c4l4,1cy,1d4i3a,4edi, e3dia,2i1a, ope5d,2p2ed,3pedi, pedia4, y1c. For each position in the word, TeX will calculate themaximum value obtained among all matching patterns, yielding en1cy1c4l4o3p4e5d4i3a4. Finally, the acceptable positions are those indicated by anodd number, yielding the acceptable hyphenationsen-cy-clo-pe-di-a. This system based on subwords allows the definition of very general patterns (such as2i1a), with low indicative numbers (either odd or even), which can then be superseded by more specific patterns (such as1d4i3a) if necessary. These patterns find about 90% of the hyphens in the original dictionary; more importantly, they do not insert any spurious hyphen. In addition, a list of exceptions (words for which the patterns do not predict the correct hyphenation) are included with the Plain TeX format; additional ones can be specified by the user.[38][page needed][39]

Metafont

[edit]
Main article:Metafont

Metafont, not strictly part of TeX, is a font description system which allows the designer to describe characters algorithmically. It usesBézier curves in a fairly standard way to generate the actual characters to be displayed, but Knuth devotes substantial attention to therasterizing problem onbitmapped displays. Another thesis, byJohn Hobby, further explores this problem of digitizing "brush trajectories". This term derives from the fact that Metafont describes characters as having been drawn by abstract brushes (and erasers). It is commonly believed that TeX is based on bitmap fonts but, in fact, these programs "know" nothing about the fonts that they are using other than their dimensions. It is the responsibility of the device driver to appropriately handle fonts of other types, including PostScript Type 1 and TrueType. Computer Modern (commonly known as "the TeX font") is freely available in Type 1 format, as are the AMS math fonts. Users of TeX systems that output directly to PDF, such as pdfTeX, XeTeX, or LuaTeX, generally never use Metafont output at all.

Macro language

[edit]

TeX documents are written and programmed using an unusual macro language. Broadly speaking, the running of this macro language involves expansion and execution stages which do not interact directly. Expansion includes both literal expansion of macro definitions as well as conditional branching, and execution involves such tasks as setting variables/registers and the actual typesetting process of adding glyphs to boxes.

The definition of a macro not only includes a list of commands but also the syntax of the call. It differs with most widely usedlexical preprocessors likeM4, in that the body of a macro gets tokenized at definition time.

The TeX macro language has been used to write larger document production systems, most notably including LaTeX and ConTeXt.

Operation

[edit]
A sample page produced using TeX with theLaTeX macros

A sampleHello world program in plain TeX is:

Hello, World\bye% marks the end of the file; not shown in the final output

This might be in a filemyfile.tex, as.tex is a commonfile extension for plain TeX files. By default, everything that follows a percent sign on a line is a comment, ignored by TeX. Running TeX on this file (for example, by typingtex myfile.tex in acommand-line interpreter, or by calling it from agraphical user interface) will create an output file calledmyfile.dvi, representing the content of the page in adeviceindependent format (DVI). A DVI file could then be either viewed on screen or converted to a suitable format for any of the various printers for which a device driver existed (printer support was generally not an operating system feature at the time that TeX was created). Knuth has said that there is nothing inherent in TeX that requires DVI as the output format, and later versions of TeX, notably pdfTeX, XeTeX, and LuaTeX, all support output directly toPDF.

TeX provides a different text syntax specifically for mathematical formulas. For example, thequadratic formula (which is the solution of thequadratic equation) appears as:

Source codeRenders as
The quadratic formula is$-b\pm\sqrt{b^2-4ac}\over2a$\bye
The quadratic formula is b±b24ac2a{\displaystyle {\hbox{The quadratic formula is }}\textstyle {-b\pm {\sqrt {b^{2}-4ac}} \over 2a}}

The formula is printed in a way a person would write by hand, or typeset the equation. In a document, enteringmathematics mode is done by starting with a $ symbol, then entering a formula in TeX syntax, and closing again with another of the same symbol. Knuth explained in jest that he chose the dollar sign to indicate the beginning and end of mathematical mode in plain TeX because typesetting mathematics was traditionally supposed to be expensive.[40]Display mathematics (mathematics presented centred on a new line) is similar but uses $$ instead of a single $ symbol. For example, the above with the quadratic formula in display math:

Source codeRenders as
The quadratic formula is$$-b\pm\sqrt{b^2-4ac}\over2a$$\bye
The quadratic formula isb±b24ac2a{\displaystyle {\begin{matrix}{\text{The quadratic formula is}}\\\displaystyle {\frac {-b\pm {\sqrt {b^{2}-4ac}}}{2a}}\end{matrix}}}

Uses

[edit]

In several technical fields such as computer science, mathematics, engineering and physics, TeX has become ade facto standard. Many thousands of books have been published using TeX, including books published byAddison-Wesley,Cambridge University Press,Elsevier,Oxford University Press, andSpringer. Numerous journals in these fields are produced using TeX or LaTeX, allowing authors to submit their raw manuscript written in TeX.[41] While many publications in other fields, including dictionaries and legal publications, have been produced using TeX, it has not been as successful as in the more technical fields, as TeX was primarily designed to typeset mathematics.

When he designed TeX, Donald Knuth did not believe that a single typesetting system would fit everyone's needs; instead, he designed many hooks inside the program so that it would be possible to write extensions, and released the source code, hoping that the publishers would design versions tailoring to their own needs. While such extensions have been created (including some by Knuth himself),[42] most people have extended TeX only using macros and it has remained a system associated with technical typesetting.[43][44][26]

Chemistry notation

[edit]
See also:Structural formula

Packages likemhchem,XyMTeX,chemfig, and chemmacros for typesettingchemical equations,structures, andreactions in LaTeX.[45]

XML publication

[edit]

It is possible to use TeX for automatic generation of sophisticated layout for XML data. The differences in syntax between the two description languages can be overcome with the help ofTeXML. In the context of XML publication, TeX can thus be considered an alternative toXSL-FO. TeX allowed scientific papers in mathematical disciplines to be reduced to relatively small files that could be rendered client-side, allowing fully typeset scientific papers to be exchanged over the early Internet and emerging World Wide Web, even when sending large files was difficult. This paved the way for the creation of repositories of scientific papers such asarXiv, through which papers could be 'published' without an intermediary publisher.[46]

Development

[edit]

The original source code for the current TeX software is written inWEB, a mixture of documentation written in TeX and aPascal subset in order to ensure readability and portability. For example, TeX does all of its dynamic allocation itself from fixed-size arrays and uses onlyfixed-point arithmetic for its internal calculations. As a result, TeX has been ported to almost alloperating systems, usually by using theweb2c program to convert the source code intoC instead of directly compiling the Pascal code. Knuth has kept a very detailed log of all the bugs he has corrected and changes he has made in the program since 1982; as of 2025[update], the list contains 440 entries, not including the version modification that should be done after his death as the final change in TeX.[47][48] Knuth offersmonetary awards to people who find and report abug in TeX. The award per bug started at US$2.56 (one "hexadecimal dollar"[49]) and doubled every year until it was frozen at its current value of $327.68. Knuth has lost relatively little money as there have been very few bugs claimed. In addition, recipients have been known to frame their check as proof that they found a bug in TeX rather than cashing it.[50][51]

Due to scammers finding scanned copies of his checks on the internet and using them to try to drain his bank account, Knuth no longer sends out real checks, but those who submit bug reports can get credit atThe Bank of San Serriffe instead.[52]

Distributions and extensions

[edit]

TeX is usually provided in the form of an easy-to-install bundle of TeX itself along withMetafont and all the necessary fonts, documents formats, and utilities needed to use the typesetting system. On UNIX-compatible systems, includingLinux andApplemacOS, TeX is distributed as part of the largerTeX Live distribution. (Prior to TeX Live, theteTeX distribution was the de facto standard on UNIX-compatible systems.) OnMicrosoft Windows, there is theMiKTeX distribution (enhanced by proTeXt) and the Microsoft Windows version of TeX Live.

Several document processing systems are based on TeX, notablyjadeTeX, which uses TeX as a backend for printing fromJames Clark'sDSSSL Engine, theArbortext publishing system, andTexinfo, the GNU documentation processing system. TeX has been the official typesetting package for the GNU operating system since 1984.

Numerous extensions and companion programs for TeX exist, among themBibTeX for bibliographies (distributed with LaTeX); pdfTeX, a TeX-compatible engine which can directly produce PDF output (as well as continuing to support the original DVI output);XeTeX, a TeX-compatible engine that supportsUnicode andOpenType; andLuaTeX, a Unicode-aware extension to TeX that includes a Lua runtime with extensive hooks into the underlying TeX routines and algorithms. Most TeX extensions are available for free fromCTAN, the Comprehensive TeX Archive Network.

License

[edit]

Donald Knuth has indicated several times[53][54][55][26] that the source code of TeX has been placed into the "public domain", and he strongly encourages modifications or experimentations with this source code. However, since Knuth highly values the reproducibility of the output of all versions of TeX, any changed version must not be called TeX, or anything confusingly similar. To enforce this rule, any implementation of the system must pass a test suite called the TRIP test[56] before being allowed to be called TeX. The question of licence is somewhat confused by the statements included at the beginning of the TeX source code,[57] which indicate that "all rights are reserved. Copying of this file is authorized only if ... you make absolutely no changes to your copy". This restriction should be interpreted as a prohibition to change the source codeas long as the file is called tex.web. The copyright note at the beginning of tex.web (and mf.web) was changed in 2021 to explicitly state this. This interpretation is confirmed later in the source code when the TRIP test is mentioned ("If this program is changed, the resulting system should not be called 'TeX'").[58] TheAmerican Mathematical Society tried in the early 1980s to claim atrademark for TeX. This was rejected because at the time "TEX" (all caps) was registered byHoneywell for the "Text EXecutive" text processing system.[citation needed]

Since the source code of TeX is essentially in thepublic domain, other programmers are allowed (and explicitly encouraged) to improve the system, but are required to use another name to distribute the modified TeX, meaning that thesource code can still evolve. For example, theOmega project was developed after 1991, primarily to enhance TeX's multilingual typesetting abilities.[59] Knuth created "unofficial" modified versions, such asTeX-XeT, which allows a user to mix texts written inleft-to-right and right-to-leftwriting systems in the same document.[42]

Community

[edit]
TeX Users Group's logo

Notable entities in the TeX community include the TeX Users Group (TUG), which currently publishesTUGboat and formerly publishedThe PracTeX Journal, covering a wide range of topics indigital typography relevant to TeX. TheDeutschsprachige Anwendervereinigung TeX (DANTE) is a large user group in Germany. The TeX Users Group was founded in 1980 for educational and scientific purposes, provides an organization for those who have an interest in typography and font design, and are users of the TeX typesetting system invented by Knuth. The TeX Users Group represents the interests of TeX users worldwide. The TeX Users Group publishes thejournalTUGboat three times per year;[60] DANTE publishesDie TeXnische Komödie [de] four times per year. Other user groups include DK-TUG inDenmark,GUTenberg [fr] inFrance, GuIT inItaly, NTG in the Netherlands and UK-TUG in theUnited Kingdom; the user groups jointly maintain a complete list.[61]

Editors

[edit]
See also:Comparison of TeX editors

There are a variety ofeditors designed to work with TeX:

  • TheTeXmacs text editor is aWYSIWYG-WYSIWYM scientific text editor, inspired by both TeX andEmacs. It uses Knuth's fonts and can generate TeX output.
  • Overleaf is a partial-WYSIWYG, online editor that provides a cloud-based solution to TeX along with additional features in real-time collaborative editing.
  • LyX is aWYSIWYM document processor which runs on a variety of platforms including:
  • TeXShop (for macOS),TeXworks (for Linux, macOS and Windows) andWinShell (for Windows) are similar tools and provide an integrated development environment (IDE) for working with LaTeX or TeX. ForKDE/Qt,Kile provides such an IDE.
  • Texmaker is the Pure Qt equivalent of Kile, with a user interface that is nearly the same as Kile's.
  • TeXstudio is an open-source fork (2009) ofTexmaker that offers a different approach to configurability and features. Free downloadable binaries are provided for Windows, Linux, macOS, OS/2, and FreeBSD.
  • GNU Emacs has various built-in and third-party packages with support for TeX, the major one beingAUCTeX.
  • Visual Studio Code. A notable extension is LaTeX Workshop
  • ForVim, possible plugins include Vim-LaTeX Suite,[62] Automatic TeX,[63] and TeX-9.[64]
  • ForApache OpenOffice andLibreOffice, iMath and TexMaths extensions can provide mathematical TeX typesetting.[65][66]
  • ForMediaWiki, theMath extension provides mathematical TeX typesetting, but the code needs to be surrounded by<math> tag.

Extensions

[edit]

See also

[edit]

Notes

[edit]
  1. ^"CTAN". Retrieved23 December 2025.
  2. ^"Per Bothner (attendee at TeX Project meetings) discusses authorship".Knuth definitely wrote most of the code himself, at least for the Metafont re-write, for which I have pe[r]sonal knowledge. However, some of his students (such as Michael Plass and John Hobby) did work on the algorithms used in TeX and Metafont.
  3. ^Yannis Haralambous.Fonts & Encodings (Translated by P. Scott Horne). Beijing; Sebastopol, Calif: O'Reilly Media, 2007, pp. 235.
  4. ^Gaudeul, Alexia (2006)."Do Open Source Developers Respond to Competition?: The (La)TeX Case Study".SSRN Electronic Journal.doi:10.2139/ssrn.908946.ISSN 1556-5068.
  5. ^Knuth, Donald E."Less brief biography".Don Knuth's Home Page. Archived fromthe original on 5 December 2016. Retrieved9 January 2017.
  6. ^Knuth, Donald E."Commemorative lecture of the Kyoto Prize, 1996"(PDF).Kyoto Prize. Archived fromthe original(PDF) on 27 January 2018. Retrieved18 August 2018.
  7. ^Knuth, Donald Ervin,TEXDR.AFT, archived fromthe original on 12 January 2015
  8. ^This article is based on material taken fromTeX at theFree On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of theGFDL, version 1.3 or later.
  9. ^Knuth & Plass 1981, p. 144.
  10. ^Knuth, Donald E.Knuth meets NTG members, NTG: MAPS.16 (1996), 38–49. Reprinted asQuestions and Answers, III, chapter 33 ofDigital Typography, p. 648.
  11. ^Knuth, Donald E.The New Versions of TeX and METAFONT, TUGboat10 (1989), 325–328;11 (1990), 12. Reprinted as chapter 29 ofDigital Typography.
  12. ^Hoenig, Alan (1998).TeX Unbound: LaTeX & TeX Strategies for Fonts, Graphics, & More. Oxford University Press.ISBN 978-0-19-509686-6.
  13. ^"TeX 21 release". Retrieved5 January 2022.
  14. ^ab"What is the future of TeX?".The TeX FAQ. 27 May 2018. Archived fromthe original on 28 April 2019. Retrieved21 July 2019.
  15. ^Knuth, Donald E.The future of TeX and METAFONT, NTG journal MAPS (1990), 489. Reprinted as chapter 30 ofDigital Typography, p. 571.
  16. ^Knuth, Donald E.The TeXbook, Ch. 1: The Name of the Game, p. 1.
  17. ^Knuth, Donald E.The TeX Logo in Various Fonts,TUGboat7 (1986), 101. Reprinted as chapter 6 ofDigital Typography.
  18. ^Jeffrey, Alan (1990),"Lists in TeX's Mouth"(PDF),TUGboat,11 (2):237–45
  19. ^"CTAN: Package pdftex".ctan.org. Retrieved21 July 2019.
  20. ^Knuth 1984, p. 9.
  21. ^Plain TeX (source code), CTAN, archived fromthe original on 9 May 2021
  22. ^"What are the AMS packages (amsmath, etc.)?".The TeX FAQ. 27 May 2018. Archived fromthe original on 28 April 2019. Retrieved21 July 2019.
  23. ^Slater, Robert (1989),Portraits in Silicon, MIT Press, p. 349,ISBN 9780262691314
  24. ^Syropoulos, Apostolos; Tsolomitis, Antonis; Sofroniou, Nick (2003),Digital Typography Using LaTeX, Springer, p. 93,ISBN 9780387952178
  25. ^Knuth, Donald E (1996). "Questions and Answers II".TUGboat.17:355–367.
  26. ^abcKnuth, Donald E. (1999).Digital Typography. Stanford, Calif: Center for the Study of Language and Information Publications.ISBN 978-1-57586-010-7.
  27. ^Knuth, Donald E.Typesetting Concrete Mathematics, TUGboat10 (1989), pp. 31–36, 342. Reprinted as chapter 18 ofDigital Typography, pp. 367–378.
  28. ^Vieth, Ulrik."Math typesetting in TEX: The good, the bad, the ugly"(PDF). Archived fromthe original(PDF) on 20 January 2022.
  29. ^"High-Quality Editing and Display of Mathematical Text in Office 2007".
  30. ^"LineServices".
  31. ^"Map"(PDF).ntg.nl.
  32. ^Barnett, Michael P (1965),Computer Typesetting: Experiments and Prospects,Cambridge,MA:MIT Press
  33. ^url=http://svn.tug.org/interviews/plass.html
  34. ^Knuth & Plass 1981.
  35. ^"Donald E. Knuth",TUGboat (interview),21,Advogato:103–10, 2000, archived fromthe original on 22 January 2009, retrieved26 December 2005
  36. ^"4.1 fmt: Reformat paragraph text",Core GNU utilities (GNU coreutils) manual, GNU Project, 2016
  37. ^Liang 1983, p. 3.
  38. ^Liang 1983.
  39. ^"Appendix H: Hyphenation",The TeXbook, pp. 449–55
  40. ^Knuth 1984, p. 127, Ch. 16: Typing Math Formulas.
  41. ^Beebe 2004, p. 10.
  42. ^abKnuth, Donald E; MacKay, Pierre (1987),"Mixing Right-to-Left Texts with Left-to-Right Texts"(PDF),TUGboat,8:14–25.
  43. ^Knuth, Donald E (1996), "Questions and Answers I",TUGboat,17:7–22.
  44. ^Knuth, Donald E (1996), "Questions and Answers II",TUGboat,17:355–367.
  45. ^"Helpful LaTeX Packages for Chemistry | Computational Chemistry Resources".
  46. ^O'Connell, Heath (2002). "Physicists Thriving with Paperless Publishing".Hep Lib.web.6: 3.arXiv:physics/0007040.
  47. ^Knuth, Donald E.List of updates to the TeX82 listing published in September 1982, available onCTAN.
  48. ^Knuth, Donald E.Appendix to theErrors of TeX paper, available on CTAN, last modified in January 2003.
  49. ^Knuth, Donald E."Knuth: Frequently Asked Questions".Stanford Computer Science. Archived fromthe original on 6 March 2008. Retrieved28 November 2019.
  50. ^Kara Platoni (May–June 2006)."Love at First Byte".Stanford Magazine. Archived fromthe original on 4 June 2006.
  51. ^"History of TeX".TeX Users Group. Retrieved28 November 2019.
  52. ^Knuth, Donald E (2008)."Knuth: Recent News – Financial Fiasco".Stanford Computer Science. Archived fromthe original on 29 November 2019. Retrieved29 November 2019.
  53. ^Knuth, Donald E. (1986)."Remarks to Celebrate the Publication of Computers & Typesetting"(PDF).TUGboat.7 (2):95–98. Retrieved6 December 2024.
  54. ^Knuth, Donald E. (1990)."The Future of TeX and METAFONT"(PDF).TUGboat.11 (4): 489. Retrieved6 December 2024.
  55. ^Knuth, Donald Ervin (1 November 1997)."Digital Typography: 1996 Kyoto Prize Lecture"(PDF).Kyoto Prize. The Inamori Foundation. Retrieved6 December 2024.
  56. ^"Trip",CTAN (source code), archived fromthe original(TeX) on 12 June 2021
  57. ^Knuth, Donald E (1986),TeX: The Program, Computers and Typesetting, vol. B, Reading, MA: Addison-Wesley,ISBN 0-201-13437-3
  58. ^Open Source: Technology and Policy by Fadi P. Deek, James A. M. McHugh "Public domain", page 227 (2008)
  59. ^"TeX Engine development".The TeX FAQ. 24 May 2018. Archived fromthe original on 28 April 2019. Retrieved21 July 2019.
  60. ^"The Communications of the TeX Users Group".tug.org. TeX Users Group. Retrieved15 March 2019.
  61. ^"All TeX User Groups".tug.org. TeX Users Group. Retrieved17 November 2019.
  62. ^Vim-LaTex, SourceForge,archived from the original on 8 March 2024
  63. ^Automatic TeX plugin, Launch pad[permanent dead link]
  64. ^TeX-9, Vim.org
  65. ^TexMaths Homepage, free.fr
  66. ^iMath, SourceForge

References

[edit]

External links

[edit]
TeX at Wikipedia'ssister projects
Macro packages
Alternative TeX engines
Active
Deprecated
Distributions
Active
Deprecated
Community
Related
TeX editors
Open source
Freeware
Retail
Software
and libraries
Licenses
Operating system,
corporate and
professional
Government
typefaces
Other
typefaces
Groups and
people
Publications
Software
Fonts
Literate programming
Algorithms
Other
International
National
Retrieved from "https://en.wikipedia.org/w/index.php?title=TeX&oldid=1337023830"
Categories:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp