AkelPad Forum Index AkelPad
Support forum
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

ContextMenu plugin
Goto page Previous  1, 2, 3, ... 41, 42, 43  Next
 
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins
View previous topic :: View next topic  
Author Message
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Fri Jul 13, 2007 4:15 pm    Post subject: +1 Reply with quote

Instructor wrote:
http://akelpad.sourceforge.net/forum/viewtopic.php?p=1297

Да, работает, отлично!

Я просто не хотел каждый раз беспокоить Вас по пустякам.
Хочется для контекста по списку свежих ещё пару действий:
1. Удалить из списка ненужный лейбл файла (наверняка функция удаления у Вас уже есть, похоже удаляются несуществующие файлы).
2. Создать новый файл на основе выделенного (текст из этого файла скопировать в новый).
Возможно, и даже скорее всего, хотелки будут рости Mr. Green именно поэтому (да и Вам, возможно, было бы проще) я хотел несколько готовых функций в общей dll, чтобы дёргать их оттуда из разных мест, т.е. дать их в публичный доступ.

Quote:
В файле "ContextMenu.zip\Source\AkelDLL.h" под заголовком "//AkelPad menu messages:"

Посмотрел, хэдэр документирован прилично, думаю разберусь Smile

Спасибо!
Back to top
View user's profile Send private message Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Fri Jul 13, 2007 4:56 pm    Post subject: +100! Reply with quote

wisgest wrote:
Огромное спасибо за EXPLORER!!!

Только сейчас понял всю прелесть!
Редактируешь htm-файл, затем на закладке RightClick -> Explorer -> Open - наслаждаешься результатами... Wink
Cool
Back to top
View user's profile Send private message Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Fri Jul 13, 2007 5:41 pm    Post subject: ЕЩЁ ВОПРОС И ИДЕЯ Reply with quote

1. Question Теперь, когда всё так обалденно настраивается, не совсем понятен смысл ContextMenu::Show.

2. Idea Задумал в конце каждой менюшки вызывать настройки, что-то типа того:
Code:
"Settings" Call("ContextMenu::Main")

Всё бы ничего, но постоянно вылетает главное окно настройки плагина.
Хотелось бы чтобы либо вручную командовать параметром Main/Show(?!) для определённого меню, либо, что ещё лучше, - при вызове, как я указал вверху, чтобы автоматом открывалось именно то меню настроек, в котором я сейчас нахожусь, т.е. где клацаю на подменю "Settings".
Back to top
View user's profile Send private message Visit poster's website
wisgest



Joined: 24 Jun 2007
Posts: 63
Location: Belorussia

PostPosted: Fri Jul 13, 2007 8:50 pm    Post subject: Reply with quote

Было бы удобно иметь возможность, не переопределять меню объекта целиком, а дополнять имеющееся, добавив в синтаксис описания ключевое слово "DEFAULT" (или другое).
Чтобы можно было сделать, например для окна редактирования так:
Code:
DEFAULT
SEPARATOR
"Lines" {
  ...
}

VladSh wrote:
1. Question Теперь, когда всё так обалденно настраивается, не совсем понятен смысл ContextMenu::Show.
Ну я, например, предпочитаю однооконный режим, так куда мне "EXPLORER" прикрутить?
VladSh wrote:
Ещё хотелось бы номера команд (если это возможно) из меню "Правка\Выделение" для добавления в контекст.меню окна редактирования.
Вместо изучения документации можно открыть в редакторе ресурсов (например, в ResHacker) AkelPad.exe или какой-нибудь языковый модуль, напр. Russian.dll, и изучить ресурсы Menu:4001, Menu:4002. Хотя, из документации, наверно, можно узнать и многое другое.
Back to top
View user's profile Send private message
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Sat Jul 14, 2007 10:26 am    Post subject: МОИ КОНТЕКСТНЫЕ МЕНЮХИ (+) Reply with quote


0. Show menu
Code:
"CODER"
{
#  "Сворачивание блоков" +Call("Coder::CodeFold") Icon("%a\AkelFiles\Plugs\Coder.dll", 1)
  -"Каталог настроечных файлов" Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Coder")
  -"Обновить кэш" Call("Coder::Settings", 2) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 3)
  "Настроить..." Call("Coder::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  SEPARATOR
  "Подсветка синтаксиса" +Call("Coder::HighLight") Icon("%a\AkelFiles\Plugs\Coder.dll", 0)
  SEPARATOR
  -"Навигация (область слева)" Call("Scripts::Main", 1, "CodeFoldSwitcher.js") Icon("%a\AkelFiles\Plugs\Coder.dll", 1)
   -"Окошко навигации..." Call("Scripts::Main", 1, "CodeFoldSwitcher.js", `-ShowDock=1`) Icon("%a\AkelFiles\Plugs\Coder.dll", 3)
  -"Область навигации с окном" Call("Scripts::Main", 1, "CodeFoldSwitcher.js", `-ShowDock=1 -hideAll=1`) Icon("%a\AkelFiles\Plugs\Coder.dll", 3)
  SEPARATOR
  "Автодополнение" Call("Coder::AutoComplete") Icon("%a\AkelFiles\Plugs\Coder.dll", 2)
}

"MARK"
{
  #Highlight selected
  "Оранжевым" Call("Coder::HighLight", 2, 0, "#FFA000", 0, 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, "#00A000", 0, 0, 14) Icon("%a\AkelFiles\Plugs\Coder.dll", 10)
  "Сиреневым" Call("Coder::HighLight", 2, 0, "#A0A0FF", 0, 0, 15)
  "Фиолетовым" Call("Coder::HighLight", 2, 0, "#BE7DFF", 1, 0, 16) Icon("%a\AkelFiles\Plugs\Coder.dll", 9)
  "Красным" Call("Coder::HighLight", 2, 0, "#FF0000", 0, 0, 17)
  "Бирюзовым" Call("Coder::HighLight", 2, 0, "#9BFFFF", 1, 0, 18) Icon("%a\AkelFiles\Plugs\Coder.dll", 6)
  SEPARATOR
   #Unhighlight all
  -"Убрать все отметки" Call("Coder::HighLight", 3, 0) Icon("%a\AkelFiles\Plugs\Coder.dll", 11)
}

"SYNTAXTHEME"
{
  "BBCode *" Call("Coder::Settings", 1, "bbc")
  "TXT" Call("Coder::Settings", 1, "txt")
   SEPARATOR
   "LSS" Call("Coder::Settings", 1, "lss")
   "l@" Call("Coder::Settings", 1, "l@")
   "Java" Call("Coder::Settings", 1, "java")
   "JS" Call("Coder::Settings", 1, "js")
   "HTML" Call("Coder::Settings", 1, "html")
   "CSS" Call("Coder::Settings", 1, "css")
   "XML / DXL" Call("Coder::Settings", 1, "xml")
   "fb2" Call("Coder::Settings", 1, "fb2")
   "php" Call("Coder::Settings", 1, "php")
   "vb / vbScript" Call("Coder::Settings", 1, "vbs")
   "ini" Call("Coder::Settings", 1, "ini")
   "bat" Call("Coder::Settings", 1, "bat")
   "C++" Call("Coder::Settings", 1, "cpp")
   "pascal" Call("Coder::Settings", 1, "dpr")
   "SQL" Call("Coder::Settings", 1, "sql")
   SEPARATOR
   "spck" Call("Coder::Settings", 1, "spck")
   "coder" Call("Coder::Settings", 1, "coder")
   "mnu" Call("Coder::Settings", 1, "mnu")
   SEPARATOR
   "- Без темы -" Call("Coder::Settings", 1, "?")
}

