Skip to content

Instantly share code, notes, and snippets.

Avatar

Jonathan Decker Lokno

View GitHub Profile
@Lokno
Lokno / pyfirmata_servo.py
Last active March 13, 2023 02:50
Live Servo Sweep Viewer - Connects to a microcontroller running StandardFirmata and provides a GUI for addressing a servo
View pyfirmata_servo.py
# Live Servo Sweep Viewer
# Connects to a microcontroller running StandardFirmata
# and provides a GUI for addressing a servo.
# Servo position is presented digitally in the UI, and
# can be manually moved by clicking and dragging the needle.
# The GUI also allows for defining servo sweeps with various
# parameters for setting the duration of the sweep and cubic easing.
#
# Requirements: tkdial, pyfirmata
@Lokno
Lokno / servo_sketch_generator.py
Last active March 24, 2023 14:52
Servo Sequence Sketch Generator - Generates an Arduino sketch from CSV Tables
View servo_sketch_generator.py
# Servo Sequence Sketch Generator
# Generates an Arduino sketch from CSV Tables
#
# usage: servo_sketch_generator.py [-h] [-r ROUTINE_TABLE] [-s SERVO_TABLE]
#
# If no arguments are given, the script will launch a GUI
#
# Routine Table Columns:
# Scene Name,Pin Position,Time,Ease In,Ease Out
#
@Lokno
Lokno / fish47.ahk
Last active February 6, 2023 18:12
fish47.ahk - an AutoHotKey script for automating the fishing in Hitman WoA Freelancer
View fish47.ahk
; fish47.ahk - AutoHotKey Script
; ctrl+shift+comma
^+,::
global continue_fishing
if !continue_fishing
{
continue_fishing := true
go_fishing()
}
@Lokno
Lokno / eval_clipboard.py
Created January 23, 2023 21:02
Executes the contents of the clipboard as Python and returns the result to the clipboard
View eval_clipboard.py
# Executes the contents of the clipboard as Python and returns the result to the clipboard
# Uses eval() if single-line and uses compile() and exec() if multi-line
# Will attempt to handle a limited number of NameError exceptions
# Obvious at your own risk and know what you're doing caveats
import pyperclip
import traceback
import contextlib
import sys
import re
@Lokno
Lokno / ocr_shortcut.ahk
Last active January 13, 2023 20:04
AutoHotKey script to add a keyboard shortcut to process a region of the screen using OCR and copy the result into the clipboard
View ocr_shortcut.ahk
; AutoHotKey script to add a keyboard shortcut to select a region of the screen,
; run OCR on that region, and paste the result in the clipboard.
; Set to look for English text, see line 24
; Shortcut default is ctrl+shift+alt+i, see line 20
; Press esc when selecting to close, or right-click system tray icon
; Modified script from OP of this forum post:
; https://www.autohotkey.com/boards/viewtopic.php?p=314654#p314654
@Lokno
Lokno / webclipboard.py
Last active January 9, 2023 07:24
Cross-platform python script that maintains an encrypted copy of your clipboard at a user-specified remote location
View webclipboard.py
# Cross-platform python script that maintains an encrypted copy of your clipboard
# at a user-specified remote location. Complete with tkinter GUI set-up.
#
# Author: Lokno Decker
#
# Usage: webclipboard.py copy|paste [--reset] [--show-config]
# Options:
# copy : encrypts the contents of the current clipboard to file
# and uploads this file to a user-specified remote server.
# paste : downloads the clipboard file from a user-specified
@Lokno
Lokno / webp_begone.py
Last active September 9, 2022 03:50
Python 3 script that replaces every webp on your desktop with a PNG. Requires Google's dwebp decoder (https://developers.google.com/speed/webp/docs/dwebp)
View webp_begone.py
# Webp-Begone
#
# Iterates over all the files ending in ".webp" on the Desktop and converts
# them to PNG files using the Google utiltiy dwebp
# Alteratively a different directory path can be specified at the cmdline
# Install dwebp and add it to your path
# https://developers.google.com/speed/webp/docs/dwebp
# https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html
@Lokno
Lokno / connect_to_switch.py
Last active January 27, 2023 04:36
Python 3 Script for automatically connecting a PC to hotspot created by the Nintendo Switch to serve media to a smart device
View connect_to_switch.py
# Python 3 Script for automatically connecting a PC to the temporary hotspot
# created by the Nintendo Switch to serve media to a smartphone
#
# How to Set Up the hotspot transfer from the Nintendo Switch:
# 1. From the HOME Menu select Album, then select a screenshot or video capture.
# 2. Select Sharing and Editing, then select Send to Smartphone.
# 3. Select Only This One or Send a Batch.
# 4. A screen with a QR code will appear with the encoded SSID and password.
# This is where the script will take over.
#
@Lokno
Lokno / b2s.js
Created December 1, 2021 14:22
Binary to character string in Javascript
View b2s.js
function b2s(s) {
var b = s.replace(/[\s\t\n\r]/g, '').match(/.{1,8}/g)
var o = "";
for (i = 0; i < b.length; i++) o += String.fromCharCode(parseInt(b[i], 2));
return o;
}
@Lokno
Lokno / archiver.py
Last active October 25, 2021 22:38
Lightweight file archiver. Store and compare files.
View archiver.py
# Archiver
#
# Lightweight file archiver. Store and compare files.
# File names, include their extensions, are used identification, not the full file path.
#
# Default archive directory in 'default_directory' variable below. To change the
# archive directory, edit archiver_config.ini in your home directory.
#
# archiver.py [-h] [--diff] [--list] [--meta] [--remove] [--file_name [FILE_NAME]] [--modified [MODIFIED]] file_path
#