Skip to content

Instantly share code, notes, and snippets.

View d0ugal's full-sized avatar
👋
Hi!

Dougal Matthews d0ugal

👋
Hi!
View GitHub Profile
# Prevent pip from doing anything unless you're inside an activated virtualenv.
PIP=/usr/local/bin/pip
function pip {
if [ "x$VIRTUAL_ENV" = 'x' ]; then
echo "No virtualenv activated; bailing."
else
PIP -E `basename $VIRTUAL_ENV` "$@"
fi
}
@d0ugal
d0ugal / django bash aliases
Created April 22, 2010 07:40
Django Aliases
#!/bin/bash
# This hook is run after every virtualenv is activated.
alias dj='python manage.py'
alias djr='dj runserver 0.0.0.0:8000'
alias djdb='dj dbshell'
alias djs='dj shell'
alias djt='dj test'
@d0ugal
d0ugal / gist:940396
Created April 25, 2011 11:32
API thoughts.
from django.contrib.auth.models import User
from django_automcomplete import Autocomplete
class UserAutocomplete(Autocomplete):
fields = ('username',)
class Meta:
models = User
@d0ugal
d0ugal / Chrome cross-domain loading
Created May 10, 2011 18:26
Do this from the command line to run chrome so that it can load AJAX etc cross-domain
open -a /Applications/Google\ Chrome.app --args --disable-web-security
@d0ugal
d0ugal / gist:966226
Created May 11, 2011 10:01
SOCKS Proxy
browsesecure() {
python <<SWITCH
import sys
from subprocess import Popen, call, PIPE
import time
def switch_location(name):
call(['scselect', name], stdout=open('/dev/null', 'w'))
print "Switched to %s" % name
@d0ugal
d0ugal / gist:1013188
Created June 7, 2011 21:16
Quick n dirty decorator for profiling a view.
import hotshot
import os
import time
try:
PROFILE_LOG_BASE = settings.PROFILE_LOG_BASE
except:
PROFILE_LOG_BASE = "/tmp"
def profile(log_file):
@d0ugal
d0ugal / gist:1941104
Created February 29, 2012 14:06
Auto-activating virtualenvs with autoenv and virtualenvwrapper.
PROJECT_DIR="$(dirname "${BASH_SOURCE:-$0}" )";
ABSOLUTE_DIR=`$SHELL -c "cd \"$PROJECT_DIR\" && pwd"`;
PROJECT_NAME="$( basename $ABSOLUTE_DIR)";
if [[ -n $PROJECT_NAME && $VIRTUAL_ENV != *"$PROJECT_NAME" ]];
then workon $PROJECT_NAME;
fi;
unset PROJECT_DIR;
unset ABSOLUTE_DIR;
@d0ugal
d0ugal / contribute_to_model.py
Created April 3, 2012 14:09
Patch an existing django model.
from django.db import models
from django.utils.functional import curry
def contribute_to_model(contrib, destination):
"""
Update ``contrib`` model based on ``destination``.
Every new field will be created. Existing fields will have some properties
updated.
@d0ugal
d0ugal / locache-example.js
Created April 9, 2012 12:29
locache.js example.
var seconds = 60
locache.set("key", {
'user': 1,
'books': ['a', 'b', 'c']
}, seconds)
locache.get("key")
// {'user': 1, 'books': ['a', 'b', 'c']}
// Note the object is returned, not a string.
@d0ugal
d0ugal / gist:3288929
Created August 7, 2012 20:08
brew install glib failing.
➜ ~ brew install glib
==> Installing glib dependency: gettext
==> Downloading http://ftpmirror.gnu.org/gettext/gettext-0.18.1.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/gettext-0.18.1.1.tar.gz
==> Downloading patches
######################################################################## 100.0%
######################################################################## 100.0%
==> Patching
patching file gettext-tools/configure
patching file gettext-tools/Makefile.in