<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.1.2-Based Variant V1.1//EN"
 "dtd/kdex.dtd" [
  <!ENTITY kappname "&kdvi;">
  <!ENTITY package "kdegraphics">
  <!ENTITY % addindex "IGNORE">
  <!ENTITY % Russian "INCLUDE"
><!-- change language only here -->
]>

<book lang="&language;">
  <bookinfo>
    <title
>Руководство &kdvi;</title>
    <authorgroup>
      <author
><firstname
>Stefan</firstname
> <surname
>Kebekus</surname
> <affiliation
> <address
> <email
>kebekus@kde.org</email>
          </address>
	</affiliation>
      </author>
      <othercredit role="translator"
><firstname
>Николай</firstname
><surname
>Шафоростов</surname
><affiliation
><address
><email
>admin@program.net.ua</email
></address
></affiliation
><contrib
>Перевод на русский язык</contrib
></othercredit
> 
    </authorgroup>
    
    <copyright>
      <year
>2001-2004</year>
      <holder
>Stefan Kebekus</holder>
    </copyright>
    
    <legalnotice
>&FDLNotice;</legalnotice>
    
    <date
>2004-02-27</date>
    <releaseinfo
>1.11.00</releaseinfo>

    <abstract>
      <para
>Это руководство описывает &kdvi; 1.1</para>
    </abstract>

    <keywordset>
      <keyword
>KDE</keyword>
      <keyword
>linux</keyword>
      <keyword
>TeX</keyword>
      <keyword
>DVI</keyword>
    </keywordset>

  </bookinfo>

  <chapter id="introduction">
    <title
>Введение</title>

    <para
>&kdvi; - это модуль к &kviewshell;, который позволяет отображать файлы в формате &DVI; (<literal role="extension"
>.dvi</literal
>), созданные в TeX. &kdvi; поддерживает разнообразные расширения стандарта &DVI;, такие как встраивание графики &PostScript; или ссылок. Более подробные примеры и технические спецификации могут быть найдены в файле <filename
>KDVI-features.dvi</filename
> (<filename
>KDVI-features.tex</filename
> - исходный файл, пригодный для правки в TeX).</para>

    <para
>Последние новости можно найти на <ulink url="http://devel-home.kde.org/~kdvi"
>домашней странице &kdvi;</ulink
>. </para>

    <para
>TeX - высокопроизводительная система вёрстки, ориентированная на ввод научных, особенно математических выражений. Подробная информация о TeX и &DVI; может быть найдена на <ulink url="http://www.tug.org"
>домашней странице TeX User Group</ulink
> или на <ulink url="http://www.dante.de"
>German DANTE e.V.</ulink
> (на немецком). </para>
  </chapter>


  <chapter id="starting">
    <title
>Запуск &kdvi;</title>
    
    <para
>В большинстве случаев &kdvi; запускается двойным щелчком на файле<literal role="extension"
>.dvi</literal
>. Для удобства введена команда <command
>kdvi</command
>, которая запускает &kviewshell; с загруженным модулем &kdvi;. Например: <userinput
><command
>kdvi</command
> <parameter
>somepath/paper.dvi</parameter
></userinput
>. Команды типа <userinput
><command
>kdvi</command
> <parameter
>somepath/paper</parameter
></userinput
> или <userinput
><command
>kdvi</command
> <parameter
>somepath/paper.</parameter
></userinput
> также будут работать. Вы можете передать в качестве имени файла &URL;, например: <userinput
><command
>kdvi</command
> <parameter
>http://somepath/paper.dvi</parameter
></userinput
> </para>
    
    <para
>Если вы указываете имя открываемого файла как &URL;, вы можете указать, какое место файла &DVI; нужно отобразить. Например, команда <userinput
><command
>kdvi</command
> <parameter
>file:paper.dvi#43</parameter
></userinput
> откроет страницу 43. Если вы включили информацию об исходном файле, команда типа <userinput
><command
>kdvi</command
> <parameter
>file:paper.dvi#src:43paper.tex</parameter
></userinput
> приведёт к поиску места в файле &DVI;, которое отвечает строке 43 в файле TeX <parameter
>paper.tex</parameter
>. Если вы планируете использовать эту функцию часто, прочтите секцию <link linkend="forward-search"
>Поиск</link
> чтобы узнать, как настроить ваш редактор на автоматический запуск &kdvi;. </para>

    <warning
><para
>На забудьте поставить префикс <userinput
>file:</userinput
>. Например, команда <userinput
><command
>kdvi</command
> <parameter
>file:paper.dvi#43</parameter
></userinput
> откроет страницу 43 файла <filename
>paper.dvi</filename
>. А команда <userinput
><command
>kdvi</command
> <parameter
>paper.dvi#43</parameter
></userinput
> будет пытаться открыть файл<filename
>paper.dvi#43</filename
>.</para>
    </warning>

    <para