"COLORTHEME"
{
  "SIMPLE *" Call("Coder::Settings", 5, "SIMPLE")
  "Default" Call("Coder::Settings", 5, "Default")
  SEPARATOR
  "Bespin+Wombat" Call("Coder::Settings", 5, "Bespin+Wombat")
  "Masik" Call("Coder::Settings", 5, "Masik")
  "Bespin" Call("Coder::Settings", 5, "Bespin")
  "Cobalt Invert" Call("Coder::Settings", 5, "CobaltInvert")
  "Cobalt" Call("Coder::Settings", 5, "Cobalt")
  "Zenburn" Call("Coder::Settings", 5, "Zenburn")
;  "Monokai" Call("Coder::Settings", 5, "Monokai")
;  "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")
  SEPARATOR
  "Active4D" Call("Coder::Settings", 5, "Active4D")
  "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")
  "Solarized Light" Call("Coder::Settings", 5, "Solarized Light")
}

"XBRACKETS"
{
  "Включить" +Call("XBrackets::Main")
  SEPARATOR
  "Перейти к парной скобке" Call("XBrackets::GoToMatchingBracket")
  "Выделить до парной скобки" Call("XBrackets::SelToMatchingBracket")
  SEPARATOR
  "Настроить..." Call("XBrackets::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
}

"SPELLCHECK"
{
  -"Правописание: подсветить (txt)" Call("SpellCheck::Background", 0, "txt")
  -"Правописание: подсветить (html)" Call("SpellCheck::Background", 0, "html")
  SEPARATOR
  -"Орфография ASpell: в белый список (txt)" Call("Scripts::Main", 1, "SpellCheckAddToWhiteList.js", `-ext="txt"`)
  "Орфография ASpell: варианты..." Call("SpellCheck::Suggest") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 35)
  "Орфография ASpell: проверить..." Call("SpellCheck::CheckSelection")
  "Орфография ASpell: настройки..." Call("SpellCheck::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  SEPARATOR
  -"Орфография MSWord: проверить..." Call("Scripts::Main", 1, "SpellCheckMSWord.js")
  SEPARATOR
  -"Откорректировать пунктуацию" Call("Scripts::Main", 1, "PunctuationFixer.js", "-ignorecase")
  -"Откорректировать пунктуацию с Прописными" Call("Scripts::Main", 1, "PunctuationFixer.js", "")
}

"SPECIALCHAR"
{
  "Включить" +Call("SpecialChar::Main")
  SEPARATOR
  -"Пробелы и Табуляции" Call("Scripts::Main", 1, "SpecialCharSwitcher.js", `"1,2,4,5,6"`)
  -"Новая строка и Перенос строки" Call("Scripts::Main", 1, "SpecialCharSwitcher.js", `"3,7"`)
  -"Линия отступа" Call("Scripts::Main", 1, "SpecialCharSwitcher.js", `"8"`)
  SEPARATOR
  "Настроить..." Call("SpecialChar::Settings")
}

"LINEBOARD"
{
  "Включить / Выключить   Alt+L" Call("LineBoard::Main")  Icon("%a\AkelFiles\Plugs\LineBoard.dll", 0)
  SEPARATOR
  "Список закладок" Call("LineBoard::Main::BookmarkList")
  "Перейти к предыдущей закладке   Alt+Up" Call("LineBoard::Main::PrevBookmark") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 1)
  "Перейти к следующей закладке   Alt+Down" Call("LineBoard::Main::NextBookmark") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 2)
  SEPARATOR
  "Удалить все закладки" Call("LineBoard::Main::DelAllBookmark") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 4)
  SEPARATOR
  "Настроить..." Call("LineBoard::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
}

"CLIPBOARD"
{
  "Захват (окошко)" +Call("Clipboard::Capture") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 8)
  "Вставка серийного номера" Call("Clipboard::PasteSerial")
  SEPARATOR
  "Настроить..." Call("Clipboard::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
}

"SAVE"
{
  -"Сохранить как...   Ctrl+Shift+S" Call("Scripts::Main", 1, "SaveAs.js") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 33)
  -"Сохранить с исходным временем" Call("Scripts::Main", 1, "saveStoreTime.js") Icon("%a\AkelFiles\Plugs\SaveFile.dll", 0)
  -"" Command(4110) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 32)
}

"SAVEFILE"
{
  "Автосохранение" +Call("SaveFile::AutoSave")
  "Сохранение без BOM" +Call("SaveFile::SaveNoBOM")
  SEPARATOR
  "Настроить..." Call("SaveFile::Settings")
}

"LOGVIEW"
{
  "Настроить..." Call("LogView::Settings")
}

"EXPLORE"
{
  -"К текущему файлу" Call("Explorer::Main", 1, "")
  SEPARATOR
  -"Корень AkelPad'а" Call("Explorer::Main", 1, "%a") Icon("%a\AkelPad.exe", 0)
  -"Каталог плагинов" Call("Explorer::Main", 1, "%a\AkelFiles\Plugs") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 18)
  -"Каталог \Scripts\" Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Scripts") Icon("%a\AkelFiles\Plugs\Scripts.dll", 0)
  -"Каталог \Scripts\Include\" Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Scripts\Include") Icon("%a\AkelFiles\Plugs\Scripts.dll", 0)
  -"Синтаксические конфигурации" Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Coder")
  -"Белые списки ASpell" Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\SpellCheck")
  -"Cессии" Call("Scripts::Main", 1, "OpenSessionsDir.js") Icon("%a\AkelFiles\Plugs\Sessions.dll", 0)
  -"Описания плагинов" Call("Explorer::Main", 1, "%a\AkelFiles\Docs\Plugs")
  -"Справочники..." Exec("explorer /e, %a\AkelFiles\Help")
  SEPARATOR
  -"Program Files" Call("Explorer::Main", 1, "%ProgramFiles%")
}

"QSEARCH"
{
  "Быстрое переключение диалогов" +Call("QSearch::DialogSwitcher") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 34)
}

"SCRIPTS"
{
  -"Поиск/Замена с регулярными выражениями..." Call("Scripts::Main", 1, "SearchReplace.js") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 13)
  -"Фильтр строк с регулярными выражениями..." Call("Scripts::Main", 1, "LinesFilter.js")
  -"Расширенная сортировка строк..." Call("Scripts::Main", 1, "SortLines.js")
  SEPARATOR
  -"Текстовый калькулятор" Call("Scripts::Main", 1, "Calculator.js")
  -"Конвертер величин..." Call("Scripts::Main", 1, "measuresConverter.js")
  SEPARATOR
  -"Имя скрипта -> Строка меню" Call("Scripts::Main", 1, "ScriptNamesToContextMenuStrings.js")
  SEPARATOR
  -"Каталог ...\Scripts\..." Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Scripts") Icon("%a\AkelFiles\Plugs\Scripts.dll", 0)
  -"Каталог ...\Scripts\Include\..." Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Scripts\Include")
}

"SESSIONS"
{
  "Включить" Call("Sessions::Main", 10)
}

"SPACESTOTABS"
{
  -"Скрипты (кол-во пробелов из настроек)" Call("Scripts::Main", 1, "SpacesToTabs.js")
  -"Скрипты (кол-во пробелов = 2)" Call("Scripts::Main", 1, "SpacesToTabs.js", `-bSpaces=2`)
  -"Скрипты (запрос...)" Call("Scripts::Main", 1, "SpacesToTabs.js", `-bSpaces=-1`)
  SEPARATOR
  -"Все вхождения (запрос...)" Call("Scripts::Main", 1, "SpacesToTabs.js", `-lead=0 -bSpaces=-1 -oActn=1`)
}

