*****************************************************************
***                 Coder AkelPad plugin v6.8                 ***
*****************************************************************

2011 Шенгальц Александр aka Instructor (Shengalts@mail.ru)


*** Описание ***

Дополнительные возможности для программирования.


*** Функции ***

Coder::HighLight
Подсветка синтаксиса.

Coder::CodeFold
Поддержка сворачиваемых блоков (фолдинг).

Coder::AutoComplete
Авто-дополнение - это возможность, позволяющая ускорить процесс
редактирования. Функция производит замену короткой аббревиатуры
на блок текста. Например, если Вы набрали "for", во время
редактирования C++ файла и нажали горячую клавишу (Ctrl+Space по умолчанию),
"for" раскроется в следующую форму:
for (; ; )
{
}

Coder::Settings
Диалог настроек плагина.


*** Настройки ***

Дополнить со списком:
Один вариант замены - замена аббревиатуры на блок текста.
Более одного варианта замены - список аббревиатур для замены.

Дополнить без списка / К следующей позиции:
Один вариант замены или точное совпадение - замена аббревиатуры на блок текста.
Более одного варианта замены - передача горячей клавиши для дальнейшей обработки программой.
После замены - переход на следующую позицию в блоке текста.

К предыдующей позиции:
Переход на предыдущую позицию в блоке текста.


*** Внешний вызов Coder::HighLight ***

Call("Coder::HighLight", 2, "#RRGGBB", "#RRGGBB", CASE, FONTSTYLE, ID)
  Параметры:
    2
      Отметить выделенный текст.
    "#RRGGBB"
      Цвет текста, если "0" игнорируется.
    "#RRGGBB"
      Цвет фона, если "0" игнорируется.
    CASE (один из следующих):
      0  не учитывать регистр.
      1  учитывать регистр (по умолчанию).
    FONTSTYLE (один из следующих):
      0  игнорировать (по умолчанию).
      1  обычный шрифт.
      2  жирный шрифт.
      3  курсивный шрифт.
      4  жирный курсивный шрифт.
    ID
      Иденитификатор (по умолчанию 1).
  Пример:
    Call("Coder::HighLight", 2, "#000000", "#9BFF9B", 1, 0, 1)

Call("Coder::HighLight", 3, ID)
  Параметры:
    3
      Снять отметки текста.
    ID
      Иденитификатор (по умолчанию 0). Если ноль, удалить все отметки.


*** Внешний вызов Coder::CodeFold ***

Call("Coder::CodeFold", 1)
  Параметры:
    1
      Показать/Скрыть список.


*** Внешний вызов Coder::Settings ***

Call("Coder::Settings", 1, "EXTENSION")
  Параметры:
    1
      Установить синтаксическую тему вручную.
    "EXTENSION"
      Расширение, например: "html". Ручная установка темы отменяется, если параметр расширения отсутствует.
      Если параметр расширения равен "?", то документ определяется, как не имеющий темы.

Call("Coder::Settings", 2)
  Параметры:
    2
      Обновить кэш.

Call("Coder::Settings", 3, PAGE)
  Параметры:
    3
      Открыть диалог настроек на указанной странице.
    PAGE
      Номер страницы, начиная с нуля.

Call("Coder::Settings", 4, FLAGS, FILE)
  Параметры:
    4
      Экспорт текста в RTF.
    FLAGS (сумма следующих):
         1  Экспортировать в файл.
        16  Копировать в буфер обмена.
        32  Заполнить текстовый формат буфера обмена текстом. Задается совместно с 16.
        64  Заполнить текстовый формат буфера обмена отформатированными данными. Задается совместно с 16.
       256  Экспортировать цвет выделения текста.
       512  Экспортировать цвет текста активной строки.
      1024  Экспортировать цвет фона активной строки.
      2048  Не экпортировать основной цвет текста.
      4096  Не экпортировать основной цвет фона.
     65536  Экспортировать только выделение. По умолчанию экспортируется выделение, либо весь документ, если нет выделения.
    131072  Форсировать экспорт всего документа. По умолчанию экспортируется выделение, либо весь документ, если нет выделения.
            По умолчанию: 16+32=48.
    FILE
      Файл для экспорта. Используется, если задан флаг 1. По умолчанию открывается диалог для выбора файла.

