This gist shows how to create a GIF screencast using only free OS X tools: QuickTime, ffmpeg, and gifsicle.
To capture the video (filesize: 19MB), using the free "QuickTime Player" application:
env = (function() { | |
var flags = {}, ua = navigator.userAgent, el = document.createElement('div'), video = document.createElement('video'), audio = document.createElement('audio'), root = document.documentElement, i | |
function flag(names) { | |
names = names.split(' ') | |
for (i = 0; i < names.length; i++) | |
flags[names[i]] = true | |
} | |
function classnames() { | |
var names = [], name | |
for(name in flags) if (flags.hasOwnProperty(name)) |
# use `basename [suffix]` to do clever multiple renaming | |
for file in *.html.pdf; do \ | |
mv "$file" "`basename $file .html.pdf`.pdf"; | |
done | |
# remove "from" metadata from files on OS X | |
xattr -d "com.apple.metadata:kMDItemWhereFroms" file | |
# remove "quarantine" metadata from files on OS X | |
xattr -d "com.apple.quarantine" file |
document.getElementsByClassName && (function(){ | |
var _URL = /(https?:\/\/gist.github.com\/[^?#]+)(\?file=([a-z0-9_.-]+))?/i; | |
var gists = document.getElementsByClassName('gist'); | |
function embed(url, i, tag) { | |
window['embed_gist_'+i] = function(gist) { | |
var tmp = document.createElement('div'); | |
tmp.innerHTML = gist.div; | |
tag.parentNode.replaceChild(tmp.firstChild, tag); | |
var css = document.getElementsByClassName('gist_css'); | |
for(var i=0; i<css.length; i++) { |
@include handhelds { | |
table.responsive { | |
width: 100%; | |
thead { | |
display: none; | |
} | |
tr { | |
display: block; | |
} | |
td, th { |
/** | |
* I converted the SCSS mixin to LESS for the awesome coders like myself in response to a blog post on 37Signals - http://37signals.com/svn/posts/3271-easy-retina-ready-images-using-scss | |
* | |
* Update: 2014-08-04 - Updated a long-standing bug where retina images were shown no matter what in the first background-image property. | |
* - Updated retina media query to be more reliable () | |
* Update: 2013-11-13 - Picked up another technique thanks to reading this post from Tyler Tate, auto-fill in the second filename for the retina image, http://tylertate.com/blog/2013/06/11/retina-images-using-media-queries-and-LESS-CSS.html | |
* Update: 2013-04-16 - Have recently found a few use cases when using a retina pattern from Subtle Patterns on the <body>, this has come in handy | |
* Update: 2013-04-05 - Some research in the Wordpress Core(http://core.trac.wordpress.org/ticket/22238#comment:5) was pointed out that some tests may be redundant (Thanks @kbav) so I've cleaned these up | |
* Update: 2012-12-29 - U |
@media only screen and (min-width: 320px) { | |
/* Small screen, non-retina */ | |
} | |
@media | |
only screen and (-webkit-min-device-pixel-ratio: 2) and (min-width: 320px), | |
only screen and ( min--moz-device-pixel-ratio: 2) and (min-width: 320px), | |
only screen and ( -o-min-device-pixel-ratio: 2/1) and (min-width: 320px), |
/* ---------------------------------------------------------- */ | |
/* */ | |
/* A media query that captures: */ | |
/* */ | |
/* - Retina iOS devices */ | |
/* - Retina Macs running Safari */ | |
/* - High DPI Windows PCs running IE 8 and above */ | |
/* - Low DPI Windows PCs running IE, zoomed in */ | |
/* - Low DPI Windows PCs and Macs running Firefox, zoomed in */ | |
/* - Android hdpi devices and above */ |
(function(win,doc) { | |
if (doc.querySelectorAll) { | |
var inputs = doc.querySelectorAll('input[list]'), | |
total = inputs.length; | |
for (var i=0; i<total; i++) { | |
var input = inputs[i], | |
id = input.getAttribute('list'), | |
list = doc.getElementById(id), | |
options = list.getElementsByTagName('option'), | |
amount = options.length, |
sudo defaults write /Library/Preferences/com.apple.windowserver DisplayResolutionEnabled -bool YES; | |
sudo defaults delete /Library/Preferences/com.apple.windowserver DisplayResolutionDisabled; | |
// by the way, you need to logout and log back in for this to take effect. Or at least that's what | |
// Quartz Debug says. Who knows, maybe it's lying? | |
// P.S. Go to [Apple menu --> System Preferences --> Displays --> Display --> Scaled] after logging | |
// back in, and you'll see a bunch of "HiDPI" resolutions in the list to choose from. |