"FORMAT"
{
  "Убрать пустые символы В КОНЦЕ   Alt+Backspace" Command(4174)
  -"Убрать пустые символы ПО КРАЯМ" Call("Scripts::Main", 1, "DelLeadTrailSpaces.js")
  -"Убрать повторяющиеся пустые символы ВНУТРИ" Call("Scripts::Main", 1, "DelInsideSpaces.js")
  SEPARATOR
  -"Удалить пустые строки" Call("Scripts::Main", 1, "DelEmptyLines.js")
  -"Убрать переводы строк" Call("Scripts::Main", 1, "DelLineFeed.js")
  "Вставить разрыв строки в местах переноса" Call("Format::LineFixWrap")
  SEPARATOR
  "Пробелы -> символы Табуляции"
  {
    -"Скрипты (кол-во пробелов из настроек)" Call("Scripts::Main", 1, "SpacesToTabs.js", `"1"`)
    -"Скрипты (по умолчанию)" Call("Scripts::Main", 1, "SpacesToTabs.js", `"2"`)
    -"Скрипты (запрос...)" Call("Scripts::Main", 1, "SpacesToTabs.js", `"3"`)
    SEPARATOR
    -"Блочный текст (из настроек)" Call("Scripts::Main", 1, "SpacesToTabs.js", `"1" "1"`)
    -"Блочный текст (запрос...)" Call("Scripts::Main", 1, "SpacesToTabs.js", `"3" "1"`)
  }
  -"Символы Табуляции -> Пробелы" Call("Scripts::Main", 1, "TabsToSpaces.js")
  SEPARATOR
  "Сортировать строки по возрастанию" Call("Format::LineSortStrAsc") Icon("%a\AkelFiles\Plugs\Format.dll", 0)
  "Сортировать строки по убыванию" Call("Format::LineSortStrDesc") Icon("%a\AkelFiles\Plugs\Format.dll", 1)
  "Сортировать строки по числовому возрастанию" Call("Format::LineSortIntAsc") Icon("%a\AkelFiles\Plugs\Format.dll", 2)
  "Сортировать строки по числовому убыванию" Call("Format::LineSortIntDesc") Icon("%a\AkelFiles\Plugs\Format.dll", 3)
  SEPARATOR
  "Инвертировать порядок строк" Call("Format::LineReverse")
  "Получить дублирующиеся строки" Call("Format::LineGetDuplicates")
  "Удалить дублирующиеся строки" Call("Format::LineRemoveDuplicates")
  SEPARATOR
  "" Command(4175)
  "" Command(4176)
  "" Command(4177)
  "" Command(4178)
  "" Command(4179)
  SEPARATOR
  "Раскладки/Кодировки"
  {
    -"Исправить набор En->Ru" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Layout -Direction=En->Ru`)
    -"Исправить набор Ru->En" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Layout -Direction=Ru->En`)
    -"Транслитерация En->Ru" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Translit -Direction=En->Ru`)
    -"Транслитерация Ru->En" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Translit -Direction=Ru->En`)
    "" Command(4182)
  }
  SEPARATOR
  -"Конвертировать..." Call("Scripts::Main", 1, "converter.js")
  -"Де/-шифровать..." Call("Scripts::Main", 1, "crypt.js")
  SEPARATOR
  -"Извлечь ссылки из текста" Call("Scripts::Main", 1, "getLinks.js")
}

"SCROLL"
{
  "Вертикальная синхронизация" Call("Scroll::SyncVert") Icon("%a\AkelFiles\Plugs\Scroll.dll", 1)
  "Горизонтальная синхронизация" Call("Scroll::SyncHorz") Icon("%a\AkelFiles\Plugs\Scroll.dll", 0)
  SEPARATOR
  "Автоматическая прокрутка текста" +Call("Scroll::AutoScroll")
  "Автоматическая передача фокуса" +Call("Scroll::AutoFocus")
  "Обработка непрокручиваемых операций" +Call("Scroll::NoScroll")
  SEPARATOR
  "Настроить..." Call("Scroll::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
}

"HOTKEYS"
{
  "Умная клавиша Home" +Call("SmartSel::SmartHome")
  "Умная клавиша End" +Call("SmartSel::SmartEnd")
  SEPARATOR
  "Клавиша Escape" Icon("%a\AkelFiles\Plugs\Exit.dll", 0)
  {
    "Включить" +Call("Exit::Main")
    SEPARATOR
    "Настроить..." Call("Exit::Settings")
  }
}

"FAVOURITESMANAGE"
{
  FAVOURITES
  SEPARATOR
  "Добавить в избранное..." Favourites(1) Icon(0)
  "Управление избранным..." Favourites(3) Icon(1)
  SEPARATOR
  -"Экспортировать..." Call("Scripts::Main", 1, "Favourites.js", "1") Icon("%a\AkelFiles\Plugs\ContextMenu.dll", 4)
  -"Импортировать (заменить)..." Call("Scripts::Main", 1, "Favourites.js", "2") Icon("%a\AkelFiles\Plugs\ContextMenu.dll", 5)
  -"Очистить избранное..." Call("Scripts::Main", 1, "Favourites.js", "0") Icon("%a\AkelFiles\Plugs\ContextMenu.dll", 6)

  SEPARATOR
  -"Изменить меню..." Call("ContextMenu::Main", 1, 1, "Избранное")
}

"SPLITSWITCH"
{
  "2 вертикальные части *" Command(4213)
  "2 горизонтальные части" Command(4214)
  "4 части" Command(4212)
}

"FONTSYZE"
{
  -"уменьшить   Ctrl+Num -" Command(4205) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 29)
  "11 pt" Font("", 0, 11)
  "12 pt" Font("", 0, 12)
  "14 pt" Font("", 0, 14)
  -"Увеличить   Ctrl+Num +"  Command(4204) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 28)
}