>Если вы введёте команду <userinput
><command
>kdvi</command
> <parameter
>--unique</parameter
> <parameter
>somepath/paper.dvi</parameter
></userinput
>, &kdvi; откроет файл, только если он ещё не открыт. Иначе окно &kdvi; с требуемым документов будет выведено поверх остальных. Команда типа <userinput
><command
>kdvi</command
> <parameter
>--unique</parameter
> <parameter
>file:paper.dvi#43</parameter
></userinput
> может быть использована в скриптах shell, чтобы окно &kdvi; было выведено поверх остальных, с открытой страницей 43.</para>

    <para
>Обычные параметры программ &Qt; и &kde; также работают: <userinput
><command
>kdvi</command
> <option
>-style</option
> <parameter
>windows</parameter
> <option
>-display</option
> <parameter
>:0</parameter
> <option
>-geometry</option
> <parameter
>400x400+0+0</parameter
> <option
>-caption</option
> <parameter
>&quot;DVI&quot;</parameter
></userinput
> </para>
  </chapter>
  
  
  <chapter id="print">
    <title
>Печать файлов &DVI;</title>
    
    <para
>&kdvi; может печатать файлы &DVI;, используя стандартный интерфейс печати &kde;. &kdvi; использует <command
>dvips</command
> для создания &PostScript;, который передаётся принтеру. Для печати из &kdvi; <command
>dvips</command
> должен быть установлен. Для подробностей настройки этой программы см. <ulink url="info:/dvips"
>документацию GNU-texinfo для <command
>dvips</command
></ulink
> и <filename
>dvips.dvi</filename
>.</para>
  </chapter>

  <chapter id="export">
    <title
>Экспорт файлов &DVI; в другие форматы</title>

    <para
>Чтобы сохранить документы в формате &PostScript; или PDF, не нужно перенаправлять выход на печать в файл, так как встроенные функции экспорта создадут файл в желаемом формате с лучшим качеством, сохраняя некоторые специальные возможностиu формата dvi. Их будет удобнее просматривать в таких программах, как Adobe<application
>Acrobat Reader</application
>. Функции экспорта находятся в меню<guimenu
>Файл</guimenu
>.</para>

    <section id="export-ps">
      <title
>Экспорт в &PostScript;</title
> 

      <para
>Как и при печати, для создания файла &PostScript; используется внешняя программа <command
>dvips</command
>. Если файл &DVI; содержит ссылки, они будут учтены. Если вам необходимо получить файл, оптимизированный под конкретный принтер, запустите <command
>dvips</command
> вручную, указав требуемый режим MetaFont. Подробности указаны в man-странице по <command
>dvips</command
>.</para>
    </section>

    <section id="export-pdf">
      <title
>Экспорт в <acronym
>PDF</acronym
></title
> 

      <para
>Чтобы получить файлы <acronym
>PDF</acronym
> хорошего качества, &kdvi; конвертирует &DVI; в <acronym
>PDF</acronym
>, используя внешнюю программу <command
>dvipdfm</command
>. Если она не установлена на вашей машине, используйте функции печати, перенаправив вывод в файл.</para>

      <warning>
	<itemizedlist>
	  <listitem>
	    <para
>При просмотре файлов в Adobe <application
>Acrobat Reader</application
> некоторые шрифты могут выглядеть плохо, хотя при печати и просмотре в <application
>ghostview</application
> всё нормально. Это недоработка, связанная с обработкой Adobe <application
>Acrobat Reader</application
> растровых шрифтов,возможно, будет устранена в следующей его версии. </para>
	  </listitem>
	  <listitem>
	    <para
>Программа <command
>dvipdfm</command
> создаёт файлы <acronym
>PDF</acronym
> довольно высокого качества, однако она игнорирует &PostScript;, встроенный в файл &DVI;. Файлы такого рода генерируются, к примеру, макросами из пакета <application
>xy</application
> или функцией &kdvi; "Вставки PostScript", описанной <link linkend="embed"
>ниже</link
>. </para>
            <para
>Если вы обнаружите, что в созданном файле <acronym
>PDF</acronym
> отсутствуют рисунки, используйте функцию печати &kdvi;. </para>
	  </listitem>
	</itemizedlist>
      </warning>
    </section>


    <section id="export-text">
      <title
>Экспорт в текстовый файл</title
> 

      <para
>&kdvi; может экспортировать файлы &DVI; в формат "только текст".</para>

      <warning>
       <para
>При создании стандарта &DVI; такая возможность не предусматривалась. Поэтому хорошо обрабатываются только стандартные символы ASCII. Неевропейские языки не обрабатываются вообще. В зависимости от используемого шрифта могут возникнуть проблемы с символами ударения, умляутами и иногда с лигатурами. </para>
      </warning>
    </section>
  </chapter>
  

  <chapter id="embed">
    <title
