Loosely ordered with the commands I use most towards the top. Sublime also offer full documentation.
Ctrl+C | copy current line (if no selection) |
Ctrl+X | cut current line (if no selection) |
Ctrl+⇧+K | delete line |
Ctrl+↩ | insert line after |
define([ | |
'jquery', | |
'underscore', | |
'backbone', | |
'marionette', | |
'handlebars', | |
'text!templates/app_view.html', | |
'modules/mainMenuView/mainMenuView', |
Loosely ordered with the commands I use most towards the top. Sublime also offer full documentation.
Ctrl+C | copy current line (if no selection) |
Ctrl+X | cut current line (if no selection) |
Ctrl+⇧+K | delete line |
Ctrl+↩ | insert line after |
Why would you want to do this? Because you often don't need more. It's nice to not have to think about your "router" as this big special thing.
Instead, with this approch, your app's current pathname
is just another piece of state, just like anything else.
This also means that when doing server-side rendering of a redux app, you can just do:
var app = require('your/redux/app')
var React = require('react')
var svg = document.querySelector( "svg" ); | |
var svgData = new XMLSerializer().serializeToString( svg ); | |
var canvas = document.createElement( "canvas" ); | |
var ctx = canvas.getContext( "2d" ); | |
var img = document.createElement( "img" ); | |
img.setAttribute( "src", "data:image/svg+xml;base64," + btoa( svgData ) ); | |
img.onload = function() { |
Write a program that does what it’s supposed to do | |
Write idiomatic code | |
Debug a program that I wrote | |
Debug a program someone else wrote | |
Debug the interaction between a system I wrote and one I didn’t | |
File a good bug report | |
Modify a program I didn’t write | |
Test a program I wrote | |
Test a program I didn’t write | |
Learn a new programming language |
const clone = (() => { | |
/*! (c) Andrea Giammarchi - WTFPL */ | |
const toString = {}.toString; | |
const flags = ['global', 'ignoreCase', 'multiline', 'sticky', 'unicode']; | |
const prime = obj => typeof obj === 'object' ? new obj.constructor(obj.valueOf()) : obj; | |
const through = obj => { | |
const descriptors = Object.getOwnPropertyDescriptors(obj); | |
Reflect.ownKeys(descriptors).forEach(key => { | |
const descriptor = descriptors[key]; | |
if ('value' in descriptor) { |