Skip to content

Instantly share code, notes, and snippets.

View Ellpeck's full-sized avatar

Ell (Julian) Ellpeck

View GitHub Profile
@lachiefish
lachiefish / json-to-gpx.py
Last active September 4, 2026 00:11
Converts a Google Timeline export JSON file into a GPX file to be used with other applications. The JSON file is in the same directory as the python script and is named timeline.json. Try blocks are because Google has used different time formats over the years.
import json
import datetime
# Open the JSON file
with open('timeline.json') as f:
data = json.load(f)
# Open a new GPX file for writing
with open('timeline.gpx', 'w') as gpx_file:
# Write the GPX file header
@davidedmundson
davidedmundson / PlasmaNested.sh
Last active July 8, 2026 08:59
Run plasma from within gamescope
#!/bin/sh
# Remove the performance overlay, it meddles with some tasks
unset LD_PRELOAD
## Shadow kwin_wayland_wrapper so that we can pass args to kwin wrapper
## whilst being launched by plasma-session
mkdir $XDG_RUNTIME_DIR/nested_plasma -p
cat <<EOF > $XDG_RUNTIME_DIR/nested_plasma/kwin_wayland_wrapper
#!/bin/sh
@OliverBalfour
OliverBalfour / README.md
Last active June 27, 2026 18:39
Obsidian custom checkbox snippet

Custom checkboxes for Obsidian! It's like deathau's snippet except updated to work really well in Live Preview mode in Obsidian 1.0.

Simply edit the x inside checkboxes to >, ?, etc. to see styling like below!

Editing Live Preview Viewing
image image image

Installation:

  • Download the checkbox.css file on this page
@maybemkl
maybemkl / remove_links.py
Created September 6, 2021 23:00
Remove markdown wiki-link brackets during pandoc exports
@kepano
kepano / obsidian-web-clipper.js
Last active September 21, 2026 12:20
Obsidian Web Clipper Bookmarklet to save articles and pages from the web (for Safari, Chrome, Firefox, and mobile browsers)
javascript: Promise.all([import('https://unpkg.com/turndown@6.0.0?module'), import('https://unpkg.com/@tehshrike/readability@0.2.0'), ]).then(async ([{
default: Turndown
}, {
default: Readability
}]) => {
/* Optional vault name */
const vault = "";
/* Optional folder name such as "Clippings/" */
@ttalexander2
ttalexander2 / BinaryTreePacker.cs
Last active December 18, 2024 21:11
Binary Tree Image Packer for C# ( .NET Framework)
using System;
using System.Drawing;
namespace TexturePacker
{
public class PackedNode
{
public PackedNode Left { get; private set; }
public PackedNode Right { get; private set; }
public System.Drawing.Rectangle Rect { get; private set; }
@kherge
kherge / Stylus.css
Last active May 17, 2023 18:11
Google Calendar Dark Mode
/* calendar.google.com */
:root {
--base-bg-color: #111111;
--base-fg-color: #eeeeee;
--border-color: #202020;
--button-hover-bg-color: #333333;
--button-hover-border-color: #404040;
@tarleb
tarleb / noexport-subtrees.lua
Last active October 21, 2024 12:46
Emulating org-mode's :noexport: behavior for Markdown.
--[[
Remove all subtrees whose headlines contain class `noexport`.
License: MIT
Copyright: © Albert Krewinkel
]]
-- pandoc.utils.make_sections exists since pandoc 2.8
PANDOC_VERSION:must_be_at_least {2,8}
{
'I',
'you',
'my',
'mine',
'myself'
'we',
'us',
'our',
'ours',
@xoppa
xoppa / outline.fragment.glsl
Created October 12, 2015 20:42
very basic outline shader
#ifdef GL_ES
#define LOWP lowp
precision mediump float;
#else
#define LOWP
#endif
const float offset = 1.0 / 128.0;
varying vec2 v_texCoords;
uniform sampler2D u_texture;