%----------------------------------------
%               TkTeXEditor             |
%----------------------------------------

\documentclass[12pt]{article}
\usepackage[koi8-r]{inputenc}
\usepackage[english,russian]{babel}

\usepackage{graphicx}

\begin{document}
\title{Tk \LaTeX  Editor Programming Guide}
\maketitle
\author{Sergey Kalinin (aka BanZaj) 17/06/2002}
\section{Подключение модуля}

Для загрузки нового модуля необходимо файл скрипта (filename.tcl) разместить в каталоге lib/modules/. Файл будет загружен автоматически при старте программы.

\section{Глобальные переменные}
\subsection{Расположение файлов}
Для описания каталогов используется массив переменных \textit{dir}:
\begin{itemize}
\item dir(mod) - Каталог с модулями программы (modules) (сдесь и далее в скобках указано значение по умолчанию)
\item dir(gui) - файлы настройки панелей инструментов (gui)
\item dir(img) - каталог изображений (img)
\item dir(msg) - каталог сообщений (msg), используется для локализации пользовательского интерфейса программы
\item dir(tmpl) - шаблоны документов (template)
\item dir(work) - рабочий каталог (~/.tktexeditor)
\end{itemize}

\subsection{Определение шрифтов}
Для определения шрифтов для интерфейса и редактора используется массив переменных \textit{}:
\begin{itemize}
\item font(normal) - Обычный шрифт
\item font(bold) - жирный шрифт
\item font(editNormal) - обычный шрифт в редакторе
\item font(editBold) - жирный шрифт в редакторе
\end{itemize}

\subsection{Определение цветовой гаммы}
Для определения цветовой гаммы интерфейса и подсветки кода в редакторе определен массив  \textit{color}

\subsubsection{Остальные переменные}
\begin{itemize}
\item \textit{tree} - имя Tree виджета
\item \textit{nb} - имя NoteBook виджета редактра
\item \textit{treeStruct} - имя Tree для структуры документа
\item \textit{lblList} - имя списка меток
\item \textit{module()} - массив переменных содержащий полные имена внешних модулей (см lib/modules/module.tcl)
\item files() - массив переменных с именами открытых файлов
\item \textit{activeFile} - имя активной ноды
Например для извлечения имени активного файла необходимо :
\begin{verbatim}
    if {$activeFile == ""} {return} <-- проверка
    set text "$nb.f$activeFile.f.text" <-- имя текстового виджета
    set fullPath [lindex $files($activeFile) 0] <-- полный путь к файлу
\end{verbatim}

\end{itemize}



\end{document}





