Write some Software

Closed

Написати програму, яка аналізуватиме TeX-файл, що містить створені користувачем власні команди (і оголошення (описи), і використання), та розкривати використання цих команд у відповідності з наведеними оголошеннями, за тими ж правилами, за якими це зробив би сам (La)TeX. Програма має обробляти (розкривати) команди користувача, задані за допомогою \def та задані за допомогою \newcommand та \renewcommand, а також середовища користувача, задані за допомогою \newenvironment та \newenvironment.

> >

> > І вхідним(и) файл(ом/ами), і вихідним файлом програми має бути TeX-файл, але вихідний повинен містити лише ті команди, яким не було дано означення користувача (або які були згадані в переліку виключень, див. далі).

> >

> > При проектуванні програми обов’язково врахувати, що команди користувача можуть бути вкладеними, тобто одні команди користувача можуть використовувати інші команди користувача. Можна обмежитися випадком без рекурсії.

> >

> > При проектуванні програми обов’язково врахувати можливість, що у різні моменти часу (у різних частинах документу) одне й те саме ім’я може мати різні означення.

> >

> > При проектуванні програми обов’язково врахувати, що TeX зберігає тексти команд у нерозгорнутому вигляді, розгортаючи вже під час використання, згідно поточних на момент використання означень інших команд.

> >

> > При проектуванні програми обов’язково врахувати, що усі означення користувача за замовчуванням (при відсутності \global) є локальними, тобто після закінчення чергового блоку (фігурних дужок) всі означення, задані всередині нього, завершуються (командам повертається той смисл, який був перед початком цього блоку).

> >

> > Програма повинна вміти підключати файли (виконувати TeX-команду \input).

> >

> > Програма повинна дозволяти (але не вимагати) задавати два переліки виключень: перелік команд користувача, які не треба розкривати (хоча їхні означення й зустрічаються у тексті), та перелік команд користувача, які треба розкривати не згідно означень заданих у тексті, а згідно означень заданих у додатковому файлі. Ці переліки мають записуватися у файли, імена цих файлів вказуватися за допомогою спеціальних ключів у параметрах командного рядка.

> >

> > Програма повинна працювати як фільтр (читати вхідн(ий/і) TeX-файл(и) і створювати вихідний TeX-файл, керування та налаштування опцій здійснюється за допомогою параметрів командного рядка). Додатково слід написати просту програму-оболонку, яка забезпечуватиме інтуїтивно зрозумілий графічний інтерфейс, просту довідку, тощо. При цьому програма-оболонка повинна викликати основну програму (а не дублювати її роботу).

Skills: C++ Programming, Software Architecture

See more: useful software write book, software write web specs, free software write user guide, software write edid, free software write company profile, software write websites idea, software write book images, software emulator keyboard input, software write books, software write protection, free software write book, software write book, software development global crisis, software write protect software, software write technical manual

Project ID: #11718110

5 freelancers are bidding on average $177 for this job

gabontau

Доброго дня. Я можу написати код на пайтоні, що буде розкривати код на латесі так, як Ви хочете. Вважайте, що ми напишемо свій компілятор для латеху, але під пайтоном)

$180 USD in 3 days
(7 Reviews)
3.6
ivanmaster

Маю великий досвід роботи з C++, Linux, MYSQL З LaTex знайомий слабо, тому більша частина часу піде на вивчення принципів його роботи Завдання цікаве, буду радий його виконати

$177 USD in 7 days
(0 Reviews)
0.0
giopld

Please add Me S,k,y.p,e Id--- giopld for more discus ************************************************************************************

$30 USD in 1 day
(0 Reviews)
0.0
abdullah022

Hi…. I am a software Engineer. I can do this work for you. I have good experience in web development and Android application. Send me all detail about project in chat box.

$188 USD in 3 days
(0 Reviews)
0.0
kishorehgurjar

Hello, Professional developers with similar expertise here. We are posting our bid as an expression of interest and appreciate further discussion in private message board. We are waiting for your message to communic More

$311 USD in 3 days
(0 Reviews)
0.0
karthickBWS

We have a 1000+ employee in our company. So we can do any kind of project based on all languages and all stream...... We have 3 years+ experience employees for all stream especially C Programming, Javascript,html,php, More

$222 USD in 4 days
(0 Reviews)
0.0