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:
| #!/usr/bin/env elixir | |
| # Minimal Phoenix LiveView single file example | |
| # Run with: elixir minimal_liveview.exs | |
| # Access at: http://localhost:4001 | |
| Application.put_env(:minimal_app, MinimalApp.Endpoint, | |
| http: [ip: {127, 0, 0, 1}, port: 4001], | |
| server: true, | |
| live_view: [signing_salt: "aaaaaaaa"], |
| def random_device(reuse_owner=False, **kwds): | |
| def wrapper(f): | |
| def wrapped(self): | |
| if reuse_owner and hasattr(self, 'device'): | |
| print "Reusing owner %s" % self.device | |
| d = self.device | |
| else: | |
| print "no owner" | |
| d = 'A NEW DEVICE' | |
| self.device = d |
| -module(gen_ale_drinker). | |
| %% There are 2 types of drink: | |
| -type style() :: ale | not_ale. | |
| %% Need to support imperial measurements (not US pints though) | |
| -type volume() :: {imperial_pint, non_neg_integer()} | {litre, non_neg_integer()}. | |
| -type beverage() :: {style(), volume()}. | |
| -callback drink(beverage()) -> ok | {error, ebeeroverflow}. %% This should never happen |
| # Copyright 2012 Erlware, LLC. All Rights Reserved. | |
| # | |
| # This file is provided to you under the Apache License, | |
| # Version 2.0 (the "License"); you may not use this file | |
| # except in compliance with the License. You may obtain | |
| # a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, |
| {module, foo}. %% version = 0 | |
| {exports, [{bar,1},{module_info,0},{module_info,1}]}. | |
| {attributes, []}. | |
| {labels, 7}. | |
| {function, bar, 1, 2}. |
| validate_rules() -> | |
| ?SYS_INFO("Validating common rules configuration..."), | |
| case compile:file(?PRIV("common_rules.erl"), [strong_validation, report, return, {i, ?PRIV("../include")}]) of | |
| {ok, _, _} -> | |
| ?SYS_DEBUG("File common_rules.erl validated successfully"), | |
| ok; | |
| {ok, _, _, Warnings} -> | |
| ok; | |
| {ok, _, _, Warnings} -> | |
| case Warnings of |