Изначально нужно было добавить подсветку синтаксиса для кодов 1С. Был найден рабочий хук BBкодов для подсветки синтаксиса, в котором для каждого языка создан отдельный файл с описанием синтаксиса. Вроде бы задача сводилась к тому чтобы по образу и подобию добавить файл для 1С, но столкнулся с тем, что символы русской раскладки игнорируются. Основные алгоритмы работы описаны в файле ядра хука, который запакован. В папке src он распакован, и после его анализа вызвал подозрение кусок кода:
function parseParams(str)
{
var match,
result = {},
arrayRegex = new XRegExp("^\\[(?<values>(.*?))\\]$"),
regex = new XRegExp(
"(?<name>[\\w-]+)" +
"\\s*:\\s*" +
"(?<value>" +
"[\\w-%#]+|" + // word
"\\[.*?\\]|" + // [] array
'".*?"|' + // "" string
"'.*?'" + // '' string
")\\s*;?",
"g"
)
;
где захотелось заменить
"(?<name>[\\w-]+)" +
на
"(?<name>[a-zA-Zа-яА-Я-]+)" +
и
"[\\w-%#]+|" + // word
на
"[a-zA-Zа-яА-Я-%#]+|" + // word
Но после внесения изменений получить рабочий запакованный файл ядра не удалось. Перепробовал несколько онлайн сервисов для упаковки JS. Самый лучший результат дал http://dean.edwards.name/packer/ (для сравнения паковал исходный файл и сравнивал с запакованным родным), но все же отличия присутствуют - даже упакованный таким образом оригинальный файл исходника не работает под IPB.
Как внести изменения в хук и правильно его запаковать?
Изменено пользователем samtron76
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Изначально нужно было добавить подсветку синтаксиса для кодов 1С. Был найден рабочий хук BBкодов для подсветки синтаксиса, в котором для каждого языка создан отдельный файл с описанием синтаксиса. Вроде бы задача сводилась к тому чтобы по образу и подобию добавить файл для 1С, но столкнулся с тем, что символы русской раскладки игнорируются. Основные алгоритмы работы описаны в файле ядра хука, который запакован. В папке src он распакован, и после его анализа вызвал подозрение кусок кода:
function parseParams(str) { var match, result = {}, arrayRegex = new XRegExp("^\\[(?<values>(.*?))\\]$"), regex = new XRegExp( "(?<name>[\\w-]+)" + "\\s*:\\s*" + "(?<value>" + "[\\w-%#]+|" + // word "\\[.*?\\]|" + // [] array '".*?"|' + // "" string "'.*?'" + // '' string ")\\s*;?", "g" ) ;где захотелось заменить
на
и
на
Но после внесения изменений получить рабочий запакованный файл ядра не удалось. Перепробовал несколько онлайн сервисов для упаковки JS. Самый лучший результат дал http://dean.edwards.name/packer/ (для сравнения паковал исходный файл и сравнивал с запакованным родным), но все же отличия присутствуют - даже упакованный таким образом оригинальный файл исходника не работает под IPB.
Как внести изменения в хук и правильно его запаковать?
Изменено пользователем samtron76