Skip to content

Instantly share code, notes, and snippets.

import Foundation
/// Adapted from https://stackoverflow.com/a/62112007
/// https://stackoverflow.com/questions/31778700/read-a-text-file-line-by-line-in-swift
extension URL {
/// Note: Only supports newline as the line break character.
func processLineByLine(processLine: @escaping (_ line: String) -> ()) {
@JanX2
JanX2 / github_get_all_forks.sh
Last active December 12, 2023 14:04 — forked from joeytwiddle/github_get_all_forks.sh
Add all forks of the current repo as remotes
#!/usr/bin/env bash
set -e
# See also: https://github.com/frost-nzcr4/find_forks (same thing but in python)
origin_url="$(git config --get remote.origin.url | sed 's+.*: ++')"
full_repo_name="$(echo "$origin_url" | sed 's+.*github.com/++ ; s+\.git$++')"
forks_url="https://api.github.com/repos/${full_repo_name}/forks"
@JanX2
JanX2 / 00-dragndrop.swift
Created June 28, 2020 14:52 — forked from erica/00-dragndrop.swift
Building an OSX Drag and Drop Playground: Throw the dragndrop.swift into shared Sources and then test out the examples in individual playgrounds. Make sure the assistant is open and set to the timeline. I prefer vertical assistant stacking for this.
import Cocoa
// Support Foundation calls on String
public extension String { public var ns: NSString {return self as NSString} }
/// Custom Labeled Playground-Based Drag-and-Drop window
public class DropView: NSTextField {
// Default action handler
public var handler: ([String]) -> Void = { paths in Swift.print(paths) }
@JanX2
JanX2 / gist:317cd8c152732e69f91b96979d8e965b
Last active September 22, 2018 15:14 — forked from cazepeda-zz/gist:8876300
Open Dyslexic Bookmarklet
javascript:(function()%7Bvar%20s=document.createElement('link');s.setAttribute('href','https://dyslexicfonts.com/plugin/easyread.css');s.setAttribute('rel','stylesheet');s.setAttribute('type','text/css');document.getElementsByTagName('head')%5B0%5D.appendChild(s);%7D)();
@JanX2
JanX2 / sds011.py
Created February 9, 2018 15:59 — forked from geoffwatts/sds011.py
Read an SDS011 Laser PM2.5 Sensor (Nova PM Sensor) with Python
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# Requires pyserial. Install via:
# pip install pyserial
from __future__ import print_function
from serial import Serial, EIGHTBITS, STOPBITS_ONE, PARITY_NONE
import time, struct
/* Copyright (c) 2017 Mozilla */
/* Copyright (c) 2017 Jan Weiß */
/*
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:
- Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
@JanX2
JanX2 / xcode-class-dump.sh
Last active April 10, 2016 08:34 — forked from fzwo/xcode-class-dump.sh
Create a complete class-dump of Xcode, ready for adding to an empty Xcode project for all your header-ogling needs.
#!/bin/bash
# Creates a complete class-dump of Xcode and all its libs and internal plug-ins.
# Assumes you have Class-Dump in your path and Xcode at the location set via `xcode-select`.
xcodeClassDump=${1:-"$HOME/Documents/XcodeClassDump"}
xcodePath=`xcode-select -p`
sourceXcodeRootPath="$(dirname "$xcodePath")"
echo "Dumping from Xcode: $sourceXcodeRootPath"
@JanX2
JanX2 / boost.sh
Last active February 7, 2021 12:01 — forked from faithfracture/boost.sh
Boost build script for iOS (armv7, armv7s, arm64), iOS Simulator (i386, x86_64), and OSX (i386, x86_64)
#===============================================================================
# Filename: boost.sh
# Author: Pete Goodliffe
# Copyright: (c) Copyright 2009 Pete Goodliffe
# Licence: Please feel free to use this, with attribution
# Modified version
#===============================================================================
#
# Builds a Boost framework for iOS, iOS Simulator, and OSX.
# Creates a set of universal libraries that can be used on an iOS and in the
set theString to "Test"
set theseCharacters to characters of theString
tell application "System Events"
delay 2 -- Time to switch, if running from editor. Can be removed, if running from menu.
tell front process
repeat with thisChar in theseCharacters
keystroke (thisChar as text)
delay 0.1