05.09.2014, 21:57
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
В SS 4.2 будут введены внешние вызываемые блоки, по аналогии с внешними прототипами:
- block foo->calc(a, b)
- a + b
- template foo()
- call blocks.calc(1, 2)
Также, как и внешние прототипы, такие блоки можно будет указывать до декларации самого шаблона.
|
|
14.09.2014, 16:14
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Опубликовал roadmap SS 5
ЗЫ: т.к. для версионирования используется semver, то цифра 5 просто означает внесение некоторых несовместимостей с версией 4.1, но они минимальны.
Последний раз редактировалось kobezzza, 14.09.2014 в 16:27.
|
|
15.09.2014, 11:50
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Немного дополнил roadmap.
Вообще SS 5 практически не вводит новых фич, а улучшает старые, например, макросы можно будет задавать по шаблону регулярки, а не только простым текстом, а в функции замены будет передавать найденный шаблон - это позволит делать штуки вроде:
$D:%d.%m.%Y
->
15.09.2014
По сути, макросы - это упрощённые и облегчённые прототипы.
PS: Если есть какие хотелки, то не стесняйтесь
Последний раз редактировалось kobezzza, 15.09.2014 в 12:15.
|
|
17.09.2014, 23:37
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Новости с полей
Сегодня в рамках работы над SS 5 сделал новый параметр компилятора и режим рендеринга, теперь вместо stringBuffer введён параметр renderMode:
*) stringConcat - шаблон возвращает строку, для конкатенации строк используется оператор +
*) stringBuffer - шаблон возвращает строку, для конкатенации строк используется класс Snakeskin.StringBuffer (из коробки простой Array с push / join)
*) dom - шаблон возвращает document fragment и рендерится как последовательность вызова DOM API, но есть некоторые ограничения:
1) Нельзя использовать директиву doctype (на самом деле я просто хз, как её императивно создать )
2) Для создания тегов обязательно использовать директиву tag (очень не хочется писать отдельный парсер самой разметки), т.е.
- template foo()
<h1>Hello</h1>
отобразится как текст, а не разметка.
А вот так:
- template foo()
< h1 :: Hello
уже как разметка.
Последний раз редактировалось kobezzza, 17.09.2014 в 23:44.
|
|
19.09.2014, 15:01
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
Начал подбираться к SS. Полез в доки и малясь подфигел - их там тонны! Довольно подробно)
Но есть пара вопросов:
1. как на клиенте использовать шаблоны хранящиеся в *.ss? В доках только про Ноду нашёл.
2. SS такой толстый, не отразится ли это на скорости компиляции? Фич-то всё больше и больше. SS уже не шаблонизатор, SS уже ЯП, нафиг! *Епифанцев.jpg*
Последний раз редактировалось Safort, 19.09.2014 в 15:04.
|
|
19.09.2014, 17:03
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Цитата:
|
как на клиенте использовать шаблоны хранящиеся в *.ss? В доках только про Ноду нашёл.
|
https://github.com/kobezzza/Snakeski...%D 0%B8%D1%8F
http://www.youtube.com/watch?v=wVt_L...ature=youtu.be
Вообще кейзов использования несколько:
1) Runtime-компиляция шаблонов;
2) Прекомпиляция шаблонов и последующие использование как простого JS;
3) Генерация статических страниц, аля Github Pages.
Но компилить шаблоны на стороне клиента не стоит, т.к. придётся тащить 14к строк кода транслятора + дополнительная нагрузка на трансляцию, лучше подключать уже скомпиленный шаблон и юзать его, в доке есть и описания и видео про это.
Цитата:
|
SS такой толстый, не отразится ли это на скорости компиляции? Фич-то всё больше и больше. SS уже не шаблонизатор, SS уже ЯП, нафиг! *Епифанцев.jpg*
|
Да, ЯП, я уже писал об этом, но ЯП заточенный под написание шаблонов.
Не отразится, SS не только самый функциональный движок шаблонов, но и один из самых быстрых. К тому же трансляция делается только один раз.
|
|
19.09.2014, 18:03
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
kobezzza,
Цитата:
|
Но компилить шаблоны на стороне клиента не стоит, т.к. придётся тащить 14к строк кода транслятора + дополнительная нагрузка на трансляцию
|
Вот блин, я именно так и хотел сделать -_-
Цитата:
|
лучше подключать уже скомпиленный шаблон и юзать его, в доке есть и описания и видео про это.
|
Про скомпилированный шаблон видел, просто, думал, что так тоже норм)
спасибо за подробный ответ)
Кстати, как там плагин для Галпа поживает?)
|
|
19.09.2014, 18:33
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Цитата:
|
Вот блин, я именно так и хотел сделать -_-
|
Ну ты можешь так делать, но сам понимаешь, что это не очень эффективно
Цитата:
|
Про скомпилированный шаблон видел, просто, думал, что так тоже норм)
|
Ну прост зачем тащить дополнительные 30кб? А вообще: конечно так можно делать.
Цитата:
|
Кстати, как там плагин для Галпа поживает?)
|
Я думал сделать его вместе с релизом SS 5, пока не начинал, но если очень нужно, то могу завтра сделать, а сегодня я решил сделать выходной
|
|
19.09.2014, 18:55
|
|
Профессор
|
|
Регистрация: 23.12.2013
Сообщений: 1,856
|
|
kobezzza,
Цитата:
|
Ну прост зачем тащить дополнительные 30кб?
|
30? В аттаче такого нет. Или ты про другое?
Цитата:
|
Я думал сделать его вместе с релизом SS 5, пока не начинал, но если очень нужно, то могу завтра сделать, а сегодня я решил сделать выходной
|
Нужно, но пока что не срочно. Я ведь только начал разбираться с SS, так что не тороплюсь)
А когда планируешь 5 релиз, не напомнишь?
|
|
19.09.2014, 19:01
|
|
Быдлокодер;)
|
|
Регистрация: 19.11.2010
Сообщений: 4,338
|
|
Цитата:
|
30? В аттаче такого нет. Или ты про другое?
|
Ну, вместе с GZIP же, но я всё равно наврал, сейчас посмотрел - уже 43кб, как jQuery в общем, а то и поболее.
Цитата:
|
Нужно, но пока что не срочно. Я ведь только начал разбираться с SS, так что не тороплюсь)
|
Оки, сделаю раньше.
Цитата:
|
А когда планируешь 5 релиз, не напомнишь?
|
Вообще хотел на этой недели, но затянул работу по доке Collection 5.2 + лень Так что на след недели, думаю ближе к концу.
Можно следить за этом разработки: https://github.com/kobezzza/Snakeskin/issues
|
|
|
|