Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#26 2013-03-19 22:59:10

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

kt2k пишет:

irbees2008, я знаю только как попасть в mainblock переменную которая содержит контент страницы, по аналогии с simple_title плагина, там он берет переменную title а можно взять mainblock в нем html который в шаблоне именуется {mainblock}

покажи такой вариант

Не в сети

#27 2013-03-19 23:11:14

kt2k
Участник
Зарегистрирован: 2008-10-13
Сообщений: 54
Рейтинг :   

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

irbees2008,
В функцию, добавь  $template а там будет доступен

global $template;
$template['vars']['mainblock']

все это в Acts: index

Не в сети

#28 2015-01-04 22:32:44

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Хак для добавления fullscreen фичи для редактора.
Пример:  http://codemirror.net/demo/fullscreen.html

1. В syntax_highlighter.js
Найти:

tabMode:"indent"

Добавить ниже:

,extraKeys: {"F11": function(cm) {cm.setOption("fullScreen", !cm.getOption("fullScreen"));},"Esc": function(cm) {if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);}}

2. В tags.tpl
Найти:

<script type="text/javascript" src="plugins/syntax_highlighter/tpl/js/codemirror-compressed.js"></script>

Добавить ниже:

<link rel="stylesheet" href="plugins/syntax_highlighter/tpl/addon/display/fullscreen.css">
<script src="plugins/syntax_highlighter/tpl/addon/display/fullscreen.js"></script>

3. Содержимое fullscreen.css

.CodeMirror-fullscreen {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #FFFFFF; 
  height: auto;
  width: auto;
  z-index: 9;
}

4. Содержимое fullscreen.js из http://codemirror.net/addon/display/fullscreen.js

Не в сети

#29 2015-01-05 17:28:56

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

infinity237 пишет:

Хак для добавления fullscreen фичи для редактора.

Класс
Кому не понятно,объясняю,при редактировании шаблона в админке,при нажатии F11 ,редактор развернется на весь экран монитора,чтобы свернуть жмем Esc.
1. В syntax_highlighter.js
Найти:
tabMode:"indent"
добавить запятую и добавить ниже:
extraKeys: {"F11": function(cm) {cm.setOption("fullScreen", !cm.getOption("fullScreen"));},"Esc": function(cm) {if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);}}

Изменено irbees2008 (2015-01-05 20:53:14)

Не в сети

#30 2015-01-09 01:42:53

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Решил проблему по другому - добавил CodeMirror в код движка и подключил его для редактирования шаблонов.
Проверяйте.

Не в сети

#31 2015-01-19 06:57:14

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

vitaly пишет:

Решил проблему по другому - добавил CodeMirror в код движка и подключил его для редактирования шаблонов.
Проверяйте.

проверил, работает. Только стили пришлось ковырять:
1. шрифт мелковат
2. подсветка тэгов тем же цветом, что и аттрибутов (и то и другое зеленым, в плагине тэги были зеленым, аттрибуты - синим).

Не в сети

#32 2015-01-19 08:45:46

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Zemlemer, если есть конкретные идеи-дополнения, то пиши сразу сюда smile

Не в сети

#33 2015-01-19 08:56:37

irbees2008
Продвинутый чайник ;)
Откуда Шахтинск
Зарегистрирован: 2012-03-14
Сообщений: 2,873
Рейтинг :   121 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Zemlemer пишет:
vitaly пишет:

Решил проблему по другому - добавил CodeMirror в код движка и подключил его для редактирования шаблонов.
Проверяйте.

проверил, работает. Только стили пришлось ковырять:
1. шрифт мелковат
2. подсветка тэгов тем же цветом, что и аттрибутов (и то и другое зеленым, в плагине тэги были зеленым, аттрибуты - синим).

Ну стили можно и самому отредактировать,там в редакторе только небольшие правки делать,а так нормально,все остальное редактирую обычно через ftr на компе

Не в сети

#34 2015-01-22 16:56:59

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

vitaly пишет:

Zemlemer, если есть конкретные идеи-дополнения, то пиши сразу сюда smile

у CodeMirror есть отдельный js для поддержки html / css - html mixed mode. Предлагаю его добавить в подсветку.

Не в сети

#35 2015-01-23 00:23:22

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Zemlemer пишет:

у CodeMirror есть отдельный js для поддержки html / css - html mixed mode. Предлагаю его добавить в подсветку.

Он есть, но я не разобрался как именно его подключить.
Подскажешь?

Не в сети

#36 2015-01-24 00:33:32

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

С подсветкой одновременно всех синтаксисов в одном файле не разобрался, сделал чуть проще.

				var tmode;								
				if (ngFileName.indexOf(".tpl") > 0) {tmode = "text/html"};
				if (ngFileName.indexOf(".css") > 0) {tmode = "text/css"};
				if (ngFileName.indexOf(".js") > 0) {tmode = "javascript"};
				
				var cm = CodeMirror.fromTextArea(
					document.getElementById('fileEditorSelector'), {
				                lineNumbers: true,
				                mode: tmode,							
				       //         lineWrapping: true,
				                styleActiveLine: true,
				                tabMode: "indent",
				                extraKeys: {
				                	"F11": function(cm) {cm.setOption("fullScreen", !cm.getOption("fullScreen"));},
				                	"Esc": function(cm) {if (cm.getOption("fullScreen")) cm.setOption("fullScreen", false);}
				                }

В таком виде - посвечивает нормально css в файлах стилей, html в файлах шаблонов (включая проверку незакрытых тегов) и javascript в файлах .js.

Сжатый файл codemirror.js с нужными модулями прилагаю в архиве, сгенерил его в генераторе: http://codemirror.net/doc/compress.html
(добавил режимы htmlmixed, css, javacsript, xml - по идее htmlmixed зависит от этих трех)
Файл стилей там же (в нем изменил только размер шрифта).

upd. правда, с этим моим фиксом полноэкранный режим сломался sad  но, думаю, смысл понятен.

Изменено Zemlemer (2015-01-24 01:05:45)

Не в сети

#37 2015-01-25 00:03:22

vitaly
Администратор
Откуда Россия
Зарегистрирован: 2008-10-08
Сообщений: 2,823
Рейтинг :   118 

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Zemlemer, быстрого решения не нашел.
Моя сборка содержит необходимые mode'ы, но они не срабатывают.
Будем разбираться позже.

Не в сети

#38 2015-01-26 01:39:06

Zemlemer
Участник
Откуда Украина
Зарегистрирован: 2012-07-27
Сообщений: 271
Рейтинг :   25 
Сайт

Re: syntax_highlighter :: Подсветка синтаксиса в шаблонах

Довел до ума свое решение, предлагаю протестировать.

+ Подсветка кода в файлах .tpl, .css, .js, .ini
+ Работает полноэкранный режим.

Для включения необходимо:

1. Заменить файлы /lib/codemirror на приложенные

2. Заменить файл /engine/skins/default/tpl/templates.tpl на приложенный

Изменено Zemlemer (2015-01-26 02:07:51)

Не в сети

Подвал раздела

Работает на FluxBB