1.1. Меню ''Плагины'' Главного меню
Code:
"Пла&гины" Index(2)
{
  "Программирование" Icon("%a\AkelFiles\Plugs\Coder.dll", 5)
  {
    "Настроить..." Call("Coder::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
    -"Обновить кэш" Call("Coder::Settings", 2) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 3)
    SEPARATOR
    "Подсветка синтаксиса" +Call("Coder::HighLight") Icon("%a\AkelFiles\Plugs\Coder.dll", 0)
    SEPARATOR
    "Автодополнение" +Call("Coder::AutoComplete") Icon("%a\AkelFiles\Plugs\Coder.dll", 2)
    SEPARATOR
    -"Навигация (область слева)" Call("Scripts::Main", 1, "CodeFoldSwitcher.js") Icon("%a\AkelFiles\Plugs\Coder.dll", 1)
    -"Область навигации с окном" Call("Scripts::Main", 1, "CodeFoldSwitcher.js", `-ShowDock=1 -hideAll=1`) Icon("%a\AkelFiles\Plugs\Coder.dll", 3)
    -"Активный столбец" Call("Scripts::Main", 1, "ActiveColumnSwitch.js", `"%m" "%i" -Local=true`)
    SEPARATOR
    -"Удалить отладочные строки" Call("Scripts::Main", 1, "removeDebug.js")
    -"AStyle форматирование {}-кода: allman" Call("Log::Output", 1, `"%a\AkelFiles\Tools\AStyle.exe" -A1 -N -o -t -S -w -Y -M -H -U -p`, "", "", "", -1, -1, 1052673)
    -"AStyle форматирование {}-кода: java" Call("Log::Output", 1, `"%a\AkelFiles\Tools\AStyle.exe" -A2 -N -o -t -S -w -Y -M -H -U -p`, "", "", "", -1, -1, 1052673)
    -"Tidy форматирование XML" Call("Log::Output", 1, `"%a\AkelFiles\Tools\Tidy.exe" -utf8 -xml --indent auto --indent-spaces 3 --quiet yes --wrap 0 --show-errors 0`, "", "", "", 65001, 65001, 1052673)
    -"Tidy форматирование HTML" Call("Log::Output", 1, `"%a\AkelFiles\Tools\Tidy.exe" -utf8 --indent auto --indent-spaces 3 --quiet yes --wrap 0 --show-errors 1`, "", "", "", 65001, 65001, 1052673)
    SEPARATOR
     "Пробелы -> символы Табуляции" Menu("SPACESTOTABS")
    -"Символы Табуляции -> Пробелы" Call("Scripts::Main", 1, "TabsToSpaces.js")
    -"Вставка цвета..." Call("Scripts::Main", 1, "ChooseColor.js", `-default="127 127 127" -lcase=1`) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 30)
    SEPARATOR
    -"Валидация JavaScript Lint" Call("Log::Output", 1, `"%a\AkelFiles\Tools\jsl.exe" -process "%f" -output-format "__FILENAME__   __LINE__   __ERROR__" -nologo -nofilelisting`, "%d", "^(.+)\t(\d+)", "/FILE=$1 /GOTOLINE=$2:1") Icon("%a\AkelFiles\Plugs\Log.dll", 1)
    -"Валидация XML" Call("Scripts::Main", 1, "XMLValidator.js", `-log=1`)
    -"Тестирование RegExp-выражений..." Call("Scripts::Main", 1, "RegExpTestJS.js")
    "Hex-код" +Call("HexSel::Main")
  }

  "Парные скобки"
  {
    "Включить" +Call("XBrackets::Main")
    SEPARATOR
    "Перейти к парной скобке" Call("XBrackets::GoToMatchingBracket")
    "Выделить до парной скобки" Call("XBrackets::SelToMatchingBracket")
    SEPARATOR
    "Настроить..." Call("XBrackets::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  }

  "Специальные символы" Menu("SPECIALCHAR") Icon("%a\AkelFiles\Plugs\SpecialChar.dll", 0)

  "Номера строк, закладки" Icon("%a\AkelFiles\Plugs\LineBoard.dll", 0)
  {
    "Включить / Выключить   Alt+L" Call("LineBoard::Main")  Icon("%a\AkelFiles\Plugs\LineBoard.dll", 0)
    SEPARATOR
    "Список закладок" Call("LineBoard::Main::BookmarkList")
    "Перейти к предыдущей закладке   Alt+Up" Call("LineBoard::Main::PrevBookmark") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 1)
    "Перейти к следующей закладке   Alt+Down" Call("LineBoard::Main::NextBookmark") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 2)
    SEPARATOR
    "Удалить все закладки" Call("LineBoard::Main::DelAllBookmark") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 4)
    SEPARATOR
    "Настроить..." Call("LineBoard::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  }
 
  SEPARATOR
  "Буфер обмена" Icon("%a\AkelFiles\Plugs\Clipboard.dll", 0)
  {
    "Захват (окошко)" +Call("Clipboard::Capture") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 8)
    "Вставка серийного номера" Call("Clipboard::PasteSerial")
    SEPARATOR
    "Настроить..." Call("Clipboard::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  }
 
  "Просмотр лога" Icon("%a\AkelFiles\Plugs\Log.dll", 0)
  {
    "В реальном времени (по текущему файлу)" Call("Log::Watch")
    "Консоль..." Call("Log::Output") Icon("%a\AkelFiles\Plugs\Log.dll", 1)
    SEPARATOR
    "Настроить..." Call("Log::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  }

  "Скрипты" Icon("%a\AkelFiles\Plugs\Scripts.dll", 0)
  {
    -"Поиск/Замена с регулярными выражениями..." Call("Scripts::Main", 1, "SearchReplace.js") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 13)
    -"Фильтр строк с регулярными выражениями..." Call("Scripts::Main", 1, "LinesFilter.js")
    -"Расширенная сортировка строк..." Call("Scripts::Main", 1, "SortLines.js")
    SEPARATOR
    -"Текстовый калькулятор" Call("Scripts::Main", 1, "Calculator.js")
    -"Конвертер величин..." Call("Scripts::Main", 1, "measuresConverter.js")
    SEPARATOR
    -"Имя скрипта -> Строка меню" Call("Scripts::Main", 1, "ScriptNamesToContextMenuStrings.js")
    -"Редактировать текст меню (из ini)..." Call("Scripts::Main", 1, "PlugTextReadFromIni.js")
    SEPARATOR
    -"Версия WScript.exe" Call("Scripts::Main", 1, "EvalCmd.js", `"AkelPad.MessageBox(0, 'Версия сервера сценариев WScript: ' + ScriptEngineMajorVersion() + '.' + ScriptEngineMinorVersion(), "AkelPad", 64);"`)
    -"Каталог ...\Scripts\..." Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Scripts") Icon("%a\AkelFiles\Plugs\Scripts.dll", 0)
    -"Каталог ...\Scripts\Include\..." Call("Explorer::Main", 1, "%a\AkelFiles\Plugs\Scripts\Include")
  }

  -"Макросы..." +Call("Macros::Main") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 17)
  "Управление файлами"
  {
    -"Сравнить с файлом (WinMerge)..." Call("Scripts::Main", 1, "WinMerge.js")
    SEPARATOR
     "Управление избранным..." Favourites(3) Icon(1)
     "Управление списком свежих..." Call("RecentFiles::Manage") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 0)
     -"Управление сессиями..." +Call("Sessions::Main") Icon("%a\AkelFiles\Plugs\Sessions.dll", 0)
     SEPARATOR
     "Сохранение файлов" Icon("%a\AkelFiles\Plugs\ToolBar.dll", 5)
     {
       -"Сохранить с исходным временем" Call("Scripts::Main", 1, "saveStoreTime.js") Icon("%a\AkelFiles\Plugs\SaveFile.dll", 0)
       SEPARATOR
       "Автосохранение" +Call("SaveFile::AutoSave")
       "Сохранение без BOM" +Call("SaveFile::SaveNoBOM")
       SEPARATOR
       "Настроить..." Call("SaveFile::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
     }
  }
 
  SEPARATOR
  -"Горячие клавиши..." +Call("Hotkeys::Main") Icon("%a\AkelFiles\Plugs\Hotkeys.dll", 0)
  "Клавиша Esc" Icon("%a\AkelFiles\Plugs\Exit.dll", 0)
  {
    "Включить" +Call("Exit::Main")
    SEPARATOR
    "Настроить..." Call("Exit::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  }
  "Умная клавиша Home" +Call("SmartSel::SmartHome")
  "Умная клавиша End" +Call("SmartSel::SmartEnd")
  "Прокрутка"
  {
    "Вертикальная синхронизация" Call("Scroll::SyncVert") Icon("%a\AkelFiles\Plugs\Scroll.dll", 1)
    "Горизонтальная синхронизация" Call("Scroll::SyncHorz") Icon("%a\AkelFiles\Plugs\Scroll.dll", 0)
    SEPARATOR
    "Автоматическая прокрутка текста" +Call("Scroll::AutoScroll")
    "Автоматическая передача фокуса" +Call("Scroll::AutoFocus")
    "Обработка непрокручиваемых операций" +Call("Scroll::NoScroll")
    SEPARATOR
    "Настроить..." Call("Scroll::Settings") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 19)
  }
  "Полноэкранный режим" Icon("%a\AkelFiles\Plugs\FullScreen.dll", 0)
  {
    -"Обычный" Call("Scripts::Main", 1, "FullScreenEx.js")
    -"Только с тулбаром" Call("Scripts::Main", 1, "FullScreenEx.js", `-ToolBar="ToolBar"`)
    -"Псевдо-SDI" Call("Scripts::Main", 1, "FullScreenEx.js", `-ToolBar="ToolBar" -Menu=true -StatusBar=true`)
  }
  SEPARATOR
  "Свернуть в трей" Call("MinimizeToTray::Now") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 15)
  "Сворачивать в трей всегда" +Call("MinimizeToTray::Always")
  "Быстрое переключение диалогов" +Call("QSearch::DialogSwitcher")

#  SEPARATOR
#  "Звуковой набор текста" Icon("%a\AkelFiles\Plugs\Sounds.dll", 0)
#  {
#    "Включить" +Call("Sounds::Main")
#    SEPARATOR
#    "Настроить..." Call("Sounds::Settings")
#  }
#  "Машинное чтение текста" +Call("Speech::Main") Icon("%a\AkelFiles\Plugs\Speech.dll", 0)

  SEPARATOR
  -"Ассоциировать файлы" Call("Scripts::Main", 1, "reassoc.js")
  SEPARATOR
  -"Изменить меню..." Call("ContextMenu::Main", 1, 1, "Плагины")
}



1.2. Меню ''Избранное'' Главного меню
Code:
"&Избранное" Index(-3)
{
  FAVOURITES
  SEPARATOR
  "Добавить в избранное..." Favourites(1) Icon(0)
  "Управление избранным..." Favourites(3) Icon(1)
  SEPARATOR
  -"Экспортировать..." Call("Scripts::Main", 1, "Favourites.js", "1") Icon("%a\AkelFiles\Plugs\ContextMenu.dll", 4)
  -"Импортировать (заменить)..." Call("Scripts::Main", 1, "Favourites.js", "2") Icon("%a\AkelFiles\Plugs\ContextMenu.dll", 5)
  -"Очистить избранное..." Call("Scripts::Main", 1, "Favourites.js", "0") Icon("%a\AkelFiles\Plugs\ContextMenu.dll", 6)

  SEPARATOR
  -"Изменить меню..." Call("ContextMenu::Main", 1, 1, "Избранное")
}



2. Меню окна редактирования, RU
Code:
"Интернет" Icon("%a\AkelFiles\Plugs\icons\alink.ico")
{
  -"Перевести: Ru -> En (Google)..." Call("Scripts::Main", 1, "TranslateWithGoogleAPI.js", `-lngS="ru" -lngT="en" -Msg=1`)
  -"Перевести: En -> Ru (Google)..." Call("Scripts::Main", 1, "TranslateWithGoogleAPI.js", `-lngS="en" -lngT="ru" -Msg=1`)
  -"Переводчик..." Call("Scripts::Main", 1, "Translator.js")
SEPARATOR
  -"Открыть страницу: Auto -> Ru (Google)" Call("Scripts::Main", 1, "InternetRequest.js", `"http://translate.google.com/#auto|ru|\s"`)
  -"Открыть страницу: Auto -> En (Google)" Call("Scripts::Main", 1, "InternetRequest.js", `"http://translate.google.com/#auto|en|\s"`)
  -"Открыть страницу: Словари (Lingvo)" Call("Scripts::Main", 1, "InternetRequest.js", `"http://lingvo.yandex.ru/en?text=\s"`)
SEPARATOR
  -"Открыть в Энциклопедиях (Яndex)" Call("Scripts::Main", 1, "InternetRequest.js", `"http://slovari.yandex.ru/\s/значение/"`)
  -"Открыть в Википедии (ru)" Call("Scripts::Main", 1, "InternetRequest.js", `"http://ru.wikipedia.org/w/index.php?Search&search=\s"`)
SEPARATOR
  -"Искать в Яndex" Call("Scripts::Main", 1, "InternetRequest.js", `"http://yandex.ua/yandsearch?text=\s"`)
;  -"Искать в hotline.ua" Call("Scripts::Main", 1, "InternetRequest.js", `"http://hotline.ua/sr/?q=\s"`)
}

SET(8)
  SEPARATOR
  "Копировать    Ctrl+C" Command(4154) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 8)
  "Вырезать   Ctrl+X" Command(4153) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 7)
  "Вставить   Ctrl+V" Command(4155) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 9)
