Skip to content

Instantly share code, notes, and snippets.

@quad
quad / edit_behavior.py
Last active Aug 29, 2015
edit_behavior.py customization for Chinese study
View edit_behavior.py
# -*- 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 Aug 29, 2015
Because implementing cron is always a good idea.
View times.rb
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 Mar 12, 2015
A rough sketch to how I'd register subtypes.
View subtype_registration_example.rb
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 Dec 25, 2008
Spam your friends with Christmas Greetings
View merryspam.py
#!/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 Apr 19, 2009
A hilarious use of the Skype API to connect random people together.
View forward-test.py
#!/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
What did you listen to the most on any given month? (via last.fm)
View any-month.py
#!/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 Oct 8, 2009
jwz wants to try DJabberd
View get-jwz-djabberd.sh
#!/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 Nov 8, 2009
Generate the missing symbols for loading mod_dav_svn
View DllTest.d
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 Feb 11, 2010
Deploy stardate on julia
View bootstrap.sh
#!/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 Dec 2, 2010
At YOW!2010, Guy Steele gave a great talk entitled "How to Think about Parallel Programming---Not!"
View psplit.py
#
# 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.