See how a minor change to your commit message style can make you a better programmer.
Format: <type>(<scope>): <subject>
<scope> is optional
| // first of all make sure we have enough arguments (exit if not) | |
| if (process.argv.length != 5) | |
| { | |
| console.error("Usage: node csv2html.js input.csv template.ejs output.html") | |
| console.error(); | |
| console.error("Outputs the given template for each row in the given input.") | |
| console.error("Uses the first row of the CSV as column names in the template.") | |
| process.exit(1); | |
| } |
| <?php | |
| //* Do NOT include the opening php tag | |
| //* Load Lato and Merriweather Google fonts | |
| add_action( 'wp_enqueue_scripts', 'bg_load_google_fonts' ); | |
| function bg_load_google_fonts() { | |
| wp_enqueue_style( 'google-fonts', '//fonts.googleapis.com/css?family=Lato:300,700|Merriweather:300,700', array(), CHILD_THEME_VERSION ); | |
| } |
| const filter = (fn, arr) => arr.reduce((newArr, item) => { | |
| return fn(item) ? newArr.concat([item]) : newArr; | |
| }, []); |
| import speculation from 'speculation'; | |
| const wait = ( | |
| time, | |
| cancel = Promise.reject() // By default, don't cancel | |
| ) => speculation((resolve, reject, onCancel) => { | |
| const timer = setTimeout(resolve, time); | |
| // Use onCancel to clean up any lingering resources | |
| // and then call reject(). You can pass a custom reason. |
| // HOF Wraps the native Promise API | |
| // to add take a shouldCancel promise and add | |
| // an onCancel() callback. | |
| const speculation = ( | |
| fn, | |
| cancel = Promise.reject() // Don't cancel by default | |
| ) => new Promise((resolve, reject) => { | |
| const noop = () => {}; | |
| const onCancel = ( |
| const wait = time => new Promise( | |
| res => setTimeout(() => res(), time) | |
| ); | |
| wait(200) | |
| // onFulfilled() can return a new promise, `x` | |
| .then(() => new Promise(res => res('foo'))) | |
| // the next promise will assume the state of `x` | |
| .then(a => a) | |
| // Above we returned the unwrapped value of `x` |
| const wait = ( | |
| time, | |
| cancel = Promise.reject() | |
| ) => new Promise((resolve, reject) => { | |
| const timer = setTimeout(resolve, time); | |
| const noop = () => {}; | |
| cancel.then(() => { | |
| clearTimeout(timer); | |
| reject(new Error('Cancelled')); |
| const wait = time => new Promise((resolve) => setTimeout(resolve, time)); | |
| wait(3000).then(() => console.log('Hello!')); // 'Hello!' |
| // Class Inheritance Example | |
| // NOT RECOMMENDED. Use object composition, instead. | |
| // https://gist.github.com/ericelliott/b668ce0ad1ab540df915 | |
| // http://codepen.io/ericelliott/pen/pgdPOb?editors=001 | |
| class GuitarAmp { | |
| constructor ({ cabinet = 'spruce', distortion = '1', volume = '0' } = {}) { | |
| Object.assign(this, { | |
| cabinet, distortion, volume |