UNSET(8)

SEPARATOR
"Выделить"
{
  -"[code]{...}[/code]" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="[code]" -tagEnd="[/code]" -inclTags=0`)
  -"[quote]{...}[/quote]" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="[quote]" -tagEnd="[/quote]" -inclTags=0`)
  -"[b][more][/b]{...}[/more]" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="[b][more" -tagEnd="[/more]" -inclTags=1`)
  -"[b][more]{...}[/more][/b]" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="[b][more" -tagEnd="[/more][/b]" -inclTags=1`)
  SEPARATOR
  -"<tr>{...}</tr>" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="<tr" -tagEnd="</tr>" -inclTags=1`)
  -"<table>{...}</table>" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="<table" -tagEnd="</table>" -inclTags=1`)
  -"<div>{...}</div>" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="<div" -tagEnd="</div>" -inclTags=1`)
  -"<a>{...}</a>" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="<a" -tagEnd="</a>" -inclTags=1`)
  SEPARATOR
  -"{...}" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="{" -tagEnd="}"`)
  -"{/*...*/}" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="/*" -tagEnd="*/"`)
  -"\r{...}\r" Call("Scripts::Main", 1, "BlockSelect.js", `-tagStart="\r" -tagEnd="\r" -inclTags=0`)
}

"Копировать"
{
  "Текст (с форматированием)   Ctrl+Alt+C" Call("Coder::Settings", 4)
  SEPARATOR
  -"Дату" Call("Scripts::Main", 1, "DateCopyToCB.js", `""`)
  -"Дату наоборот (слитно)" Call("Scripts::Main", 1, "DateCopyToCB.js", `"yyyyMMdd"`)
  -"Дату наоборот (.)" Call("Scripts::Main", 1, "DateCopyToCB.js", `"yyyy.MM.dd"`)
  -"Дату и Время наоборот" Call("Scripts::Main", 1, "DateCopyToCB.js", `"yyyyMMdd_HHmmss"`) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 26)
}

"Вставить"
{
  -"Файл..." Call("Scripts::Main", 1, "InsertFileEx.js", `"%f"`)
  -"> ..." Call("Scripts::Main", 1, "InsertBefore.js")
  -"Дату" Call("Scripts::Main", 1, "DateInsert.js", `"dd.MM.yyyy"`, 0)
  -"Дату наоборот" Call("Scripts::Main", 1, "DateInsert.js", `"yyyy.MM.dd"`, 0)
  -"Дату и Время наоборот" Call("Scripts::Main", 1, "DateInsert.js", `"yyyy.MM.dd HH:mm:ss"`, 0) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 26)
  SEPARATOR
  "Символ..." Command(4163) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 14)
}

