Skip to content

Instantly share code, notes, and snippets.

lordsutch /
Created April 6, 2022 23:53
Randomly capitalize some text so you can be l33t on social media
#!/usr/bin/env python3
import argparse
import random
import sys
def randcaps(text: str, percentage: float = DEFAULT_PERCENTAGE) -> str:
lordsutch /
Created July 25, 2019 16:57
Bitmask testing routine for Python 3.6+
# Copyright (C) 2019 Chris Lawrence
# You may freely modify, copy, and reuse this software under the terms of the MIT License.
def test_bitmask(value: int, mask: str) -> bool:
mask = mask.replace("_", "")
testval: int = 1
for bit in reversed(mask):
if bit == '1' and not (value & testval):
return False
elif bit == '0' and (value & testval):
lordsutch / SaveAttachments.AppleScript
Created July 1, 2019 16:55
AppleScript to save attachments into a folder with filenames including the attachment date
View SaveAttachments.AppleScript
-- Tested on macOS 10.14.5
use scripting additions
using terms from application "Mail"
on perform mail action with messages messageList -- in mailboxes mbox for rule aRule
-- Must be in your Downloads folder or a subfolder in recent macOS versions
set destinationPath to (POSIX file "/Users/quango/Downloads/enrollment/") as string
tell application "Mail"
lordsutch /
Created February 28, 2019 17:20
Script to encode the Anthem digital soundtrack to AAC for iTunes etc. Can be readily adapted to other WAV albums.
#!/usr/bin/env python3
# Get 'fdkaac' from (or Homebrew etc.)
import glob
import subprocess
import sys
import os
def convert_file(filename, trackcount):
lordsutch /
Last active December 28, 2021 22:35
Python script to force re-rendering of OpenStreetMap tiles in a given area at wider zoom levels
#!/usr/bin/env python3
# Dirty tiles in a specified area in OpenStreetMap
import argparse
import datetime
import decimal
import email.utils
import math
import re
lordsutch / plotcells.R
Last active April 5, 2017 17:44
code for multilateration of cell towers in R
View plotcells.R
allcells <- data.frame()
for(cell in list.files(pattern="^cellinfolte.*[.]csv$")) {
lordsutch /
Created February 1, 2017 21:17
Generate a password/key for a MoCA network with Python 3.6+
#!/usr/bin/env python3.6
import string
import secrets
while True:
password = secrets.randbelow(100000000000000000)
if password >= 100000000000:
lordsutch / fixvid
Created December 30, 2015 04:50
Convert videos to Chromebook-compatible format, if necessary
View fixvid
#!/usr/bin/env python3
import sys
import subprocess
import json
import os
# Supported by Chrome OS according to
ACCEPTABLE_VIDEO=('theora', 'vp8', 'vp9', 'h264', 'mpeg4')
lordsutch / checkbox-dummies.R
Last active August 29, 2015 14:07
Turn a comma-separated list of values (like from a Google Forms spreadsheet with a checkbox form) into logical variables
View checkbox-dummies.R
mga.students <- read.csv('MGA POLS 1101 Student Profile Survey (Responses) - Form Responses 1.csv')
## Checkbox items
varlist <- c('',

Keybase proof

I hereby claim:

  • I am lordsutch on github.
  • I am lordsutch ( on keybase.
  • I have a public key whose fingerprint is 6958 A410 0D18 3097 8B3D ACB6 C9FC 41B8 F98C 66CF

To claim this, I am signing this object: