diff options
Diffstat (limited to 'tde-i18n-ru/docs/tdebase/kate/advanced.docbook')
-rw-r--r-- | tde-i18n-ru/docs/tdebase/kate/advanced.docbook | 2344 |
1 files changed, 475 insertions, 1869 deletions
diff --git a/tde-i18n-ru/docs/tdebase/kate/advanced.docbook b/tde-i18n-ru/docs/tdebase/kate/advanced.docbook index 6d07d91855f..fbce3e435b3 100644 --- a/tde-i18n-ru/docs/tdebase/kate/advanced.docbook +++ b/tde-i18n-ru/docs/tdebase/kate/advanced.docbook @@ -1,196 +1,68 @@ <chapter id="advanced-editing-tools"> <chapterinfo> <authorgroup> -<author ->&Anders.Lund; &Anders.Lund.mail;</author> -<author ->&Dominik.Haumann; &Dominik.Haumann.mail;</author> -<othercredit role="translator" -><firstname ->Андрей</firstname -><surname ->Балагута</surname -><affiliation -><address -><email ->uj2@mail.ru</email -></address -></affiliation -><contrib ->Перевод на русский</contrib -></othercredit -> <othercredit role="translator" -><firstname ->Алексей</firstname -><surname ->Опарин</surname -><affiliation -><address -><email ->opaleksej@yandex.ru</email -></address -></affiliation -><contrib ->Перевод на русский</contrib -></othercredit -> +<author>&Anders.Lund; &Anders.Lund.mail;</author> +<author>&Dominik.Haumann; &Dominik.Haumann.mail;</author> +<othercredit role="translator"><firstname>Андрей</firstname><surname>Балагута</surname><affiliation><address><email>uj2@mail.ru</email></address></affiliation><contrib>Перевод на русский</contrib></othercredit> <othercredit role="translator"><firstname>Алексей</firstname><surname>Опарин</surname><affiliation><address><email>opaleksej@yandex.ru</email></address></affiliation><contrib>Перевод на русский</contrib></othercredit> </authorgroup> </chapterinfo> -<title ->Дополнительные возможности редактирования</title> +<title>Дополнительные возможности редактирования</title> <sect1 id="advanced-editing-tools-comment"> -<title ->Комментирование</title> - -<para ->Команды "Комментировать" и "Раскомментировать", которые доступны из меню <guimenu ->Сервис</guimenu ->, позволяют добавить или убрать маркеры комментариев для выделенного блока текста (или для текущей строки, если текст не выделен), при условии, что комментарии поддерживаются форматом редактируемого текста.</para> - -<para ->Правила комментирования определяются синтаксисом; таким образом, если подсветка синтаксиса не включена, то команды "Закомментировать" и "Раскомментировать" будут недоступны. </para> - -<para ->Некоторые форматы поддерживают только однострочные маркеры комментариев, другие -- только многострочные, третьи -- и те, и другие. Если многострочные маркеры недоступны, то комментирование блока, в котором не до конца выделена последняя строка, будет невозможным.</para> - -<para ->Предпочтение отдаётся комментированию отдельных строк однострочными маркерами, если последние допустимы синтаксисом и если такое комментирование возможно -- это помогает избежать проблем со вложенными комментариями.</para> - -<para ->При удалении маркеров комментариев выделение снимается с раскомментированного текста. При удалении маркеров многострочного комментария пробелы снаружи маркеров игнорируются.</para> - -<para -><indexterm -><primary ->закомментировать</primary -></indexterm -> Чтобы закомментировать выделенный текст (или активную строку), выберите пункт меню<menuchoice -><guimenu ->Сервис</guimenu -><guimenuitem ->Закомментировать</guimenuitem -></menuchoice -> или нажмите соответствующее сочетание клавиш (по умолчанию <keycombo action="simul" ->&Ctrl;<keycap ->D</keycap -></keycombo ->).</para> - -<para -><indexterm -><primary ->раскомментировать</primary -></indexterm -> Чтобы удалить маркеры комментариев, выберите пункт меню <menuchoice -><guimenu ->Сервис</guimenu -><guimenuitem ->Раскомментировать</guimenuitem -> </menuchoice -> или нажмите соответствующее сочетание клавиш ( по умолчанию <keycombo action="simul" ->&Ctrl;&Shift;<keycap ->D</keycap -></keycombo ->).</para> +<title>Комментирование</title> + +<para>Команды "Комментировать" и "Раскомментировать", которые доступны из меню <guimenu>Сервис</guimenu>, позволяют добавить или убрать маркеры комментариев для выделенного блока текста (или для текущей строки, если текст не выделен), при условии, что комментарии поддерживаются форматом редактируемого текста.</para> + +<para>Правила комментирования определяются синтаксисом; таким образом, если подсветка синтаксиса не включена, то команды "Закомментировать" и "Раскомментировать" будут недоступны. </para> + +<para>Некоторые форматы поддерживают только однострочные маркеры комментариев, другие -- только многострочные, третьи -- и те, и другие. Если многострочные маркеры недоступны, то комментирование блока, в котором не до конца выделена последняя строка, будет невозможным.</para> + +<para>Предпочтение отдаётся комментированию отдельных строк однострочными маркерами, если последние допустимы синтаксисом и если такое комментирование возможно -- это помогает избежать проблем со вложенными комментариями.</para> + +<para>При удалении маркеров комментариев выделение снимается с раскомментированного текста. При удалении маркеров многострочного комментария пробелы снаружи маркеров игнорируются.</para> + +<para><indexterm><primary>закомментировать</primary></indexterm> Чтобы закомментировать выделенный текст (или активную строку), выберите пункт меню<menuchoice><guimenu>Сервис</guimenu><guimenuitem>Закомментировать</guimenuitem></menuchoice> или нажмите соответствующее сочетание клавиш (по умолчанию <keycombo action="simul">&Ctrl;<keycap>D</keycap></keycombo>).</para> + +<para><indexterm><primary>раскомментировать</primary></indexterm> Чтобы удалить маркеры комментариев, выберите пункт меню <menuchoice><guimenu>Сервис</guimenu><guimenuitem>Раскомментировать</guimenuitem> </menuchoice> или нажмите соответствующее сочетание клавиш ( по умолчанию <keycombo action="simul">&Ctrl;&Shift;<keycap>D</keycap></keycombo>).</para> </sect1> <sect1 id="advanced-editing-tools-commandline"> -<title ->Командная строка компонента редактора</title> - -<para ->Модуль Kate имеет встроенную командную строку, позволяющую производить различные действия, оставляя интерфейс минималистским. Она представляет из себя поле ввода внизу области редактора. Для получения к ней доступа, выберите пункт меню <menuchoice -><guimenu ->Вид</guimenu -><guimenuitem ->Переключиться в командную строку</guimenuitem -></menuchoice -> или нажмите <keycombo action="simul" -><keycap ->F7</keycap -></keycombo -> (по умолчанию). Команды, доступные из неё, описаны ниже, кроме того, модули могут предоставлять свои дополнительные команды.</para> - -<para ->Для выполнения команды введите её и нажмите Enter. На месте команды будет выведено сообщение об успешном её выполнении или об ошибке. Если вы вызвали командную строку клавишей <keycap ->F7</keycap ->, она будет автоматически скрыта по прошествии нескольких секунд. Для того чтобы убрать сообщение и ввести новую команду, нажмите <keycap ->F7</keycap -> ещё раз.</para> - -<para ->Вы всегда можете получить справку с помощью команды <command ->help</command ->. Для получение списка всех доступных команд, введите <command ->help list</command ->, для просмотра справки по определённой команде - <command ->help <replaceable ->команда</replaceable -></command ->.</para> - -<para ->Для навигации по истории команд, воспользуйтесь стрелками <keycap ->Вверх</keycap -> и <keycap ->Вниз</keycap ->. При отображении команды из истории, её аргументы будут выделены, так что заменить их на другие легко.</para> +<title>Командная строка компонента редактора</title> + +<para>Модуль Kate имеет встроенную командную строку, позволяющую производить различные действия, оставляя интерфейс минималистским. Она представляет из себя поле ввода внизу области редактора. Для получения к ней доступа, выберите пункт меню <menuchoice><guimenu>Вид</guimenu><guimenuitem>Переключиться в командную строку</guimenuitem></menuchoice> или нажмите <keycombo action="simul"><keycap>F7</keycap></keycombo> (по умолчанию). Команды, доступные из неё, описаны ниже, кроме того, модули могут предоставлять свои дополнительные команды.</para> + +<para>Для выполнения команды введите её и нажмите Enter. На месте команды будет выведено сообщение об успешном её выполнении или об ошибке. Если вы вызвали командную строку клавишей <keycap>F7</keycap>, она будет автоматически скрыта по прошествии нескольких секунд. Для того чтобы убрать сообщение и ввести новую команду, нажмите <keycap>F7</keycap> ещё раз.</para> + +<para>Вы всегда можете получить справку с помощью команды <command>help</command>. Для получение списка всех доступных команд, введите <command>help list</command>, для просмотра справки по определённой команде - <command>help <replaceable>команда</replaceable></command>.</para> + +<para>Для навигации по истории команд, воспользуйтесь стрелками <keycap>Вверх</keycap> и <keycap>Вниз</keycap>. При отображении команды из истории, её аргументы будут выделены, так что заменить их на другие легко.</para> <sect2 id="advanced-editing-tools-commandline-commands"> -<title ->Стандартные команды</title> +<title>Стандартные команды</title> <sect3 id="advanced-editing-tools-commandline-commands-configure"> -<title ->Параметры редактора</title> +<title>Параметры редактора</title> -<para ->Установленные таким способом параметры применяются только к текущему экземпляру редактора и не сохраняются. Удобно, если нужно установить параметры, отличные от стандартных (например, отступ). </para> +<para>Установленные таким способом параметры применяются только к текущему экземпляру редактора и не сохраняются. Удобно, если нужно установить параметры, отличные от стандартных (например, отступ). </para> <variablelist> -<title ->Типы аргументов</title> +<title>Типы аргументов</title> <varlistentry> -<term ->BOOLEAN</term> -<listitem -><para ->Используется для команд включения/выключения. Допустимые значения - <userinput ->on</userinput ->, <userinput ->off</userinput ->, <userinput ->true</userinput ->, <userinput ->false</userinput ->, <userinput ->1</userinput -> или <userinput ->0</userinput -></para -></listitem> +<term>BOOLEAN</term> +<listitem><para>Используется для команд включения/выключения. Допустимые значения - <userinput>on</userinput>, <userinput>off</userinput>, <userinput>true</userinput>, <userinput>false</userinput>, <userinput>1</userinput> или <userinput>0</userinput></para></listitem> </varlistentry> <varlistentry> -<term ->INTEGER</term> -<listitem -><para ->Целое число</para -></listitem> +<term>INTEGER</term> +<listitem><para>Целое число</para></listitem> </varlistentry> <varlistentry> -<term ->STRING</term> -<listitem -><para ->Строка</para -></listitem> +<term>STRING</term> +<listitem><para>Строка</para></listitem> </varlistentry> </variablelist> @@ -198,255 +70,84 @@ <variablelist> <varlistentry> -<term -><cmdsynopsis -><command ->set-tab-width</command -><arg ->INTEGER width</arg -></cmdsynopsis -></term> -<listitem -><para ->Устанавливает расстояние между позициями табуляции</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-indent-width</command -><arg ->INTEGER width</arg -></cmdsynopsis -></term> -<listitem -><para ->Устанавливает ширину отступа. Только при создании отступов пробелами.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-word-wrap-column</command -><arg ->INTEGER width</arg -></cmdsynopsis -></term> -<listitem -><para ->Устанавливает максимальную длину строк в случае, если включён автоматический перенос.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-icon-border</command -><arg ->BOOLEAN enable</arg -> </cmdsynopsis -></term> -<listitem -><para ->Устанавливает видимость рамок пиктограмм.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-folding-markers</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Устанавливает видимость маркеров сворачивания блоков кода.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-line-numbers</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Устанавливает видимость нумерации строк.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-replace-tabs</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Заменять при вводе символы табуляции на пробелы. </para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-remove-trailing-space</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Удалять пробелы в конце строки при снятии с неё курсора.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-show-tabs</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Представлять символы табуляции пробельное пространство в конце строк маленькими точками.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-indent-spaces</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Вставлять заданное количество пробелов для каждого уровня отступа, вместо одного символа табуляции.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-mixed-indent</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Использовать для отступов как символы табуляции, так и пробелы. Это реализуется путём замены пробелов в количестве, кратном ширине символа табуляциями, на последние.</para> -<para ->Эта команда также включит расстановку отступов пробелами, и установит ширину отступов, если она не указана, в половину значения <option ->tab-width</option -> (для текущего документа на время выполнения).</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-word-wrap</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Динамический перенос слов</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-replace-tabs-save</command -><arg ->BOOLEAN enable </arg -></cmdsynopsis -></term> -<listitem -><para ->Заменять символы табуляции на пробелы при сохранении.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-remove-trailing-space-save</command -><arg ->BOOLEAN enable</arg -></cmdsynopsis -></term> -<listitem -><para ->Удалить пробелы в конце строк при сохранении.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-indent-mode</command -><arg ->name</arg -></cmdsynopsis -></term> -<listitem -><para ->Выбрать режим расстановки отступов. Параметр <userinput ->name</userinput -> может иметь следующие значения: 'cstyle', 'csands', 'xml', 'python', 'varindent' и 'none'. При других значениях используется 'none'.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->set-highlight</command -><arg ->highlight</arg -></cmdsynopsis -></term> -<listitem -><para ->Выбрать формат для подсветки, один из содержащихся в подменю<menuchoice -><guimenu ->Сервис</guimenu -><guisubmenu ->Подсветка синтаксиса</guisubmenu -></menuchoice ->. Доступно также автозавершение параметра.</para -></listitem> +<term><cmdsynopsis><command>set-tab-width</command><arg>INTEGER width</arg></cmdsynopsis></term> +<listitem><para>Устанавливает расстояние между позициями табуляции</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-indent-width</command><arg>INTEGER width</arg></cmdsynopsis></term> +<listitem><para>Устанавливает ширину отступа. Только при создании отступов пробелами.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-word-wrap-column</command><arg>INTEGER width</arg></cmdsynopsis></term> +<listitem><para>Устанавливает максимальную длину строк в случае, если включён автоматический перенос.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-icon-border</command><arg>BOOLEAN enable</arg> </cmdsynopsis></term> +<listitem><para>Устанавливает видимость рамок пиктограмм.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-folding-markers</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Устанавливает видимость маркеров сворачивания блоков кода.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-line-numbers</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Устанавливает видимость нумерации строк.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-replace-tabs</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Заменять при вводе символы табуляции на пробелы. </para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-remove-trailing-space</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Удалять пробелы в конце строки при снятии с неё курсора.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-show-tabs</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Представлять символы табуляции пробельное пространство в конце строк маленькими точками.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-indent-spaces</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Вставлять заданное количество пробелов для каждого уровня отступа, вместо одного символа табуляции.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-mixed-indent</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Использовать для отступов как символы табуляции, так и пробелы. Это реализуется путём замены пробелов в количестве, кратном ширине символа табуляциями, на последние.</para> +<para>Эта команда также включит расстановку отступов пробелами, и установит ширину отступов, если она не указана, в половину значения <option>tab-width</option> (для текущего документа на время выполнения).</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-word-wrap</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Динамический перенос слов</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-replace-tabs-save</command><arg>BOOLEAN enable </arg></cmdsynopsis></term> +<listitem><para>Заменять символы табуляции на пробелы при сохранении.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-remove-trailing-space-save</command><arg>BOOLEAN enable</arg></cmdsynopsis></term> +<listitem><para>Удалить пробелы в конце строк при сохранении.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-indent-mode</command><arg>name</arg></cmdsynopsis></term> +<listitem><para>Выбрать режим расстановки отступов. Параметр <userinput>name</userinput> может иметь следующие значения: 'cstyle', 'csands', 'xml', 'python', 'varindent' и 'none'. При других значениях используется 'none'.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>set-highlight</command><arg>highlight</arg></cmdsynopsis></term> +<listitem><para>Выбрать формат для подсветки, один из содержащихся в подменю<menuchoice><guimenu>Сервис</guimenu><guisubmenu>Подсветка синтаксиса</guisubmenu></menuchoice>. Доступно также автозавершение параметра.</para></listitem> </varlistentry> </variablelist> @@ -454,209 +155,79 @@ </sect3> <sect3 id="advanced-editing-tools-commandline-commands-edit"> -<title ->Команды редактирования</title> +<title>Команды редактирования</title> -<para ->Команды, которые непосредственно изменяют текущий документ.</para> +<para>Команды, которые непосредственно изменяют текущий документ.</para> <variablelist> <varlistentry> -<term -><cmdsynopsis -><command ->indent</command -></cmdsynopsis -></term> -<listitem -><para ->Подставляет отступы к выделенным строкам или к текущей.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->unindent</command -></cmdsynopsis -></term> -<listitem -><para ->Снимает отступы с выделенных строк или с текущей.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->cleanindent</command -></cmdsynopsis -></term> -<listitem -><para ->Очистить отступы в выделенных строках или в текущей в соответствии с параметрами расстановки отступов для текущего документа. </para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->comment</command -></cmdsynopsis -></term> -<listitem -><para ->Вставляет маркеры, отмечающие выделенные строки или текущую как комментарии, в соответствии с форматом текущего файла (определяется способом подсветки синтаксиса).</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->uncomment</command -></cmdsynopsis -></term> -<listitem -><para ->Удалить маркеры, отмечающие выделенные строки или текущую как комментарии, в соответствии с форматом текущего файла.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->kill-line</command -></cmdsynopsis -></term> -<listitem -><para ->Удаляет текущую строку.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->replace</command -><arg ->pattern</arg -><arg ->replacement</arg -></cmdsynopsis -></term> -<listitem -><para ->Заменить текст, совпадающий с <userinput ->pattern</userinput -> на <userinput ->replacement</userinput ->. Для включения пробелов в <userinput ->pattern</userinput ->, нужно заключить в двойные или одинарныекавычки и <userinput ->pattern</userinput ->, и <userinput ->replacement</userinput ->. Если аргументы не заключены в кавычки, первое слово будет принято за <userinput ->pattern</userinput ->, а остальное - за <userinput ->replacement</userinput ->. Если <userinput ->replacement</userinput -> не задать, все <userinput ->pattern</userinput -> будут удалены.</para> -<para ->Для настройки параметров поиска, нужно указать соответствующие флаги после двоеточия (<userinput ->replace:options pattern replacement</userinput ->). Возможные параметры: <variablelist> - -<varlistentry> -<term -><userinput ->b</userinput -></term> -<listitem -><para ->Искать в обратном направлении.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->c</userinput -></term> -<listitem -><para ->Искать от позиции курсора.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->e</userinput -></term> -<listitem -><para ->Искать только в выделенном тексте.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->r</userinput -></term> -<listitem -><para ->Аргумент <userinput ->pattern</userinput -> - регулярное выражение. Вы можете использовать <userinput ->\N</userinput -> в <userinput ->replacement</userinput -> для получения N-ной подстроки найденного текста.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->s</userinput -></term> -<listitem -><para ->С учётом регистра.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->p</userinput -></term> -<listitem -><para ->Подтверждать каждую замену.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->w</userinput -></term> -<listitem -><para ->Только целые слова.</para -></listitem> +<term><cmdsynopsis><command>indent</command></cmdsynopsis></term> +<listitem><para>Подставляет отступы к выделенным строкам или к текущей.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>unindent</command></cmdsynopsis></term> +<listitem><para>Снимает отступы с выделенных строк или с текущей.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>cleanindent</command></cmdsynopsis></term> +<listitem><para>Очистить отступы в выделенных строках или в текущей в соответствии с параметрами расстановки отступов для текущего документа. </para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>comment</command></cmdsynopsis></term> +<listitem><para>Вставляет маркеры, отмечающие выделенные строки или текущую как комментарии, в соответствии с форматом текущего файла (определяется способом подсветки синтаксиса).</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>uncomment</command></cmdsynopsis></term> +<listitem><para>Удалить маркеры, отмечающие выделенные строки или текущую как комментарии, в соответствии с форматом текущего файла.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>kill-line</command></cmdsynopsis></term> +<listitem><para>Удаляет текущую строку.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>replace</command><arg>pattern</arg><arg>replacement</arg></cmdsynopsis></term> +<listitem><para>Заменить текст, совпадающий с <userinput>pattern</userinput> на <userinput>replacement</userinput>. Для включения пробелов в <userinput>pattern</userinput>, нужно заключить в двойные или одинарныекавычки и <userinput>pattern</userinput>, и <userinput>replacement</userinput>. Если аргументы не заключены в кавычки, первое слово будет принято за <userinput>pattern</userinput>, а остальное - за <userinput>replacement</userinput>. Если <userinput>replacement</userinput> не задать, все <userinput>pattern</userinput> будут удалены.</para> +<para>Для настройки параметров поиска, нужно указать соответствующие флаги после двоеточия (<userinput>replace:options pattern replacement</userinput>). Возможные параметры: <variablelist> + +<varlistentry> +<term><userinput>b</userinput></term> +<listitem><para>Искать в обратном направлении.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>c</userinput></term> +<listitem><para>Искать от позиции курсора.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>e</userinput></term> +<listitem><para>Искать только в выделенном тексте.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>r</userinput></term> +<listitem><para>Аргумент <userinput>pattern</userinput> - регулярное выражение. Вы можете использовать <userinput>\N</userinput> в <userinput>replacement</userinput> для получения N-ной подстроки найденного текста.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>s</userinput></term> +<listitem><para>С учётом регистра.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>p</userinput></term> +<listitem><para>Подтверждать каждую замену.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>w</userinput></term> +<listitem><para>Только целые слова.</para></listitem> </varlistentry> </variablelist> @@ -666,223 +237,47 @@ </varlistentry> <varlistentry> -<term -><cmdsynopsis -><command ->date</command -><arg ->format</arg -></cmdsynopsis -></term> -<listitem -><para ->Вставить строку с датой/временем в указанном формате (задаётся параметром <userinput ->format</userinput ->), или в <quote ->yyyy-MM-dd hh:mm:ss</quote ->, если параметр упущен. Доступны следующие подстановки: <informaltable -> <tgroup cols="2" -> <tbody> -<row -><entry -><literal ->d</literal -></entry -><entry ->Номер дня в месяце без ведущего нуля (1-31).</entry -></row> -<row -><entry -><literal ->dd</literal -></entry -><entry ->Номер дня в месяце с ведущим нулём (01-31).</entry -></row> -<row -><entry -><literal ->ddd</literal -></entry -><entry ->Сокращённое название дня недели ('Пн'..''Вс, 'Mon'..'Sun').</entry -></row> -<row -><entry -><literal ->dddd</literal -></entry -><entry ->Полное названия дня недели ('Понедельник'..'Воскресенье', 'Monday'..'Sunday').</entry -></row> -<row -><entry -><literal ->M</literal -></entry -><entry ->Номер месяца без ведущего нуля (1-12).</entry -></row> -<row -><entry -><literal ->MM</literal -></entry -><entry ->Номер месяца с ведущим нулём (01-12).</entry -></row> -<row -><entry -><literal ->MMM</literal -></entry -><entry ->Сокращённое название месяца ('Янв'..'Дек', 'Jan'..'Dec').</entry -></row> -<row -><entry -><literal ->yy</literal -></entry -><entry ->Год двумя цифрами (00-99).</entry -></row> -<row -><entry -><literal ->yyyy</literal -></entry -><entry ->Год четырьмя цифрами (1752-8000).</entry -></row> -<row -><entry -><literal ->h</literal -></entry -><entry ->Час без ведущего нуля (0..23 или 1..12, в зависимости от настроек).</entry -></row> -<row -><entry -><literal ->hh</literal -></entry -><entry ->Час с ведущим нулём (00..23 or 01..12, в зависимости от настроек).</entry -></row> -<row -><entry -><literal ->m</literal -></entry -><entry ->Минуты без ведущего нуля (0..59).</entry -></row> -<row -><entry -><literal ->mm</literal -></entry -><entry ->Минуты с ведущим нулём (00..59).</entry -></row> -<row -><entry -><literal ->s</literal -></entry -><entry ->Секунды без ведущего нуля (0..59).</entry -></row> -<row -><entry -><literal ->ss</literal -></entry -><entry ->Секунды с ведущим нулём (00..59).</entry -></row> -<row -><entry -><literal ->z</literal -></entry -><entry ->Миллисекунды без ведущих нулей (0..999).</entry -></row> -<row -><entry -><literal ->zzz</literal -></entry -><entry ->Миллисекунды с ведущими нулями (000..999).</entry -></row> -<row -><entry -><literal ->AP</literal -></entry -><entry ->Использовать 12-часовый формат часов. AP будет заменено на "AM" или "PM".</entry -></row> -<row -><entry -><literal ->ap</literal -></entry -><entry ->Использовать 12-часовый формат часов. ap будет заменено на "am" или "pm".</entry -></row> +<term><cmdsynopsis><command>date</command><arg>format</arg></cmdsynopsis></term> +<listitem><para>Вставить строку с датой/временем в указанном формате (задаётся параметром <userinput>format</userinput>), или в <quote>yyyy-MM-dd hh:mm:ss</quote>, если параметр упущен. Доступны следующие подстановки: <informaltable> <tgroup cols="2"> <tbody> +<row><entry><literal>d</literal></entry><entry>Номер дня в месяце без ведущего нуля (1-31).</entry></row> +<row><entry><literal>dd</literal></entry><entry>Номер дня в месяце с ведущим нулём (01-31).</entry></row> +<row><entry><literal>ddd</literal></entry><entry>Сокращённое название дня недели ('Пн'..''Вс, 'Mon'..'Sun').</entry></row> +<row><entry><literal>dddd</literal></entry><entry>Полное названия дня недели ('Понедельник'..'Воскресенье', 'Monday'..'Sunday').</entry></row> +<row><entry><literal>M</literal></entry><entry>Номер месяца без ведущего нуля (1-12).</entry></row> +<row><entry><literal>MM</literal></entry><entry>Номер месяца с ведущим нулём (01-12).</entry></row> +<row><entry><literal>MMM</literal></entry><entry>Сокращённое название месяца ('Янв'..'Дек', 'Jan'..'Dec').</entry></row> +<row><entry><literal>yy</literal></entry><entry>Год двумя цифрами (00-99).</entry></row> +<row><entry><literal>yyyy</literal></entry><entry>Год четырьмя цифрами (1752-8000).</entry></row> +<row><entry><literal>h</literal></entry><entry>Час без ведущего нуля (0..23 или 1..12, в зависимости от настроек).</entry></row> +<row><entry><literal>hh</literal></entry><entry>Час с ведущим нулём (00..23 or 01..12, в зависимости от настроек).</entry></row> +<row><entry><literal>m</literal></entry><entry>Минуты без ведущего нуля (0..59).</entry></row> +<row><entry><literal>mm</literal></entry><entry>Минуты с ведущим нулём (00..59).</entry></row> +<row><entry><literal>s</literal></entry><entry>Секунды без ведущего нуля (0..59).</entry></row> +<row><entry><literal>ss</literal></entry><entry>Секунды с ведущим нулём (00..59).</entry></row> +<row><entry><literal>z</literal></entry><entry>Миллисекунды без ведущих нулей (0..999).</entry></row> +<row><entry><literal>zzz</literal></entry><entry>Миллисекунды с ведущими нулями (000..999).</entry></row> +<row><entry><literal>AP</literal></entry><entry>Использовать 12-часовый формат часов. AP будет заменено на "AM" или "PM".</entry></row> +<row><entry><literal>ap</literal></entry><entry>Использовать 12-часовый формат часов. ap будет заменено на "am" или "pm".</entry></row> </tbody> </tgroup> </informaltable> -</para -></listitem> +</para></listitem> </varlistentry> <varlistentry> -<term -><cmdsynopsis -><command ->char</command -><arg ->identifier</arg -></cmdsynopsis -></term> +<term><cmdsynopsis><command>char</command><arg>identifier</arg></cmdsynopsis></term> <listitem> -<para ->Эта команда позволяет вставить символ по его числовому идентификатору в десятичной, восьмеричной или шестнадцатеричной системах счисления. Чтобы использовать её, откройте диалоговое окно "Команда правки" и наберите <userinput ->char: [number]</userinput -> в строке ввода, после чего нажмите кнопку <guibutton ->OK</guibutton ->.</para> +<para>Эта команда позволяет вставить символ по его числовому идентификатору в десятичной, восьмеричной или шестнадцатеричной системах счисления. Чтобы использовать её, откройте диалоговое окно "Команда правки" и наберите <userinput>char: [number]</userinput> в строке ввода, после чего нажмите кнопку <guibutton>OK</guibutton>.</para> <example> -<title ->Примеры использования команды <command ->char</command -></title> - -<para ->Введите: <userinput ->char:234</userinput -></para> -<para ->Получите: <computeroutput ->ê</computeroutput -></para> -<para ->Введите: <userinput ->char:0x1234</userinput -></para> -<para ->Получите: <computeroutput ->ሴ</computeroutput -></para> +<title>Примеры использования команды <command>char</command></title> + +<para>Введите: <userinput>char:234</userinput></para> +<para>Получите: <computeroutput>ê</computeroutput></para> +<para>Введите: <userinput>char:0x1234</userinput></para> +<para>Получите: <computeroutput>ሴ</computeroutput></para> </example> </listitem> @@ -890,149 +285,54 @@ <varlistentry> <term> -<indexterm -><primary ->замена в стиле sed</primary> -<secondary ->поиск в стиле sed</secondary -></indexterm> -<command ->s///[ig]</command -> <command ->%s///[ig]</command -></term> +<indexterm><primary>замена в стиле sed</primary> +<secondary>поиск в стиле sed</secondary></indexterm> +<command>s///[ig]</command> <command>%s///[ig]</command></term> <listitem> -<para ->"Типичный пользователь" при виде этих команд обязательно вздрогнет и начнёт искать на клавиатуре кнопку "Windows". В самом деле, кому придёт в голову искать текст подобным образом? Но вы же не "типичный", не так ли? Поэтому попробуем разобраться в этих двух sed-подобных командах. Первая выполняет поиск/замену в текущей строке, вторая -- во всём файле (<command ->%s///</command ->).</para> - -<para ->Вкратце, команды производят поиск текста, заданного <emphasis ->маской поиска</emphasis -> -- регулярным выражением (regexp) между первой и второй наклонной чертой, и, при нахождении, выполняет замену выражением, которое задано между второй и третьей чертой. Круглые скобки в маске поиска позволяют задать подстроки в найденном тексте, на которые можно потом ссылаться в выражении замены. Обратная ссылка -- это регулярное выражение, которое при совпадении заменяется на фактический текст и может быть использовано в шаблоне замены. Для этого, в нужном месте поставьте обратную черту, а за ней номер подстроки по порядку (<userinput ->\1</userinput -> -- для первой пары скобок, <userinput ->\2</userinput -> -- для второй, и т. д.).</para> - -<para ->Чтобы искать сами скобки <literal ->(</literal -> или <literal ->)</literal ->, нужно предварить их обратной чертой: <userinput ->\(\)</userinput -></para> - -<para ->Если в самом конце указать <userinput ->i</userinput ->, поиск будет проводиться с учётом регистра, а если <userinput ->g</userinput -> - будут заменены все вхождения текста, совпадающего с регулярным выражением, иначе - только первое.</para> +<para>"Типичный пользователь" при виде этих команд обязательно вздрогнет и начнёт искать на клавиатуре кнопку "Windows". В самом деле, кому придёт в голову искать текст подобным образом? Но вы же не "типичный", не так ли? Поэтому попробуем разобраться в этих двух sed-подобных командах. Первая выполняет поиск/замену в текущей строке, вторая -- во всём файле (<command>%s///</command>).</para> + +<para>Вкратце, команды производят поиск текста, заданного <emphasis>маской поиска</emphasis> -- регулярным выражением (regexp) между первой и второй наклонной чертой, и, при нахождении, выполняет замену выражением, которое задано между второй и третьей чертой. Круглые скобки в маске поиска позволяют задать подстроки в найденном тексте, на которые можно потом ссылаться в выражении замены. Обратная ссылка -- это регулярное выражение, которое при совпадении заменяется на фактический текст и может быть использовано в шаблоне замены. Для этого, в нужном месте поставьте обратную черту, а за ней номер подстроки по порядку (<userinput>\1</userinput> -- для первой пары скобок, <userinput>\2</userinput> -- для второй, и т. д.).</para> + +<para>Чтобы искать сами скобки <literal>(</literal> или <literal>)</literal>, нужно предварить их обратной чертой: <userinput>\(\)</userinput></para> + +<para>Если в самом конце указать <userinput>i</userinput>, поиск будет проводиться с учётом регистра, а если <userinput>g</userinput> - будут заменены все вхождения текста, совпадающего с регулярным выражением, иначе - только первое.</para> <example> -<title ->Замена текста в текущей строке</title> +<title>Замена текста в текущей строке</title> -<para ->Будучи противником принципа "разделяй и властвуй", вы решили откомпилировать свою программу. Но компилятор начал на вас ругаться: класс <classname ->myClass</classname ->, упомянутый в строке 3902, не определён.</para> +<para>Будучи противником принципа "разделяй и властвуй", вы решили откомпилировать свою программу. Но компилятор начал на вас ругаться: класс <classname>myClass</classname>, упомянутый в строке 3902, не определён.</para> -<para ->"Чёрт!", - думаете вы, -- "да это же мой класс <classname ->MyClass</classname ->". Вы добираетесь до строки 3902 и, вместо того, чтобы пытаться искать слово в этой длинной строке (а кто сейчас укладывает каждую строчку кода в 60 символов?), вы запускаете диалоговое окно "Команда правки", вводите <userinput ->s/myclass/MyClass/i</userinput ->, жмёте <guibutton ->OK</guibutton ->, сохраняете и компилируйте -- успешно и без ошибок.</para> +<para>"Чёрт!", - думаете вы, -- "да это же мой класс <classname>MyClass</classname>". Вы добираетесь до строки 3902 и, вместо того, чтобы пытаться искать слово в этой длинной строке (а кто сейчас укладывает каждую строчку кода в 60 символов?), вы запускаете диалоговое окно "Команда правки", вводите <userinput>s/myclass/MyClass/i</userinput>, жмёте <guibutton>OK</guibutton>, сохраняете и компилируйте -- успешно и без ошибок.</para> </example> <example> -<title ->Замена текста во всём файле</title> - -<para ->Представьте себе, что у вас есть файл, в котором вы несколько раз упоминаете некоего человека по имени <quote ->госпожа Иванова</quote ->. Но вдруг вам сообщают, что эта самая госпожа Иванова вчера вышла замуж за господина с редкой фамилией <quote ->Петров</quote ->. Естественно, вам нужно заменить все упоминания о госпоже Ивановой на текст <quote ->госпожа Петрова</quote ->.</para> - -<para ->Вызовите командную строку и введите следующий текст: <userinput ->%s/госпожа Иванова/госпожа Петрова/</userinput -> -- и ваша работа сделана.</para> +<title>Замена текста во всём файле</title> + +<para>Представьте себе, что у вас есть файл, в котором вы несколько раз упоминаете некоего человека по имени <quote>госпожа Иванова</quote>. Но вдруг вам сообщают, что эта самая госпожа Иванова вчера вышла замуж за господина с редкой фамилией <quote>Петров</quote>. Естественно, вам нужно заменить все упоминания о госпоже Ивановой на текст <quote>госпожа Петрова</quote>.</para> + +<para>Вызовите командную строку и введите следующий текст: <userinput>%s/госпожа Иванова/госпожа Петрова/</userinput> -- и ваша работа сделана.</para> </example> <example> -<title ->Более сложный пример</title> - -<para ->Этот пример показывает, как пользоваться <emphasis ->обратными ссылками</emphasis -> и <emphasis ->классами символов</emphasis -> (если вы не знаете, что это такое, советуем ознакомиться с приведенными ниже разделами).</para> - -<para ->Допустим, у вас набрана такая строка: <programlisting ->void MyClass::DoStringOps( String &foo, String &bar String *p, int &a, int &b )</programlisting> +<title>Более сложный пример</title> + +<para>Этот пример показывает, как пользоваться <emphasis>обратными ссылками</emphasis> и <emphasis>классами символов</emphasis> (если вы не знаете, что это такое, советуем ознакомиться с приведенными ниже разделами).</para> + +<para>Допустим, у вас набрана такая строка: <programlisting>void MyClass::DoStringOps( String &foo, String &bar String *p, int &a, int &b )</programlisting> </para> -<para ->Теперь вы думаете, что это недостаточно "красивый" код, и решаете, что вам нужно использовать ключевое слово <constant ->const</constant -> с параметрами, передаваемыми по ссылке (теми, перед которыми стоит амперсанд). Вы также хотите удалить лишние пробелы.</para> - -<para ->Запустите диалоговое окно "Команда правки" и наберите: <userinput ->s/\s+(\w+)\s+(&)/ const \1 \2/g</userinput ->, и не забудьте нажать кнопку <guibutton ->OK</guibutton -> -- иначе ничего не выйдет. Символ <userinput ->g</userinput -> в конце команды указывает компилятору "пересчитывать" регулярное выражение обратной ссылки каждый раз, когда встречаются совпадения.</para> - -<para ->Вывод: <computeroutput ->void MyClass::DoStringOps( const String &foo, const String &bar String *p, const int &a, const int &b )</computeroutput -></para> - -<para ->Миссия завершена! Ну, и что же произошло? Мы искали некоторое количество пробелов (<literal ->\s+</literal ->), за которыми идут несколько латинских символов (<literal ->\w+</literal ->), следом за ними опять несколько пробелов (<literal ->\s+</literal ->), после которых стоит амперсанд, и по ходу дела сохраняли эти алфавитные символы и амперсанд для использования их в операции замены. После этого мы заменили совпадающие части строки следующей последовательностью: один пробел, за которым идёт спецификатор <quote ->const</quote ->, за ним ещё один пробел, после которого наши сохранённые символы (<literal ->\1</literal ->), ещё один пробел и сохранённый амперсанд (<literal ->\2</literal ->)</para> - -<para ->В одном случае латинские символы составили слово <quote ->String</quote ->, в другом -- слово <quote ->int</quote ->, т.е. символьный класс <literal ->\w</literal -> с последующим знаком <literal ->+</literal -> определяет символьный набор произвольной длины.</para> +<para>Теперь вы думаете, что это недостаточно "красивый" код, и решаете, что вам нужно использовать ключевое слово <constant>const</constant> с параметрами, передаваемыми по ссылке (теми, перед которыми стоит амперсанд). Вы также хотите удалить лишние пробелы.</para> + +<para>Запустите диалоговое окно "Команда правки" и наберите: <userinput>s/\s+(\w+)\s+(&)/ const \1 \2/g</userinput>, и не забудьте нажать кнопку <guibutton>OK</guibutton> -- иначе ничего не выйдет. Символ <userinput>g</userinput> в конце команды указывает компилятору "пересчитывать" регулярное выражение обратной ссылки каждый раз, когда встречаются совпадения.</para> + +<para>Вывод: <computeroutput>void MyClass::DoStringOps( const String &foo, const String &bar String *p, const int &a, const int &b )</computeroutput></para> + +<para>Миссия завершена! Ну, и что же произошло? Мы искали некоторое количество пробелов (<literal>\s+</literal>), за которыми идут несколько латинских символов (<literal>\w+</literal>), следом за ними опять несколько пробелов (<literal>\s+</literal>), после которых стоит амперсанд, и по ходу дела сохраняли эти алфавитные символы и амперсанд для использования их в операции замены. После этого мы заменили совпадающие части строки следующей последовательностью: один пробел, за которым идёт спецификатор <quote>const</quote>, за ним ещё один пробел, после которого наши сохранённые символы (<literal>\1</literal>), ещё один пробел и сохранённый амперсанд (<literal>\2</literal>)</para> + +<para>В одном случае латинские символы составили слово <quote>String</quote>, в другом -- слово <quote>int</quote>, т.е. символьный класс <literal>\w</literal> с последующим знаком <literal>+</literal> определяет символьный набор произвольной длины.</para> </example> @@ -1045,123 +345,48 @@ </sect3> <sect3 id="advanced-editing-tools-commandline-commands-navigation"> -<title ->Команды навигации</title> +<title>Команды навигации</title> <variablelist> <varlistentry> -<term -><cmdsynopsis -><command ->goto</command -><arg ->INT line</arg -></cmdsynopsis -></term> -<listitem -><para ->Перейти к указанной строке.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><cmdsynopsis -><command ->find</command -><arg ->pattern</arg -></cmdsynopsis -></term> -<listitem -><para ->Перейти к первому образцу, заданному параметром <userinput ->pattern</userinput ->. Последующие вхождения образца можно найти посредством пункта меню <menuchoice -><guimenu ->Правка</guimenu -><guimenuitem ->Найти далее</guimenuitem -></menuchoice -> (клавиша по умолчанию - <keycap ->F3</keycap ->).</para> -<para ->Параметры команды поиска можно задавать добавлением двоеточия и "флагов" после её имени (<userinput ->find:options pattern</userinput ->). Флаги - набор из следующих букв: <variablelist> - -<varlistentry> -<term -><userinput ->b</userinput -></term> -<listitem -><para ->Искать в обратном направлении.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->c</userinput -></term> -<listitem -><para ->Искать от позиции курсора.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->e</userinput -></term> -<listitem -><para ->Искать только в выделенном тексте.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->r</userinput -></term> -<listitem -><para ->Аргумент <userinput ->pattern</userinput -> - регулярное выражение. Вы можете использовать <userinput ->\N</userinput -> в <userinput ->replacement</userinput -> для получения N-ной подстроки найденного текста.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->s</userinput -></term> -<listitem -><para ->С учётом регистра.</para -></listitem> -</varlistentry> - -<varlistentry> -<term -><userinput ->w</userinput -></term> -<listitem -><para ->Только целые слова.</para -></listitem> +<term><cmdsynopsis><command>goto</command><arg>INT line</arg></cmdsynopsis></term> +<listitem><para>Перейти к указанной строке.</para></listitem> +</varlistentry> + +<varlistentry> +<term><cmdsynopsis><command>find</command><arg>pattern</arg></cmdsynopsis></term> +<listitem><para>Перейти к первому образцу, заданному параметром <userinput>pattern</userinput>. Последующие вхождения образца можно найти посредством пункта меню <menuchoice><guimenu>Правка</guimenu><guimenuitem>Найти далее</guimenuitem></menuchoice> (клавиша по умолчанию - <keycap>F3</keycap>).</para> +<para>Параметры команды поиска можно задавать добавлением двоеточия и "флагов" после её имени (<userinput>find:options pattern</userinput>). Флаги - набор из следующих букв: <variablelist> + +<varlistentry> +<term><userinput>b</userinput></term> +<listitem><para>Искать в обратном направлении.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>c</userinput></term> +<listitem><para>Искать от позиции курсора.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>e</userinput></term> +<listitem><para>Искать только в выделенном тексте.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>r</userinput></term> +<listitem><para>Аргумент <userinput>pattern</userinput> - регулярное выражение. Вы можете использовать <userinput>\N</userinput> в <userinput>replacement</userinput> для получения N-ной подстроки найденного текста.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>s</userinput></term> +<listitem><para>С учётом регистра.</para></listitem> +</varlistentry> + +<varlistentry> +<term><userinput>w</userinput></term> +<listitem><para>Только целые слова.</para></listitem> </varlistentry> </variablelist> @@ -1173,64 +398,30 @@ </varlistentry> <varlistentry> -<term -><cmdsynopsis -><command ->ifind</command -><arg ->pattern</arg -></cmdsynopsis -></term> -<listitem -><para ->Поиск по мере набора. Поддерживается установка дополнительных флагов <variablelist> +<term><cmdsynopsis><command>ifind</command><arg>pattern</arg></cmdsynopsis></term> +<listitem><para>Поиск по мере набора. Поддерживается установка дополнительных флагов <variablelist> <varlistentry> -<term -><userinput ->b</userinput -></term> -<listitem -><para ->Искать в обратном направлении.</para -></listitem> +<term><userinput>b</userinput></term> +<listitem><para>Искать в обратном направлении.</para></listitem> </varlistentry> <varlistentry> -<term -><userinput ->r</userinput -></term> -<listitem -><para ->Поиск по регулярному выражению.</para -></listitem> +<term><userinput>r</userinput></term> +<listitem><para>Поиск по регулярному выражению.</para></listitem> </varlistentry> <varlistentry> -<term -><userinput ->s</userinput -></term> -<listitem -><para ->С учётом регистра.</para -></listitem> +<term><userinput>s</userinput></term> +<listitem><para>С учётом регистра.</para></listitem> </varlistentry> <varlistentry> -<term -><userinput ->c</userinput -></term> -<listitem -><para ->Искать от позиции курсора.</para -></listitem> +<term><userinput>c</userinput></term> +<listitem><para>Искать от позиции курсора.</para></listitem> </varlistentry> </variablelist> -</para -></listitem> +</para></listitem> </varlistentry> </variablelist> @@ -1242,250 +433,101 @@ </sect1> <sect1 id="advanced-editing-tools-code-folding"> -<title ->Использование сворачивания кода</title> - -<para ->Сворачивание кода позволяет скрывать участки документа в редакторе, упрощая осмотр громоздких документов. В &kate; разделение на сворачиваемые участки определяется правилами подсветки синтаксиса, следовательно, доступно не для всех форматов файлов. В основном, сворачивание кода доступно в режиме написания исходного кода, XML-разметки и т.п. Большинство способов подсветки позволяют также самостоятельно определять скрываемые области, чаще всего используя ключевые слова <userinput ->BEGIN</userinput -> и <userinput ->END</userinput ->.</para> - -<para ->Для того чтобы включить/отключить функцию сворачивания, выберите пункт меню <menuchoice -><guimenu ->Вид</guimenu -><guimenuitem ->Показать маркеры сворачивания</guimenuitem -></menuchoice ->. На панели маркеров сворачивания с левой стороны документа появится графическое представление сворачиваемых участков. Знак "-" показывает, что участок развёрнут, знак "+" обозначает свёрнутый участок. Щелчок на знаке "+" приведёт к разворачиванию свёрнутого участка, и наоборот (с одновременным изменением графического представления).</para> - -<para ->Для управления состоянием сворачиваемых участков служат четыре команды, смотрите <link linkend="view-code-folding" ->справку по меню</link ->. </para> - -<para ->Если вы не хотите использовать функцию сворачивания, можно отключить параметр <guilabel ->Показать маркеры сворачивания (если доступны)</guilabel -> на <link linkend="config-dialog-editor-appearance" ->странице настройки внешнего вида редактора</link -></para> +<title>Использование сворачивания кода</title> + +<para>Сворачивание кода позволяет скрывать участки документа в редакторе, упрощая осмотр громоздких документов. В &kate; разделение на сворачиваемые участки определяется правилами подсветки синтаксиса, следовательно, доступно не для всех форматов файлов. В основном, сворачивание кода доступно в режиме написания исходного кода, XML-разметки и т.п. Большинство способов подсветки позволяют также самостоятельно определять скрываемые области, чаще всего используя ключевые слова <userinput>BEGIN</userinput> и <userinput>END</userinput>.</para> + +<para>Для того чтобы включить/отключить функцию сворачивания, выберите пункт меню <menuchoice><guimenu>Вид</guimenu><guimenuitem>Показать маркеры сворачивания</guimenuitem></menuchoice>. На панели маркеров сворачивания с левой стороны документа появится графическое представление сворачиваемых участков. Знак "-" показывает, что участок развёрнут, знак "+" обозначает свёрнутый участок. Щелчок на знаке "+" приведёт к разворачиванию свёрнутого участка, и наоборот (с одновременным изменением графического представления).</para> + +<para>Для управления состоянием сворачиваемых участков служат четыре команды, смотрите <link linkend="view-code-folding">справку по меню</link>. </para> + +<para>Если вы не хотите использовать функцию сворачивания, можно отключить параметр <guilabel>Показать маркеры сворачивания (если доступны)</guilabel> на <link linkend="config-dialog-editor-appearance">странице настройки внешнего вида редактора</link></para> </sect1> <sect1 id="advanced-editing-tools-scripting"> -<title ->Написание сценариев Javascript в компоненте редактора</title> +<title>Написание сценариев Javascript в компоненте редактора</title> <sect2 id="advanced-editing-tools-scripting-introduction"> -<title ->Введение</title> - -<para ->Начиная с версии 2.5, компонент редактора &kate; поддерживает написание сценариев на языке ECMA, известном также как JavaScript.</para> - -<para ->Сценарии можно вызывать только из <link linkend="advanced-editing-tools-commandline" ->встроенной командной строки</link ->. При этом необходимо, чтобы сценарий и файл .desktop (если он существует) находились в той папке, в которой &kate; сможет их разыскать. Подходящая папка для этого - <filename ->katepart/scripts</filename -> в папках данных &kde;. Найти папки данных можно командой <command ->tde-config <option ->--path</option -> <parameter ->data</parameter -></command ->. Как правило, существуют системная и пользовательские папки данных. Естественно, сценарии в системных папках доступны всем пользователям системы, а в пользовательских - только их владельцам.</para> - -<note -><para ->Эта функциональность находится на экспериментальной стадии разработки, весьма вероятно его изменение в дальнейшем.</para> -<para ->Сценарии нельзя добавлять в меню или назначать им комбинации клавиш. Может быть, в дальнейшем мы сможем это исправить.</para> -<para ->Также невозможно использовать в сценариях аргументы. Потерпите, в светлом будущем это вполне может произойти ;)</para> +<title>Введение</title> + +<para>Начиная с версии 2.5, компонент редактора &kate; поддерживает написание сценариев на языке ECMA, известном также как JavaScript.</para> + +<para>Сценарии можно вызывать только из <link linkend="advanced-editing-tools-commandline">встроенной командной строки</link>. При этом необходимо, чтобы сценарий и файл .desktop (если он существует) находились в той папке, в которой &kate; сможет их разыскать. Подходящая папка для этого - <filename>katepart/scripts</filename> в папках данных &kde;. Найти папки данных можно командой <command>tde-config <option>--path</option> <parameter>data</parameter></command>. Как правило, существуют системная и пользовательские папки данных. Естественно, сценарии в системных папках доступны всем пользователям системы, а в пользовательских - только их владельцам.</para> + +<note><para>Эта функциональность находится на экспериментальной стадии разработки, весьма вероятно его изменение в дальнейшем.</para> +<para>Сценарии нельзя добавлять в меню или назначать им комбинации клавиш. Может быть, в дальнейшем мы сможем это исправить.</para> +<para>Также невозможно использовать в сценариях аргументы. Потерпите, в светлом будущем это вполне может произойти ;)</para> </note> </sect2> <sect2 id="advanced-editing-tools-scripting-reference"> -<title ->Программный интерфейс (API) Kate JavaScript</title> - -<para ->Здесь приведен полный список функций и свойств, доступных для объектов <type ->document</type -> и <type ->view</type ->. Разумеется, доступны любые стандартные объекты языка, такие как <type ->Math</type ->, <type ->String</type ->, <type ->Regex</type -> и т.д.</para> - -<para ->Во время исполнения сценария, объектом <classname ->document</classname -> является текущий документ, а объектом <classname ->view</classname -> является текущий вид (панель).</para> - -<note -><para ->Конечно, в настоящее время типы аргументов в JavaScript не используются, они просто информируют, какие виды значений ожидаются функциями.</para -></note> +<title>Программный интерфейс (API) Kate JavaScript</title> + +<para>Здесь приведен полный список функций и свойств, доступных для объектов <type>document</type> и <type>view</type>. Разумеется, доступны любые стандартные объекты языка, такие как <type>Math</type>, <type>String</type>, <type>Regex</type> и т.д.</para> + +<para>Во время исполнения сценария, объектом <classname>document</classname> является текущий документ, а объектом <classname>view</classname> является текущий вид (панель).</para> + +<note><para>Конечно, в настоящее время типы аргументов в JavaScript не используются, они просто информируют, какие виды значений ожидаются функциями.</para></note> <variablelist id="advanced-editing-tools-scripting-global"> -<title ->Глобальные функции</title> -<varlistentry> -<term -><function ->debug( <parameter -><replaceable ->string</replaceable -></parameter ->) [функция]</function -></term> +<title>Глобальные функции</title> +<varlistentry> +<term><function>debug( <parameter><replaceable>string</replaceable></parameter>) [функция]</function></term> <listitem> <itemizedlist> -<title ->параметры</title> -<listitem -><para -><parameter ->string</parameter -> выводимая строка</para> +<title>параметры</title> +<listitem><para><parameter>string</parameter> выводимая строка</para> </listitem> </itemizedlist> -<para ->Выводит строку на стандартный поток ошибок, используя функцию <function ->kDebug()</function ->. Для вывода используется выделенное пространство, в начало может быть добавлен префикс <computeroutput ->Kate (KJS Scripts):</computeroutput -> </para> +<para>Выводит строку на стандартный поток ошибок, используя функцию <function>kDebug()</function>. Для вывода используется выделенное пространство, в начало может быть добавлен префикс <computeroutput>Kate (KJS Scripts):</computeroutput> </para> </listitem> </varlistentry> </variablelist> <variablelist id="advanced-editing-tools-scripting-document"> -<title ->Программный интерфейс (API) класса <classname ->document</classname -></title> - -<varlistentry> -<term -><function ->document.attribute( <parameter -><replaceable ->line</replaceable -> </parameter ->, <parameter -><replaceable ->column</replaceable -></parameter -> ); [функция]</function -></term> +<title>Программный интерфейс (API) класса <classname>document</classname></title> + +<varlistentry> +<term><function>document.attribute( <parameter><replaceable>line</replaceable> </parameter>, <parameter><replaceable>column</replaceable></parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->uint line</parameter -> Строка, в которой находится атрибут.</para -></listitem> -<listitem -><para -><parameter ->uint column</parameter -> Столбец, в котором находится атрибут.</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>uint line</parameter> Строка, в которой находится атрибут.</para></listitem> +<listitem><para><parameter>uint column</parameter> Столбец, в котором находится атрибут.</para></listitem> </itemizedlist> -<para ->Возвращает числовые значения позиции атрибута в документе [<parameter ->line</parameter ->,<parameter ->column</parameter ->]. Атрибут представляет собой вид или стиль текста, а также используется для определения подсветки синтаксиса в различных частях текста смешанных форматов вроде HTML или PHP.</para> +<para>Возвращает числовые значения позиции атрибута в документе [<parameter>line</parameter>,<parameter>column</parameter>]. Атрибут представляет собой вид или стиль текста, а также используется для определения подсветки синтаксиса в различных частях текста смешанных форматов вроде HTML или PHP.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.canBreakAt( <parameter ->Char c</parameter ->, <parameter ->uint attribute</parameter -> ); [функция]</function -></term> +<term><function>document.canBreakAt( <parameter>Char c</parameter>, <parameter>uint attribute</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->c</parameter -> Знак для проверки</para -></listitem> -<listitem -><para -><parameter ->attribute</parameter -> Атрибут для позиции <parameter ->c</parameter ->.</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>c</parameter> Знак для проверки</para></listitem> +<listitem><para><parameter>attribute</parameter> Атрибут для позиции <parameter>c</parameter>.</para></listitem> </itemizedlist> -<para -> Возвращает допустимость разрыва строки на знаке c с атрибутом attribute. Результат зависит от того, какие атрибуты допускают разрыв строки без потери принадлежности подсветки.</para> +<para> Возвращает допустимость разрыва строки на знаке c с атрибутом attribute. Результат зависит от того, какие атрибуты допускают разрыв строки без потери принадлежности подсветки.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.canComment( <parameter ->uint start_attribute</parameter ->, <parameter ->uint end_attribute</parameter -> ); [функция]</function -></term> +<term><function>document.canComment( <parameter>uint start_attribute</parameter>, <parameter>uint end_attribute</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->start_attribute</parameter -> Атрибут начала участка комментария.</para -></listitem> -<listitem -><para -><parameter ->end_attribute</parameter -> Атрибут конца участка комментария.</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>start_attribute</parameter> Атрибут начала участка комментария.</para></listitem> +<listitem><para><parameter>end_attribute</parameter> Атрибут конца участка комментария.</para></listitem> </itemizedlist> -<para ->Возвращает принадлежность start_attribute и end_attribute к одной и той же системе подсветки синтаксиса. Если это так - всё нормально. </para> +<para>Возвращает принадлежность start_attribute и end_attribute к одной и той же системе подсветки синтаксиса. Если это так - всё нормально. </para> <example> -<title ->использование canComment</title> -<programlisting ->if ( document.canComment( document.attribute(1,0), document.attribute(5,0) ) ) { +<title>использование canComment</title> +<programlisting>if ( document.canComment( document.attribute(1,0), document.attribute(5,0) ) ) { // 1,0 и 5,0 принадлежат к одной системе подсветки синтаксиса } </programlisting> @@ -1494,723 +536,325 @@ </varlistentry> <varlistentry> -<term -><function ->document.clear(); [функция]</function -></term> -<listitem -><para ->Очищает документ.</para -></listitem> +<term><function>document.clear(); [функция]</function></term> +<listitem><para>Очищает документ.</para></listitem> </varlistentry> <varlistentry> -<term -><function ->document.commentStart( <parameter ->uint attribute</parameter -> ); [функция]</function -></term> +<term><function>document.commentStart( <parameter>uint attribute</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->attribute</parameter -> Атрибут текста, для которого вводится строка commentStart.</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>attribute</parameter> Атрибут текста, для которого вводится строка commentStart.</para></listitem> </itemizedlist> -<para ->Возвращает строку, необходимую для начала многострочного комментария к тексту с атрибутом, или пустую строку, если в этом тексте не поддерживаются многострочные комментарии.</para> +<para>Возвращает строку, необходимую для начала многострочного комментария к тексту с атрибутом, или пустую строку, если в этом тексте не поддерживаются многострочные комментарии.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.commentMarker( <parameter ->uint attribute</parameter -> ); [функция]</function -></term> +<term><function>document.commentMarker( <parameter>uint attribute</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->attribute</parameter -> Атрибут текста, для которого вводится строка commentMarker</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>attribute</parameter> Атрибут текста, для которого вводится строка commentMarker</para></listitem> </itemizedlist> -<para ->Возвращает пометку остатка строки как комментария к тексту с атрибутом, либо пустую строку для текста, в котором не поддерживаются комментарии в той же строке.</para> +<para>Возвращает пометку остатка строки как комментария к тексту с атрибутом, либо пустую строку для текста, в котором не поддерживаются комментарии в той же строке.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.commentEnd( <parameter ->uint attribute</parameter -> ); [функция]</function -></term> +<term><function>document.commentEnd( <parameter>uint attribute</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->attribute</parameter -> Атрибут текста, для которого вводится строка commentEnd</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>attribute</parameter> Атрибут текста, для которого вводится строка commentEnd</para></listitem> </itemizedlist> -<para ->Возвращает строку, необходимую для окончания многострочного комментария к тексту с атрибутом, либо пустую строку для текста, в котором многострочные комментарии не поддерживаются.</para> +<para>Возвращает строку, необходимую для окончания многострочного комментария к тексту с атрибутом, либо пустую строку для текста, в котором многострочные комментарии не поддерживаются.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.editBegin(); [функция]</function -></term> +<term><function>document.editBegin(); [функция]</function></term> <listitem> -<para ->Начало группы редактирования. Все действия включаются в одну группу отмены до вызова editEnd().</para> +<para>Начало группы редактирования. Все действия включаются в одну группу отмены до вызова editEnd().</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.editEnd(); [функция]</function -></term> +<term><function>document.editEnd(); [функция]</function></term> <listitem> -<para ->Окончание группы редактирования.</para> +<para>Окончание группы редактирования.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.highlightMode; [свойство:только для чтения]</function -></term> +<term><function>document.highlightMode; [свойство:только для чтения]</function></term> <listitem> -<para ->Название режима подсветки (JavaScript или C++). Если к документу не применяется режим подсветки, устанавливается значение None. Помните - необходимо использовать англоязычное название.</para> +<para>Название режима подсветки (JavaScript или C++). Если к документу не применяется режим подсветки, устанавливается значение None. Помните - необходимо использовать англоязычное название.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.indentMode; [свойство:только для чтения]</function -></term> +<term><function>document.indentMode; [свойство:только для чтения]</function></term> <listitem> -<para ->Название режима отступов документа, такое как <literal ->normal</literal -> или <literal ->cstyle</literal ->. Помните - если режим отступов не задан, устанавливается значение <literal ->none</literal ->. </para> +<para>Название режима отступов документа, такое как <literal>normal</literal> или <literal>cstyle</literal>. Помните - если режим отступов не задан, устанавливается значение <literal>none</literal>. </para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.indentWidth; [свойство:только для чтения]</function -></term> +<term><function>document.indentWidth; [свойство:только для чтения]</function></term> <listitem> -<para ->Устанавливает ширину отступа. Только при создании отступов пробелами.</para> +<para>Устанавливает ширину отступа. Только при создании отступов пробелами.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.insertLine( <parameter ->uint line</parameter ->, <parameter ->string text</parameter -> ); [функция]</function -></term> +<term><function>document.insertLine( <parameter>uint line</parameter>, <parameter>string text</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->line</parameter -> номер строки в документе</para> +<title>Параметры</title> +<listitem><para><parameter>line</parameter> номер строки в документе</para> </listitem> -<listitem -><para -><parameter ->text</parameter -> вставляемый текст</para -></listitem> +<listitem><para><parameter>text</parameter> вставляемый текст</para></listitem> </itemizedlist> -<para ->Вставляет новую строку с текстом <parameter ->text</parameter -> в строку под номером <parameter ->line</parameter ->.</para> +<para>Вставляет новую строку с текстом <parameter>text</parameter> в строку под номером <parameter>line</parameter>.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.insertText( <parameter ->uint line</parameter ->, <parameter ->uint column</parameter ->, <parameter ->string text</parameter -> ); [функция]</function -></term> +<term><function>document.insertText( <parameter>uint line</parameter>, <parameter>uint column</parameter>, <parameter>string text</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->line</parameter -> номер строки</para -></listitem> -<listitem -><para -><parameter ->column</parameter -> номер столбца</para -></listitem> -<listitem -><para -><parameter ->text</parameter -> вставляемый текст</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>line</parameter> номер строки</para></listitem> +<listitem><para><parameter>column</parameter> номер столбца</para></listitem> +<listitem><para><parameter>text</parameter> вставляемый текст</para></listitem> </itemizedlist> -<para ->Вставляет текст <parameter ->text</parameter -> в строку номер <parameter ->line</parameter ->, столбец номер <parameter ->column</parameter ->.</para> +<para>Вставляет текст <parameter>text</parameter> в строку номер <parameter>line</parameter>, столбец номер <parameter>column</parameter>.</para> </listitem> </varlistentry> <varlistentry> -<term ->document.length(); [функция]</term> +<term>document.length(); [функция]</term> <listitem> -<para ->Возвращает размер документа в байтах.</para> +<para>Возвращает размер документа в байтах.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.lines(); [функция]</function -></term> +<term><function>document.lines(); [функция]</function></term> <listitem> -<para ->Возвращает число строк в документе.</para> +<para>Возвращает число строк в документе.</para> </listitem> </varlistentry> <varlistentry> -<term ->document.mixedIndent; [свойство:только для чтения]</term> +<term>document.mixedIndent; [свойство:только для чтения]</term> <listitem> -<para ->Логическая величина. Сообщает, применяется ли в документе смешанный тип отступов. Если это так - отступы осуществляются при помощи и пробелов, и позиций табуляции, сходно с редактором Emacs.</para> +<para>Логическая величина. Сообщает, применяется ли в документе смешанный тип отступов. Если это так - отступы осуществляются при помощи и пробелов, и позиций табуляции, сходно с редактором Emacs.</para> </listitem> </varlistentry> <varlistentry> -<term ->document.removeLine( <parameter ->uint line</parameter -> ); [функция]</term> +<term>document.removeLine( <parameter>uint line</parameter> ); [функция]</term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->line</parameter -> номер строки</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>line</parameter> номер строки</para></listitem> </itemizedlist> -<para ->Удаляет строку документа номер line.</para> +<para>Удаляет строку документа номер line.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.removeText( <parameter ->uint startLine</parameter ->, <parameter ->uint startColumn</parameter ->, <parameter ->uint endLine</parameter ->, <parameter ->uint endColumn</parameter -> ); [функция]</function -></term> +<term><function>document.removeText( <parameter>uint startLine</parameter>, <parameter>uint startColumn</parameter>, <parameter>uint endLine</parameter>, <parameter>uint endColumn</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->startLine</parameter -> указывает начальную строку</para -></listitem> -<listitem -><para -><parameter ->startColumn</parameter -> указывает начальный столбец</para -></listitem> -<listitem -><para -><parameter ->endLine</parameter -> указывает конечную строку</para -></listitem> -<listitem -><para -><parameter ->endColumn</parameter -> указывает конечный столбец</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>startLine</parameter> указывает начальную строку</para></listitem> +<listitem><para><parameter>startColumn</parameter> указывает начальный столбец</para></listitem> +<listitem><para><parameter>endLine</parameter> указывает конечную строку</para></listitem> +<listitem><para><parameter>endColumn</parameter> указывает конечный столбец</para></listitem> </itemizedlist> -<para ->Удаляет участок текста, начиная от строки номер <parameter ->startLine</parameter -> и столбца номер <parameter ->startColumn</parameter -> до строки номер <parameter ->endLine</parameter -> и столбца номер <parameter ->endColumn</parameter ->. </para> +<para>Удаляет участок текста, начиная от строки номер <parameter>startLine</parameter> и столбца номер <parameter>startColumn</parameter> до строки номер <parameter>endLine</parameter> и столбца номер <parameter>endColumn</parameter>. </para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.setText( <parameter ->string text</parameter -> ); [функция]</function -></term> +<term><function>document.setText( <parameter>string text</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->text</parameter -> текст документа</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>text</parameter> текст документа</para></listitem> </itemizedlist> -<para ->Приводит всё содержимое документа к тексту с параметрами <parameter ->text</parameter ->.</para> +<para>Приводит всё содержимое документа к тексту с параметрами <parameter>text</parameter>.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.spaceIndent; [свойство:только для чтения]</function -></term> +<term><function>document.spaceIndent; [свойство:только для чтения]</function></term> <listitem> -<para ->Логическая величина. Сообщает, применяется ли к документу отступ пробелами. Если это так, то отступы в документе производятся на величину indentWidth между уровнями, иначе сдвиг происходит на одну позицию табуляции.</para> +<para>Логическая величина. Сообщает, применяется ли к документу отступ пробелами. Если это так, то отступы в документе производятся на величину indentWidth между уровнями, иначе сдвиг происходит на одну позицию табуляции.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.textFull(); [функция]</function -></term> +<term><function>document.textFull(); [функция]</function></term> <listitem> -<para ->Возвращает весь текст документа. Если в тексте есть переводы строк, то знак перевода строки отобразится как <constant ->\n</constant ->.</para> +<para>Возвращает весь текст документа. Если в тексте есть переводы строк, то знак перевода строки отобразится как <constant>\n</constant>.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.textLine( uint line ); [функция]</function -></term> +<term><function>document.textLine( uint line ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->line</parameter -> строка номер</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>line</parameter> строка номер</para></listitem> </itemizedlist> -<para ->Возвращает текст строки номер <parameter ->line</parameter ->.</para> +<para>Возвращает текст строки номер <parameter>line</parameter>.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->document.textRange( <parameter ->uint startLine</parameter ->, <parameter ->uint startColumn</parameter ->, <parameter ->uint endLine</parameter ->, <parameter ->uint endColumn</parameter -> ); [функция]</function -></term> +<term><function>document.textRange( <parameter>uint startLine</parameter>, <parameter>uint startColumn</parameter>, <parameter>uint endLine</parameter>, <parameter>uint endColumn</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->startLine</parameter -> указывает начальную строку</para -></listitem> -<listitem -><para -><parameter ->startColumn</parameter -> указывает начальный столбец</para -></listitem> -<listitem -><para -><parameter ->endLine</parameter -> указывает конечную строку</para> +<title>Параметры</title> +<listitem><para><parameter>startLine</parameter> указывает начальную строку</para></listitem> +<listitem><para><parameter>startColumn</parameter> указывает начальный столбец</para></listitem> +<listitem><para><parameter>endLine</parameter> указывает конечную строку</para> </listitem> -<listitem -><para -><parameter ->endColumn</parameter -> указывает конечный столбец</para -></listitem> +<listitem><para><parameter>endColumn</parameter> указывает конечный столбец</para></listitem> </itemizedlist> -<para ->Возвращает указанный участок текста. Если в пределах участка есть переводы строк, то знак перевода отобразится как <constant ->\n</constant ->.</para> +<para>Возвращает указанный участок текста. Если в пределах участка есть переводы строк, то знак перевода отобразится как <constant>\n</constant>.</para> </listitem> </varlistentry> -</variablelist -><!--/ document API --> +</variablelist><!--/ document API --> <variablelist id="advanced-editing-tools-scripting-view"> -<title ->Аппаратно-программный интерфейс (API) <classname ->view</classname -></title> +<title>Аппаратно-программный интерфейс (API) <classname>view</classname></title> <varlistentry> -<term -><function ->view.clearSelection(); [функция]</function -></term> +<term><function>view.clearSelection(); [функция]</function></term> <listitem> -<para ->Снимает выделение со всего текста.</para> +<para>Снимает выделение со всего текста.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.cursorColumn(); [функция]</function -></term> +<term><function>view.cursorColumn(); [функция]</function></term> <listitem> -<para ->Возвращает столбец, в котором находится курсор (учитываются все знаки табуляции).</para> +<para>Возвращает столбец, в котором находится курсор (учитываются все знаки табуляции).</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.cursorColumnReal(); [функция]</function -></term> +<term><function>view.cursorColumnReal(); [функция]</function></term> <listitem> -<para ->Возвращает номер столбца, в котором реально находится курсор (знак табуляции считается за один символ).</para> +<para>Возвращает номер столбца, в котором реально находится курсор (знак табуляции считается за один символ).</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.cursorLine(); [функция]</function -></term> +<term><function>view.cursorLine(); [функция]</function></term> <listitem> -<para ->Возвращает номер строки, в которой находится курсор.</para> +<para>Возвращает номер строки, в которой находится курсор.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.hasSelection(); [функция]</function -></term> +<term><function>view.hasSelection(); [функция]</function></term> <listitem> -<para ->Если выделенный текст есть, возвращает <constant ->true</constant ->, иначе <constant ->false</constant ->.</para> +<para>Если выделенный текст есть, возвращает <constant>true</constant>, иначе <constant>false</constant>.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.removeSelectedText(); [функция]</function -></term> +<term><function>view.removeSelectedText(); [функция]</function></term> <listitem> -<para ->Если есть выделенный текст, он удаляется.</para> +<para>Если есть выделенный текст, он удаляется.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.selectAll(); [функция]</function -></term> +<term><function>view.selectAll(); [функция]</function></term> <listitem> -<para ->Выделяет весь текст.</para> +<para>Выделяет весь текст.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.selection(); [функция]</function -></term> +<term><function>view.selection(); [функция]</function></term> <listitem> -<para ->Возвращает выделенный текст. Если в пределах выделенного текста есть переводы строк, они отображаются знаком <constant ->\n</constant ->.</para> +<para>Возвращает выделенный текст. Если в пределах выделенного текста есть переводы строк, они отображаются знаком <constant>\n</constant>.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.selectionEndColumn; [свойство:только для чтения]</function -></term> +<term><function>view.selectionEndColumn; [свойство:только для чтения]</function></term> <listitem> -<para ->Возвращает номер последней позиции выделяемого участка.</para> +<para>Возвращает номер последней позиции выделяемого участка.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.selectionEndLine; [свойство:только для чтения]</function -></term> +<term><function>view.selectionEndLine; [свойство:только для чтения]</function></term> <listitem> -<para ->Возвращает номер последней строки выделяемого участка.</para> +<para>Возвращает номер последней строки выделяемого участка.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.selectionStartColumn; [свойство:только для чтения]</function -></term> +<term><function>view.selectionStartColumn; [свойство:только для чтения]</function></term> <listitem> -<para ->Возвращает номер начальной позиции выделяемого участка.</para> +<para>Возвращает номер начальной позиции выделяемого участка.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.selectionStartLine; [свойство:только для чтения]</function -></term> +<term><function>view.selectionStartLine; [свойство:только для чтения]</function></term> <listitem> -<para ->Возвращает номер начальной строки выделяемого участка.</para> +<para>Возвращает номер начальной строки выделяемого участка.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.setCursorPosition( <parameter ->uint line</parameter ->, <parameter ->uint column</parameter -> ); [функция]</function -></term> +<term><function>view.setCursorPosition( <parameter>uint line</parameter>, <parameter>uint column</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->line</parameter -> Указывает строку для курсора.</para -></listitem> -<listitem -><para -><parameter ->column</parameter -> Указывает столбец для курсора.</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>line</parameter> Указывает строку для курсора.</para></listitem> +<listitem><para><parameter>column</parameter> Указывает столбец для курсора.</para></listitem> </itemizedlist> -<para ->Устанавливает курсор ввода в позицию [<parameter ->line</parameter ->, <parameter ->col</parameter ->]. Установка курсора происходит визуально, символ табуляции считается за несколько символов, в зависимости от расположения текста, но не больше значения параметра <guilabel ->Ширина табуляции</guilabel ->. Отсчёт номеров строк и столбцов начинается от нуля.</para> +<para>Устанавливает курсор ввода в позицию [<parameter>line</parameter>, <parameter>col</parameter>]. Установка курсора происходит визуально, символ табуляции считается за несколько символов, в зависимости от расположения текста, но не больше значения параметра <guilabel>Ширина табуляции</guilabel>. Отсчёт номеров строк и столбцов начинается от нуля.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.setCursorPositionReal( <parameter ->uint line</parameter ->, <parameter ->uint column</parameter -> ); [функция]</function -></term> +<term><function>view.setCursorPositionReal( <parameter>uint line</parameter>, <parameter>uint column</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->line</parameter -> Указывает строку для курсора.</para -></listitem> -<listitem -><para -><parameter ->column</parameter -> Указывает столбец для курсора.</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>line</parameter> Указывает строку для курсора.</para></listitem> +<listitem><para><parameter>column</parameter> Указывает столбец для курсора.</para></listitem> </itemizedlist> -<para ->Устанавливает курсор в позицию [<parameter ->line</parameter ->, <parameter ->col</parameter ->]. При рассчёте позиции табуляция соответствует одному символу. Отсчёт строк и столбцов начинается от нуля.</para> +<para>Устанавливает курсор в позицию [<parameter>line</parameter>, <parameter>col</parameter>]. При рассчёте позиции табуляция соответствует одному символу. Отсчёт строк и столбцов начинается от нуля.</para> </listitem> </varlistentry> <varlistentry> -<term -><function ->view.setSelection( <parameter ->uint startLine</parameter ->, <parameter ->uint startColumn</parameter ->, <parameter ->uint endLine</parameter ->, <parameter ->uint endColumn</parameter -> ); [функция]</function -></term> +<term><function>view.setSelection( <parameter>uint startLine</parameter>, <parameter>uint startColumn</parameter>, <parameter>uint endLine</parameter>, <parameter>uint endColumn</parameter> ); [функция]</function></term> <listitem> <itemizedlist> -<title ->Параметры</title> -<listitem -><para -><parameter ->startLine</parameter -> указывает начальную строку</para -></listitem> -<listitem -><para -><parameter ->startColumn</parameter -> указывает начальный столбец</para -></listitem> -<listitem -><para -><parameter ->endLine</parameter -> указывает конечную строку</para -></listitem> -<listitem -><para -><parameter ->endColumn</parameter -> указывает конечный столбец</para -></listitem> +<title>Параметры</title> +<listitem><para><parameter>startLine</parameter> указывает начальную строку</para></listitem> +<listitem><para><parameter>startColumn</parameter> указывает начальный столбец</para></listitem> +<listitem><para><parameter>endLine</parameter> указывает конечную строку</para></listitem> +<listitem><para><parameter>endColumn</parameter> указывает конечный столбец</para></listitem> </itemizedlist> -<para ->Устанавливает выделение от строки номер <parameter ->startLine</parameter -> и столбца номер <parameter ->startColumn</parameter -> до строки номер <parameter ->endLine</parameter -> и столбца номер <parameter ->endColumn</parameter ->.</para> +<para>Устанавливает выделение от строки номер <parameter>startLine</parameter> и столбца номер <parameter>startColumn</parameter> до строки номер <parameter>endLine</parameter> и столбца номер <parameter>endColumn</parameter>.</para> </listitem> </varlistentry> @@ -2218,13 +862,10 @@ <example id="advanced-editing-tools-scripting-example"> -<title ->Пример сценария</title> -<para ->В качестве примера рассмотрим небольшой сценарий, переводящий выделенный текст в верхний регистр. Очевидно, сначала необходимо проверить, есть ли выделенный текст вообще. Если есть - возьмём этот текст, изменим регистр и заменим его новым текстом. Сценарий будет выглядеть примерно так:</para> +<title>Пример сценария</title> +<para>В качестве примера рассмотрим небольшой сценарий, переводящий выделенный текст в верхний регистр. Очевидно, сначала необходимо проверить, есть ли выделенный текст вообще. Если есть - возьмём этот текст, изменим регистр и заменим его новым текстом. Сценарий будет выглядеть примерно так:</para> -<programlisting ->if ( view.hasSelection() ) +<programlisting>if ( view.hasSelection() ) { column = view.selectionStartColumn; line = view.selectionStartLine; @@ -2238,32 +879,16 @@ } </programlisting> -<para ->Для группировки действий так, чтобы их можно было отменить одним вызовом пункта меню <guimenuitem ->Отмена</guimenuitem ->, мы поместили строки <programlisting ->view.removeSelectedText()</programlisting -> и <programlisting ->document.insertText()</programlisting -> между <programlisting ->document.editBegin()</programlisting -> и <programlisting ->document.editEnd()</programlisting ->.</para> +<para>Для группировки действий так, чтобы их можно было отменить одним вызовом пункта меню <guimenuitem>Отмена</guimenuitem>, мы поместили строки <programlisting>view.removeSelectedText()</programlisting> и <programlisting>document.insertText()</programlisting> между <programlisting>document.editBegin()</programlisting> и <programlisting>document.editEnd()</programlisting>.</para> </example> <example id="advanced-editing-tools-desktop-example"> -<title ->Пример файла <filename ->.desktop</filename -></title> +<title>Пример файла <filename>.desktop</filename></title> -<para ->Вот пример простого .desktop-файла, соответствующего приведенному выше сценарию.</para> +<para>Вот пример простого .desktop-файла, соответствующего приведенному выше сценарию.</para> -<programlisting ->[Desktop Entry] +<programlisting>[Desktop Entry] Encoding=UTF-8 Name=Kate Part JavaScript Uppercase Comment=Script to uppercase the selection @@ -2271,35 +896,16 @@ X-Kate-Command=uppercase-selection X-Kate-Help=<p>Usage: <code>uppercase-selection</code></p> </programlisting> -<para ->Мы видим, что здесь можно определить кодировку, ввести название, комментарий, указать путь к справке с помощью X-Kate-Help и название для командной строки через X-Kate-Command. Если файлы находятся в SVN-хранилище KDE, то пункты Name, Comment and X-Kate-Help автоматически переводятся на другие языки командами переводчиков KDE.</para> +<para>Мы видим, что здесь можно определить кодировку, ввести название, комментарий, указать путь к справке с помощью X-Kate-Help и название для командной строки через X-Kate-Command. Если файлы находятся в SVN-хранилище KDE, то пункты Name, Comment and X-Kate-Help автоматически переводятся на другие языки командами переводчиков KDE.</para> </example> <sect3> -<title ->Резюме</title> - -<para ->&kate; может разыскивать в определённых папках (см. <link linkend="advanced-editing-tools-scripting-introduction" ->выше</link ->) файлы <filename ->*.js</filename ->. Для каждого найденного файла будет проведен поиск соответствующего файла <filename ->.desktop</filename ->, например файлу uppercase.js соответствует файл uppercase.desktop. </para> -<para ->Если требуемый файл <filename ->.desktop</filename -> не найден, сценарий будет зарегистрирован в командной строке katepart с именем без расширения .js, для нашего примера это будет <literal ->uppercase</literal ->.Если такое формирование названия команды подходит, и вам не требуются какие-то дополнительные возможности, которые предоставляет файл <filename ->.desktop</filename ->, он может не понадобиться вам совсем. </para> -<para ->Если файл <filename ->.desktop</filename -> найден, то katepart считывает имя из пункта .desktop-файла X-Kate-Command, например X-Kate-Command=uppercase-selection.</para> +<title>Резюме</title> + +<para>&kate; может разыскивать в определённых папках (см. <link linkend="advanced-editing-tools-scripting-introduction">выше</link>) файлы <filename>*.js</filename>. Для каждого найденного файла будет проведен поиск соответствующего файла <filename>.desktop</filename>, например файлу uppercase.js соответствует файл uppercase.desktop. </para> +<para>Если требуемый файл <filename>.desktop</filename> не найден, сценарий будет зарегистрирован в командной строке katepart с именем без расширения .js, для нашего примера это будет <literal>uppercase</literal>.Если такое формирование названия команды подходит, и вам не требуются какие-то дополнительные возможности, которые предоставляет файл <filename>.desktop</filename>, он может не понадобиться вам совсем. </para> +<para>Если файл <filename>.desktop</filename> найден, то katepart считывает имя из пункта .desktop-файла X-Kate-Command, например X-Kate-Command=uppercase-selection.</para> </sect3> |