>Встраивание файлов PostScript в &DVI;</title>

    <para
>Традиционно <application
>TeX</application
> не встраивал графику в файл &DVI;. Вместо этого в файле &DVI; содержалась ссылка на графический файл, хранившийся на жёстком диске. При этом размер файла &DVI; оставался небольшим, а саму графику можно было править независимо от источника <application
>TeX</application
>. Этот метод, однако, усложнял архивирование файла&DVI; и отправку его по почте, так как нужно было следить за тем, чтобы ссылки в файле &DVI; сохранялись в точности.</para>

    <para
>Поэтому &kdvi; позволяет встраивать внешние файлы  &PostScript; в ваши файлы &DVI;. Чтобы это осуществить, используйте пункт меню <guimenu
>Редактировать/встраивать файлы PostScript</guimenu
> </para>
    
    <warning
> <para
>Файлы &DVI; со встроенным &PostScript; хорошо работают с большинством других программ обработки &DVI;, например, с <application
>xdvi</application
>, <application
>dvips</application
> или <application
>dvipdf</application
>. Но <application
>dvipdfm</application
> пока что игнорирует встроенный &PostScript;. Поскольку <application
>dvipdfm</application
> используется при экспорте в <acronym
>PDF</acronym
> в &kdvi;, с этой функцией будут проблемы. Те же проблемы ожидают вас и при использовании других программ, где нужен встроенный PostScript, например, в пакете <application
>xy</application
> макросов <application
>TeX</application
>.</para
> </warning>
  </chapter>
  

  <chapter id="inverse-search">
    <title
>Обратный поиск</title>
    <anchor id="inv-search"
></anchor>

    <para
>Обратный поиск полезен при правке исходника TeX. Щелчок <mousebutton
>средней</mousebutton
> кнопкой мыши (или обеими кнопками сразу на двухкнопочной мыши) в окне &kdvi; приведёт к открытию исходного TeX файла в редакторе и установке курсора на просматриваемом абзаце. Чтобы эта функция работала, выполните следующее:</para>


    <procedure>
      <step>
	<para
>Создайте файл &DVI;, содержащий информацию для обратного поиска. Это описано в разделе <link linkend="inverse-search-tex"
>Создание файлов TeX для обратного поиска</link
>. Для проверки работы этой функции вы можете воспользоваться файлом <filename
>KDVI-features.dvi</filename
></para>
      </step>
      <step>
	<para
>Выберите редактор в окне <guilabel
>Настройки</guilabel
> (пункт <guimenuitem
>Настроить DVI</guimenuitem
> меню <guimenu
>Настройка</guimenu
>). В <link linkend="opt-rendering"
>следующем</link
> разделе это окно описывается более подробно.</para>
      </step>
      <step>
	<para
>Некоторые программы вам придётся настроить дополнительно или запускать вручную. Описания поддерживаемых редакторов можно найти в секции <link linkend="inverse-search-editor"
>Настройка редактора</link
>.</para>
      </step>
      <step>
	<para
>Тестирование. Откройте файл &DVI; в &kdvi; и нажмите <mousebutton
>среднюю</mousebutton
> кнопку мыши в окне &kdvi;. В редакторе должен открыться файл TeX.</para>
      </step>
    </procedure>


    <section id="inverse-search-tex">
      <title
>Создание файлов TeX для обратного поиска</title>
      <para
>Есть два способа сделать такие файлы: использовать приложение TeX/LaTeX, которое создаёт и включает такую информацию автоматически, или включить дополнительный пакет TeX/LaTeX с требуемой информацией.</para>
      <itemizedlist>
	<listitem>
	  <para
>Использование программы TeX является предпочтительным, так как она автоматически создаёт и вставляет необходимые данные. Если вы используете <ulink url="http://www.tug.org/teTeX/"
>дистрибутив TeTeX TeX</ulink
> версии 2 или выше, вы можете использовать опцию командной строки 'src-specials'. Пример: <programlisting>
tex --src-specials myfile.tex
</programlisting
> или <programlisting
>latex --src-specials myfile.tex
</programlisting>
	  </para>
	</listitem>
	<listitem>
	  <para
>Если у вас нет приложения TeX, скопируйте файлы <ulink url="srcltx.sty"
> <filename
>srcltx.sty</filename
> </ulink
> и <ulink url="srctex.sty"
> <filename
>srctex.sty</filename
> </ulink
> в каталог с файлом TeX (нажмите левую кнопку мыши, удерживая &Shift;, и проследуйте по ссылке). Если вы используете LaTeX, добавьте строку <programlisting>

    \usepackage[active]{srcltx}

</programlisting
> в начало файла LaTeX. Для простого TeX - <programlisting>

    \include{srctex}

</programlisting
>.</para>
	</listitem>
      </itemizedlist>

      <tip>
	<para
