Skip to content

Instantly share code, notes, and snippets.

@orieken
orieken / macro_fun.exs
Created October 5, 2016 01:11 — forked from rcdilorenzo/macro_fun.exs
Macro fun in Elixir mimicking Ruby's attr_accessor
defmodule MacroExp do
defmacro attr_accessor(atom) do
getter = String.to_atom("get_#{atom}")
setter = String.to_atom("set_#{atom}")
quote do
def unquote(getter)(data) do
data |> Map.from_struct |> Map.get(unquote(atom))
end
def unquote(setter)(data, value) do
data |> Map.put(unquote(atom), value)
{
"success": true,
"itemTemplates": [
{
"templateId": "BADGE_BATTLE_ATTACK_WON",
"badgeSettings": {
"badgeType": "BADGE_BATTLE_ATTACK_WON",
"badgeRank": 4,
"targets": [
10,
@orieken
orieken / JekyllApps.js
Created January 25, 2016 05:54 — forked from RainerAtSpirit/JekyllApps.js
Adding AngularJS search in Jekyll blog
/**
* Setup Module with `highlight` filter
*/
var JekyllApp = angular.module('JekyllApp', [], function ($routeProvider, $locationProvider) {
$locationProvider.html5Mode(false);
});
JekyllApp.filter('highlight', function () {
return function (text, filter) {
@orieken
orieken / gulpfile.js
Created January 6, 2016 05:09 — forked from chrisl8888/gulpfile.js
Gulp + jekyll + sass + connect + livereload
var gulp = require('gulp'),
concat = require('gulp-concat'),
sass = require ('gulp-ruby-sass'),
autoprefixer = require ('gulp-autoprefixer'),
uglify = require('gulp-uglify'),
imagemin = require('gulp-imagemin'),
jekyll = require('gulp-jekyll'),
// livereload = require('gulp-livereload'),
watch = require('gulp-watch'),
jshint = require("gulp-jshint"),
@orieken
orieken / gulpfile.js
Created January 6, 2016 05:08 — forked from blivesta/gulpfile.js
Gulp jekyll,less,sass,js,bower,deploy
'use strict';
//
var project = {
name:'mom',
url:'http://example.com',
};
var repo = {
url : 'git@github.com:blivesta/mom.git'
};
var less = false; // less or sass = false