Skip to content

Instantly share code, notes, and snippets.

@fletcher
fletcher / bootstrap.sh
Created October 20, 2023 19:25
Bootstrap provisioning file for lightweight Ubuntu virtual machine in Vagrant
#!/usr/bin/env bash
apt-get update
# Install development packages for MMD
apt-get install -y build-essential cmake mingw-w64 nsis libbsd-dev
# Ruby stuff for squib
apt-get install -y ruby ruby-dev
@fletcher
fletcher / Vagrantfile
Created October 20, 2023 19:24
Vagrantfile for a lightweight Ubuntu development virtual machine
# -*- mode: ruby -*-
# vi: set ft=ruby :
# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
# The most common configuration options are documented and commented below.
# For a complete reference, please see the online documentation at
@fletcher
fletcher / default.keybinding
Last active August 28, 2019 16:26
MultiMarkdown Composer 4 Default Key Binding File
[{
"key": "P",
"action": "togglePreview:",
"modifiers": ["cmd", "ctrl"]
}, {
"key": "I",
"action": "toggleInfo:",
"modifiers": ["cmd", "shift"]
}, {
"key": "T",
@fletcher
fletcher / keybinding.schema
Last active November 28, 2017 19:12
JSON Schema to validate a keybinding file for MultiMarkdown Composer
{
"comment" : "JSON Schema to validate a keybinding file for MultiMarkdown Composer",
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "keybindings",
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "string"
@fletcher
fletcher / expansions.schema
Last active November 22, 2017 13:27
JSON Schema to validate an expansion file for MultiMarkdown Composer
{
"comment" : "JSON Schema to validate an expansions file for MultiMarkdown Composer",
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "expansions",
"type": "object",
"properties" : {
"comment" : { "type" : "string" },
"expansions" : {
"type" : "array",
"items" : {
# Automate annotation of chess games
games := $(wildcard *.pgn)
annotated := $(patsubst %.pgn, %.pgn.can, $(games))
html := $(patsubst %.pgn, %.pgn.html, $(games))
tex := $(patsubst %.pgn, %.pgn.tex, $(games))
user := Fletcher
margin := 0.5