>Функция обратного поиска нужна лишь при создании документа, перед публикацией файла &DVI; лучше удалять эту ненужную информацию.</para>
      </tip>

    </section>

    <section id="inverse-search-editor">

    <title
>Настройка текстового редактора для прямого поиска</title>
    
    <para
>Разные редакторы требуют специфические настройки. В этой главе описываются некоторые из них.</para>

    <section id="editor-setup-emacs">
      <title
><application
>Emacs</application
></title>

      <para
><application
>Emacs</application
> хорошо поддерживается &kdvi;. Вы можете настраивать его поведение как вам захочется, если есть желание возиться с кодом на Lisp.</para>

      <para
>&kdvi; использует <command
>emacsclient</command
> для удалённого контроля <application
>Emacs</application
>.</para>
      <important>
	<para
>Команде <command
>emacsclient</command
> требуется, чтобы редактор <application
>Emacs</application
> был запущен и чтобы <application
>Emacs Server</application
> был запущен из <application
>Emacs</application
>. Обратный поиск не будет работать оптимально, пока <application
>Emacs</application
> и <application
>Emacs Server</application
> не запущены.</para>
      </important>

      <para
>Чтобы запустить <application
>Emacs Server</application
>, нужно:</para>
	<itemizedlist>
	<listitem>
	  <para
>В <application
>Emacs</application
> набрать <userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>X</keycap
></keycombo
> <command
>server-start</command
></userinput
></para>
	</listitem>
	<listitem>
	  <para
>Добавить строку <programlisting>
(server-start)
</programlisting
> в ваш файл <filename
>.emacs</filename
> и перезапустить <application
>Emacs</application
></para>
	</listitem>
      </itemizedlist>

      
      <tip>
	<itemizedlist>
	  <listitem>
	      <para
>Чтобы убедиться, что <application
>Emacs</application
> установлен, введите команду <command
>emacs</command
> в консоли.</para>
	  </listitem>
	<listitem>
	      <para
>Чтобы убедиться, что <command
>emacsclient</command
> также доступен, введите команду <userinput
><command
>emacsclient</command
> <parameter
>имя текстового файла</parameter
></userinput
>. Эта команда приведёт к открытию указанного файла в редакторе <application
>Emacs</application
>.</para>
	</listitem>
	<listitem>
	      <para
>Если <command
>emacsclient</command
> выдаёт ошибку, убедитесь, что <application
>Emacs</application
> запущен. Кроме того, убедитесь, что <application
>Emacs Server</application
> запущен (введите <userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>x</keycap
></keycombo
> <command
>server-start</command
></userinput
>).</para>
	</listitem>
	<listitem>
	      <para
>Если вы хотите, чтобы окно с исходным файлом выводилось поверх остальных, добавьте функцию <function
>raise-frame</function
> в <quote
>server-switch-hook</quote
> (выполните<userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>x</keycap
></keycombo
> <command
>customize-variable</command
> <keycap
>RET</keycap
> <command
>server-switch-hook</command
></userinput
> и введите имя функции).</para>
	</listitem>
	<listitem>
	      <para
>Если вы изменили файл после его последнего сохранения при использовании обратного поиска, <application
>Emacs</application
> предложит перечитать старый файл ("<computeroutput
>Revert buffer from file ...? (yes or no)</computeroutput
>"). Здесь, скорее всего, вам придётся ответить <emphasis
>Нет</emphasis
>, т.к. если вы согласитесь, вы <emphasis
>потеряете внесённые изменения</emphasis
>.</para>

	      <para
>Если вы хотите, чтобы документ перечитывался сразу, как в <command
>gnuclient</command
>, добавьте следующие строки в ваш файл <filename
>.emacs</filename
>:</para>

<programlisting
>(defadvice server-visit-files (around save-buffers last activate)
  "Эмулировать поведение gnuclient.
Действует только при работе с одним буфером."
  (let* ((filen (car (car (ad-get-arg 0))))
         (buf (get-file-buffer filen))
         (this-buf-modified-p nil))
    ;;; копируется из server-visit-files, модифицируется,
    ;;; чтобы пройти проверку`verify-visited-file-modtime'.
    (if (and buf (set-buffer buf))
        (if (file-exists-p filen)
            ;;; перезагрузить файл, если он был изменён на диске.
            ;;; используется функция `find-file-noselect'
            (if (not (verify-visited-file-modtime buf))
                (progn
                  (find-file-noselect filen)
                  ;;; сбросить время изменения, даже если пользователь ответил 'нет',
                  ;;; чтобы сервер не заметил разницы.
                  (set-visited-file-modtime)))
          ;;; если файл больше не существует, уведомляем
          ;;; об этом  server-visit-files.
          t)
      (setq buf (find-file-noselect filen)))
    (setq this-buf-modified-p (buffer-modified-p buf))
    (set-buffer buf)
    (set-buffer-modified-p nil)
    ad-do-it
    (set-buffer-modified-p this-buf-modified-p)))
