Skip to content

Instantly share code, notes, and snippets.

@simlrh
simlrh / data.lua
Created March 24, 2016 11:53
Walking turret snippet
require "util"
function gun_turret_extension(inputs)
return
{
filename = "__base__/graphics/entity/gun-turret/gun-turret-gun-extension.png",
priority = "medium",
width = 65,
height = 63,
direction_count = 4,
@simlrh
simlrh / osvr_server_config.json
Last active December 27, 2017 14:18
OSVR-fusion example config
{
"display": "displays/Oculus_Rift_DK1.json",
"renderManagerConfig": "sample-configs/renderManager.direct.landscape.json",
"drivers": [{
"plugin": "je_nourish_fusion",
"driver": "FusionDevice",
"params": {
"name": "DK1_Kinectv2",
"position": "/je_nourish_kinectv2/KinectV2/semantic/body1/head",
"orientation": "/je_nourish_openhmd/Oculus Rift (Devkit)/semantic/hmd",
{
"jsonid" : "vrsettings",
"perfcheck" : {
"heuristicActive" : true
},
"steamvr" : {
"allowReprojection" : true,
"forcedDriver": "osvr",
"directMode" : false
},
@simlrh
simlrh / hydra.py
Created October 7, 2016 19:41
FreePIE hydra script
global leftHand
global left1
global left2
global left3
global left4
global leftBumper
global leftJoystickButton
global leftMiddle
global leftJoystickX
global leftJoystickY
@simlrh
simlrh / osvr_server_config.json
Created November 11, 2016 17:07
OSVR-firmata server config
{
"description": "The default config file, as used with the HDK, is fully auto-detected, so no configuration required. See the JSON-Schema for server config or other samples to see possible options.",
"aliases": {
"/controller/right/joystick/x": "/je_nourish_firmata/StandardFirmata.ino-X.Y/analog/0",
"/controller/right/joystick/y": "/je_nourish_firmata/StandardFirmata.ino-X.Y/analog/1",
"/controller/right/joystick/button": "/je_nourish_firmata/StandardFirmata.ino-X.Y/button/0"
}
}
@simlrh
simlrh / index.rb
Created November 11, 2016 18:24
A quick and dirty Jekyll plugin to remove 'index.html' from the end of urls when using a clean permalink scheme
# Usage: {{ post.url | remove_index }}
module Jekyll
module RemoveIndexFilter
def remove_index(input)
url = if input
input.split("/")[0..-2].join("/") + "/"
else
input
end
@simlrh
simlrh / concat.rb
Created November 15, 2016 14:05
Use Liquid's new array concatenation in Jekyll
module Jekyll
module ConcatFilter
def concat(one, two)
one.concat(two)
end
end
end
Liquid::Template.register_filter(Jekyll::ConcatFilter)
@simlrh
simlrh / abc.js
Created January 26, 2017 14:19
Tree shaking example
import { d, e, f } from "./def.js";
// a is used
export const a = d + " is part of a";
// b is unused
export const b = e + " is part of b";
// c is unused
export const c = f + " is part of c";
@simlrh
simlrh / indentation.vim
Created February 6, 2017 18:06
Indentation functions for vim
"------------------------------------------------------------
" Indentation options {{{1
"
let g:mytabcolumns = 4
set noexpandtab
set softtabstop=0
set shiftwidth=4
set tabstop=4
@simlrh
simlrh / composable.ts
Last active April 17, 2022 05:39
Typescript compose and pipe "infix operators"
interface Composable<B,C> {
(b: B): C;
I: <D>(f: (c: C) => D) => Composable<B,D>;
o: <A>(f: (a: A) => B) => Composable<A,C>;
}
/*
* Non-type safe internal function - type safety of result is guaranteed by
* allowing creation only through `I` and `o` functions and methods
*/