Skip to content

Instantly share code, notes, and snippets.

View SteGriff's full-sized avatar
🎣

Stephen Griffiths SteGriff

🎣
View GitHub Profile
@SteGriff
SteGriff / js-bit-packing.js
Created August 21, 2020 11:52
Bit packing in JS
const { atob, btoa } = require('abab');
function pack(bytes) {
var chars = [];
for(var i = 0, n = bytes.length; i < n;) {
chars.push(((bytes[i++] & 0xff) << 8) | (bytes[i++] & 0xff));
}
return String.fromCharCode.apply(null, chars);
}
function unpack(str) {
@SteGriff
SteGriff / hirigana-katakana.js
Created May 29, 2020 14:12
Hirigana and Katakana
window.kana = [
{"name": "n", "hiri": "ん", "kata": "ン" },
{"name": "tsu", "hiri": "っ", "kata": "ッ" },
{"name": "a", "hiri": "あ", "kata": "ア" },
{"name": "ka", "hiri": "か", "kata": "カ" },
{"name": "ga", "hiri": "が", "kata": "ガ" },
{"name": "sa", "hiri": "さ", "kata": "サ" },
{"name": "za", "hiri": "ざ", "kata": "ザ" },
{"name": "ta", "hiri": "た", "kata": "タ" },
@SteGriff
SteGriff / kana-wordlist.js
Created May 27, 2020 11:45
Kana to Romaji Wordlist
// Credit: https://glitch.com/~kana-reading-practice
// https://glitch.com/@Dthurow
kanaToRomajiDict = {
"あう":{ romaji:"au", meaning:"to meet"},
"あく":{ romaji:"aku", meaning:"to open"},
"あける":{ romaji:"akeru", meaning:"to open"},
"あげる":{ romaji:"ageru", meaning:"to give"},
"あそぶ":{ romaji:"asobu", meaning:"to play"},
"あびる":{ romaji:"abiru", meaning:"to take a shower"},
@SteGriff
SteGriff / npp-git-bash-here.txt
Last active April 24, 2020 09:41
Notepad++ Git Bash Here - Press F5, Paste this in, Save with keyboard shortcut like Ctrl+Shift+G
"C:\Program Files\Git\git-bash.exe" --cd=$(CURRENT_DIRECTORY)
@SteGriff
SteGriff / onReady.js
Created April 2, 2020 12:55
OnReady function for HTML DOM instead of JQuery
// Better than JQuery ready function... or at least doesn't require JQuery :)
app = function() {
this.onReady = function (callback) {
if (document.readyState != 'loading') callback()
else document.addEventListener('DOMContentLoaded', callback)
}
};
const myApp = new app();
@SteGriff
SteGriff / ScrubBinAndObj.ps1
Created November 4, 2019 12:11
For Visual Studio - recursively delete all bin and obj folders in subdirectories
Get-ChildItem -Include bin,obj -Recurse | Remove-Item -Recurse -Force
@SteGriff
SteGriff / tacobell-locations.json
Created March 12, 2019 11:08
Taco Bell Locations (UK)
{
"current_page": 1,
"data": [
{
"id": 47,
"display_name": "Lakeside Food Court",
"name": "Thurrock - Lakeside Shopping Centre",
"slug": "thurrock-lakeside-shopping-centre",
"store_number": 90001,
"status": "Active",
@SteGriff
SteGriff / 354984.txt
Created October 2, 2018 15:52
A corpus of 354,984 valid english words
This file has been truncated, but you can view the full file.
&c
'd
'em
'll
'm
'mid
'midst
'mongst
'prentice
're
@SteGriff
SteGriff / generate-drop-constraints.sql
Created September 26, 2018 09:30
Generate DROP statements for FK constriants
select
concat('alter table ', table_name, ' drop foreign key ', constraint_name, ';')
from
information_schema.key_column_usage
where
referenced_table_name is not null
and table_schema = 'MyTableName';
@SteGriff
SteGriff / LinqSingleBehaviour.cs
Created April 17, 2018 14:37
How does LINQ Single behave?
class Program
{
static void Main(string[] args)
{
var myListOfNone = new List<Dog>();
var myListOfOne = new List<Dog>() { new Dog("Fido", 5) };
var myListOfSeveral = new List<Dog>() { new Dog("Fido", 5), new Dog("Lassy", 14) };
var b = myListOfNone.SingleOrDefault(); //Null