</programlisting>
        </listitem>
      </itemizedlist>
      </tip>
    </section>


    <section id="editor-setup-kate">
      <title
>&kate;</title
> 

      <para
>&kate;, редактор &kde;, поддерживает обратный поиск. Дополнительная настройка не требуется.</para
> </section>


    <section id="editor-setup-kile">
      <title
><application
>Kile</application
></title
> 

      <para
>Система редактирования LaTeX &mdash; <application
>Kile</application
> &mdash; тесно интегрирована с KDVI. Вам не понадобится делать каких-либо дополнительных настроек. См. <ulink url="http://perso.club-internet.fr/pascal.brachet/kile"
>сайт Kile</ulink
>. </para>
    </section>


    <section id="editor-setup-nedit">
      <title
><application
>NEdit</application
></title>

      <para
><application
>NEdit</application
> также тесно интегрирован с &kdvi;. Нажатие в окне с файлом &DVI; приведёт к открытию исходного файла в новом окне, если файл TeX уже открыт в <application
>NEdit</application
>, в открытом новом окне будет отображён изменённый (т.е. ещё не сохранённый) вариант файла. <application
>NEdit</application
> подсветит первую строку соответствующего абзаца.</para>
      <tip>
          <para
>&kdvi; использует команду <command
>ncl</command
> для удалённого контроля <application
>NEdit</application
>. Убедитесь, что программа <command
>ncl</command
> доступна, введя <userinput
><command
>ncl</command
> <parameter
>-noask</parameter
></userinput
>. Эта команда откроет новое окно <application
>NEdit</application
>. Если <command
>ncl</command
> не работает, возможно, вы используете старую версию <application
>NEdit</application
>. В этом случае обновите программу, или используйте <guilabel
>Редактор, определённый пользователем</guilabel
> в окне <guilabel
>Настроек</guilabel
>.</para>
      </tip>
    </section>

    <section id="editor-setup-xemacs">
      <title
><application
>XEmacs</application
></title>

      <para
><application
>XEmacs</application
> хорошо интегрирован с &kdvi;. Поведение этого редактора зависит от его настроек.</para>

      <para
>&kdvi; использует <command
>gnuclient</command
> для удалённого контроля <application
>XEmacs</application
>.</para>
      <important>
        <para
>Программа <command
>gnuclient</command
> требует, чтобы из<application
>XEmacs</application
> была запущена программа <application
>gnuserv</application
>. Обратный поиск не будет работать, пока вы не запустите <application
>XEmacs</application
> и <application
>gnuserv</application
>.</para>
      </important>

      <para
>Чтобы запустить <application
>gnuserv</application
>:</para>
      <itemizedlist>
        <listitem>
          <para
>Запустите <application
>gnuserv</application
> из <application
>XEmacs </application
> с помощью команды <userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>X</keycap
></keycombo
> <command
>gnuserv-start</command
></userinput
></para>
        </listitem>
        <listitem>
          <para
>Добавьте строку <programlisting>

(gnuserv-start)

</programlisting
> в ваш файл <filename
>.xemacs</filename
>. Если вы используете новую версию <application
>XEmacs</application
>, в вашем домашнем каталоге будет подкаталог <filename class="directory"
>.xemacs</filename
>. В этом случае добавьте эту строку в <filename
>.xemacs/init.el</filename
>. Перезапустите <application
>XEmacs</application
></para>
        </listitem>
      </itemizedlist>

      <para
>Если вы хотите, чтобы для каждого вызова не открывалось новое окно, а уже запущенное выводилось поверх остальных, установите <quote
>Фрейм Gnuserv</quote
> в <quote
>Использовать выбранный</quote
>, и добавьте функцию <function
>raise-frame</function
> в <quote
>Visit Hook</quote
>. Для этого выполните <userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>x</keycap
></keycombo
> <command
>customize-group</command
> <keycap
>RET</keycap
> <command
>gnuserv</command
></userinput
>.</para>

      <tip>
        <itemizedlist>
          <listitem>
              <para
>Убедитесь, что <application
>XEmacs</application
> установлен. Запустите <command
>xemacs</command
> из командной строки.</para>
          </listitem>
        <listitem>
              <para
>&kdvi; использует программу <application
>gnuserv</application
> для удалённого контроля <application
>XEmacs</application
>. Убедитесь, что программа <command
>gnuclient</command
> доступна, введя <userinput
><command
>gnuclient</command
> <parameter
>текстовый_файл</parameter
></userinput
> в командной строке. При этом должно открыться новое окно <application
>XEmacs</application
>.</para>
        </listitem>
        <listitem>
              <para
