Skip to content

Instantly share code, notes, and snippets.

@kemayo
kemayo / luaparse.py
Created September 1, 2016 05:19
Parse lua table syntax in python
import ply.yacc as yacc
import ply.lex as lex
""" Lua table syntax parser
Important reference: http://www.lua.org/manual/5.1/manual.html#8
This is incomplete. It parses enough of Lua's syntax to handle non-fancy
tables. In the official grammar provided in the manual, it starts at
"tableconstructor". It has no support for functions, or for complicated
// ==UserScript==
// @name Gerrit: Remove size from searchbox
// @namespace http://davidlynch.org/
// @version 0.1
// @description Searchbox too wide; removing its size attribute helps there
// @author David Lynch <kemayo@gmail.com>
// @match https://gerrit.wikimedia.org/*
// @grant none
// ==/UserScript==
// ==UserScript==
// @name Xenforo invisitext
// @namespace http://davidlynch.org/
// @version 0.1
// @description Make some invisible text a little more visible
// @author David Lynch
// @match https://forums.sufficientvelocity.com/*
// @match https://forums.spacebattles.com/*
// @match https://forums.questionablequesting.com/*
// @match https://xenforo.com/community/*
@kemayo
kemayo / git-foreach
Last active November 26, 2015 21:16
A git utility for my own use, here so I don't forget about it
#!/bin/bash
for D in *; do
if [ -d "${D}/.git" ]; then
echo "${D}:" "${1:-pull}" "${@:2}"
git -C "${D}" "${1:-pull}" "${@:2}"
fi
done
[
{
"path": "SilverDragon",
"repo": "wow-silverdragon",
"curse": "silver-dragon",
"wowi": "6606",
"changelog": true
},
{
"path": "BankStack",
@kemayo
kemayo / slack-skype.coffee
Created January 26, 2015 15:16
Hubot plugin to drop a skype conference call link into the chat
# Description
# Drop a link into chat which will work as a skype conference call for the requested user
#
# Dependencies:
# "slack-node": "^0.0.95"
# "hubot-slack-attachment": "^1.0.0"
#
# Configuration:
# HUBOT_SLACK_TOKEN
# HUBOT_SLACK_INCOMING_WEBHOOK
function crash_wow()
local model = CreateFrame("PlayerModel")
model:SetWidth(300)
model:SetHeight(300)
model:SetPoint("CENTER", WorldFrame)
model:SetCreature(83008)
end
source ~/.profile
# employing this prompt: http://vvv.tobiassjosten.net/bash/dynamic-prompt-with-git-and-ansi-colors
# Configure colors, if available.
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
c_reset='\[\e[0m\]'
c_user='\[\033[1;33m\]'
c_path='\[\e[0;33m\]'
c_git_clean='\[\e[0;36m\]'
local is_cloth = function(itemid, bag, slot) return select(7, GetItemInfo(itemid)) == "Cloth" end
SlashCmdList["MOVECLOTH"] = = BankStack.CommandDecorator(function(from, to)
BankStack.Stack(from, to, is_cloth)
BankStack.Fill(from, to, false, is_cloth)
end, "bags bank", 2)
SLASH_MOVECLOTH1 = "/movecloth"
@kemayo
kemayo / Default (OSX).sublime-keymap
Last active September 21, 2016 13:40
Tiny sublime plugin to wrap a selection in something.
[
{ "keys": ["alt+p"], "command": "wrap_text", "args": {"start":"<? ", "end":" ?>" }},
]