Skip to content

Instantly share code, notes, and snippets.

View JamesTheAwesomeDude's full-sized avatar

James E. A. JamesTheAwesomeDude

View GitHub Profile
# /etc/X11/xorg.conf.d/40-libinput-tapping.conf
# https://bugzilla.xfce.org/show_bug.cgi?id=14085
Section "InputClass"
Identifier "libinput touchpad catchall"
MatchIsTouchpad "on"
# MatchDevicePath "/dev/input/event*"
# Driver "libinput"
Option "tapping"
EndSection
import csv
CSVFILE='2018H1.csv'# TL:DR:
#Spending money:
# -,Personal.Recreation.Social,28.37
# -,Groceries,45.32
#Getting money:
# +,Income.Job,420.69
#Being subsidized:
rotr = lambda v,n=1,s=8: ((v>>n)|(v<<(s-n)))&~(~0<<s)
rotl = lambda v,n=1,s=8: ((v<<n)|(v>>(s-n)))&~(~0<<s)
#rot*(number, number_of_bits_to_shift, size_of_number)
assert rotr(0b11110011,3) \
== 0b01111110
assert rotl(0xDEADBEEF,20,32) \
== 0xEEFDEADB
@JamesTheAwesomeDude
JamesTheAwesomeDude / 99-Arduino.rules
Last active April 7, 2020 03:45
necessary/skeletal Arduino "sketch" files
# /etc/udev/rules.d/99-arduino.rules
SUBSYSTEM=="tty", ATTRS{manufacturer}=="*Arduino*", GROUP="james"
@JamesTheAwesomeDude
JamesTheAwesomeDude / app.ini
Created September 18, 2018 03:35
Gitea RST support
; append this FRAGMENT to gitea/custom/conf/app.ini
; NOTE: you must first run apt install python3-pip
; and python3 -m pip install docutils
; (if the latter is NOT run as root, be sure that ~/.local/bin is in PATH)
[markup.restructuredtext]
ENABLED = true
FILE_EXTENSIONS = .rst
RENDER_COMMAND = rst2html.py
IS_INPUT_FILE = false
@JamesTheAwesomeDude
JamesTheAwesomeDude / rst2msword.bat
Last active September 16, 2019 13:23
Open ReStructuredText in Microsoft Word
SET pythonfolder=%LocalAppData%\Programs\Python\Python37
SET rst2odt="%pythonfolder%\Scripts\rst2odt.py"
SET msword="C:\Program Files\Microsoft Office\root\Office16\WINWORD.EXE" /t
SET flags=--strip-comments --report=none
%rst2odt% %flags% %1 "%~dpn1.odt"
REM TODO stackoverflow.com/q/13402898
REM TODO stackoverflow.com/a/22194521
start "" %msword% "%~dpn1.odt"
@JamesTheAwesomeDude
JamesTheAwesomeDude / brier.py
Last active May 9, 2021 01:22
fair, symmetric scoring rule
from random import random as r
#TODO: rewrite deterministically
def brier(pf=0.5, P=0.5, N=1024**2):
if callable(P):
o = P
elif hasattr(P, '__getitem__')
o = lambda t: P[t]
else:
o = lambda t: r()<P
@JamesTheAwesomeDude
JamesTheAwesomeDude / golf-location-parameters.js
Last active December 12, 2019 23:17
One-statement parsing location.parameters
decodeURIParam=p=>//<223 bytes w/o whitespace and comments
Object.assign(//Create a new object,
...//the union of the following objects:
p//location.parameters
.match(/^\??(.*)$/)//has a leading '?'
[1]//(which we don't want)
.split('&')//split the rest into '&'-delimited chunks,
.filter(S=>S)//remove null chunks (from duplicate or trailing ampersands)
.map(S=>S//take each chunk
.match(/^([^=]*)=?(.*)$/))//and split it via key=value
@JamesTheAwesomeDude
JamesTheAwesomeDude / cgi-bin_v0.cgi
Last active February 23, 2020 10:49
banned halfbrick prototype
#!/bin/sh
cd "$(dirname "${0}")/.."
case "${REQUEST_METHOD}" in
GET)
printf 'Status: %s\r\n' "200 OK"
printf 'Content-Type: %s\r\n' "application/json"
printf '\r\n'
exec cat "X.v0.json"
@JamesTheAwesomeDude
JamesTheAwesomeDude / minecraft@.service
Last active December 12, 2022 09:18
systemd user-unit file for Minecraft server
# ~/.config/systemd/user/minecraft@.service
# Setup:
# loginctl enable-linger "${USER}"
# systemctl --user daemon-reload
# ln -sfv ../../jars/paper.jar /var/minecraft/servers/survival/server.jar
# systemctl --user enable --now minecraft@"$(systemd-escape /var/minecraft/servers/survival)".service
[Unit]
Description=Minecraft Server (%I)