>Если <application
>gnuserv</application
> сообщает об ошибке вида <computeroutput
>unable to connect to local</computeroutput
>, убедитесь, что <application
>XEmacs</application
> запущен. Убедитесь также, что <application
>gnuserv</application
> запущен --  введите <userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>X</keycap
></keycombo
> <command
>gnuserv-start</command
></userinput
>.</para>
        </listitem>
        <listitem>
              <para
>Если вы хотите, чтобы для каждого вызова не открывалось новое окно, а уже запущенное выводилось поверх остальных, установите <quote
>Фрейм Gnuserv</quote
> в <quote
>Использовать выбранный</quote
>, и добавьте функцию <function
>raise-frame</function
> в <quote
>Visit Hook</quote
>. Для этого выполните <userinput
><keycombo action="seq"
><keycap
>M</keycap
><keycap
>x</keycap
></keycombo
> <command
>customize-group</command
> <keycap
>RET</keycap
> <command
>gnuserv</command
></userinput
>.</para>
        </listitem>
      </itemizedlist>
      </tip>
    </section>

    <section id="editor-setup-gvim">
      <title
><application
>VI iMproved</application
> / &GUI;</title>

      <para
>Программа <application
>gvim</application
>, одна из версий редактора <application
>vi</application
>, полностью поддерживает обратный поиск. Дополнительная настройка не требуется.</para>
    </section>
    </section>
  </chapter>


  <chapter id="forward-search">
    <title
>Прямой поиск</title>

    <para
>Прямой поиск позволяет перейти на строку файла TeX, соответствующую определённой области файла DVI. Эту функцию пока поддерживают только <application
>Emacs</application
> и <application
>XEmacs</application
>.</para>

    <para
>Для использования этой функции:</para>
    <itemizedlist>
      <listitem>
        <para
>Настройте редактор (см. ниже).</para>
      </listitem>
      <listitem>
        <para
>Добавьте информацию об исходном файле в файл &DVI;, например, используя пакет <command
>srcltx</command
>. Это подробно описано в секции <link linkend="inverse-search-tex"
>Создание файлов TeX для обратного поиска</link
>.</para>
      </listitem>
      <listitem>
        <para
>Если <application
>Emacs</application
> настроен правильно, вы можете нажать <userinput
><keycombo action="simul"
>&Ctrl;<keycap
>X</keycap
></keycombo
> <keycombo action="simul"
>&Ctrl;<keycap
>J</keycap
> </keycombo
></userinput
>, и в &kdvi; откроется результирующий файл в месте, соответствующем позиции курсора в редактируемом файле TeX.</para>
      </listitem>
    </itemizedlist>

    <section id="forward-search-editor">
      <title
>Настройка редактора для прямого поиска</title>
      
      <section id="forw-editor-setup-emacs">
        <title
><application
>Emacs</application
></title>
        
        <para
>Для использования в <application
>Emacs</application
>:</para>

        <itemizedlist>
          <listitem>
                <para
>Загрузите скрипт для <application
>Emacs</application
>, <ulink url="kdvi-search.el"
> <filename
>kdvi-search.el</filename
> </ulink
> (нажмите &Shift; и левую кнопку мыши, чтобы загрузить файл) и сохраните его в месте, доступном для <application
>Emacs</application
>, например в <filename class="directory"
>emacs-scripts</filename
>.</para>
          </listitem>
          <listitem>
            <para
>Добавьте строки <programlisting>
(add-to-list 'load-path (expand-file-name "~/emacs-scripts/"))
(require 'kdvi-search)
(add-hook 'LaTeX-mode-hook (lambda () (local-set-key "\C-x\C-j" 'kdvi-jump-to-line)))
(add-hook 'tex-mode-hook (lambda () (local-set-key "\C-x\C-j" 'kdvi-jump-to-line)))
</programlisting
> в ваш файл <filename
>.emacs</filename
>. Перезапустите <application
>Emacs</application
>.</para>
          </listitem>

          <listitem>
            <para
>Откройте <application
>Emacs</application
>, загрузите файл TeX, создайте соответствующий файл &DVI; и либо введите команду <userinput
><keycombo action="simul"
><keycap
>M</keycap
><keycap
>x</keycap
> </keycombo
><command
>kdvi-jump-to-line</command
></userinput
>, либо нажмите <userinput
><keycombo action="seq"
><keycombo action="simul"
>&Ctrl;<keycap
>X</keycap
></keycombo
> <keycombo action="simul"
>&Ctrl;<keycap
>J</keycap
></keycombo
> </keycombo
></userinput
>. Редактор <application
>Emacs</application
> может спросить имя <quote
>главного файла</quote
> (<quote
>master file</quote
>), если вы создаёте файл TeX, который включает другие файлы: главный файл - это файл наивысшего уровня, который содержит остальные файлы. При этом <application
>Emacs</application
> может предложить сохранить имя главного файла <quote
>как локальную переменную</quote
>, т. е. как комментарий в конце файла.</para
> 
            </listitem>
        </itemizedlist>

        <tip>
          <itemizedlist>
            <listitem>
              <para
