Function | Shortcut |
---|---|
New Tab | ⌘ + T |
Close Tab or Window | ⌘ + W (same as many mac apps) |
Go to Tab | ⌘ + Number Key (ie: ⌘2 is 2nd tab) |
Go to Split Pane by Direction | ⌘ + Option + Arrow Key |
Cycle iTerm Windows | ⌘ + backtick (true of all mac apps and works with desktops/mission control) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This is not meant to be comprehensive, a guide, or anything quite that sophisticated, just a couple | |
notes on what I do at work, in production, and how my environment is set up. | |
Overview: | |
- Infrastructure runs on AWS | |
- We run an internal PaaS based on OpenShift Origin/Kubernetes | |
- We push code to GitHub, which triggers a webhook, which in turn | |
triggers OpenShift to start a build, which fetches the source | |
code, and runs the build using the Dockerfile contained in the |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
defmodule MsTest do | |
use ExUnit.Case | |
doctest Ms | |
@bob %{name: "Bob", job: "developer"} | |
@alice %{name: "Alice", job: "musician"} | |
@john %{name: "John", job: "musician"} | |
@ada %{name: "Ada", job: "developer"} | |
@alan %{name: "Alan", job: "developer"} | |
@table :users |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# For simpler use cases, see the UsesTracker instead: | |
# https://gist.github.com/christhekeele/e858881d0ca2053295c6e10d8692e6ea | |
### | |
# A way to know, at runtime, what modules a module has used at compile time. | |
# In this case, you include `IndirectUsesTracker` into a module. When that module gets | |
# used in some other module, it makes that module registerable under a namespace of your choosing. | |
# When the registerable module is used into a third module, that third module will know at runtime which | |
# registerables were `use`d in it at compile time, via a function titled after the namespace. |
- Close Android File Transfer
- Open Activity Monitor and kill “Android File Transfer Agent”
- Go to where you installed “Android File Transfer.app” (I have it under /Applications)
- Ctrl+click –> “Show package contents”
- Go to Contents/Resources
- Rename “Android File Transfer Agent” to e.g. “Android File Transfer Agent_DISABLED”
- Then go to “/Users/username/Library/Application Support/Google/Android File Transfer” and again rename the Agent app.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
defmodule CommonMacros do | |
defmacro left ~>> right do | |
[{h, _}|t] = Macro.unpipe({:|>, [], [left, right]}) | |
:lists.foldl fn | |
{{_, _, args} = x, _pos}, acc -> | |
pos = Enum.count(args) | |
Macro.pipe(acc, x, pos) | |
{x, pos}, acc -> | |
Macro.pipe(acc, x, pos) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
defmodule Episode do | |
defstruct id: nil, name: nil, video: nil, markdown: nil, post: nil | |
def list do | |
[ | |
%Episode{id: "001", post: "271", name: "Introduction and Installing Elixir", video: "1366", markdown: "1382" }, | |
%Episode{id: "002", post: "275", name: "Basic Elixir", video: "1367", markdown: "1357" }, | |
%Episode{id: "003", post: "280", name: "Pattern Matching", video: "14879", markdown: "1413" }, | |
%Episode{id: "004", post: "284", name: "Functions", video: "5086", markdown: "1559" }, | |
%Episode{id: "005", post: "298", name: "Mix and Modules", video: "5087", markdown: "1654" }, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
defmodule Chain do | |
defmacro chain(ex) do | |
parse(ex) | |
end | |
defp parse({:., _, [first_arg, function_name]}, more_args) do | |
args = [first_arg|more_args] |> Enum.map(&parse/1) | |
apply(String, function_name, args) | |
end |
Get Git log in JSON format
git log --pretty=format:'{%n "commit": "%H",%n "abbreviated_commit": "%h",%n "tree": "%T",%n "abbreviated_tree": "%t",%n "parent": "%P",%n "abbreviated_parent": "%p",%n "refs": "%D",%n "encoding": "%e",%n "subject": "%s",%n "sanitized_subject_line": "%f",%n "body": "%b",%n "commit_notes": "%N",%n "verification_flag": "%G?",%n "signer": "%GS",%n "signer_key": "%GK",%n "author": {%n "name": "%aN",%n "email": "%aE",%n "date": "%aD"%n },%n "commiter": {%n "name": "%cN",%n "email": "%cE",%n "date": "%cD"%n }%n},'
The only information that aren't fetched are:
%B
: raw body (unwrapped subject and body)%GG
: raw verification message from GPG for a signed commit
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Enter this command to create a sudoers override/include file: | |
# sudo visudo -f /etc/sudoers.d/nginx.overrides | |
# (Make sure you actually have this in your /etc/sudoers - Run `sudo visudo` to check) | |
# #includedir /etc/sudoers.d | |
# This file assumes your deployment user is `deploy` | |
# Nginx Commands | |
Cmnd_Alias NGINX_RESTART = /usr/sbin/service nginx restart |