- Copy-paste to split book into separate chapter files (also see split.sh)
- Add non-breaking space in range of numbers
- Fix inline spans broken by a space after a word before the closing
*
- Remove image width and height inherited from images in docx
- Wrap all images in an Electric Book figure blockquote
- Simplify indentation in lists by reducing space after list marker to one space
- [Remove non-kramdown markdown
^
around superscripts after numbers](#remove-non-kramdown-markdown--around-superscripts-a
No need for homebrew or anything like that. Works with https://www.git-tower.com and the command line.
- Install https://gpgtools.org -- I'd suggest to do a customized install and deselect GPGMail.
- Create or import a key -- see below for https://keybase.io
- Run
gpg --list-secret-keys
and look forsec
, use the key ID for the next step - Configure
git
to use GPG -- replace the key with the one fromgpg --list-secret-keys
Sometimes you may want to undo a whole commit with all changes. Instead of going through all the changes manually, you can simply tell git to revert a commit, which does not even have to be the last one. Reverting a commit means to create a new commit that undoes all changes that were made in the bad commit. Just like above, the bad commit remains there, but it no longer affects the the current master and any future commits on top of it.
git revert {commit_id}
Deleting the last commit is the easiest case. Let's say we have a remote origin with branch master that currently points to commit dd61ab32. We want to remove the top commit. Translated to git terminology, we want to force the master branch of the origin remote repository to the parent of dd61ab32:
Whenever we change our templates we still have to use our build script and this can get annoying. Thankfully with webpack-dev-server
and BrowserSync we can fix this:
npm i -D browser-sync browser-sync-webpack-plugin webpack-dev-server
BrowserSync will act like a proxy, waiting for webpack to do its thing and then reloading the browser for us.
Just migrated it from Codepen.io to markdown. Credit goes to David Conner.
Working with DOM | Working with JS | Working With Functions |
---|---|---|
Accessing Dom Elements | Add/Remove Array Item | Add Default Arguments to Function |
Grab Children/Parent Node(s) | Add/Remove Object Properties | Throttle/Debounce Functions |
Create DOM Elements | Conditionals |
# Permalinks | |
permalink: pretty | |
# Posts | |
excerpt_separator: <!-- more --> | |
# Site info | |
url: "https://darn.es" | |
title: "David Darnes" | |
description: "Web Designer & Front-end Developer" |
/* | |
This file will read a bunch of Jekyll formatted `.md` posts in a folder, | |
grab the date from the filename and write it into the front-matter. | |
Files are copied to a new folder, rather than overwritten. | |
Requirements: `npm install lodash`, and that's it! | |
*/ | |
var fs = require('fs'), |
module Jekyll | |
class Document | |
#Updated for Jekyll 3.0.0 | |
# override post method in order to return categories names as slug | |
# instead of strings | |
# | |
# An url for a post with category "category with space" will be in |
/* bling.js */ | |
window.$ = document.querySelector.bind(document); | |
window.$$ = document.querySelectorAll.bind(document); | |
Node.prototype.on = window.on = function(name, fn) { this.addEventListener(name, fn); }; | |
NodeList.prototype.__proto__ = Array.prototype; | |
NodeList.prototype.on = function(name, fn) { this.forEach((elem) => elem.on(name, fn)); }; |