"HTML"
{
  -"<a href=''  CB  ''>...</a>" Call("Scripts::Main", 1, "insertTag.js", `'-template="<a href=\"%%C\">%%S</a>"'`) Icon("%a\AkelFiles\Plugs\icons\alink.ico")
  -"<h3>...</h3>" Insert("<h3>\s</h3>", 1) Icon("%a\AkelFiles\Plugs\icons\head.ico")
  -"<center>...</center>" Insert("<center>\s</center>", 1) Icon("%a\AkelFiles\Plugs\icons\center.ico")
  -"<p>...</p>" Insert("<p>\s</p>", 1)
  -"<ul>...</ul>" Call("Scripts::Main", 1, "XMLStructure.js")
  -"<b>...</b>" Insert("<b>\s</b>", 1) Icon("%a\AkelFiles\Plugs\icons\bold.ico")
  -"<i>...</i>" Insert("<i>\s</i>", 1) Icon("%a\AkelFiles\Plugs\icons\italic.ico")
  -"<u>...</u>" Insert("<u>\s</u>", 1) Icon("%a\AkelFiles\Plugs\icons\underline.ico")
  SEPARATOR
  -"<br> + переводы строк" Call("Scripts::Main", 1, "HTMLlinefeed.js") Icon("%a\AkelFiles\Plugs\icons\br.ico")
  SEPARATOR
  -"Убрать лишние тэги" Call("Scripts::Main", 1, "HTMLDelUselessTags.js")
  -"Убрать все HTML-тэги" Call("Scripts::Main", 1, "HTMLDelAllTags.js")
}

"BBCode"
{
  -"[url=|]...[/url]" Insert('[url=\|]\s[/url]', 1) Icon("%a\AkelFiles\Plugs\icons\alink.ico")
  -"[url=  CB  ]...[/url]" Call("Scripts::Main", 1, "insertTag.js", `'-template="[url=%%C]%%S[/url]"'`)
  -"[url=...][img]...[/img][/url]" Insert('[url=\s][img]\s[/img][/url]', 1)
  -"[quote='''']...[/quote]" Insert(`[quote=""]\s[/quote]`, 1)
  -"[quote]...[/quote]" Insert("[quote]\s[/quote]", 1)
  -"[quote=''  CB  '']...[/quote]" Call("Scripts::Main", 1, "insertTag.js", `-template='[quote="%%C"]%%S%%|[/quote]'`)
  -"[code]...[/code]" Insert("[code]\s[/code]", 1)
  -"[more=''...''] | [/more]" Insert('[more="\s"]\n\|[/more]', 1)
  -"[b][more=''...''][/b] | [/more]" Insert('[b][more="\s"][/b]\n\|[/more]', 1)
  -"[more=''...''][code] | [/code][/more]" Insert('[more="\s"]\n[code]\|[/code]\n[/more]', 1)
  -"[spoiler=...][code] | [/code][/spoiler]" Insert('[spoiler=\s]\n[code]\|[/code]\n[/spoiler]', 1)
  -"[b]...[/b]   Ctrl+B" Insert("[b]\s[/b]", 1) Icon("%a\AkelFiles\Plugs\icons\bold.ico")
  -"[i]...[/i]   Ctrl+I" Insert("[i]\s[/i]", 1) Icon("%a\AkelFiles\Plugs\icons\italic.ico")
  -"[u]...[/u]   Ctrl+U" Insert("[u]\s[/u]", 1) Icon("%a\AkelFiles\Plugs\icons\underline.ico")
  -"[color= | ]...
" Insert("[color=\|]\s[/color]", 1)
}

"Другое"
{
-"AutoComplete: $[...]" Insert("$[\s]", 1)
SEPARATOR
-"Wiki: '''Ж''' " Insert("'''\s'''", 1) Icon("%a\AkelFiles\Plugs\icons\bold.ico")
-"Wiki: ''К'' " Insert("''\s''", 1) Icon("%a\AkelFiles\Plugs\icons\italic.ico")
-"Wiki: _П_" Insert("__\s__", 1) Icon("%a\AkelFiles\Plugs\icons\underline.ico")
-"Wiki: [ CB _ ... ]" Call("Scripts::Main", 1, "insertTag.js", `'-template="[%%C %%S]"'`) Icon("%a\AkelFiles\Plugs\icons\alink.ico")
SEPARATOR
"i.ua: [cit]...[/cit]" Insert("[cit]\s[/cit]", 1)
"i.ua: <cite>...</cite>" Insert("<cite>\s</cite>", 1)
}

