Skip to content

Instantly share code, notes, and snippets.

View dbspringer's full-sized avatar

Derek Springer dbspringer

View GitHub Profile
@dbspringer
dbspringer / scramble.py
Created October 6, 2011 18:25
A function to scramble the inner letters of a word/sentence.
#!/usr/bin/python
# -*- coding: utf-8 -*-
def scramble(unscrambled):
'''
Scrambles the word(s) in unscrambled such that the first and last letter remain the same,
but the inner letters are scrambled. Preserves the punctuation.
See also: http://science.slashdot.org/story/03/09/15/2227256/can-you-raed-tihs
'''
import string, random, re
@dbspringer
dbspringer / substr.c
Created September 13, 2011 00:05
Substring in C
#include <stdio.h>
#include <string.h>
/* If you're feeling sassy, a macro one-liner w/out checks */
#define substr(dest, src, dest_size, startPos, strLen) snprintf(dest, dest_size, "%.*s", strLen, src+startPos)
/* Python-like idiom of negative values to count from the end of the string. */
void substr (char *dest, const char *src, int startPos, size_t strLen) {
/* Cannot do anything with NULL. */
if (dest == NULL || src == NULL) return;
@dbspringer
dbspringer / some_plugin.php
Created January 28, 2014 01:56
WordPress front-end uploader & current-user only media filter
<?php
class Some_WP_Plugin {
/**
* Init everything here
*/
public function __construct() {
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
add_filter( 'ajax_query_attachments_args', array( $this, 'filter_media' ) );
@dbspringer
dbspringer / plugin.php
Created May 7, 2015 21:33
Front-end Media Example plugin
<?php
/**
* Plugin Name: Front-end Media Example
* Plugin URI: http://derekspringer.wordpress.com
* Description: An example of adding the media loader on the front-end.
* Version: 0.1
* Author: Derek Springer
* Author URI: http://derekspringer.wordpress.com
* License: GPL-2.0+
@dbspringer
dbspringer / force_jp_https.php
Created February 4, 2016 18:38
To force Jetpack to make API requests using HTTPS.
<?php
add_filter( 'jetpack_can_make_outbound_https', '__return_true', 99999 );
@dbspringer
dbspringer / screen.scss
Last active December 19, 2015 00:39
Barebones example of of using Compass & SCSS to use sprites with pseudo selectors. In my icons directory I have a handful of icons (one called wrench.png) which I'm importing for .foo:before.
@import "icons/*.png";
.foo {
font-size: 20px;
color: red;
&:before {
@include icons-sprite(wrench);
width: 32px;
height: 32px;
@dbspringer
dbspringer / fizzbuzz.py
Created November 1, 2011 21:35
FizzBuzz one liner
# FizzBuzz in one line (minus this comment)
print '\n'.join(['%d %s%s' % (i, 'Fizz'*(i%3==0), 'Buzz'*(i%5==0)) for i in xrange(101)])
@dbspringer
dbspringer / gist:1287873
Created October 14, 2011 18:17 — forked from fennb/gist:1283573
nginx microcaching config example
# Set cache dir
proxy_cache_path /var/cache/nginx levels=1:2
keys_zone=microcache:5m max_size=1000m;
# Virtualhost/server configuration
server {
listen 80;
server_name yourhost.domain.com;
# Define cached location (may not be whole site)
@dbspringer
dbspringer / col2num.py
Created July 21, 2015 18:30
Python one-liner to convert spreadsheet column to zero-based index. e.g. 'A' -> 0, 'AA' -> 26, etc
col2num = lambda col: reduce(lambda x, y: x*26 + y, [ord(c.upper()) - ord('A') + 1 for c in col])-1
@dbspringer
dbspringer / frontend.js
Last active August 29, 2015 14:20
JS for front-end plugin
(function($) {
$(document).ready( function() {
var file_frame; // variable for the wp.media file_frame
// attach a click event (or whatever you want) to some element on your page
$( '#frontend-button' ).on( 'click', function( event ) {
event.preventDefault();
// if the file_frame has already been created, just reuse it