Skip to content

Instantly share code, notes, and snippets.

View xunker's full-sized avatar

Matthew Nielsen xunker

View GitHub Profile
@xunker
xunker / borg.rb
Last active December 17, 2015 23:09
borg.rb - an office productivity enhancer for Mac OS only.
voices = %w[Agnes Alex Bruce Bubbles Fred Junior Kathy Princess Ralph Vicki Victoria]
phrases = [
"We are the Borg.",
"Lower your shields and surrender your ships.",
"We will add your biological and technological distinctiveness to our own.",
"Your culture will adapt to service us.",
"Resistance is futile."
]
@xunker
xunker / first.rb
Created July 5, 2013 17:03
Opal router attempts
require 'opal'
require 'jquery'
require 'opal-jquery'
require 'erb'
require 'vienna'
require 'views/app_view'
require 'views/todo_view'
require 'templates/footer'
@xunker
xunker / JSON Parser module code
Last active December 31, 2015 18:22
knktr: Github webhook functions
JSON = (function()
-- -*- coding: utf-8 -*-
--
-- Simple JSON encoding and decoding in pure Lua.
--
-- Copyright 2010-2013 Jeffrey Friedl
-- http://regex.info/blog/
--
-- Latest version: http://regex.info/blog/lua/json
--
@xunker
xunker / life.rb
Last active January 4, 2016 18:39
Bad life
require './drawer'
class Life
def initialize(window_x: 640, window_y: 480)
@window_x = window_x
@window_y = window_y
@cellsize = 8
calcuate_bounds
@xunker
xunker / n-gon_around_circle.scad
Last active November 8, 2016 23:14
Drawing an N-gon around a circle using OpenSCAD
/*
Drawing an N-gon around a circle using OpenSCAD
https://gist.github.com/xunker/daabf70dbb8e990077d3a1a11d1e06dd
Matthew Nielsen - github.com/xunker
Math credit: http://mathcentral.uregina.ca/QQ/database/QQ.09.06/s/cliff1.html
*/
/* Diameter of the circle around which the n-gon will be built. */
@xunker
xunker / slaskstatus.sh
Last active June 26, 2017 17:55
Automatically set your Slack status emoji based on what WiFi network you are connected to
#!/bin/bash
# Originally based on https://gist.github.com/samervin/621fcde93d28346ec5dbab4466b51d45
slacktoken="YOUR_SLACK_TOKEN"
apiurl="https://slack.com/api/users.profile.set?token="$slacktoken"&profile="
# https://stackoverflow.com/questions/4481005/get-wireless-ssid-through-shell-script-on-mac-os-x
# This will probably only work on Mac OS 10.10+.
ssid=$(/usr/sbin/networksetup -getairportnetwork en0 | cut -c 24-)
echo $ssid
if [ "$ssid" = "WORK_NETWORK_NAME" ]; then
@xunker
xunker / eclipse.rb
Last active August 19, 2017 23:21
Ruby eclipse simulator and sun/moon position visualizer using Gosu
#!/usr/bin/env ruby
#
# Visualizer to show sun and moon positions, give a certain time and position on
# the earth.
#
# Uses "gosu" so you will need to install the following libraries:
# * gosu (brew install gosu on macos)
# * sdl2 (brew install sdl2 on macos)
#
# Uses gems:
@xunker
xunker / split_drillfile.rb
Last active July 2, 2018 17:32
Split pcb2gcode drill files by bit size
#!/usr/bin/env ruby
#
# usage: split_drillfile.rb [<drill.ngc>]
#
# Reads a pcb2gcode drill file and creates individual files for each
# drill bit size. It will duplicate the preamble/postable between files.
# This is for programs like Universal Gcode Sender / UGS that do not let you
# change bits while streaming is paused because they do not allow you to move
# the head or reset the Z-axis while file streaming is paused.
#
@xunker
xunker / pcb2gcode.sh
Last active July 3, 2018 06:11
pcb2code for Fritzing RS-274x files
#!/bin/bash
# IMPORTANT: Need to use pcb2gcode from git head, not the 2-year-old vesion 1.3.2 from homebrew or apt-get
# On Macos: brew install --HEAD pcb2gcode
# FILE_PREFIX="595 shift register demo"
# FILE_PREFIX="tp4056 charger carrier with ground copy"
# FILE_PREFIX="Sparkfun Moto_Bit hardware pull PTH"
# FILE_PREFIX="3.3v regulator"
FILE_PREFIX="3.3v regulator double sided"
@xunker
xunker / whats_new_in_ruby_2.7.md
Created April 24, 2019 16:49
What's new in Ruby >= 2.6.3, 2.7, and 3.0 - SLC.rb - April 23, 2019

What's new in Ruby >= 2.6.3, 2.7, and 3.0

Matthew Nielsen SLC.rb - April 23, 2019

2.6.3

Support for new Japanese Era Characters