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:
| /* | |
| After jquery ui datepicker selection, blur and change | |
| events fire before focus is returned to the input field, | |
| handling a quirk from IE browsers | |
| */ | |
| $("input.dateInput").datepicker({ | |
| changeMonth: true, | |
| changeYear: true, | |
| showAnim: "fadeIn", |
| { | |
| "vars": { | |
| "@gray-darker": "lighten(#000, 13.5%)", | |
| "@gray-dark": "#83919e", | |
| "@gray": "#c1cad3", | |
| "@gray-light": "lighten(#000, 60%)", | |
| "@gray-lighter": "lighten(#000, 93.5%)", | |
| "@brand-primary": "#309df0", | |
| "@brand-success": "#00b800", | |
| "@brand-info": "#00c6d8", |
| # Here's the script I'll use to demonstrate - it just loops forever: | |
| $ cat test.rb | |
| #!/usr/bin/env ruby | |
| loop do | |
| sleep 1 | |
| end | |
| # Now, I'll start the script in the background, and redirect stdout and stderr |
| { | |
| root: resolve('src'), | |
| minimize: true, | |
| collapseWhitespace: true, | |
| conservativeCollapse: false, | |
| collapseInlineTagWhitespace: true, | |
| removeAttributeQuotes: false, | |
| caseSensitive: true, | |
| customAttrSurround: [ | |
| [/#/, /(?:)/], |
| app_identifier "com.yourorganization.mytodoapp" # The bundle identifier of your app | |
| apple_id "<You Apple Id>" # Your Apple email address | |
| # You can uncomment any of the lines below and add your own | |
| # team selection in case you're in multiple teams | |
| # team_name "CAMobileApp" | |
| # team_id "Q2CBPJ58CA" | |
| # you can even provide different app identifiers, Apple IDs and team names per lane: | |
| # https://github.com/KrauseFx/fastlane/blob/master/docs/Appfile.md |
| #!/bin/bash | |
| TEMPDIR=`mktemp -d` | |
| ESLINTRC=$TEMPDIR/.eslintrc | |
| COMMAND="eslint --color -c $ESLINTRC --rule 'import/no-unresolved: 0' --rule 'import/no-duplicates: 0' --rule 'import/export: 0'" | |
| git show HEAD:.eslintrc > $ESLINTRC | |
| echo "### Ensure changes follow our code style... ####" | |
| # See https://www.kernel.org/pub/software/scm/git/docs/githooks.html#pre-receive |
| import { Inject } from 'lib/angular2' | |
| import { File, Transfer } from 'ionic-native' | |
| import { Events } from 'events' | |
| import { Config } from 'config/env' | |
| @Inject(Events, Config) | |
| export class CordovaUploadTransport { | |
| get cacheDirectory() { | |
| return cordova.file.tempDirectory || cordova.file.cacheDirectory | |
| } |
| #!/bin/bash | |
| # Put proper URLs here | |
| SOURCE_GITLAB_URL=http://source.example.net/api/v3/ | |
| DESTINATION_GITLAB_URL=http://dest.example.net/api/v3/ | |
| [email protected] | |
| SOURCE_PRIVATE_KEY= | |
| DESTINATION_PRIVATE_KEY= | |
| TMP_DIR=`mktemp -d` |
| module.exports = function (app) { | |
| const mongooseClient = app.get('mongooseClient'); | |
| const { Schema } = mongooseClient; | |
| const Comment = new Schema({ | |
| author: { type: Schema.Types.ObjectId, ref: 'users', required: true }, | |
| post: { type: Schema.Types.ObjectId, ref: 'posts', required: true }, | |
| text: { type: String, required: true }, | |
| }, { | |
| timestamps: true | |
| }); |