Кіріспе
Ашық кодты мәтін өңдеуші
GNU TeXmacs – GNU жобасының ғылыми мәтін өңдеушісі және құрастыру компоненті. Ол бастапқыда TeX мүмкіндіктері бар GNU Emacs нұсқасы ретінде пайда болған, бірақ бұл бағдарламалармен ортақ кодқа ие емес, сонымен қатар TeX қаріптерін пайдаланады. Бағдарламаны Joris van der Hoeven және бір топ әзірлеушілер жазып, күтіп ұстап тұрады. Бағдарлама WYSIWYG пайдаланушы интерфейсімен құрылымдалған құжаттарды жасайды. Пайдаланушы жаңа құжат үлгілерін құра алады. Редактор жоғары сапалы құрастыру алгоритмдерін, TeX және басқа да қаріптерді кәсіби көріністі құжаттарды басып шығару үшін ұсынады.
Өмірбаян
TeXmacs – құрылымдық WYSIWYG редакторы және құжат дайындау жүйесі ретінде, Interleaf (алғашқы нұсқасы 1985), Framemaker (1986), SoftQuad Author/Editor (1988), Lilac, lt=Grif (1991) және Thot сияқты бұрынғы құрылымдық құжат редакторларымен ұқсас; сонымен қатар, логикалық түрде ұсынылған күрделі типографиялық құрылымдарды интерактивті өңдеуге қатысты академиялық зерттеулер де жүргізілді. 2000-ші және 2010-шы жылдары құрылымды мәтінді интерактивті өңдеуге қызығушылық артып, гуманитарлық ғылымдардағы ғалымдарға арналған бағдарламалардың дамуына ықпал етті. Мысалы, CWRC Writer – «WYSIWYG өңдеуге жақын және мағыналы визуалды белгілермен ғылыми мәтіндерді байытуға мүмкіндік беретін» визуалды XML редакторы. Ал редакциялау және құжат дайындау саласының екінші жағында, LaTeX-те жазылған құрылымды мәтіндермен визуалды өзара әрекеттесуге арналған LyX бағдарламасы бар, ол WYSIWYG өңдеуге емес, құрылымның визуалды бейнелеуіне (WYSIWYM) бағытталған.
Ерекшеліктері
Көптеген WYSIWYG редакторларында (мысалы, Microsoft Word) сияқты, авторлар экранда құжатты өңдейді, ол қағазға басылғанда да сол сияқты көрінуі керек. TeXmacs-тің мақсаты – WYSIWYG редакторын ұсыну, бірақ сонымен қатар әдемі безендірілген және дұрыс құрылымдалған құжаттарды жазуға мүмкіндік беру. TeXmacs – LaTeX-тің интерфейсі емес, бірақ TeXmacs құжаттарын TeX немесе LaTeX форматына түрлендіруге болады. LaTeX-ті де белгілі бір деңгейде импорттауға болады, сондай-ақ HTML, Scheme, Verbatim және XML форматында импорттау және экспорттау мүмкіндігі қарастырылған; HTML экспортын CSS арқылы стильдеуге болады (1.99.14 нұсқасынан бастап). MathML үшін де түрлендіргіш бар, ал TeXmacs басып шығару үшін PDF және PostScript форматында шығарады. TeXmacs математикалық формулаларды, кестелерді, суреттерді, әртүрлі сілтемелерді және дәйексөздерді өңдей алады. Оны Maxima, FriCAS және SageMath сияқты компьютерлік алгебра жүйелеріне интерфейс ретінде де пайдалануға болады, сондай-ақ олардың нәтижелерін құжатқа енгізеді. TeXmacs бағдарламаны жекелендіру және кеңейтулер жасау үшін Guile деп аталатын Scheme тілін де қолдайды. Бұған қоса, презентация режимі және қарапайым техникалық суреттер редакторы бар, сонымен қатар электрондық кестелерді қолдайтын толық ғылыми кеңсе пакетіне айналу жоспарлануда. Электрондық кестелерді қолдану 1.99.12 нұсқасынан бастап іске асырылды; TeXmacs электрондық кестелерінде жасуша мәндерін есептеу үшін плагиндерді (мысалы, Python немесе Maxima) пайдалануға болады. Қазіргі уақытта TeXmacs Linux, FreeBSD, Cygwin, Haiku және macOS сияқты Unix-негізгі жүйелерде жұмыс істейді. Cygwin нұсқасымен қатар, Microsoft Windows үшін де жеке порт бар.
TeXmacs редакторы
TeXmacs редакторында құжаттың құрылымы мен көрінісі бір уақытта бейнеленеді; құрылым пайдаланушыға құжаттың логикалық бөлімдерінің ішкі-ішкі фокус тіректерімен оралып көрсетіледі, ал олар курсордың қозғалысына сәйкес түс белгілерімен анықталады. Курсорға жақын құрылымның толыққанды сипаттамасы редактор терезесінің төменгі жағында ұсынылады және солға, оңға бағытталған пернелерді басып оны таңдауға болады.
Математикалық типография
TeXmacs пернетақтадағы түйіндемелерді символдарға байланыстыру арқылы математикалық формулаларды енгізуді жеңілдетеді. Мысалы, символын жазу арқылы енгізуге болады. Кейбір символдардың мұндай бейнелеуі жоқ (мысалы, ). Оларды пернесі арқылы енгізуге болады (мысалы, символы үшін түйіндемелері керек). Бұл пернетақта арқылы енгізу әдісі басқа формула редакторларынан өзгеше, олар мұндай жұмыс үшін нүктелік таңдау және басу мәзірлерін ұсынады.
Some symbols have no such representation ( for instance). These can be input with key (e. g. for the key presses are This keyboard based entry differs from other formulae editors, that tend to provide point and click menus for this task.
Партиялық өңдеу
TeXmacs-ті пакеттік процессор ретінде (LaTeX-тің әдеттегі жұмыс режимі) пайдалануға болады, өңдеу кезінде қажетсіз терезелердің ашылуын болдырмау үшін X виртуалды бейне буферін қолдану арқылы. Мысалы, команда
TeXmacs құжаты "article.tm" негізінде "article.pdf" PDF файлына айналдырады.
Типтік баптау және құжат басқару
Типтік процесс TeXmacs ағаштарын қораптарға түрлендіреді. TeXmacs ағаштарын бағалау примитивтерді ықшамдау арқылы, яғни макро қолданбаларын бағалау арқылы жүзеге асырылады. Типтік примитивтер өте жылдам жұмыс істеуі үшін жасалған және редакторға кіріктірілген; көптеген примитивтердің көрсетілуін жүйелік айнымалылар арқылы өзгертуге болады; стильдік тіл пайдаланушыларға кіріктірілген примитивтердің негізінде жаңа примитивтерді макростар ретінде жазуға мүмкіндік береді. TeXmacs "жолдың бөлінуі" (TeX-тегідей) үшін жаһандық алгоритмді, сондай-ақ "беттің бөлінуі" үшін де жаһандық алгоритмді пайдаланады; беттің бөлінуі алгоритмі қозғалмалы объектілерді (суреттер, кестелер, түсіндірмелер) және көп бағанды мазмұнды ескереді.
Құжаттарды бақылау
Құжаттарды туылған макрожүйе арқылы және Guile Scheme арқылы басқаруға болады. Редактордың мәзірлерін және перне тағайындамаларын өзгертуге, сондай-ақ құжат ағашымен бағдарламалық түрде әрекеттесуге мүмкіндік бар.
TeXmacs макролары
TeXmacs макростары құрылымды енгізу мүмкіндігін ұсынады (TeX/LaTeX-тегідей) және бірден жинақталады, сонымен бірге өңдеуге болатын енгізу жолдарын сақтайды. Олар бастапқы кодта жазылған, бірақ WYSIWYG редакторы көрінетін құрылымдарды олардың синтаксисіне аудару арқылы оларды құруға көмектесе алады.
Схема арқылы құжаттарды бақылау
Схема GNU Guile арқылы TeXmacs-ке енгізілген; редакторды осы арқылы басқаруға болады: осылайша жүйеге берілген деректер мен оған сәйкес нәтижелер арасында оңай алмасуға болады, бұл құжатта біте қайнасып жатыр.