function getArg(argName, defaultVal) {
return typeof args[argName] == "undefined" // argName in args
? defaultVal
: args[argName];
}
Она?
Клонировал гитхаб, скопировал всё с первого коммита (07.09.2012 13:09:22) Push all current releases и поиском нашёл самую маленькую функцию getArg() (в convertEscapes.js).
В чём плюс по сравнению с более свежей версией или AkelPad.GetArgValue()?
Infocatcher
Да, я этот вариант смотрел в converter.js прежде чем написать сюда. Пытался его преобразовать в парсинг строки (чтобы было вообще без WScript.Arguments, а чтобы на вход в функцию подавалась строка из параметров), но не получилось...
VladSh
Хм, мне кажется, лучше разбитие строки на отдельные аргументы оставить программе, чем вручную какие-нибудь экранированные кавычки выцеплять. Да и чтобы логика обработки была везде одинаковая.
Как по мне, или делать перебор аргументов, или сразу JSON и передавать (ну, чтобы вся строка AkelPad.GetArgLine() была js-объектом).
Infocatcher
Вы дали просто гениальное предложение - я на json перейду!
Я бы с удовольствием использовал механизм AkelPad'а для парсинга аргументов, но нет такого метода в Scripts-плагине, чтобы на вход получал строку. У меня нет аргументов. Строку с таким образом заданными параметрами я получаю из конфиг-файлов.
Если я каким-то образом попытаюсь схимичить и подсунуть в агрументы свою строку, чтобы воспользоваться методом GetArgValue, то я запорю аргументы моего скрипта... Если можно было как-то добавить к уже существующим, то было бы вообще здорово!
VladSh wrote:Не могли бы Вы немножечко усовершенствовать скрипт GetNumberMembers.js?
Хотелось бы дополнительный параметр output, который бы позволял указать, куда выводить результат:
- 0 - заменять в окне редактирования (как есть сейчас);
- 1 - вывести в панель Log-плагина;
- 2 - ну ещё можно было бы вывести в окошке InputBox, чтобы можно было сразу же скопировать. Но это необязательно, можно скопировать и из панели Log-плагина, только будет чуть больше действий.
Люблю, чтобы знаки "=", "+", "|" и т.д. с обеих сторон отделялись пробелами (типографские правила - лучше для восприятия, - не сливается в единую строку), но и так гораздо больше, чем хотелось. Спасибо!
PluginText.js - I just came upon this gem and this is awesome.
GREAT way to customize - many thanks.
One small issue: When editing files, I get an error message by coder plugin, telling me that akelmenu.coder contains unknown variable "${Num_Alt}" that doesnt exist in the current theme - no matter what theme I try. When I click Continue it doesn't seem to have a problem, so no big deal. Just wondering if I am missing something important here?
This file contains two non-standard variables: "CMD" and "NUM_ALT".
Two ways to solve the problem:
1. Add these variables to the list (Coder plugin settings -> General)
2. In akelmenu.coder, replace all: "CMD" with "COMM" and "NUM_ALT" with "NUM".
Thank you. Went with the 2nd suggestion, carefully replacing those words one at a time. All seems good now.
Is there a reason the downloaded coders start with an _underscore?
I removed it - to make them look and fit in with the other coders. Maybe that was a mistake and the _underscrore was meant to stay in place?