Skip to content

Instantly share code, notes, and snippets.

View digiguru's full-sized avatar

digiguru

View GitHub Profile
@digiguru
digiguru / sortTable.js
Last active November 7, 2019 14:56
Get a table of links, sort them and output to a table of links.
// Takes an HTML table from a page that may be layed out as follows:
// | Zoe | Brenda | |
// | Adam | Arthur | Bob |
// | Joe | Zoe |
// and lays them out like this
// | Adam | Arthur | Brenda |
// | Bob | Joe | Zoe |
//
var templates = {
table: (data) => `<table class="ms-rteTable-default" width="100%" cellspacing="0">${data}</table>`,
@digiguru
digiguru / mov_to_gif.sh
Last active September 12, 2023 19:53
A simple service that will take a .mov and search through every frame looking for differences between that frame and the previous and create a gif with 1 frame for every _changed_ image (visually)
#!/bin/bash
# Default values
FRAME_RATE=4 # Default frame rate (every nth frame)
SSIM_THRESHOLD=0.98 # Threshold below which frames are considered different
TARGET_WIDTH="" # Target width for frames in the GIF, empty means original width
TARGET_HEIGHT="" # Target height for frames in the GIF, empty means original height
input_file="" # Input filename
output_gif="" # Output filename
const desiredFonts = ["Quattrocento Sans","Proxima Nova"];
function checkFontUsage() {
// Access the active presentation
var presentation = SlidesApp.getActivePresentation();
var slides = presentation.getSlides();
// Define the desired font
// Iterate through all slides
#!/bin/bash
# Check if enough arguments are passed
if [ "$#" -ne 3 ]; then
echo "Usage: $0 <source_video> <frame_interval> <change_percentage>"
exit 1
fi
# Assign the arguments to variables
SOURCE_VIDEO="$1"
@digiguru
digiguru / vtt_to_flat.py
Created March 14, 2024 21:02
A simple script that will read the contents of a VTT file (transcript from zoom) and turn it into a simple script between the people talking.
import re
import sys
def parse_vtt_to_flat(filename):
try:
with open(filename, 'r', encoding='utf-8') as file:
content = file.read()
# Remove WEBVTT header and empty lines
content = re.sub(r'WEBVTT.*?\n\n', '', content, flags=re.DOTALL)
animals = {
"cow": r"""
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||
""",
"donkey": r"""
\
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.