Skip to content

Instantly share code, notes, and snippets.

Marco Fabbri mrfabbri

Block or report user

Report or block mrfabbri

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View onename.txt
Verifying that +mrfabbri is my blockchain ID. https://onename.com/mrfabbri
@mrfabbri
mrfabbri / app.js
Created Feb 4, 2015
App wide shortcuts in NW.js in "userland" [PoC]
View app.js
"use strict";
var gui = require("nw.gui");
var AppShortcut = require("./appshortcut")(gui).AppShortcut;
var keycode = require('keycode');
var win = gui.Window.get();
if (process.platform === "darwin") {
var nativeMenuBar = new gui.Menu({type: "menubar"});
@mrfabbri
mrfabbri / noderunner.js
Last active Aug 29, 2015
Noderunner + Dropbox
View noderunner.js
//The MIT License (MIT)
//Copyright (c) 2014 Dave Winer
//Permission is hereby granted, free of charge, to any person obtaining a copy
//of this software and associated documentation files (the "Software"), to deal
//in the Software without restriction, including without limitation the rights
//to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
//copies of the Software, and to permit persons to whom the Software is
//furnished to do so, subject to the following conditions:
@mrfabbri
mrfabbri / fscript-inject.sh
Last active Aug 29, 2015
F-Script injection script
View fscript-inject.sh
#!/usr/bin/env zsh
Frameworks="/Library/Frameworks";
usage() {
echo "Injects F-Script (menu) into a running application (via lldb)"
echo "usage: $(basename $0) [-c] <application-name-or-PID>"
echo
echo "options:"
echo "-c \t\topens F-Script console (useful for apps lacking a menu bar):"
View fsa.py
"""
Automate loading of F-Script Anywhere into any app.
By Daniel Jalkut - @danielpunkass - http://indiestack.com/
Revision 0.2 by Marco Fabbri - @mrfabbri - mrfabbri@gmail.com
To set up:
0. Make sure you have FScript.framework installed in /Library/Frameworks (http://www.fscript.org)
1. Copy this script to ~/.lldb/fsa.py
2. Add the following to your ~/.lldbinit file:
View react.min.js
/**
* React v0.5.0
*
* Copyright 2013 Facebook, Inc.
*
* Licensed 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
@mrfabbri
mrfabbri / shadow-stream.rkt
Created Nov 3, 2014
Shadow stream in Racket
View shadow-stream.rkt
;; Returns a stream that shadows side-effects of the original stream
;; when accessed after the first time
(define (shadow-stream s)
(let ([shadow-next #f])
(thunk (begin
(when (not shadow-next)
(let ([next (s)])
(set! shadow-next (cons (car next) (shadow-stream (cdr next))))))
(cons (car shadow-next) (cdr shadow-next))))))
@mrfabbri
mrfabbri / hashmap.sml
Created Nov 3, 2014
A minimal HashMap implementation in SML
View hashmap.sml
signature HASH_MAP =
sig
type 'a hashVector
type ('a, 'b) hashMap
val makeEmpty : (('a -> int) * ('a * 'a -> bool) * int) -> ('a, 'b) hashMap
val lookup : ('a, 'b) hashMap -> 'a -> 'b option
val insert : ('a, 'b) hashMap -> 'a * 'b -> unit
val remove : ('a, 'b) hashMap -> 'a -> unit
val load : ('a, 'b) hashMap -> int
end
@mrfabbri
mrfabbri / streams-interleave.rkt
Last active Aug 29, 2015
Interleaving streams in Racket
View streams-interleave.rkt
#lang racket
;; produce a new stream with the elements of the given streams interleaved
(define (streams-interleave . streams)
(letrec ([loop (lambda (streams)
(let ([next ((car streams))])
(cons (car next)
(thunk (loop (append (cdr streams) (list (cdr next))))))))])
(thunk (loop streams))))
@mrfabbri
mrfabbri / record-droid-screencast.sh
Created Oct 5, 2014
Starts and stops screen and audio (Mac) recording of an android attached device via adb
View record-droid-screencast.sh
#!/bin/sh
function stop_record() {
echo
echo "stopping audio recording"
cat << EOF | osascript -l AppleScript
tell application "Quicktime Player"
stop last item of (documents whose name contains "Audio Recording")
end tell
EOF
You can’t perform that action at this time.