Skip to content

Instantly share code, notes, and snippets.

View quad's full-sized avatar

Scott Robinson quad

View GitHub Profile
@quad
quad / edit_behavior.py
Last active August 29, 2015 13:57
edit_behavior.py customization for Chinese study
# -*- coding: utf-8 -*-
# Welcome to the Chinese Support Add-on's field edition ruleset.
# Here, you can tweak the note editor helper's behavior to your liking.
#
# If you messed things up, you can safely delete file
# addons/chinese/edit_behavior.py from your Anki directory.
# It will be recreated the next time you restart Anki.
#
# You can read about all available functions at:
# https://github.com/ttempe/chinese-support-addon/wiki/Edit-behavior
@quad
quad / times.rb
Last active August 29, 2015 14:07
Because implementing cron is always a good idea.
require 'date'
require 'minitest/autorun'
class Time
def self.normalize time
dt = DateTime.parse(time).to_time.utc
Time.utc(Time.now.year, nil, nil, dt.hour, dt.min)
end
def inbetween start_time, end_time
@quad
quad / subtype_registration_example.rb
Created March 12, 2015 03:10
A rough sketch to how I'd register subtypes.
class Thing < Struct.new(:color)
@@things = {}
def self.parse description
type_name, color = description.split
@@things[type_name].new color
end
def self.type_code code
@@things[code] = self
@quad
quad / merryspam.py
Created December 25, 2008 20:15
Spam your friends with Christmas Greetings
#!/usr/bin/env python
#
# Spam your phonebook (Nokia) with Christmas cheer.
#
# Usage: merryspam.py vcards names
#
# How do I get the "vcards"?
#
# gnokii --getphonebook ME 1 end -v > ME.vcards
# gnokii --getphonebook SM 1 end -v > SM.vcards
@quad
quad / forward-test.py
Created April 19, 2009 12:03
A hilarious use of the Skype API to connect random people together.
#!/usr/bin/env python
import logging
import dbus
import dbus.service
import gobject
# Set DBUS as the default MainLoop.
from dbus.mainloop.glib import DBusGMainLoop
@quad
quad / any-month.py
Created May 10, 2009 16:43
What did you listen to the most on any given month? (via last.fm)
#!/usr/bin/env python
#
# any-month.py
#
# What did you listen to the most on any given month? (via last.fm)
#
# Example:
#
# $ find ~/public_html/mixtape -name index.xspf -print0 | xargs -0 ./any-month.py
# Wild Orchid Children where the mexican boys go
@quad
quad / get-jwz-djabberd.sh
Created October 8, 2009 02:27
jwz wants to try DJabberd
#!/bin/sh -e
#
# jwz wants to try DJabberd.
#
# Hope you're using Debian.
sudo aptitude install \
perl \
libdanga-socket-perl \
libdigest-hmac-perl \
@quad
quad / DllTest.d
Created November 8, 2009 02:02
Generate the missing symbols for loading mod_dav_svn
import tango.sys.SharedLib;
import tango.text.convert.Format;
import tango.util.log.Trace;
bool load(char[] name) {
if (auto lib = SharedLib.load(name)) {
Trace.formatln(Format("{} loaded.", name));
return true;
}
@quad
quad / bootstrap.sh
Created February 11, 2010 01:01
Deploy stardate on julia
#!/bin/sh -e
deploy ()
{
VERSION="2.5"
PYTHON="$(which python$VERSION)"
export PYTHONPATH="$1/lib/python$VERSION/site-packages"
mkdir -p $PYTHONPATH
@quad
quad / psplit.py
Created December 2, 2010 06:50
At YOW!2010, Guy Steele gave a great talk entitled "How to Think about Parallel Programming---Not!"
#
# At YOW!2010, Guy Steele gave a great talk entitled "How to Think about
# Parallel Programming---Not!"
#
# In it, he presented an implementation of a divide and conquer strategy for
# splitting a string.
#
# His solution was written in Fortress.
#
# People nearby me were confused.