kobezzza,
Цитата:
Цитата:
Цитата:
|
Цитата:
Цитата:
Collection 5.2 вышел случайно, я просто хотел выпустить патч с фиксом багов на 5.1 и в общем то не думал возвращаться к серьёзной разработке этой либы, но как то вечером чисто ради любопытства попробовал с эмулировать потоки через генераторы и результат оказался настолько крутым и удобным, что я решил реализовать его на основе Collection. Ну а плагины этож ерунда, меня попросили сделать для галпа, типо "официальный плагин" :) Цитата:
|
Вижу, работа действительно легко идёт)
|
Цитата:
|
Почти закончил работу, думаю в эту пятницу будет релиз.
|
Пипец, весь день протрахался с багом... забыл что в Win перевод строки \r\n, а не \n :-E
|
Цитата:
require('os').EOL??? |
Цитата:
|
Цитата:
|
Цитата:
|
kobezzza,
В ишью: #2 opened 14 days ago by kobezzza 12 of 13 Смотрю, чека нет только на "Добавление плагина для Gulp". Вспоминаю цитату: Цитата:
|
Safort, да не, просто там нет чека "баги-баги-баги" :D
|
kobezzza,
а отменить уже чекнутые пункты нельзя? |
Цитата:
|
Вроде как закончил, но мержить с мастером решил завтра, на свежую голову так сказать :)
|
kobezzza,
постой! А как же мой плагин для Галпа? Он одинёшенек не чекнутый остался( |
Цитата:
![]() |
kobezzza,
ух, прям от сердца отлегло) |
Возможно я что-то не понял, но у меня не компилится этот код из доки:
/// Классический синтаксис {template index(name)} /// Конструкция будет показана как текст < h1 {name} {end} Выкидывает такую ошибку: SnakeskinError: invalid XML declaration, line: 12 ----------------------------------------------- ... 5 /// Конструкция будет показана как текст ... 7 < h1 ... 9 {name.text} ... 11 {end} > 12 ----------------------------------------------- https://github.com/kobezzza/Snakeski...%D0%B8%D 1%81 |
И ещё вопрос: как можно сделать так, чтобы SS не уничтожал мои любимые переносы между тегами?
На данный момент, я периодически проверяю себя, правильно ли я написал разметку, но SS по умолчанию делает всё в одну строку и я страдаю( |
Цитата:
Пример будет работать если отключить флаг xml, подправлю эту главу. Но чтобы передать смысл того описания: /// Классический синтаксис {template index(name)} /// Конструкция будет показана как текст : a = 1 {name} {end} Цитата:
|
kobezzza,
Цитата:
- template index(name) <!DOCTYPE html> < html < head < title :: {name} < body < h1 контент Он компилится в <!DOCTYPE html> <html><head><title>_содержимое name_</title></head><body><h1>контент</h1></body></html> а мне надо так <!DOCTYPE html> <html> <head> <title>_содержимое name_</title> </head> <body> <h1>контент</h1> </body> </html> |
Ты используешь что ли компиляцию с флагом --exec? Если да, то задай флаг --pretty-print.
А если компилишь в функцию, а потом вызываешь ее, то никак. А зачем это нужно? SS схлопывает смежные пробелы в 1. Я не понимаю твой кейз, опиши его целиком: как компилишь, во что сохраняешь и т.д. |
kobezzza,
не, без всяких флагов. Делаю, например, так: var fs = require('fs'); var snakeskin = require('snakeskin'); var tpl = fs.readFileSync('views/index.ss', 'utf-8'); var tpls = {}; snakeskin.compile(tpl, { context: tpls }); var content = tpls.index("_содержимое name_"); Цитата:
Цитата:
|
А почему ты не юзаешь SS node API?
var snakeskin = require('snakeskin'); var tpls = snakeskin.compileFile('views/index.ss'); var content = tpls.index('_содержимое name_'); Или var snakeskin = require('snakeskin'); var content = snakeskin.execFile('views/index.ss')('_содержимое name_'); Чтобы сделать бьютифайл для своего HTML заюзай модуль https://www.npmjs.org/package/js-beautify var beautify = require('js-beautify').html; var content = beautify(tpls.index("_содержимое name_")); *** Почему это не нужно в SS: бьютифайлинг - это отдельная задача (причём довольно объёмная) и решает её отдельный инструмент, поэтому глупо будет пихать его в SS (unix way таки :)), однако в CLI API такая фича из коробки есть, но там в рамках параметра --exec для для использования SS как движка для статичных сайтов. |
kobezzza,
Цитата:
2. Потому, что как-то забыл про него. 3. Потому, что пока не знаю, как с его помощью взять исходник шаблона из одной папки и создать компилированную версию в другой. Как-то так :) Цитата:
|
Фух, давно не писал о новостях:
1) Выпустил апдейт 5.1.3. В версии 5.1 была улучшена работа с пробельными символами: добавлен параметр tolerateWhitespace, при котором SS вставляет символы "как есть". Также в директиве tag добавлена возможность явной декларации инлайн тегов, т.е. тех, которые сразу закрываются. < my-tag:inline /// <my-tag/> 2) Обновил плагин для Grunt, сделал плагин для Gulp. *** В ближайшее время обновлю доку. |
Цитата:
|
kobezzza,
да я уже решил проблему) Тем более, что теперь ты выпустил плагин для Галпа) |
Выпустил патч 5.1.7.
PS: когда же кончаться баги :( |
Выпустил патч 5.1.10.
Обновил доку. |
Готовится к релизу SS 6.0:
1) Параметр .xml заменён на .doctype, для которого можно задать 'html' или 'xhtml'; 2) Параметр .commonJS заменён на .exports = 'commonJS', т.к. помимо commonJS будет global и requirejs; 3) Добавлен параметр .replaceUndef; 4) Добавлен параметр .lineSeparator. В остальном исправления ошибок и небольшие доработки. |
kobezzza,
Цитата:
//как я понимаю, это всё из-за semver'а? |
Цитата:
Цитата:
|
Закончил работу над 6-й версией SS, завтра обновлю доку.
ЗЫ: тока ща обратил внимание, что исходный код уже 17k, жесть :) |
Выпустил патч 6.0.3.
Обновил доку. |
Цитата:
Ты хоть ссылки кидай на релизы, а то ходить далеко =) |
Ну с недавнего времени для всех своих проектов я веду лог изменений, например,
https://github.com/kobezzza/Snakeski...ter/HISTORY.md Цитата:
ЗЫ: думаю, что 6-я версия будет последней мажорной, т.к. вроде шаблонка за 2 года разработки полностью состоялась (для меня это был колоссальный опыт) и теперь разве что будут делать патчи и добавлять фичи по мере надобности. |
kobezzza,
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 01:57. |