Skip to content

Instantly share code, notes, and snippets.

Sean Hammond seanh

View GitHub Profile
@seanh
seanh / Install.txt
Last active Aug 29, 2015
ckanext-deadoralive demo
View Install.txt
pip install ckanext-deadoralive
Add deadoralive to ckan.plugins in config file
Create a user for the link checker
Add ckanext.deadoralive.authorized_users to config file
Restart CKAN
pip install deadoralive
deadoralive --url ... --apikey ...
Add cron job
View gist:9b62745737d3ea7f5b1d
(DataError) invalid input syntax for type numeric: " " LINE 2: VALUES (' ', to_tsvector(' ')); ^ 'INSERT INTO "0b12b45b-32c0-4408-a8d8-2a17da72294d" ("value", "_full_text")\n VALUES (%s, to_tsvector(%s));' [(9750, '9750'), (9751, '9751'), (9752, '9752'), (9753, '9753'), (9754, '9754'), (9755, '9755'), (9756, '9756'), (9757, '9757') ... displaying 10 of 250 total bound parameter sets ... (9998, '9998'), (u' ', ' ')]
View diff.diff
diff --git a/h/static/scripts/app.coffee b/h/static/scripts/app.coffee
index 62cccba..5c98e67 100644
--- a/h/static/scripts/app.coffee
+++ b/h/static/scripts/app.coffee
@@ -112,6 +112,7 @@ module.exports = angular.module('h', [
.directive('match', require('./directive/match'))
.directive('tabbable', require('./directive/tabbable'))
.directive('tabReveal', require('./directive/tab-reveal'))
+.directive('scrollToMe', require('./directive/scrolltome'))
@seanh
seanh / README
Created Jan 21, 2009
My Panda3D snippets formerly on snipplr.com.
View README
This was broken up into individual gists (search for Panda3D).
@seanh
seanh / README
Created Jan 21, 2009
My implementation of Panda3D's messager pattern
View README
My implementation of Panda3D's messager pattern
This is my implementation of the messager pattern used by Panda3D for event
handling. It's a really nice idea but I think Panda's version is implemented
weirdly, it uses the subscribe objects as keys in the dictionary. That means
that if you want more than one object to subscribe to the same message you have
to subclass DirectObject and use self.accept(...), can't just call the messager
directly or you'll get a different behaviour, it means that a single object
instance can't subscribe two different functions to the same message, and it
means that your objects have to be hashable (!) because the messager uses them
@seanh
seanh / README
Created Jan 30, 2009
Now Playing in Rhythmbox web app
View README
A little web app that I wrote to tell the world what song is currently
playing in rhtyhmbox on the jukebox at the forest cafe. Requires rhythmbox-
client and web.py 0.31. templates.html should go in a folder called
templates.
View gist:76907
package scrapbook;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* Interface that must be implemented by objects that subscribe to messages.
*/
@seanh
seanh / HTMLNode.java
Created Mar 12, 2009
HTMLNode is a Piccolo node for rendering HTML text.
View HTMLNode.java
/* Copyright 2005, University of Colorado */
/*
* CVS Info -
* Filename : $Source$
* Branch : $Name$
* Modified by : $Author$
* Revision : $Revision$
* Date modified : $Date$
*/
@seanh
seanh / walk.py
Created Mar 18, 2009
Recursively walk a directory in Python with os.walk.
View walk.py
"""Recursively walk a directory with os.walk."""
import os
base_dir = '/home/seanh' # The directory to walk
for root, dirs, files in os.walk(base_dir):
print 'root: ',root
print ' dirs:'
for d in dirs:
print ' ',d
You can’t perform that action at this time.