Кіріспе
Типтік жүйе – математикалық формулаларды көрсетуге көмектесетін Wikipedia жүйесі. TeX (/t//ɛ//x/, төменде қараңыз), жүйеде стильделген , компьютерлік ғалым және Стэнфорд университетінің профессоры Дональд Кнут жасаған және жазған, алғаш рет 1978 жылы жарық көрген типтік жүйе. TeX күрделі математикалық формулаларды жинақтаудың танымал құралы; ол ең жетілген цифрлық типографиялық жүйелердің бірі ретінде белгілі. TeX академиялық ортада, әсіресе математика, компьютерлік ғылым, экономика, саясаттану, инженерия, лингвистика, физика, статистика және сандық психология салаларында кеңінен қолданылады. Бұл жүйе Unix-тің көптеген нұсқаларында бұрын қолданылған форматтау жүйесі Unix troff-ты ығыстырды. Ол сондай-ақ көптеген басқа типтік тапсырмалар үшін де қолданылады, әсіресе LaTeX, ConTeXt және басқа макро пакеттер түрінде. TeX екі негізгі мақсатты көздеп жасалған: кез келген адамға ең аз күш жұмсап жоғары сапалы кітаптар шығаруға мүмкіндік беру және кез келген компьютерде, кез келген уақытта бірдей нәтижелерді беруге қабілетті жүйе ұсыну (шрифттерді сипаттау үшін Metafont тілімен және Computer Modern қаріптер отбасымен бірге). TeX ақысыз бағдарламалық қамтамасы болып табылады, бұл оны көптеген пайдаланушыларға қолжетімді етті.
help displaying mathematical formulae in Wikipedia
TeX (/t//ɛ//x/, see below), stylized within the system as , is a typesetting system which was designed and written by computer scientist and Stanford University professor Donald Knuth and first released in 1978. TeX is a popular means of typesetting complex mathematical formulae; it has been noted as one of the most sophisticated digital typographical systems. TeX is widely used in academia, especially in mathematics, computer science, economics, political science, engineering, linguistics, physics, statistics, and quantitative psychology. It has long since displaced Unix troff, the previously favored formatting system, in most Unix installations. It is also used for many other typesetting tasks, especially in the form of LaTeX, ConTeXt, and other macro 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 the Metafont language for font description and the Computer Modern family of typefaces). TeX is free software, which made it accessible to a wide range of users.
Тарих
1968 жылы Кнуттың «Компьютерлік бағдарламалау өнері» кітабының алғашқы қағаз томы жарық көрген кезде, ол Monotype машинасымен ыстық металл әдісімен терілді. Бұл әдіс 19 ғасырдан бастау алып, Кнут бағалаған «классикалық стильді» жасады. 1976 жылы екінші басылым жарық көрген кезде, кітаптың барлығын қайта теруге тура келді, себебі Monotype технологиясы көбінесе фототерумен алмастырылды, ал бастапқы шрифттер енді қолжетімді болмады. 1977 жылдың 30 наурызында Кнут кітаптың жаңа сынақтарын алғанда, олардың сапасы нашар екенін байқады. Көңілі толмаған Кнут өзінің теру жүйесін жасауға кірісті. Кнут алғаш рет жоғары сапалы цифрлық теру жүйесінің нәтижесін көріп, цифрлық типографияға қызығушылық танытты. 1977 жылдың 13 мамырында ол TeX жүйесінің негізгі мүмкіндіктерін сипаттаған өзіне-өзі хат жазды. Оны 1978 жылғы демалысында аяқтауды жоспарлаған, бірақ тіл 1989 жылға дейін, яғни он жылдан астам уақыттан кейін ғана «тоңдырылды» (пайдалануға дайын болды). 1978 жылдың жазында Гай Стил Стэнфордта болды, сол кезде Кнут TeX жүйесінің алғашқы нұсқасын жасап жатқан еді. Стил сол күзде Массачусетс технология институтына оралғанда, TeX жүйесінің кіріс/шығысын (I/O) Үйлесімсіз уақыт бөлісу жүйесі (ITS) операциялық жүйесінде жұмыс істеуі үшін қайта жазды. TeX жүйесінің TeX78 деп аталған алғашқы нұсқасы SAIL бағдарламалау тілінде жазылды және Стэнфордтың WAITS операциялық жүйесінде PDP 10 компьютерінде жұмыс істеуге арналған.
WEB және сауатты бағдарламалау
TeX-тің кейінгі нұсқалары үшін Кнут сауатты бағдарламалау тұжырымын ойлап тапты, бұл бір бастапқы файлдан құрастырылатын бастапқы кодты және TeX форматында безендірілген, өзара байланысты құжаттаманы жасау тәсілі. Осы үшін қолданылатын тіл WEB деп аталады және ол DEC PDP 10 Pascal бағдарламаларын тудырады.
TeX82
TeX82, TeX-тің жаңа нұсқасы 1982 жылы жарық көрді. Басқа өзгерістердің ішінде бастапқы гифендеу алгоритмі Фрэнк Лянг жазған жаңа алгоритммен ауыстырылды. TeX82 сонымен қатар әр түрлі компьютерлік жабдықтардағы нәтижелердің қайталануын қамтамасыз ету үшін қозғалмалы нүктелер орнына тұрақты нүктелік арифметиканы қолданады және Гай Стилдің ықпалды лоббисінен кейін толыққанды, Тьюрингтік бағдарламалау тілін қамтиды. 1989 жылы Дональд Кнут TeX және Metafont-тың жаңа нұсқаларын шығарды. Бағдарламаны тұрақты ұстауға деген ниетіне қарамастан, Кнут мәтіндік кіргізу үшін 128 әртүрлі символдың шетел тілдерін қолдауға жеткіліксіз екенін түсінді; TeX 3.0 нұсқасындағы негізгі өзгеріс – 8 биттік кірістермен жұмыс істеу мүмкіндігі, бұл мәтіндік кіргізуде 256 әртүрлі символға рұқсат береді. TeX3.0 1990 жылдың 15 наурызында жарияланды. 3-ші нұсқадан бастап TeX ерекше нөмірлеу жүйесін пайдаланады, онда жаңартулар ондық бөлігінің соңына қосымша цифр қосу арқылы көрсетіледі, сондықтан нөмір асимптотикалық түрде жақындайды. Бұл TeX-тің қазір өте тұрақты екендігінің және тек шағын жаңартулар күтілетінінің көрсеткіші. TeX-тің қазіргі нұсқасы 3.141592653; ол соңғы рет 2021 жылы жаңартылды. 3.0 нұсқасынан кейін дизайн тоқтатылды, жаңа мүмкіндіктер немесе түбірлі өзгерістер енгізілмейді, сондықтан барлық жаңа нұсқаларда тек қателерді түзетулер болады. Дональд Кнут өзі TeX-ті жақсартуға болатын бірнеше салаларды ұсынғанмен, ол жаңа мүмкіндіктерді қосудан гөрі, қазір де, болашақта да бірдей нәтиже беретін өзгермеген жүйеге ие болудың маңызды екенін айтты. Осы себепті ол «мұның соңғы өзгерісі (өлімнен кейін жасалатын)» нөмірді өзгерту болады, сол кезде қалған барлық қателер ерекшеліктерге айналады. Сол сияқты, 2.0 нұсқасынан кейінгі Metafont нұсқалары асимптотикалық түрде E (математикалық тұрақты) (қазіргі уақытта 2.7182818) санына жақындайды, ал Кнуттың өлімінен кейін ұқсас өзгеріс қолданылады. Кнут «ресми емес» өзгертілген нұсқаларды, мысалы TeX XeT жасады, ол пайдаланушыға солдан оңға және оңнан солға жазу жүйелерінде жазылған мәтіндерді бір құжатта біріктіруге мүмкіндік береді. Көптеген адамдар тек макростарды қолдана отырып TeX-ті кеңейтті және ол техникалық жинақтаумен байланысты жүйе болып қала берді.
Түрін белгілеу жүйесі
TeX командалары әдетте кері шегірмен басталады және фигуралық жақшалармен топтастырылады. TeX-тің барлық дерлік синтаксистік қасиеттерін динамикалық түрде өзгертуге болады, бұл TeX кірісін тек TeX-тің өзінен басқа ешнәрсеге талдауды қиындатады. TeX — макро және токенге негізделген тіл: көптеген командалар, соның ішінде пайдаланушылар анықтаған көптеген командалар, кеңейтілмейтін токендер ғана қалғанша динамикалық түрде кеңейтіледі, содан кейін орындалады. Кенеюдің өзі жанама әсерлерден дерлік бос. Макролардың рекурсивті шақыруы жадты қажет етпейді, және егер-әйтпесе конструкциялары қол жетімді. Бұл TeX-ті Тьюринг толық тіліне айналдырады, тіпті кеңейту деңгейінде де. Жүйені төрт деңгейге бөлуге болады: бірінші деңгейде кіріс файлдан таңбалар оқылады және оларға санат коды тағайындалады (кейде «catcode» деп қысқартылады). Кері шегірдің (немесе 0-санаттағы кез келген таңбаның) әрпімен (11-санаттағы таңбалар) немесе басқа бір таңбадан тұратын комбинациялары басқару тізбегі токенімен алмастырылады. Бұл мағынада бұл кезең лексикалық талдауға ұқсас, бірақ ол цифрлардан сандар жасамайды. Келесі кезеңде кеңейтілетін басқару тізбектері (мысалы, шартты операторлар немесе анықталған макростар) олардың алмастыру мәтінімен алмастырылады. Үшінші кезеңнің кірісі енді таңбалар ағыны (ерекше мағынасы барларды қоса) және кеңейтілмейтін басқару тізбектері (әдетте тапсырмалар мен визуализациялық командалар) болып табылады. Мұнда таңбалар абзацқа жиналады, ал TeX-тің абзацты бөлу алгоритмі бүкіл абзац бойынша үзіліс нүктелерін оңтайландыру арқылы жұмыс істейді. Төртінші кезеңде жолдардың тігінен тізімі және басқа материалдар беттерге бөлінеді. TeX жүйесі барлық таңбалар мен символдардың өлшемдерін нақты біледі және осы ақпаратты пайдаланып, әр жолдағы және әр беттегі жолдардың оңтайлы орналасуын есептейді. Содан кейін ол барлық таңбалардың соңғы орналасуын қамтитын DVI файлын («Device Independent») жасайды. Бұл DVI файлын тиісті принтер драйверімен тікелей басып шығаруға болады немесе оны басқа форматтарға түрлендіруге болады. Бүгінде pdfTeX көбінесе қолданылады, ол DVI жасауды толығымен айналып өтеді. Базалық TeX жүйесі шамамен 300 команданы түсінеді, олар примитивтер деп аталады. Бұл төменгі деңгейдегі командаларды пайдаланушылар сирек тікелей пайдаланады, ал функционалдықтың көп бөлігі формат файлдарымен қамтамасыз етіледі (үлкен макростар жинағы жүктелгеннен кейін TeX жадының алдын ала сақталған кескіндері). Кнуттың бастапқы әдепкі форматы, шамамен 600 команданы қосады, ол Plain TeX. Ең көп қолданылатын формат — Лесли Лампорт әзірлеген LaTeX, ол кітаптар, хаттар, слайдтар және т.б. үшін құжат стильдерін қамтиды және сілтемелерді жасауға және бөлімдер мен теңдеулерді автоматты түрде нөмірлеуге қолдау көрсетеді. Басқа кең таралған формат — AMS TeX, ол Американдық математикалық қоғам шығарған және көптеген пайдаланушыға ыңғайлы командаларды ұсынады, оларды журналдар өздерінің стиліне сәйкес өзгерте алады. AMS TeX мүмкіндіктерінің көп бөлігін LaTeX-те «AMS пакеттерін» (мысалы, amsmath, amssymb) және «AMS құжат кластарын» (мысалы, amsart, amsbook) пайдалану арқылы қолдануға болады. Бұл AMS LaTeX деп аталады. Басқа форматтарға ConTeXt кіреді, ол негізінен үстел басып шығару үшін қолданылады және көбінесе Ханс Хаген Pragma-да жазған.
Қатысуы
TeX бағдарламалық жасақтамасы TeX жарық көрген кезде басқа типографиялық бағдарламаларда болмаған немесе нашар сапалы бірнеше ерекшеліктерді қамтиды. Осы жаңалықтардың кейбіреуі қызықты алгоритмдерге негізделген және Кнуттың студенттері үшін бірнеше диссертация тақырыбына себеп болды. Осы жаңалықтардың бір бөлігі басқа типографиялық бағдарламаларға енгізілгенімен, математикалық интервалдар ережелері сияқтылары әлі де бірегей болып табылады.
Математикалық аралық
TeX тілінің басты мақсаты кітап баспашылары үшін жоғары сапалы беттеуді қамтамасыз ету болғандықтан, Кнут математикалық формулалар үшін аралықтар ережелеріне көп көңіл бөлді. Ол математикалық типографияның үлгісі саналатын үш еңбекке жүгінді: Ханс Вольфтың бақылауымен Addison Wesley баспасы (The Art of Computer Programming кітабының баспасы) шығарған кітаптар; шамамен 1910 жылғы Acta Mathematica математикалық журналының басылымдары; және голланд математикалық журналы Indagationes Mathematicae-нің бір данасы. Кнут осы басылған материалдарды мұқият зерттеп, аралықтарға қатысты ережелерді анықтауға тырысты. TeX негізгі ережелермен қатар, дұрыс аралықтарды белгілеуге қажетті құралдарды ұсынады. Алайда, нақты параметрлер формуланы теру үшін қолданылатын шрифттерге байланысты. Мысалы, Кнуттың Computer Modern шрифттерінің арақашықтығы жылдар бойы нақты реттелген және қазір белгіленген. Бірақ Кнут AMS Euler сияқты басқа шрифттерді алғаш рет қолданғанда, арақашықтық параметрлерін жаңадан анықтау қажет болды. TeX-те математиканы беттеуге қатысты сын да бар, әсіресе сақтау талаптарына ерекше назар аударылған дәуірде жасалған шрифт өлшемдерінің техникалық аспектілеріне қатысты. Бұл кейбір өрістерді артық жүктеуге алып келген «тәжірибелерге» (хактерге) соқтырды, бұл өз кезегінде басқа «тәжірибелерді» қажет етті. Эстетикалық тұрғыдан радикалдардың көрсетілуі де сынға ұшырады. OpenType математикалық шрифттерінің сипаттамасы көбінесе TeX-тен алынған, бірақ жаңа мүмкіндіктері мен жетілдірулері де бар.
Түйіндеу және негіздеу
Қолмен жинаумен салыстырғанда, негіздеу мәселесін TeX сияқты цифрлық жүйемен шешу оңай, егер сызық үзілуі үшін жақсы нүктелер анықталса, сызықты толтыру үшін сөздер арасындағы бос орындарды автоматты түрде кеңейте алады. Сондықтан мәселе – ең жағымды көрініс беретін үзіліс нүктелерін табу. Көптеген сызық үзілу алгоритмдері бірінші сәйкестік тәсілін қолданады, онда әр сызықтың үзіліс нүктелері бірінен соң бірі анықталады және бір рет таңдалғаннан кейін үзіліс нүктесі өзгертілмейді. Мұндай жүйе келесі жолдарға тигізер әсерін ескермей, үзіліс нүктесін анықтай алмайды. Керісінше, TeX қолданатын және Дональд Кнут пен Майкл Пласс әзірлеген жалпы сәйкестік сызық үзілу алгоритмі абзацтағы барлық мүмкін үзіліс нүктелерін қарастырады және ең жағымды орналасуды қамтамасыз ететін сызық үзілістерінің комбинациясын табады. Алгоритм әр мүмкін сызық үзілісіне «жамандық» деп аталатын мәнді тағайындайды; сызықты дұрыс еніне келтіру үшін сызықтағы бос орындар тым көп созылса немесе тым қысқарса, «жамандық» мәні артады. Егер үзіліс нүктесі қолайсыз болса, айыппұлдар қосылады: мысалы, сөзді үзіліспен жазу қажет болса, егер қатардағы екі жол үзіліспен жазылса немесе өте кең сызықтан кейін өте тар сызық келсе. Алгоритм содан кейін алынған сызықтардың «жамандық» мәндерінің квадраттарының қосындысын (айыппұлдарды қоса алғанда) барынша азайтатын үзіліс нүктелерін табады. Егер абзацта мүмкін болатын үзіліс нүктелері болса, қарастырылуы тиіс жағдайлардың саны болады. Алайда, динамикалық бағдарламалау әдісін қолдану арқылы алгоритмнің күрделілігін төмендетуге болады (Big O белгісін қараңыз). Қосымша жеңілдетулер (мысалы, абзацтың бірінші сөзіндегі тіркес немесе өте кең сызықтар сияқты өте сирек кездесетін үзіліс нүктелерін тексермеу) тиімді алгоритмге әкеледі, оның жұмыс уақыты , мұнда – сызықтың ені. Параграфтарды екі бетке бөлудің ең жақсы тәсілін анықтау үшін ұқсас алгоритм қолданылады, соның арқасында жесірлер мен жетімдердің (параграфтың қалған бөлігі келесі немесе алдыңғы бетке орналасқанда бір бетте жалғыз қалатын жолдар) пайда болуына жол берілмейді. Алайда, жалпы алғанда, Майкл Пласс жасаған диссертация парақты бөлу мәселесінің сандарды орналастырудың қосымша қиындығына байланысты NP-толық болатынын көрсетеді. TeX-тің сызық үзілу алгоритмін Adobe InDesign (десктоптық басылымдарға арналған бағдарлама) және GNU fmt Unix командалық қабықшасы сияқты бірнеше басқа бағдарламалар қабылдады. Егер бір жол үшін қолайлы сызық үзілісі табылмайтын болса, жүйе сөзді үзіліспен жазуға тырысады. TeX-тің бастапқы нұсқасы сөздердің префикстері мен суффикстерін алып тастау және екі дауыссыздардың арасында үзіліс енгізуге болатынын анықтау үшін ережелерге негізделген гифендеу алгоритмін қолданды. 1983 жылы Фрэнк Лянг жасаған TeX82 жаңа гифендеу алгоритмін енгізді, ол әріптер тобындағы үзіліс нүктелеріне басымдық беруге арналған. Гифендеу үлгілерінің тізімі ең алдымен гифенделген сөздер корпусынан (50 000 сөзден тұратын тізім) автоматты түрде жасалады. Мысалы, TeX энциклопедия сөзіндегі қабылданатын гифендеу орындарын табуы керек болса, ол кеңейтілген сөз энциклопедиясының барлық кіші сөздерін қарастырады, сөздің басы мен соңына сілтеме жасайтын арнайы маркерлерді пайдаланады. Кіші сөздер тізімі 1 әрпі бар барлық кіші сөздерді қамтиды (., е, н, с, у, т.б.), 2 әрпі бар кіші сөздерді (e, en, nc және т.б.) және т.б., 14 әрпі бар сөздің өзіне дейін, соның ішінде маркерлерге дейін. Содан кейін TeX гифендеу үлгілерінің тізімін қарап, әр позицияда гифендеудің қажеттілігін есептеген кіші сөздерді табады. Біздің сөзіміз үшін 11 үлгі сәйкес келеді, атап айтқанда 1c4l4, 1cy, 1d4i3a, 4edi, e3dia, 2i1a, ope5d, 2p2ed, 3pedi, pedia4, y1c. Сөздің әр позициясы үшін TeX барлық сәйкес келетін үлгілер арасында алынған ең жоғары мәнді есептейді, нәтижесінде en1cy1c4l4o3p4e5d4i3a4 шығады. Соңында, қабылданатын позициялар – тақ санмен көрсетілгендер, яғни қабылданатын гифендеулер en cy clo pe di a. Бұл кіші сөздерге негізделген жүйе төмен индикативтік сандармен (жұп немесе тақ) өте жалпы үлгілерді (мысалы, 2i1a) анықтауға мүмкіндік береді, қажет болған жағдайда оларды нақты үлгілермен (мысалы, 1d4i3a) ауыстыруға болады. Бұл үлгілер түпнұсқа сөздіктегі гифендеулердің 90% -ын табады; одан да маңыздысы, олар жалған гифендерді енгізбейді. Сонымен қатар, Plain TeX форматына ерекшеліктер тізімі (үлгілер дұрыс гифендеуді болжамайтын сөздер) қосылған; пайдаланушы қосымшаларын көрсете алады.
Метафонт
Metafont, қатаң түрде TeX құрамына кірмейтін, қаріптерді сипаттау жүйесі болып табылады, ол дизайнерге әріптерді алгоритмдік тұрғыдан сипаттауға мүмкіндік береді. Ол нақты көрсетілуге тиіс әріптерді жасау үшін Bézier қисықтарын стандартты тәсілмен пайдаланады, бірақ Кнут биттік карталы дисплейлердегі растрлеу мәселесіне едәуір көңіл бөледі. Джон Хоббидің тағы бір диссертациясы «сушы қаламның жолдарының» цифрландыру мәселесін одан әрі зерттейді. Бұл термин Metafont әріптерді абстрактілі сушы қаламдар (және өшіргіштер) арқылы салынғандай сипаттайды. TeX битмап қаріптеріне негізделген деп жиі есептеледі, бірақ шындығында бұл бағдарламалар қолданылатын қаріптер туралы олардың өлшемдерінен басқа ештеңе «білмейді». Басқа типтегі қаріптерді, соның ішінде PostScript Type 1 және TrueType қаріптерін тиісінше басқару құрылғы драйверінің міндеті. Computer Modern (жиі «TeX қаріпі» деп аталады) AMS математикалық қаріптері сияқты Type 1 форматында тегін қолжетімді. pdfTeX, XeTeX немесе LuaTeX сияқты тікелей PDF форматына шығатын TeX жүйелерінің пайдаланушылары көбінесе Metafont шығысын пайдаланбайды.
Макро тілі
TeX құжаттары ерекше макро тілінде жазылады және бағдарламаланады. Жалпы айтқанда, осы макро тілінің жұмыс істеуі тікелей өзара әрекеттеспейтін кеңейту және орындалу кезеңдерін қамтиды. Кеңейтуге макро анықтамаларының тікелей кеңейтілуімен қатар шартты тармақтану да кіреді, ал орындалу өзгергіштер/регистрлерді орнату және глифтерді блоктарға қосудың өзіндік құрастыру процесін қамтиды. Макроның анықтамасы командалар тізімін ғана емес, сонымен қатар шақыру синтаксисін де қамтиды. Ол M4 сияқты кеңінен қолданылатын лексикалық препроцессорлардан айырмашылығы, макроның мәтіні анықталған кезде токендерге бөлінеді. TeX макро тілі үлкен құжаттарды дайындау жүйелерін жасау үшін қолданылды, ең белгілілері – LaTeX және ConTeXt.
Даму
Қазіргі TeX бағдарламалық қамтамасының бастапқы коды WEB тілінде жазылған, ол TeX-те жазылған құжаттама мен Pascal тілінің кіші жиынтығының қосындысы болып табылады, бұл оқу мен тасымалдауға ыңғайлы болуын қамтамасыз етеді. Мысалы, TeX өзінің барлық динамикалық жадты бөлуін белгілі өлшемдегі массивтерден жүзеге асырады және ішкі есептеулер үшін тек қана тұрақты бөлшек арифметикасын қолданады. Осының нәтижесінде TeX дерлік барлық операциялық жүйелерге көшірілді, әдетте web2c бағдарламасын пайдаланып, бастапқы кодты тікелей Pascal кодын компиляциялаудың орнына C тіліне аудару арқылы. Кнут 1982 жылдан бері бағдарламаға енгізген барлық қателер мен өзгерістердің толық тізімін сақтап келеді; 2021 жылға қарай тізімде 440 жазба бар, оның ішінде оның қайтысынан кейін TeX-тегі соңғы өзгеріс ретінде жасалуы тиіс нұсқаның өзгеруі де бар. Кнут TeX-те қате тапқан және хабарлаған адамдарға ақшалай сыйлық береді. Бір қате үшін сыйлық 2,56 АҚШ долларынан (бір "он алтылық доллар") басталып, қазіргі 327,68 АҚШ долларына дейін тоқтағанша жыл сайын екі есеге артты. Кнут салыстырмалы түрде аз ақша жоғалтты, себебі расталган қателердің саны өте аз болды. Сонымен қатар, сыйлық алғандар өздері тапқан қатенің куәлігі ретінде чектерін ақшаға айналдырудың орнына жақтауға қойғандары белгілі. Алаяқтар оның чектерiнiң сканерленген көшiрмелерiн интернеттен тауып, оларды оның банк шотын тозату үшін пайдаланғандықтан, Кнут енді нақты чектер жібермейді, бірақ қате туралы есеп бергендер Сан-Сериф банкінде несие ала алады.
Таратулар мен кеңейтулер
TeX әдетте Metafont және барлық қажетті қаріптер, құжат форматтары мен теріп шығару жүйесін пайдалануға қажетті құралдармен бірге TeX-тің өзі оңай орнатылатын жиынтық түрінде ұсынылады. UNIX-ке үйлесімді жүйелерде, соның ішінде Linux және Apple macOS, TeX үлкен TeX Live таратуының бөлігі ретінде таралды. (TeX Live-қа дейін teTeX таратуы UNIX-ке үйлесімді жүйелерде де-факто стандарт болып саналды.) Microsoft Windows жүйесінде MiKTeX таратуы (proTeXt-пен жақсартылған) және TeX Live-тың Microsoft Windows нұсқасы бар. Бірнеше құжат өңдеу жүйелері TeX-ке негізделген, ең танымалдары – jadeTeX, ол Джеймс Кларктың DSSSL Engine-нен, Arbortext баспа жүйесінен және Texinfo-дан, GNU құжаттама өңдеу жүйесінен материалды басып шығару үшін TeX-ті артқы процессор ретінде пайдаланады. TeX 1984 жылдан бері GNU операциялық жүйесінің ресми теріп шығару пакеті болып табылады. TeX үшін көптеген кеңейтімдер мен қосымша бағдарламалар бар, соның ішінде библиографиялар үшін BibTeX (LaTeX-пен бірге таралды); pdfTeX, тікелей PDF шығысын жасауға қабілетті TeX-ке үйлесімді процессор (сонымен қатар бастапқы DVI шығысын қолдауды жалғастырады); XeTeX, Unicode және OpenType-ті қолдайтын TeX-ке үйлесімді процессор; және LuaTeX, TeX-тің негізгі режімдері мен алгоритмдеріне кеңінен қосылатын Lua орындалу ортасы бар Unicode-ды түсінетін TeX кеңейтімі. Көптеген TeX кеңейтімдерін CTAN, Comprehensive TeX Archive Network желісінен тегін алуға болады.
Лицензия
Дональд Кнут бірнеше рет TeX бастапқы кодының "қоғамдық доменде" екенін айтты және осы бастапқы кодты өзгертуге немесе тәжірибе жүргізуге ынталандырады. Алайда, Кнут TeX-тің барлық нұсқаларының нәтижелерінің қайталанатындығын жоғары бағалайтындықтан, өзгертілген кез келген нұсқаны TeX немесе оған шатастыратын ешқандай ұқсас атаумен атауға болмайды. Бұл ережені сақтау үшін, жүйенің кез келген нұсқасы TeX деп аталуға рұқсат алу үшін TRIP тестінен өтуі керек. Лицензия мәселесі TeX бастапқы кодының басындағы "барлық құқықтар сақталған. Бұл файлды тек өзгеріссіз көшіруге болады" деген мәлімдемелермен шатастырады. Бұл шектеуді файл tex.web деп аталғанда бастапқы кодты өзгертуге тыйым салу ретінде қарастыру керек. tex.web (және mf.web) файлының басындағы авторлық құқық туралы ескерту 2021 жылы осыны нақты көрсету үшін өзгертілді. Бұл түсіндірме бастапқы кодта TRIP тесті туралы айтылғанда расталады ("Егер осы бағдарлама өзгертілсе, нәтижесіндегі жүйе 'TeX' деп аталмауы керек"). Американдық математика қоғамы 1980-ші жылдардың басында TeX таңбалық белгісін тіркеуге тырысты. Бірақ бұл өтініш қабылданбады, себебі сол кезде "TEX" (барлық әріптер үлкен) Honeywell компаниясы "Text EXecutive" мәтіндік өңдеу жүйесі үшін тіркелген болатын.
XML жариялау
TeX-ті XML деректері үшін күрделі макетті автоматты түрде жасау үшін қолдануға болады. Екі сипаттама тілінің синтаксисіндегі айырмашылықтарды TeXML көмегімен еңсеруге болады. XML басылымдарының контекстінде TeX, XSL FO-ға балама ретінде қарастырылуы мүмкін. TeX математикалық салалардағы ғылыми мақалаларды клиенттік жағында көрсетуге болатын салыстырмалы түрде кішкентай файлдарға дейін қысқартуға мүмкіндік берді, бұл толыққанды безендірілген ғылыми мақалаларды алғашқы Интернет және жаңа пайда болған Әлемдік Желі арқылы алмасуға мүмкіндік берді, тіпті үлкен файлдарды жіберу қиын болған кезде де. Бұл ғылыми мақалалардың arXiv сияқты репозиторийлерін құруға жол ашты, олар арқылы мақалалар делдал баспагерсіз "жариялануы" мүмкін.
Айтуға және жазуға
TeX атауын жасаушысы /t//ɛ//x/ деп айтуды көздеген, соңғы дауыссыз дыбысы «лох» сөзіндегідей. Атаудың әріптері грек әліпбиінің үлкен әріптері тау, эпсилон және хи-ді көрсетеді, себебі TeX – грек тіліндегі τέχνη (ΤΕΧΝΗ) сөзінің аббревиатурасы, ол «өнер» және «шеберлік» мағыналарын білдіреді, сонымен қатар «техникалық» сөзінің түбірі де осы сөзден шыққан. Ағылшын тілінде оны көбінесе /t//ɛ//k/ деп, «техникалық» сөзінің бірінші буынындай айтады. Кнут «E» әрпін басқа сызықтан төмен орналастырып, әріптер арасындағы аралықты қысқартуды ұсынады. Бұл, Кнут өзінің TeXbook еңбегінде айтқандай, TeX-ті басқа жүйе атауларынан, мысалы, TEX (Honeywell Information Systems әзірлеген Text EXecutive процессоры) сияқты атаулардан ажырату үшін жасалған. Әуесқойлар «TeX» сөзінен туындаған атауларды жиі қолданады, мысалы, TeXnician (TeX бағдарламалық қамтамасын қолданушы), TeXhacker (TeX бағдарламашысы), TeXmaster (квалификациялы TeX бағдарламашысы), TeXhax және TeXnique.
Қауымдастық
TeX қауымдастығының белгілі ұйымдарына TeX Users Group (TUG) кіреді, ол қазіргі уақытта TUGboat журналын шығарады және бұрын PracTeX Journal журналын шығарған, ол TeX-ке қатысты цифрлық типографияның кең ауқымды тақырыптарын қамтиды. Deutschsprachige Anwendervereinigung TeX (DANTE) – Германиядағы ірі пайдаланушылар тобы. TeX Users Group 1980 жылы білім беру және ғылыми мақсаттармен құрылған, типография және шрифт дизайнына қызығушылық танытқан, сондай-ақ Кнут ойлап тапқан TeX жинақтау жүйесін пайдаланушыларға ұйымдастыру көмегін көрсетеді. TeX Users Group бүкіл әлем бойынша TeX пайдаланушыларының мүдделерін қорғайды. TeX Users Group жылына үш рет TUGboat журналын, ал DANTE жылына төрт рет de журналын жариялайды. Басқа пайдаланушылар топтарына Даниядағы DK TUG, Франциядағы fr, Италиядағы GuIT, Нидерландыдағы NTG және Ұлыбританиядағы UK TUG кіреді; осы пайдаланушылар топтары бірлесіп толық тізімді жүргізеді.