Reduce.js
This is an exercise and a challenge to see how far can I go with reduce and how many built-in Array methods I can replicate with it.
module.exports = { | |
config: { | |
// default font size in pixels for all tabs | |
fontSize: 12, | |
// font family with optional fallbacks | |
fontFamily: 'Menlo, "DejaVu Sans Mono", "Lucida Console", monospace', | |
// `BEAM` for |, `UNDERLINE` for _, `BLOCK` for █ | |
cursorShape: 'BLOCK', |
var path = 'http://adonisk.com/img/vlogo.jpg'; | |
fetch(path).then(function (response) { | |
response.body.getReader().read().then(function(result) { | |
return btoa(String.fromCharCode.apply(null, result.value)); | |
}).then(function(b64) { | |
console.log(b64); | |
}); | |
}); |
(function (root, name, factory) { | |
'use strict'; | |
if (typeof define === 'function' && define.amd) { | |
define(factory); | |
} else if (typeof exports === 'object') { | |
module.exports = factory; | |
} else { | |
root[name] = factory(); | |
} |
Get Git log in JSON format
git log --pretty=format:'{%n "commit": "%H",%n "abbreviated_commit": "%h",%n "tree": "%T",%n "abbreviated_tree": "%t",%n "parent": "%P",%n "abbreviated_parent": "%p",%n "refs": "%D",%n "encoding": "%e",%n "subject": "%s",%n "sanitized_subject_line": "%f",%n "body": "%b",%n "commit_notes": "%N",%n "verification_flag": "%G?",%n "signer": "%GS",%n "signer_key": "%GK",%n "author": {%n "name": "%aN",%n "email": "%aE",%n "date": "%aD"%n },%n "commiter": {%n "name": "%cN",%n "email": "%cE",%n "date": "%cD"%n }%n},'
The only information that aren't fetched are:
%B
: raw body (unwrapped subject and body)%GG
: raw verification message from GPG for a signed commitThese are the configuration and package-syncing files I'm using for my setup of the Atom Editor |
I hereby claim:
To claim this, I am signing this object:
var spacing = (function (size) { | |
var result = ''; | |
for (var i = 0; i < size; i++) { | |
result += ' '; | |
} | |
return result; | |
})(4); |
var t = [ 'a', 'b', 'c', 'd', 'e']; | |
Array.prototype.move = function (source, destination) { | |
// if source and destination are the same | |
if (source === destination) { | |
// then there is no need to move | |
return; | |
} | |
// if the source is smaller than 0 or the destination is larger than the size of the array | |
if (source < 0 || source > this.length - 1 || destination > this.length - 1) { |
# creates a directory and cds into it | |
function mkd() { | |
mkdir -p "$@" && cd "$@" | |
} | |
# lists zombie processes | |
function zombie() { | |
ps aux | awk '{if ($8=="Z") { print $2 }}' | |
} |