%---------------------------------------- % TkTeXEditor | %---------------------------------------- \documentclass[12pt]{article} \usepackage[koi8-r]{inputenc} \usepackage[english,russian]{babel} \title{Расширенный \LaTeX{} редактор} \author{Сергей Калинин, Константин Михайленко} \date{} \begin{document} \maketitle \section{Назначение} Программа предназначена для создания и редактирования файлов в рамках издательской системы \TeX{} (\LaTeX). \subsection{Описание функций} Ниже представлен список основных функций редактора: Одновременное редактирование нескольких файлов. Создание нового документа из шаблона. Отображение структуры документа ввиде дерева. Отображение ввиде дерева включенных внешних документов. Вывод списка меток и ссылок. Подсветка синтаксиса. Поиск и замена текста. Автодобивка команд. Преобразование .tex файла в dvi, ps, pdf, html (при помощи внешних программ) и просмотр полученного документа. Отображение процесса компиляции и преобразования документа и вывод ошибок. Печать исходного кода. Настраиваемые панели инструментов. Вставка настраиваемых готовых конструкций кода. Интерактивная проверка орфографии (при помощи ispell). Автоматический перенос строк при достижении определенной в конфигурации длинны. Авто-сохранение документа через определённый промежуток времени. Сохранение позиции редактирования в открытых файлах при выходе из программы и возобновление редактирования этих файлов при следующем запуске программы. Возможность подключения дополнительных внешних программ. Настраиваемые цветовые схемы и графические темы панелей инструментов. Подключение внешнего редактора. Простой механизм локализации интерфейса программы. В данный момент редактор локализован на русском и английском языках. Предпросмотр математических формул и любых частей текста а также сохранение их как изображения. Поддерживается множество кодировок и перекодировка из одной в другую. Автоматическое подключение нужной кодировки при использовании декларации пакета \emph{inputenc}. \subsection{Необходимое ПО} Программа написана на интерпретируемом языке Tcl/Tk поэтому Вам потребуется установить интерпретатор языка tcl. Его Вы можете найти у себя в дистрибутиве (для unix-подобных систем) или взять в сети Internet (для систем Windows). Например http://www.activestate.com Также необходимо установить набор графических компонент BWidget (он входит в состав activeTCL) Для полноценной работы с \LaTeX-документами необходимо установить дистрибутив издательской системы \LaTeX{} (например TeTeX или MkiTeX). Для просмотра и преобразования документов желательно установить пакеты tetex-dvips, ghostscript, ImageMagic, latex2html, xdvi, acroread (xpdf) - все , или почти все эти программы присутствуют в последних дистрибутивах линукс (например ALT Linux Master). О настройке данных программ будет рассказано ниже. \section{Начало работы} Программа запускается командой \emph{/usr/bin/tle} - если она установлена из rpm-пакета, или запускается файл \emph{tle.tcl} из дистрибутивного комплекта. После запуска в домашнем каталоге создается рабочая папка \emph{.tle} содержащая конфигурационные файлы. Далее можете приступать к редактированию файлов. Можно открыть уже существующие документы \textit{Файл - Открыть} либо создавать новые \textit{Файл - Новый}. Программа, также, поддерживает создание документов из заранее заданных шаблонов \textit{Файл - Новый - Создать из шаблона}, которые, Вы можете создавать самостоятельно, в появившимся диалоге выбирете нужный шаблон и введите требуемое имя и нажмите кнопку \textit{Создать} Tk \LaTeX{} Editor позволяет редактировать множество файлов, переключаясь между закладками редактора. Сохранение документа производиться нажатием кнопки на панели инструментов, либо в меню \emph{Файл - Сохранить} либо нажатием сочетания клавиш \emph{Ctrl - S}, либо автоматически, согласно установкам в конфигурационном файле. \section{Рaбота с документом} \subsection{Редактирование} При редактировании текста доступны режимы ввода и замены символов, переключаемые клавишей \emph{Insert}. При вводе текста есть возможность ограничить длину строки текста определённым количеством символов, которое задаётся в конфигурационном файле, так же как и включение и выключение режима автопереноса. Т.е. при достижении длины строки текста в заданное количество символов, редактор автоматически начнет ввод со следующей строки. Также есть возможность перемещения курсора на строку с заданным номером - \emph{Ctrl - G}. \subsubsection{Вставка тегов} Для облегчения и ускорения процесса вёрстки документа редактор TLE позволяет вставлять готовые конструкции, используя настраиваемые панели инструментов. Например конструкции вида \verb"\textsl{Редактирование}" можно вставлять, предварительно выделив требуемый текст, нажав соответствующую кнопку панели инструментов. Также при добавлении элементов списка \verb"\item" есть возможность автоматической вставки тега \(следующего элемента списка\) в начале следующей строки при нажатии клавиши \emph{Enter} в конце ввода строки текста. Также, есть возможность добивки команд по начальным буквам - для этого, необходимо, после набора первых буква команды, нажать \emph{ALT-C} и, из появившегося списка, выбрать требуемое. Списки команд соответствуют пакетам системы \LaTeX. И могут быть дополнены пользователем. В панели инструментов имеются диалоги для вставки изображения и таблицы, и многих других. В отдельную панель выделены математические символы и режимы. \subsubsection{Поиск и замена текста} Редактор TLE позволяет производить поиск и поиск с заменой текста в открытом документе. Данные функции доступны через меню \emph{Редактирование} или при нажатии клавиш \emph{Ctrl-F} и \emph{Ctrl-R} соответственно. Для простого поиска ведется история. \subsection{Перекодирование} TLE поддерживает работу с множеством различных кодировок. При открытии \LaTeX-документа происходит считывание данных о кодировке документа, если используется пакет \emph{inputenc}. Если документ не содержит данных о кодовой странице то он будет отображен с использованием системной кодировки. В случае не совпадения кодовой страницы документа и Вашей системы документ будет отображён некорректно. Но это можно исправить, указав кодировку документа через меню \emph{Вид - Кодировка}. Если Вы хотите сохранить документ в кодировке отличной от исходной то необходимо выбрать нужную кодовую страницу через меню \emph{Документ - Кодировка} и файл будет перекодирован при сохранении. В случае если Вы используете пакет \emph{inputenc} но не правильно указали кодировку документа в описании пакета либо текущая кодировка документа не соответствует требуемой, при сохранении будет выдано предупреждение о не соответствии кодовых страниц. \subsection{Предпросмотр текста и формул} При наличии в системе дополнительных программ, становится доступна функция предварительного просмотра математических формул и произвольных частей документа. Для осуществления данной операции необходимо в редактируемом документе выделить текст формулы, либо её часть, и нажать сочетание клавиш \emph{Alt-V}. Также можно выбрать пункт \emph{Показать формулу} в меню \emph{Редактирование} или при помощи всплывающего меню. Для произвольного фрагмента текста операция идентична предыдущей с той лишь разницей, что необходимо нажать \emph{Alt-B} или меню \emph{Редактирование - Показать Текст} \subsection{Проверка орфографии} Для проверки орфографии используется программа ispell. Вам необходимо выбрать в меню \emph{Документ - Орфография} или нажать кнопку в панели инструментов. В появившимся диалоге надо выбрать требуемый словарь и режим проверки - весь документ или с текущей позиции. При несовпадении слов в тексте и в словаре Вам будет предложен список возможных вариантов из которых можно выбрать нужный и заменить неправильное слово. \subsection{Преобразование в различные форматы} Для преобразования файла в различные форматы используются внешние программы. Команды для их запуска описаны в конфигурационном файле tle.conf: \begin{verbatim} set convert_cmd(dvi) "latex" set convert_cmd(ps) "dvips -Pwww -j0 -ta4 -o %fileName.ps %fileName.dvi" set convert_cmd(pdf) "ps2pdf %name.ps" set convert_cmd(html) "latex2html -no_navigation -split 0" \end{verbatim} Если в команде встречается макрос \emph{\%fileName} то программа подставит вместо него имя текущего файла без расширения. Вызов команд производиться как через меню \textit{Документ} - \textit{Преобразовать} так и через панель инструментов. Разница заключается лишь в том, что при вызове команды через меню будет вызван диалог, в котором можно изменить опции командной строки, заданной по умолчанию. А при вызове команды через панель инструментов будет использована последняя заданная команда для операции преобразования. \subsection{Предварительный просмотр документа} После преобразования документа станет доступна возможность просмотра полученного результата. Команды для просмотра заданы в конфигурационном файле tle.conf, аналогично и командам конвертации. \begin{verbatim} ## PREVIEW ## set preview_cmd(dvi) "xdvi" set preview_cmd(ps) "gv" set preview_cmd(pdf) "acroread" set preview_cmd(html) "mozilla" \end{verbatim} Вызвать команды просмотра можно как через меню \textit{Документ} - \textit{Предварительный просмотр} так и при помощи кнопок на панели инструментов. \section{Настройка} \subsection{Конфигурационный файл} \textbf{Локализация} \emph{set locale "en"} - установка языка интерфейса программы \textbf{Временные файлы} \emph{set backup(create) "Yes"} - создание резервных копий файлов \emph{set backup(del) "No"} - удалять резервные копии \emph{set backup(autosave) "Yes"} - автосохранение документа \textbf{Встроенная Помощь} \emph{set help(encode) "koi8-r"} - язык файлов помощи \textbf{Параметры для ispell} \emph{set ispell\_lib /usr/lib/ispell} \emph{set ispell\_startindex "1.0"} \textbf{Рабочие каталоги} каталог для временных файлов \begin{verbatim} set dir(tmp) [file join $env(HOME) tmp] \end{verbatim} каталог для документов по умолчанию \begin{verbatim} set dir(doc) [file join $env(HOME) doc my] \end{verbatim} \textbf{Таймеры в миллисекундах} \emph{set timers(refresh) 60000} - время автообновления структуры документа \emph{set timers(autosave) 300000} - время автосохранения документа \textbf{Настройки Интерфейс} \emph{set gui(geometry) "750x550+0+0"} - установка геометрии основного окна \emph{set gui(tabsLabel) "top"} - расположение заголовков закладок "top" или "bottom" \emph{set theme "default" }- тема для панелей инструментов "default" или "stroke" \textbf{Установка шрифтов} \emph{set font(normal) "Arial 10 normal roman"} - нормальный шрифт интерфейса \emph{set font(bold) "Arial 10 bold roman"} - жирный шрифт интерфейса \textbf{Установка цветовых схем} \emph{set color(selectbg) "\#55c4d1"} - цвет выделенной области \emph{set color(bg) "\#bbbbbb"} - фон элементов интерфейса \emph{set color(editBg) "\#cccccc"} - фон элементов редактирования \emph{set color(editFg) "\#000000"} - цвет шрифта элементов редактирования \emph{set color(editTitleNormal) "\#000000"} - цвет заголовка закладки редактора нормальный \emph{set color(editTitleModify) "\#0021ff"} - цвет заголовка закладкиредактора изменённый \textbf{Подсветка текста} \emph{set color(procName) "\#0021ff"} - процедуры \emph{set color(operator) "\#0000a8"} - операторы \emph{set color(keyWord) "\#0000a8"} - ключевые слова \emph{set color(param) "\#6a0082" }- параметры \emph{set color(subParam) "\#008282"} - подпараметры \emph{set color(comments) "\#9b9b9b"} - коментарий \emph{set color(var) "\#e50000"} - переменная \emph{set color(string) "\#168400"} - строка заключённая в кавычки \emph{set color(brace) "\#d33434"} - скобка \emph{set color(braceBG) "\#000000"} - фон подсвеченной скобки \emph{set color(braceFG) "\#00feff"} - цвет подсвеченной скобки \emph{set color(percent) "\#a500c6"} - знак процента \emph{set color(bindKey) "\#a500c6"} - ключи \textbf{Рельеф кнопок и элементов интерфейса} доступны flat, groove, raised, ridge, solid, sunken or link \emph{set relief(btn) link} - кнопки доступны flat, groove, raised, ridge, solid, or sunken \emph{set relief(menu) groove }- меню \textbf{Включение панелей инструментов} При добавлении своей панели инструментов необходимо прописать её в конфигурационном файле в формате \textit{tool(toolbar\_file\_name) flag} где flag = 0 - скрыть, 1- показать \emph{set tool(main) 1} - основная панель \emph{set tool(insert) 1} - панель для вставки элементов \emph{set tool(math) 0} - математическая панель \emph{set tool(format) 1} - панель форматирования \textbf{Установки редактора} \emph{set font(editNormal) "fixed"} - нормальный шрифт \emph{set font(editBold) "fixed"} - полужирный шрифт \emph{set editor(extern) "No"} - использовать внешний редактор \emph{set editor(prog) "/usr/bin/emacs"} - внешний редактор \emph{set editor(wrap) "word"} - автоперенос слов при отображении текста, доступно none, word or char \emph{set editor(strWrap) "Yes"} - автоперенос текста при редактировании \emph{set editor(strLen) 100} - количество символов в строке \textbf{Опции преобразования документа и просмотра} \emph{\%fileName} - имя текущего файла \emph{\%dirName} - имя текущего каталога \textbf{Преобразование latex в dvi} \emph{set convert\_cmd(dvi) "latex"} \textbf{Преобразование dvi в ps (PostScript)} \emph{set convert\_cmd(ps) "dvips -Pwww -j0 -ta4 -o \%dirName/\%fileName.ps \%dirName/\%fileName.dvi"} \textbf{Преобразование ps в pdf} \emph{set convert\_cmd(pdf) "ps2pdf \%dirName/\%fileName.ps"} \textbf{Преобразование latex в html} \emph{set convert\_cmd(html) "latex2html -no\_navigation -split 0"} \textbf{Преобразование ps в графическое изображение} \emph{set convert\_cmd(img) "convert"} \textbf{Просмотр результатов преобразования} \emph{set preview\_cmd(dvi) "xdvi"} \emph{set preview\_cmd(ps) "gv"} \emph{set preview\_cmd(pdf) "acroread"} \emph{set preview\_cmd(html) "mozilla"} \textbf{Параметры отображения формул и частей текста} \emph{set render(res) "150x150"} - разрешение картинки \emph{set render(format) "gif"} - формат файла изображения \emph{set render(bg) "white"} - цвет фона \emph{set render(fg) "black"} - цвет шрифта \emph{set render(trans) 0} - включение прозрачности \emph{set render(aa) 1} - включение антиалиасинга \subsection{Панелей инструментов} Вы можете самостоятельно настраивать панели инструментов, т.е. добавлять кнопки и меню. Описание панелей инструментов (тул-баров) храниться в каталоге \texttt{share/gui/toolbar/} \subsubsection{Описание функций} Для команд определяемых пользователем есть несколько функций для добавления тэгов в текст. \begin{description} \item[\textit{\textbf{AddTextFont}}]~--- добавляет тэги вида <<\verb"\tiny{}">>. Формат вызова функции \begin{verbatim} AddTextFont Имя_Тэга \end{verbatim} \item[\textit{\textbf{AddTextDouble}}]~--- добавляет тэги вида <<\verb"\begin{center}" \ldots \verb"\end{center}">>. \begin{verbatim} AddTextDouble Начальный_Тег Наименование конечный_Тег \end{verbatim} \item[\textit{\textbf{AddTextCommand}}]~--- для добавления простых тэгов вида <<\verb"\beta">>. \begin{verbatim} AddTextCommand Имя_Тэга \end{verbatim} \end{description} В командах начальный слэш следует опускать, он добавляется автоматически \subsubsection{Наименование файла} Для создания новой панели инструментов создайте в каталоге \texttt{toolbar} файл с любым именем без расширения кроме main (это зарезервированное слово под основную панель) \subsubsection{Формат файла} Строки начинающиеся на <<\verb"#">> являются комментарием и игнорируются так же как и пустые строки Для создания меню: \begin{verbatim} ключевое_слово иконка "Текст подсказки" \end{verbatim} Для создания команд в меню: \begin{verbatim} ключевое_слово "команда" "Текст подсказки" иконка \end{verbatim} Параметр \textit{иконка} не является обязательным если он не указан то в меню будет вставлен текст если указан - то изображение Для создания кнопки: \begin{verbatim} ключевое_слово "команда" Иконка "Текст подсказки" \end{verbatim} \subsubsection{Пример} \begin{verbatim} menu font_width.gif "Font type" { cmd "AddTextFont texttt" "Typewriter Typeset" imagecmd "AddTextFont textit" "Typewriter Typeset" file.gif cmd separator } button "AddTextFont emph" font_emph.gif "Emphasise" \end{verbatim} Здесь \texttt{menu}, \texttt{button}, \texttt{cmd}, \texttt{imagecmd}~--- ключевые слова для создания соотвественно меню, кнопки меню и кнопки с изображением; \texttt{cmd~separator}~--- добавление в меню разделителя \section{"Горячие" клавиши} \emph{Ctrl + A} - Сохранить файл под другим именем. \emph{Ctrl + C} - Команда копирует выделенный в окне редактора текст в буфер обмена. \emph{Ctrl + F} - Поиск заданного выражения в тексте. \emph{Ctrl + G} - Перейти к строке с заданным номером. \emph{Ctrl + N} - Создать новый файл. Команда вызывает диалог создания файла. \emph{Ctrl + O} - Открыть файл. \emph{Ctrl + P} - Печать файла (кода). \emph{Ctrl + Q} - Выход. \emph{Ctrl + R} - Поиск и замена заданного выражения в тексте. \emph{Ctrl + S} - Сохранить файл. Сохраняется файл, который открыт в текущем окне редактора. \emph{Ctrl + T} - Поменять местами два символа, стоящих до и после курсора. \emph{Ctrl + U} - Перемещает курсор на соответствующую открытую или закрытую скобку. \emph{Ctrl + V} - Вставка фрагмента текста из буфера обмена, скопированного предыдущей командой. \emph{Ctrl + W} - Закрыть файл. Команда закрывает файл открытый в текущем окне редактора. \emph{Ctrl + X} - Вырезать выделенный фрагмент текста в буфер обмена. \emph{Ctrl + Z} - Отменить операцию \emph{Ctrl + PageUp} - Переключение закладок (окон редактора) назад (к предыдущему открытому файлу). \emph{Ctrl + PageDown} - Переключение закладок (окон редактора) вперед (к следующему открытому файлу). \emph{F1} - Вызов системы помощи по программе и по языку. Если в тексте выделить команду и нажать данную клавишу то будет выведена на экран подсказка по этой команде. \emph{F2} - Разделение окна редактора \emph{F3} - Повторный поиск, команда работает с последним введенным выражением в диалоговом окне поиска \emph{F5} - Компиляция файла в DVI формат \emph{F6} - Конвертирование DVI файла в PS. \emph{F7} - Конвертирование DVI файла в PDF. \emph{Alt + T} - Предпросмотр выделенного участка текста \emph{Alt + C} - Автодобивка команд. \emph{Alt + F} - Предпросмотр математической формулы \end{document} cnt ghbdt