.Language=Russian,Русский
.PluginContents=Парные скобки
.Options CtrlStartPosChar=^<wrap>


@Contents
$ #Парные скобки#
  С помощью этого модуля вы можете:

  - найти парную скобку;
  - выделить текст между скобками.

  Модуль работает с 3-мя видами парных скобок:

  #1. Обычные '()', '{}', '[]', '<>', '«»' и кавычки#
     Здесь все просто - курсор стоит на скобке. Для кавычек
     необходимо указывать направление просмотра текста -
     вперёд или назад.

  #2. Необычные '()', '{}', '[]', '<>' и '«»'.#
     Этот пункт отличается от первого тем, что если курсор стоит
     на следующей позиции (за скобкой), то модуль всё равно
     сработает - найдёт пару и станет за найденной скобкой.
     Такое поведение настраиваемо.

  #3. Двойные скобки#
     Например, блочные комментарии из языка C/C++: '/*' и '*/'
     рассматриваются как двойные скобки.
     Курсор будет устанавливаться на подобный символ.

  ~Настройка модуля~@Config@
  ~Поиск/выделение~@Find@
  ~Поиск кавычек~@Direct@
  ~Использование плагина в макросах~@MacroCallPlugin@


@Find
$ #Поиск/выделение - Парные скобки#
  #Найти#      - в случае успешного поиска модуль установит курсор
               на парной скобке

  #Выделить#   - в случае успешного поиска модуль установит курсор
               на парной скобке и выделит текст между скобками.
               Скобки также будут выделены.

  ~Содержание~@Contents@
  ~Настройка модуля~@Config@


@Direct
$ #Поиск кавычек - Парные скобки#
  Если парные скобки или кавычки совпадают по начертанию (используются
одинаковые символы), то модулю необходимо задать направление поиска:

  #Вперёд#     - поиск парного символа от текущей позиции курсора
               к концу текста.

  #Назад#      - поиск парного символа от текущей позиции курсора
               к началу текста.

  ~Содержание~@Contents@
  ~Настройка модуля~@Config@


@Config
$ #Настройка - Парные скобки#
  Поведение модуля настраиваемо - это для тех, кого установки по
умолчанию не устраивают.

  #>Правила#
  Правила позволяют управлять поведением модуля в специфических ситуациях:

   #Игнорировать скобки#  Если эта опция включена, плагин не будет
   #в кавычках#           учитывать при поиске скобки, находящиеся
                        между кавычками: #'#{#'#. Символы, считающиеся
                        кавычками, также можно настраивать.

   #Игнорировать#         Когда опция включена, ведётся поиск
   #поведение#            парной скобки, расположенной только под
   #"за скобкой"#         курсором. Выключение опции позволяет искать
                        парную скобку, когда курсор находится
                        в следующей позиции после скобки.

   #Первыми#              Выключенная опция рассматривает '#%>#'
   #рассматриваются#      как двойную скобку и модуль начинает
   #двойные скобки#     искать парную скобку вида '#<%#'.

   #Переход на скобку#    При выделении блока между скобками
   #(для 'Выделить')#     установить курсор на найденную скобку

   #Звуковой сигнал#      В случае успешного поиска выдать
                        звуковой сигнал.

  #>Описания#
  Описания позволяют менять некоторые основополагающие константы модуля:

   #Типы кавычек#         Задаётся описание кавычек для правила
                        "Игнорировать скобки в кавычках"
                        По 2 символа на одну пару, максимум 10
                        пар. Первый символ - открывающая
                        кавычка, второй символ - закрывающая.

   #Одинарные парные#     Задаёт описание одинарных скобок.
   #скобки#               По 2 символа на одну пару, максимум
                        10 пар. Первый символ - открывающая
                        скобка, второй символ - закрывающая.
                        Первый и второй символы могут совпадать
                        - для случая #"#Строка#"# или #'#Строка#'#.

   #Двойные парные#       Задаёт описание двойных скобок.
   #скобки#               По 4 символа на одну пару, максимум
                        10 пар. Первые два символа - открывающая
                        двойная скобка, вторые два символа -
                        закрывающая.

  ~Содержание~@Contents@


@MacroCallPlugin
$ #Использование плагина в макросах#
    ^<wrap>Плагин можно вызывать из макросов, используя макрофункцию Plugin.Call.
    ^<wrap>Формат вызова:

       #Plugin.Call("B66C436D-E657-419C-86D3-6834B9ACF3D2",<Параметр>)#

    ^<wrap>здесь:
       #B66C436D-E657-419C-86D3-6834B9ACF3D2#
          идентификатор плагина

       #<Параметр>#
          ^<wrap>строковое или числовое значение, обозначающее действие:

          SearchFwd  0 - искать парную скобку вперед
          SearchBack 1 - искать парную скобку назад
          SelectFwd  2 - выделить блок между парными скобками вперед
          SelectBack 3 - выделить блок между парными скобками назад
          Config     4 - показать диалог конфигурации

          ^<wrap>Если <Параметр> вне указанного выше диапазона - плагин завершает свою работу.
          ^<wrap>Если <Параметр> не указан, то будет выведено меню действий.

          ^<wrap>Различие между "вперед" и "назад" актуально только для кавычек.

    ^<wrap>Например, искать парную скобку назад:

       Plugin.Call("B66C436D-E657-419C-86D3-6834B9ACF3D2",1)

  ~Содержание~@Contents@
