Skip to content

Instantly share code, notes, and snippets.

@drdrang
drdrang / newproject
Created July 7, 2020 15:58
Script to create database entries, folders in iCloud, a folder in Mail, and a set of labels for a new project.
#!/usr/bin/python
import sqlite3
import os
import sys
from applescript import asrun
from subprocess import Popen, PIPE
import shutil
import requests
import json
@drdrang
drdrang / swicsfix.py
Created December 10, 2017 19:39
Clean up Southwest Airlines ICS files.
#!/usr/bin/python
from icalendar import Calendar
import sys
import copy
from datetime import timedelta
for ics in sys.argv[1:]:
# Open the ics file and extract the event and alarm.
cal = Calendar.from_ical(open(ics).read())
@drdrang
drdrang / safari-feeds.py
Last active July 20, 2020 07:07
Extract feeds from Safari and print them as OPML.
#!/usr/bin/python
from plistlib import readPlist
from os import environ
from cgi import escape
# OPML template with header and footer.
opml = '''<?xml version="1.0"?>
<opml version="1.1">
<head>
@drdrang
drdrang / Purge Old Reminders.scpt
Last active August 1, 2024 05:57
AppleScript to delete all reminders more than 30 days old.
set remindersOpen to application "Reminders" is running
set monthAgo to (current date) - (30 * days)
tell application "Reminders"
set myLists to name of every list
repeat with thisList in myLists
tell list thisList
delete (every reminder whose completion date is less than monthAgo)
end tell
end repeat
@drdrang
drdrang / desktop
Created April 28, 2016 03:21
Toggle the visibility of icons on the OS X Desktop. A reworking of Craig Hockenberry's original: https://gist.github.com/chockenberry/a6a06a73cce44e29808b22d458cafdcb
#!/bin/bash
# Toggle the visibility of Desktop icons.
# Desktop icons are visible if the CreateDesktop setting is missing or
# if it exists and is set to 1, true, yes, or on (case insensitive).
# Desktop icons are hidden if the CreateDesktop setting exists and
# is set to any value other than 1, true, yes, or on.
# The $icons variable is the value of CreateDesktop if it exists or is
@drdrang
drdrang / dayfeed-alt
Created December 23, 2015 17:21
Adjusted version of dayfeed to handle entries with no body.
#!/usr/bin/env python
# coding=utf8
import feedparser as fp
import time
from datetime import datetime, timedelta
import pytz
subscriptions = [
'http://1.usa.gov/1O9yJFp',
@drdrang
drdrang / testfeeds
Created December 23, 2015 13:47
Check the entries of a list of feeds for content/value and summary items.
#!/usr/bin/env python
# coding=utf8
import feedparser as fp
import time
from datetime import datetime, timedelta
import pytz
subscriptions = [
'http://feedpress.me/512pixels',
var oneday = 60*60*24*1000;
var today = new Date();
var wToday = today.getDay();
var away = 1 - wToday;
if (away <= 0) { away += 7; }
var nextMonday = new Date(today.getTime() + away*oneday )
var theFriday = new Date(nextMonday.getTime() + 4*oneday)
nextMonday.toDateString() + ' to ' + theFriday.toDateString();
@drdrang
drdrang / Amazon referral link
Created October 17, 2014 18:50
A TextExpander AppleScript snippet for inserting an affiliate link to the current Amazon page.
@drdrang
drdrang / Pair.py
Created October 14, 2014 16:14
Pythonista script for putting two screenshots side by side.
import Image
import photos, speech, console
speech.say('left image?', '', .18)
s1 = photos.pick_image()
speech.say('right image?', '', .18)
s2 = photos.pick_image()
w = s1.size[0] + s2.size[0] + 60
h = max(s1.size[1], s2.size[1]) + 40