>Чтобы убедиться, что <application
>Emacs</application
> установлен, введите команду <command
>emacs</command
> в консоли.</para>
            </listitem>
            <listitem>
              <para
>Если <application
>Emacs</application
> выдаёт сообщение об ошибке запуска &kdvi;, вы можете найти его вывод в буфере <guilabel
>kdvi-output</guilabel
>.</para>
            </listitem>
          </itemizedlist>
        </tip>
      </section>

      <section id="forw-editor-setup-kile">
        <title
><application
>Kile</application
></title>
                <para
>Если вы используете Kile, дополнительная настройка не требуется. </para>
      </section>

      <section id="forw-editor-setup-xemacs">
        <title
><application
>XEmacs</application
></title>
        
        <para
>Чтобы настроить <application
>XEmacs</application
>, следуйте инструкциям настройки <application
>Emacs</application
> <link linkend="forw-editor-setup-emacs"
>выше</link
>, только вносите изменения в файл <filename
>.xemacs</filename
> вместо <filename
>.emacs</filename
>. Если вы используете новую версию <application
>XEmacs</application
>, <filename class="directory"
>.xemacs</filename
> может быть каталогом; в этом случае добавьте приведённые строки в конец файла <filename
>.xemacs/init.el</filename
>. </para>
      </section>

    </section>

  </chapter>

  <chapter id="preferences">
    <title
>Диалог <guilabel
>Настройки</guilabel
></title>
    <anchor id="opts"
></anchor>

    <para
>Окно <guilabel
>Настройки</guilabel
> можно открыть через меню <guimenuitem
>Настройки DVI</guimenuitem
> &mdash;  <guimenu
>Настройка</guimenu
>.</para>

    <para
>Окно содержит две вкладки: <guilabel
>Шрифты</guilabel
> и <guilabel
>Вставки DVI</guilabel
>.</para>

    <sect1 id="opt-fonts">
      <title
><guilabel
>Шрифты</guilabel
></title>

      <para
>Система ТеХ использует шрифты, которые создаёт программа <command
>MetaFont</command
>. Эти шрифты хранятся в формате PK. Несмотря на то, что тщательно настроенная <command
>MetaFont</command
> отлично распечатывает файлы, возможно, вам придётся изменить настройки, так как шрифты <command
>MetaFont</command
> мало пригодны для чтения с монитора. К тому же есть очень немного шрифтов для языков стран Азии. </para>
      
      <para
>Чтобы преодолеть эти проблемы, в дистрибутивы ТеХ теперь добавляют шрифты формата "PostScript Type 1", который повсеместно используется в электронных системах печати. &kdvi; поддерживает оба формата. </para>

      <para
>Снимок окна с вкладкой "Вставки DVI". Здесь вы можете указать &kdvi;, какие шрифты использовать. </para>

      <screenshot>
        <screeninfo
>Вкладка <guilabel
>Шрифты</guilabel
></screeninfo>
        <mediaobject>
          <imageobject>
	    <imagedata fileref="optionrequester1.png" format="PNG"
></imagedata>
	  </imageobject>
          <textobject>
            <phrase
>Вкладка <guilabel
>Шрифты</guilabel
></phrase>
          </textobject>
        </mediaobject
>        
      </screenshot>

      <variablelist>
        <varlistentry>
          <term
><guilabel
>Использовать подгонку шрифтов Type 1, если она доступна</guilabel
> </term>
          <listitem>
	   <para
>Шрифты "PostScript Type 1" часто содержат "подсказки", т. е. дополнительную информацию, которую могут использовать программы, чтобы качество отображения файла на экране было выше. Качество подсказок у разных шрифтов разное, и полезность этой опции в каждом конкретном случае можно установить только опытным путём. </para>
          </listitem>
        </varlistentry>
      </variablelist>
    </sect1>

    <sect1 id="opt-rendering">
      <title
>Вкладка <guilabel
>Вставки &DVI;</guilabel
></title>

      <para
>&kdvi; поддерживает большое количество расширений исходного формата &DVI;, например, гиперссылки, вставку рисунков и т. п. Эти расширения называются "вставки &DVI;". Их полный список есть в <ulink url="KDVI-features.dvi"
>этом документе</ulink
>. </para>

      <para
>Диалоговое окно настройки вставок &DVI; позволяет настроить некоторые из вставок. </para>

      <screenshot>
        <screeninfo
>Вкладка <guilabel
>Вставки DVI</guilabel
></screeninfo>
        <mediaobject>
          <imageobject>
            <imagedata fileref="optionrequester2.png"
            format="PNG"
