Skip to content

Instantly share code, notes, and snippets.

View calacitizen's full-sized avatar

Nikita Izygin calacitizen

  • Russia, Yaroslavl
View GitHub Profile
@calacitizen
calacitizen / csvtojson.php
Last active December 23, 2015 19:19
CSV to json
<?php
/*
* Converts CSV to JSON
*/
header('Content-type: application/json');
$filePath = '';
$pathToCSV = '';
@calacitizen
calacitizen / exists.js
Created January 18, 2014 18:26
Tiny jQuery Exist Plugin by Chris Goodchild
$.fn.exists = function(callback) {
var args = [].slice.call(arguments, 1);
if (this.length) {
callback.call(this, args);
}
return this;
};
@calacitizen
calacitizen / rAF.js
Created January 20, 2014 10:12 — forked from paulirish/rAF.js
// http://paulirish.com/2011/requestanimationframe-for-smart-animating/
// http://my.opera.com/emoller/blog/2011/12/20/requestanimationframe-for-smart-er-animating
// requestAnimationFrame polyfill by Erik Möller. fixes from Paul Irish and Tino Zijdel
// MIT license
(function() {
var lastTime = 0;
var vendors = ['ms', 'moz', 'webkit', 'o'];

####Линеаризация AST

Разбор HTML вёрстки:

//  html:
var html = '<div class="oh"><p>hi</p></div>';

Пример разложения на линейное AST:

####Использование контролов в вёрстке

Шаблон компонента "MyComponent"

   <span>{{variable}}</span>
var html = ''

###AST

Разбор HTML вёрстки:

//  html:
var html = '<div class="oh"><p>hi</p></div>';

###Генерация вёрстки

Генерация с помощью AST

/// <div class="oh"><p>hi</p></div>

var traversedAST = [{
   type: 'tag',

####Использование контролов в вёрстке

Шаблон компонента MyComponent.tmpl

   <p>hi</p>

Код использования:

@calacitizen
calacitizen / gist:4c5fe452f5d9ceb4501ae0fb2afc4f20
Last active April 22, 2016 11:56
Спецификация

#Шаблонизатор. Спецификация.

###Базовый синтаксис

  1. Типичный вид шаблона

    		<div class=”class1 class2 {{someClass}}”>
    			<span class=”{{someClass}}”>

{{ content|trim }}

##Сравнение генерации вёрстки на 1000 компонентах

DOT-шаблонизатор в данном тесте представлен в двух вариантах:

  1. DOT с эмуляцией шаблонов компонента (просто вставки вёрстки шаблона)
  2. Компонентная модель WS с использованием DOT в вёрстке

Шаблон в рамках компонентной модели WS

<div class="speed">