Skip to content

Instantly share code, notes, and snippets.

@hubgit
hubgit / example.tex
Created April 25, 2026 13:41
Example document for LuaLaTeX
\documentclass{article}
\usepackage{fontspec} % Select OpenType/TrueType system fonts
\usepackage{microtype} % Improve spacing, protrusion, and overall typography
\usepackage[british]{babel} % Language-specific hyphenation and document strings
\usepackage{csquotes} % Context-sensitive quotation marks
\usepackage{mathtools} % Extensions and fixes for amsmath
\usepackage{amssymb} % Additional mathematical symbols
@hubgit
hubgit / preamble.tex
Created April 25, 2026 13:35
Preamble for LuaLaTeX
%!TEX program = lualatex
% Compile twice to settle the table of contents and cross-references.
\documentclass[11pt]{article}
\usepackage{fontspec} % Select OpenType/TrueType system fonts
\usepackage{microtype} % Improve spacing, protrusion, and overall typography
\usepackage[british]{babel} % Language-specific hyphenation and document strings
\usepackage{csquotes} % Context-sensitive quotation marks
@hubgit
hubgit / container.sh
Created June 20, 2025 22:21
Open the current directory in a Docker container
# Open the current directory in a Docker container
function container() {
IMAGE=${1:-ubuntu:questing}
echo "Opening $PWD in $IMAGE"
docker run --rm -it -v "$PWD":/workspace -w /workspace "$IMAGE" bash
}
@hubgit
hubgit / .zshrc
Created June 15, 2025 20:14
Open the current directory in a Docker container (zsh function)
# Open the current directory in a Docker container
function container() {
IMAGE=${1:-ubuntu:questing}
echo "Opening $PWD in $IMAGE"
docker run --rm -it -v "$PWD":/workspace -w /workspace "$IMAGE" bash
}
# Open the current directory in a Docker container (amd64)
function containeramd() {
IMAGE=${1:-ubuntu:questing}
@hubgit
hubgit / tex.sh
Last active June 15, 2025 20:43
Convert tex.web to tex.pa
# install Free Pascal
brew install fpc
wget --no-verbose http://mirrors.ctan.org/systems/knuth/dist.zip
wget --no-verbose http://mirrors.ctan.org/systems/knuth/local.zip
wget --no-verbose http://mirrors.ctan.org/systems/unix/tex-fpc.zip
unzip '*.zip'
cd tex-fpc/
@hubgit
hubgit / manifest.json
Created January 19, 2025 21:34
Customise Google search with a browser extension
{
"manifest_version": 3,
"name": "Customise Google",
"version": "0.0.1",
"content_scripts": [
{
"matches": ["https://www.google.com/search?*"],
"css": ["styles.css"]
}
]
import * as bencode from 'https://deno.land/x/[email protected]/mod.ts'
import { gtin } from 'npm:cdigit'
import ISBN from 'npm:isbn3'
// zstd -d data/aa_isbn13_codes_20241204T185335Z.benc.zst
const data = await Deno.readFile('data/aa_isbn13_codes_20241204T185335Z.benc').then(bencode.decode)
for (const [key, value] of Object.entries(data as Record<string, Uint8Array>)) {
console.log(key)
@hubgit
hubgit / media-recorder.js
Created November 19, 2024 22:09
Record video + audio from a browser tab/window/screen
const media = await navigator.mediaDevices.getDisplayMedia({
audio: {
echoCancellation: false,
autoGainControl: false,
noiseSuppression: false,
},
})
const recorder = new MediaRecorder(media, {
mimeType: 'video/webm',
[50, 100, 3].toSorted(Intl.Collator('en', { numeric: true }).compare)
@hubgit
hubgit / fetch-imp-audio.ts
Last active April 1, 2024 22:44
Fetch Independent Music Podcast audio files: `deno run fetch-imp-audio.ts`
import RSSParser from 'npm:rss-parser'
await Deno.mkdir('audio', { recursive: true })
const feedURL = 'https://anchor.fm/s/1252b450/podcast/rss'
const feed = await new RSSParser().parseURL(feedURL)
for (const item of feed.items) {
const { url } = item.enclosure
console.log(url)