></imagedata>
	  </imageobject>
          <textobject>
            <phrase
>Вкладка <guilabel
>Вставки DVI</guilabel
></phrase>
          </textobject>
        </mediaobject>
      </screenshot>

      <variablelist>
        <varlistentry>
          <term
><guilabel
>Показать PostScript-вставки</guilabel
></term>
          <listitem>
            <para
>Отображать графику &PostScript;, встроенную в файл &DVI;.</para>

            <para
>Если внешний файл &PostScript; не найден, &kdvi; на его месте отобразит соответствующее сообщение. В текущей версии &PostScript; обработка рисунков в &kdvi; происходит довольно медленно. При отключённой опции на месте рисунка будут пустые рамки. </para>

            <note>
              <para
>Нет стандартного способа вставить графику &PostScript; в файл &DVI;. Поэтому &kdvi; не всегда может правильно отобразить такую графику. В отличие от старых версий <command
>xdvi</command
> и <command
>dvips</command
>, программа не поддерживает выполнение внешних команд, т. к. это небезопасно. Инструкции, как правильно вставить графику &PostScript;, можно найти в документе <filename
>KDVI-features.dvi</filename
>.</para>
            </note>

          </listitem>
        </varlistentry>
        
        
        <varlistentry>
          <term
><guilabel
>Редактор для обратного поиска</guilabel
></term>
          <listitem>
            <para
>Если вам потребуется использовать <link linkend="inverse-search"
>обратный поиск</link
> (имея исходный файл TeX), здесь нужно указать редактор, в котором следует открывать исходный файл. На снимке выбран редактор <application
>NEdit</application
>. Если вы выбрали один из редакторов в выпадающем списке, вам не нужно больше ничего настраивать. В противном случае отметьте <guilabel
>Редактор, определённый пользователем</guilabel
> из того же списка и введите командную строку, с которой нужно запускать ваш редактор. Шаблоны: <token
>%f</token
> - имя исходного файла TeX; <token
>%l</token
> номер строки.</para>

            <para
>Если вам удалось настроить другой редактор, пришлите по адресу <email
>kebekus@kde.org</email
> его командную строку и сведения по его настройке.</para>
          </listitem>
        </varlistentry>
      </variablelist>

    </sect1>
  </chapter>

  <chapter id="faq">
    <title
>Вопросы и ответы</title>

    <qandaset>
      <qandaentry>
        <question id="fontgen">
          <para
>Что значит сообщение <computeroutput
>KDVI генерирует растровые шрифты</computeroutput
>, и почему операция проходит так долго?</para>
        </question>
        <answer>
          <para
>Большинство шрифтов, используемых в файлах TeX, нужно сгенерировать системой MetaFont. Metafont - это язык, похожий на TeX (включается в дистрибутив TeX), который считывает описание символов и создаёт их растровое представление (в виде файла <literal role="extension"
>.pk</literal
>). </para>

          <para
>Эта процедура занимает много времени, т.к. генерируются изображения высокого качества (помните, что это не векторные шрифты, которые можно увеличивать без потери качества). Сгенерированные изображения хранятся с расширением <literal role="extension"
>.pk</literal
> определённое время, например 100 дней. Поэтому во второй раз документ будет открываться быстрее.</para>
        </answer>
      </qandaentry>

      <qandaentry>
        <question id="mfmodes">
          <para
>Что такое режим MetaFont?</para>
        </question>
        <answer>
          <para
>Для создания специальных шрифтов, оптимизированных для конкретного принтера, Metafont использует базу данных принтеров, которая находится в файле <filename
>modes.mf</filename
>. Режим Metafonts устанавливает поле в этой базе данных. Например, имя <quote
>ljfour</quote
> соответствует полю для &Hewlett-Packard; LaserJet 4. За режимом MetaFont следует разрешение принтера. Например LaserJet может печатать в разрешениях 300 и 600 dpi.</para>
        </answer>
      </qandaentry>

    </qandaset>
  </chapter>


  <chapter id="credits-and-license">
    <title
>Благодарности и лицензия</title>

    <para
>&kdvi;</para>

    <para
>&kdvi; основана на отдельном приложении &kdvi; 0.4.3, созданном Markku Hihnala. &kdvi; основано на приложении <application
>xdvi</application
> версии 18f, которая имеет несколько авторов.</para>

    <para
>Авторские права на документацию (С) 2001-2004, Stefan Kebekus <email
>kebekus@kde.org</email
></para>

    <para
>Перевод на русский: Николай Шафоростов <email
>shafff@ukr.net</email
></para
><para
>Обновления перевода: Иван Кашуков <email
>dolphin210@yandex.ru</email
></para
> 
&underGPL; &underFDL; </chapter>
    
&documentation.index;

</book>
<!--
Local Variables:
mode: sgml
sgml-omittag: nil
sgml-shorttag: t
End:
-->

