Скачиваем последнею версию EditArea, разархивируем файлы в /bitrix/js/editarea/. Добавим в конец файла /bitrix/js/main/utils.js следующий код (он будет загружать редактор с подстветкой вместо стандартного). Как вариант можно использовать Greasemonkey (для борьбы за чистоту лицензионного кода ^^).
// Код загрузчика редактора c подсветкой кода.
function loadJS(src) {
var script=document.createElement('script');
script.setAttribute("type","text/javascript");
script.setAttribute("src", src);
document.getElementsByTagName("head")[0].appendChild(script);
}
function init() {
// quit if this function has already been called
if (arguments.callee.done) return;
// flag this function so we don't do the same thing twice
arguments.callee.done = true;
// kill the timer
if (_timer) {
clearInterval(_timer);
_timer = null;
}
if (typeof document.getElementsByName('filesrc')[0] != 'undefined') {
var textedit = document.getElementsByName('filesrc')[0]
textedit.setAttribute("id", "filesrc");
// load Editarea
loadJS("/bitrix/js/editarea/edit_area/edit_area_full.js");
loadJS("/bitrix/js/editarea/init.js");
}
};
/* for Mozilla */
if (document.addEventListener) {
document.addEventListener("DOMContentLoaded", init, false);
}
/* for Internet Explorer */
/*@cc_on @*/
/*@if (@_win32)
document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
var script = document.getElementById("__ie_onload");
script.onreadystatechange = function() {
if (this.readyState == "complete") {
init(); // call the onload handler
}
};
/*@end @*/
/* for Safari */
if (/WebKit/i.test(navigator.userAgent)) { // sniff
var _timer = setInterval(function() {
if (/loaded|complete/.test(document.readyState)) {
init(); // call the onload handler
}
}, 10);
}
/* for other browsers */
window.onload = init;
Создаем в папке /bitrix/js/editarea/ файл init.js (в нем хранятся настройки текстового редактора, читайте документацию к EditArea)
editAreaLoader.init({
id: "filesrc" // id or name of the textarea to transform
,start_highlight: true // if start with highlight
,allow_resize: "both"
,allow_toggle: true
,word_wrap: true
,language: "en"
,syntax: "php"
,font_family: "Menlo, \"DejaVu Sans Mono\", \"Courier New\", \"Lucida Console\", monospace"
,font_size: "8"
});
Только что увидел этот пост. Конечно, давая такие советы, надо предупреждать, что техподдержка откажется решать любую проблему при модифицированном ядре.
Мы не знаем, были внесены изменения только здесь или где-то ещё. По лицензии, в техподдержке отказывается, но мы обычно просим восстановить ядро, затем приступаем к диагностике.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».