Call("Coder::Settings", 5, "COLORTHEME")
  Параметры:
    5
      Установить цветовую тему.
    "COLORTHEME"
      Имя цветовой темы, например: "Bespin".


*** Меню для ContextMenu плагина ***

"Отметить" Icon("%a\AkelFiles\Plugs\Coder.dll", 0)
{
  "Бирюзовым" Call("Coder::HighLight", 2, 0, "#9BFFFF", 1, 0, 11) Icon("%a\AkelFiles\Plugs\Coder.dll", 6)
  "Оранжевым" Call("Coder::HighLight", 2, 0, "#FFCD9B", 1, 0, 12) Icon("%a\AkelFiles\Plugs\Coder.dll", 7)
  "Желтым" Call("Coder::HighLight", 2, 0, "#FFFF9B", 1, 0, 13) Icon("%a\AkelFiles\Plugs\Coder.dll", 8)
  "Фиолетовым" Call("Coder::HighLight", 2, 0, "#BE7DFF", 1, 0, 14) Icon("%a\AkelFiles\Plugs\Coder.dll", 9)
  "Зелёным" Call("Coder::HighLight", 2, 0, "#88E188", 1, 0, 15) Icon("%a\AkelFiles\Plugs\Coder.dll", 10)
  SEPARATOR
  -"Убрать все отметки" Call("Coder::HighLight", 3, 0) Icon("%a\AkelFiles\Plugs\Coder.dll", 11)
}
"Синтаксическая тема" Icon("%a\AkelFiles\Plugs\Coder.dll", 4)
{
  "Assembler" Call("Coder::Settings", 1, "asm")
  "AutoIt" Call("Coder::Settings", 1, "au3")
  "Bat" Call("Coder::Settings", 1, "bat")
  "C++" Call("Coder::Settings", 1, "cpp")
  "Sharp" Call("Coder::Settings", 1, "cs")
  "CSS" Call("Coder::Settings", 1, "css")
  "HTML" Call("Coder::Settings", 1, "html")
  "Ini" Call("Coder::Settings", 1, "ini")
  "Inno" Call("Coder::Settings", 1, "iss")
  "JScript" Call("Coder::Settings", 1, "js")
  "Lua" Call("Coder::Settings", 1, "lua")
  "NSIS" Call("Coder::Settings", 1, "nsi")
  "Pascal" Call("Coder::Settings", 1, "dpr")
  "Perl" Call("Coder::Settings", 1, "pl")
  "PHP" Call("Coder::Settings", 1, "php")
  "Python" Call("Coder::Settings", 1, "py")
  "Resource" Call("Coder::Settings", 1, "rc")
  "SQL" Call("Coder::Settings", 1, "sql")
  "VBScript" Call("Coder::Settings", 1, "vbs")
  "XML" Call("Coder::Settings", 1, "xml")
  SEPARATOR
  "Без темы" Call("Coder::Settings", 1, "?")
}
"Цветовая тема" Icon("%a\AkelFiles\Plugs\Coder.dll", 5)
{
  "Default" Call("Coder::Settings", 5, "Default")
  SEPARATOR
  "Active4D" Call("Coder::Settings", 5, "Active4D")
  "Bespin" Call("Coder::Settings", 5, "Bespin")
  "Cobalt" Call("Coder::Settings", 5, "Cobalt")
  "Dawn" Call("Coder::Settings", 5, "Dawn")
  "Earth" Call("Coder::Settings", 5, "Earth")
  "iPlastic" Call("Coder::Settings", 5, "iPlastic")
  "Lazy" Call("Coder::Settings", 5, "Lazy")
  "Mac Classic" Call("Coder::Settings", 5, "Mac Classic")
  "Monokai" Call("Coder::Settings", 5, "Monokai")
  "Solarized Light" Call("Coder::Settings", 5, "Solarized Light")
  "Solarized Dark" Call("Coder::Settings", 5, "Solarized Dark")
  "SpaceCadet" Call("Coder::Settings", 5, "SpaceCadet")
  "Sunburst" Call("Coder::Settings", 5, "Sunburst")
  "Twilight" Call("Coder::Settings", 5, "Twilight")
  "Zenburn" Call("Coder::Settings", 5, "Zenburn")
  SEPARATOR
  "Настроить..." Call("Coder::Settings")
}