Skip to content

Instantly share code, notes, and snippets.

View jneen's full-sized avatar

Jeanine Adkisson jneen

View GitHub Profile
@jneen
jneen / loop
Last active September 23, 2020 19:32
A script I use to preview looping music
#!/usr/bin/env python3
import pyglet
class LoopingGroup(pyglet.media.SourceGroup):
def _advance(self):
if not self._sources: return
print('loop seek!')
source = self._sources[0]
super()._advance()

Keybase proof

I hereby claim:

  • I am jneen on github.
  • I am jneen (https://keybase.io/jneen) on keybase.
  • I have a public key whose fingerprint is 93A8 3342 F6C1 9C88 3518 784F 692D EAAD 282B CEC2

To claim this, I am signing this object:

@jneen
jneen / README.md
Created July 14, 2022 02:03
neovim EunuchNewLine minimal repro

Instructions to reproduce:

  • Run ./run-nvim.sh
  • In the terminal within nvim, run ./run-nvr.sh
  • Close the newly opened init.vim buffer with :q or ^W c or similar.

On my system, this results in the following output:

[0: jneen@lavender nvim-repro ] -> *main $                                                                                                                                       
@jneen
jneen / ableton_timestamps.sh
Last active September 25, 2022 17:28
extract clip start times from an ableton project file in 30fps format at 225bpm
#!/usr/bin/env bash
# .als file
FILE="$1"; shift
SCRIPT="$(cat <<RUBY
\$_.scan(%r[<CurrentStart Value="(.*?)"/><Name Value="(.*?)"/>]) do |start, name|
frame = (start.to_f * 8).round
seconds, frame = frame.divmod(30)
minutes, seconds = seconds.divmod(60)
@jneen
jneen / facebook.rules
Created January 3, 2024 17:04
jneen's ublock rules for facebook
! jneen's rules for facebook
www.facebook.com##span:has-text(/^Suggested for you$/):upward(22)
www.facebook.com##span:has-text(/^Follow$/):upward(26)
www.facebook.com##span:has-text(/^Join$/):upward(26)
www.facebook.com##a[href^="https://l.facebook.com"][rel="nofollow noreferrer"]:upward(3)
@jneen
jneen / itch_io.rb
Created May 16, 2024 12:53
OmniAuth strategy for Itch.io
module OmniAuth
module Strategies
class ItchIO
include OmniAuth::Strategy
option :name, 'itch_io'
option :client_options,
site: 'https://itch.io/',
authorize_url: 'https://itch.io/user/oauth'
@jneen
jneen / gfx.rb
Created April 26, 2025 06:28
script to convert aseprite files to GFX bin files for use in SMW
require 'pry'
require 'chunky_png'
require 'zlib'
PLAYERSPRITE_DIR = File.expand_path('../resources/patches/player_sprite', __dir__)
class AseParser
def self.parse_file(fname)
File.open(fname, 'rb', encoding: 'ASCII-8BIT') do |file|