"Преобразовать" Icon("%a\AkelFiles\Plugs\ContextMenu.dll", Cool
{
"Убрать пустые символы В КОНЦЕ Alt+Backspace" Command(4174)
-"Убрать пустые символы ПО КРАЯМ" Call("Scripts::Main", 1, "DelLeadTrailSpaces.js")
-"Убрать повторяющиеся пустые символы ВНУТРИ" Call("Scripts::Main", 1, "DelInsideSpaces.js")
SEPARATOR
-"Удалить пустые строки" Call("Scripts::Main", 1, "DelEmptyLines.js")
-"Убрать переводы строк" Call("Scripts::Main", 1, "DelLineFeed.js")
"Вставить разрыв строки в местах переноса" Call("Format::LineFixWrap")
SEPARATOR
"Пробелы -> символы Табуляции" Menu("SPACESTOTABS")
-"Символы Табуляции -> Пробелы" Call("Scripts::Main", 1, "TabsToSpaces.js")
SEPARATOR
"Сортировать строки по возрастанию" Call("Format::LineSortStrAsc") Icon("%a\AkelFiles\Plugs\Format.dll", 0)
"Сортировать строки по убыванию" Call("Format::LineSortStrDesc") Icon("%a\AkelFiles\Plugs\Format.dll", 1)
"Сортировать строки по числовому возрастанию" Call("Format::LineSortIntAsc") Icon("%a\AkelFiles\Plugs\Format.dll", 2)
"Сортировать строки по числовому убыванию" Call("Format::LineSortIntDesc") Icon("%a\AkelFiles\Plugs\Format.dll", 3)
SEPARATOR
"Инвертировать порядок строк" Call("Format::LineReverse")
"Получить дублирующиеся строки" Call("Format::LineGetDuplicates")
"Удалить дублирующиеся строки" Call("Format::LineRemoveDuplicates")
SEPARATOR
"" Command(4175)
"" Command(4176)
"" Command(4177)
"" Command(4178)
"" Command(4179)
SEPARATOR
"Раскладки/Кодировки"
{
-"Исправить набор En->Ru" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Layout -Direction=En->Ru`)
-"Исправить набор Ru->En" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Layout -Direction=Ru->En`)
-"Транслитерация En->Ru" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Translit -Direction=En->Ru`)
-"Транслитерация Ru->En" Call("Scripts::Main", 1, "Keyboard.js", `-Type=Translit -Direction=Ru->En`)
"" Command(4182)
}
SEPARATOR
-"Конвертировать..." Call("Scripts::Main", 1, "converter.js")
-"Де/-шифровать..." Call("Scripts::Main", 1, "crypt.js")
SEPARATOR
-"Извлечь ссылки из текста" Call("Scripts::Main", 1, "getLinks.js")
}

SEPARATOR
-"Отменить всё" Call("Scripts::Main", 1, "UndoAllNoScroll.js") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 10)
SEPARATOR
-"Переименовать файл..." Call("Scripts::Main", 1, "RenameFileDialog.js", `"-ext=0"`)

SEPARATOR
-"В белый список (txt)" Call("Scripts::Main", 1, "SpellCheckAddToWhiteList.js", `-ext="txt"`)
"Правописание: варианты" Call("SpellCheck::Suggest") Icon("%a\AkelFiles\Plugs\Toolbar.dll", 35)

SEPARATOR
"Отметить" Icon("%a\AkelFiles\Plugs\Coder.dll", 0)
{
#Highlight selected
"Оранжевым" Call("Coder::HighLight", 2, 0, "#FFA000", 0, 0, 12) Icon("%a\AkelFiles\Plugs\icons\pen-orange.ico")
"Жёлтым" Call("Coder::HighLight", 2, 0, "#FFFF9B", 1, 0, 13) Icon("%a\AkelFiles\Plugs\Coder.dll", Cool
"Зелёным" Call("Coder::HighLight", 2, 0, "#00A000", 0, 0, 14) Icon("%a\AkelFiles\Plugs\Coder.dll", 10)
"Сиреневым" Call("Coder::HighLight", 2, 0, "#A0A0FF", 0, 0, 15) Icon("%a\AkelFiles\Plugs\icons\pen-lilac.ico")
"Фиолетовым" Call("Coder::HighLight", 2, 0, "#BE7DFF", 1, 0, 16) Icon("%a\AkelFiles\Plugs\Coder.dll", 9)
"Красным" Call("Coder::HighLight", 2, 0, "#FF0000", 0, 0, 17) Icon("%a\AkelFiles\Plugs\icons\pen-red.ico")
"Бирюзовым" Call("Coder::HighLight", 2, 0, "#9BFFFF", 1, 0, 1Cool Icon("%a\AkelFiles\Plugs\Coder.dll", 6)
SEPARATOR
#Unhighlight all
-"Убрать все отметки" Call("Coder::HighLight", 3, 0) Icon("%a\AkelFiles\Plugs\Coder.dll", 11)
}

SEPARATOR
-"Изменить меню..." Call("ContextMenu::Main", 1, 2)[/code]



3. Меню вкладок, RU
Code:
"" Command(4319)
-"Закрыть безымянные" Call("Scripts::Main", 1, "CloseUnnamedAll.js", `-CloseUnnamed=true`)
"Закрыть все, кроме активной" Command(4320)
"Вернуть закрытую вкладку   Ctrl+Shift+T" Command(5002)

SEPARATOR
"Копировать" Icon("%a\AkelFiles\Plugs\ToolBar.dll", 8)
{
  -"Только имя" Call("Scripts::Main", 1, "FileNameCopyToCB.js", `"%f"`)
  -"Только путь" Call("Scripts::Main", 1, "FilePathCopyToCB.js", `"%d"`)
  -"Полное имя файла" Call("Scripts::Main", 1, "FilePathCopyToCB.js", `"%f"`)

  SEPARATOR
  -"Имя файла для BBCode" Call("Scripts::Main", 1, "ScriptNameCopyAsBBCode.js", `"%f"`)
  -"Файл в [more]..."  Call("Scripts::Main", 1, "ScriptCopyToBlock.js", `-file="%f" -block="more"`)
  -"Файл в [b][more][/b]..."  Call("Scripts::Main", 1, "ScriptCopyToBlock.js", `-file="%f" -block="more" -bold=1`)
}
"Добавить в избранное" Favourites(2) Icon(0)
-"Отменить всё" Call("Scripts::Main", 1, "UndoAll.js") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 10)

SEPARATOR
-"Новый на основе текущего" Call("Scripts::Main", 1, "NewFilebyRecent.js") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 1)
-"Переименовать файл..." Call("Scripts::Main", 1, "RenameFileDialog.js")
-"Удалить файл" Call("Scripts::Main", 1, "DeleteFile.js") Icon("%a\AkelFiles\Plugs\ToolBar.dll", 25)

SEPARATOR
-"Открыть из папки..." Call("Scripts::Main", 1, "OpenFromFileFolder.js", `"%f"`) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 2)
-"Открыть все файлы папки" Call("Scripts::Main", 1, "OpenAllFilesFromFileFolder.js", `"%f"`)
 "Показать в Проводнике Windows..." Exec("explorer /e,/select, %f") Icon("%a\AkelFiles\Plugs\Explorer.dll", 0)
-"Показать в TotalCommander'е..." Call("Scripts::Main", 1, "openFileIn.js", '"Total Commander" "%f"') Icon("%a\AkelFiles\Plugs\icons\TC.ico")
-"Показать в панели Проводника" Call("Explorer::Main", 1, "%f") Icon("%a\AkelFiles\Plugs\icons\explorer.ico")
"Контекстное меню Проводника"
{
  EXPLORER
}

SEPARATOR
SET(4)  #Только для MDI
"Окна &вертикально" Command(4308) Icon("%a\AkelFiles\Plugs\Toolbar.dll", 23)
UNSET(4)
SET(1)
"Выбор окна...   F10" Command(4327)
UNSET(1)

;SEPARATOR
;-"Информация о файле..." Call("FileInfo::Main") Icon("%a\AkelFiles\Plugs\FileInfo.dll", 0)

SEPARATOR
-"Изменить меню..." Call("ContextMenu::Main", 1, 3)



4. Меню ссылок, RU
Code:
-"Открыть URL в IE" Call("Scripts::Main", 1, "URLOpen.js", `"%u" "0" "explorer.exe"`)

SEPARATOR
-"Перейти к сайту (по умолчанию)" Call("Scripts::Main", 1, "URLOpen.js", `"%u" "1"`)
-"Перейти к сайту в IE" Call("Scripts::Main", 1, "URLOpen.js", `"%u" "1" "explorer.exe"`)

SEPARATOR
-"Открыть (автовыбор)" Call("Scripts::Main", 1, "OpenByLSC.js", `"%u"`)
-"Закачать при помощи DM" Call("Scripts::Main", 1, "DownloadMaster.js", `-url="%u" -dmpath="%ProgramFiles%\Download Master\dmaster.exe" -cmdline="hidden=1"`)
-"Добавление закачки в DM..." Call("Scripts::Main", 1, "DownloadMaster.js", `-url="%u" -dmpath="%ProgramFiles%\Download Master\dmaster.exe"`) Icon("%a\AkelFiles\Plugs\icons\DM.ico")

SEPARATOR
"Копировать" Link(2) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 8)
"Заменить" Link(5)
"Удалить" Link(6) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 25)
"Вырезать" Link(4) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 7)
"Выделить" Link(3)

SEPARATOR
-"Изменить меню..." Call("ContextMenu::Main", 1, 4)



5. Меню последних файлов, RU
Code:
"Копировать" Icon("%a\AkelFiles\Plugs\ToolBar.dll", 8)
{
  -"Только имя" Call("Scripts::Main", 1, "FileNameCopyToCB.js", `"%f"`)
  -"Только путь" Call("Scripts::Main", 1, "FilePathCopyToCB.js", `"%d"`)
  -"Полное имя файла" Call("Scripts::Main", 1, "FilePathCopyToCB.js", `"%f"`)
}
"Добавить в избранное" Favourites(2) Icon(0)
-"Убрать запись" Call("Scripts::Main", 1, "DeleteRecentFile.js", `'%f'`) Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 6)

SEPARATOR
-"Новый на основе выбранного" Call("Scripts::Main", 1, "NewFilebyRecent.js", `"%f"`)  Icon("%a\AkelFiles\Plugs\ToolBar.dll", 1)
#-"Письмо в LN на основе содержимого" Call("Scripts::Main", 1, "CreateLNMemo.js", `"%f"`)
SEPARATOR
-"Вставить файл..." Call("Scripts::Main", 1, "InsertFileEx.js", `"%f"`)

SEPARATOR
-"Открыть из папки..." Call("Scripts::Main", 1, "OpenFromFileFolder.js", `"%f"`) Icon("%a\AkelFiles\Plugs\ToolBar.dll", 2)
-"Открыть все файлы папки" Call("Scripts::Main", 1, "OpenAllFilesFromFileFolder.js", `"%f"`)
; "Показать в Проводнике..." Call("FileInfo::Main", "browse", "%f")
 "Показать в Проводнике Windows..." Exec("explorer /e,/select, %f") Icon("%a\AkelFiles\Plugs\Explorer.dll", 0)
-"Показать в TotalCommander'е..." Call("Scripts::Main", 1, "openFileIn.js", '"Total Commander" "%f"') Icon("%a\AkelFiles\Plugs\icons\TC.ico")
-"Показать в панели Проводника" Call("Explorer::Main", 1, "%f") Icon("%a\AkelFiles\Plugs\icons\explorer.ico")
"Контекстное меню Проводника"
{
  EXPLORER
}

SEPARATOR
"Управление списком свежих..." Call("RecentFiles::Manage") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 0)
-"Очистить весь список" Call("Scripts::Main", 1, "ClearRecentFiles.js") Icon("%a\AkelFiles\Plugs\RecentFiles.dll", 5)

SEPARATOR
-"Изменить меню..." Call("ContextMenu::Main", 1, 5)



P.S.
Скриншоты похожих (скрины немного устарели) менюх здесь.


Last edited by VladSh on Thu Sep 27, 2012 11:11 am; edited 48 times in total
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5321

PostPosted: Sat Jul 14, 2007 12:00 pm    Post subject: Reply with quote

Quote:
Updated: Замечено, что EXPLORER -> Open в любом меню работает корректно, т.е. если жму в окне редактирования/на текущей вкладке, то открывается именно открытый в текущей вкладке файл; если вызываю из меню последних файлов - открывается именно выделенный файл из меню последних файлов.
Именно поэтому в релизе к 3.3.4 значится "Добавлено: сообщение AKD_GETRECENTFILES."

Code:
"OpenFileDirectory" Call("Scripts::Main", 1, "OpenFileDirectory.js", "%f", 0)

"CopyFileNameToClipboard" Call("Scripts::Main", 1, "CopyEditFile.js", "%f", 0)

В параметре %f есть необходимость, только, если в скрипте идет обработка аргументов вызова (например как в OpenFileDirectoryArg.js).
Back to top
View user's profile Send private message Send e-mail
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5321

PostPosted: Sun Jul 15, 2007 12:43 pm    Post subject: Reply with quote

Added: ContextMenu::Main index menu parameter to external plugin call.


ContextMenu plugin v1.3
Back to top
View user's profile Send private message Send e-mail
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5321

PostPosted: Sun Jul 15, 2007 12:47 pm    Post subject: Reply with quote

VladSh
Quote:
Хотелось бы чтобы либо вручную командовать параметром Main/Show(?!) для определённого меню...

Для открытия "Меню вкладок":
Code:
"Settings" Call("ContextMenu::Main", 1, 2)
; Parameters: 1 -execute, 2 -menu index
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Mon Jul 16, 2007 8:33 am    Post subject: ОТЛИЧНО Reply with quote

Instructor wrote:
Added: ContextMenu::Main index menu parameter to external plugin call.

Сила!
Back to top
View user's profile Send private message Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Mon Jul 16, 2007 10:19 am    Post subject: Глюк Reply with quote

Ситуация: я сдуру назначил для ContextDLL (старого плагина) комбинацию клавиш Alt+P, теперь когда удалил плагин и нажимаю, то вылетает такое сообщение: "Heвoзмoжнo oткpыть фaйл "C:\Program Files\AkelPad\AkelFiles\Plugs\ContextDLL.dll"!"
Где бы можно было переопределить эту комбинацию клавиш (настройки, ini) - не нашёл.
Хотелось бы вернуть обратно, т.е. чтобы по Alt+P вылетало окошко с плагинами.

Вопрос: как с этим бороться? Confused
Вопрос 2: можно ли сделать так, чтобы запрещать изменять комбинации клавиш, которые уже используются в самом AkelPad (указанные справа от команды в главном меню)?
Back to top
View user's profile Send private message Visit poster's website
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5321

PostPosted: Mon Jul 16, 2007 11:13 am    Post subject: Reply with quote

Quote:
... теперь когда удалил плагин и нажимаю, то вылетает такое сообщение: "Heвoзмoжнo oткpыть фaйл...
Поможет кнопка "Почистить" в диалоге плагинов.
Back to top
View user's profile Send private message Send e-mail
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Mon Jul 16, 2007 12:24 pm    Post subject: + Reply with quote

Instructor wrote:
Поможет кнопка "Почистить" в диалоге плагинов.
Действительно помогла Smile с перезагрузкой Akel'а.
Back to top
View user's profile Send private message Visit poster's website
VladSh



Joined: 29 Nov 2006
Posts: 2610
Location: Киев, Русь

PostPosted: Tue Jul 17, 2007 11:12 am    Post subject: Вопросы уже уехали Reply with quote

Instructor

Назад в будущее Smile
VladSh wrote:
Я просто не хотел каждый раз беспокоить Вас по пустякам.
Хочется для контекста по списку свежих ещё пару действий:
1. Удалить из списка ненужный лейбл файла (наверняка функция удаления у Вас уже есть, похоже удаляются несуществующие файлы).
2. Создать новый файл на основе выделенного (текст из этого файла скопировать в новый).
Возможно, и даже скорее всего, хотелки будут рости Mr. Green именно поэтому (да и Вам, возможно, было бы проще) я хотел несколько готовых функций в общей dll, чтобы дёргать их оттуда из разных мест, т.е. дать их в публичный доступ.

По 1-му вопросу. Может можно что-то сделать?
Idea Вообще по последним файлам есть идея сделать подшивки, т.е. чтобы пользователь мог по какому-то признаку формировать подшивки "излюбленных" Smile файлов. Выбираем подшивку, и далее работаем со списком последних файлов из неё. По моему было бы удобно. Но идея ещё сырая, путь пока "поварится".
Мне хотябы скриптец по удалению лейбла наименования файла из списка последних... Embarassed

По 2-му можно сделать вставку файла (выбором, как Файл\Открыть...) с заменой выделения.
Back to top
View user's profile Send private message Visit poster's website
DV



Joined: 16 Nov 2006
Posts: 840
Location: Kyiv, Ukraine

PostPosted: Wed Jul 18, 2007 11:52 am    Post subject: Reply with quote

Плагин - бомба (в хорошем смысле слова) Smile
А где описание всех его функций и параметров?
Back to top
View user's profile Send private message
Instructor
Site Admin


Joined: 06 Jul 2006
Posts: 5321

PostPosted: Wed Jul 18, 2007 1:57 pm    Post subject: Reply with quote

DV
Quote:
А где описание всех его функций и параметров?
Используюмые методы можно посмотреть в дефолтных меню. Что касаемо метода Call() с дополнительными параметрами, то это уже зависит от вызываемого плагина.
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic    AkelPad Forum Index -> Plugins All times are GMT
Goto page Previous  1, 2, 3, ... 41, 42, 43  Next
Page 2 of 43

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


SourceForge.net Logo Powered by phpBB © 2001, 2005 phpBB Group