Skip to content

Instantly share code, notes, and snippets.

@hawx
hawx / main.go
Last active September 25, 2024 09:04
Replace values
// Replace values takes two JSON files as inputs, it will replace the values of
// the keys of the first file using the values from the second. This is built
// for the first file to be a download of untranslated keys from Weblate, and
// the second file to be our language file.
//
// Given files keys.json:
//
// { "a": 1 }
//
// and values.json:
@hawx
hawx / README.md
Created January 12, 2023 08:28
opg-modernising-lpa translation tool

This tool will generate a CSV report from language files of each key, its variations, and when each was modified (via git blame).

translation-tool -git-repo ~/projects/opg-modernising-lpa ~/projects/opg-modernising-lpa/app/lang/* > ~/Desktop/translation-report.csv

Keybase proof

I hereby claim:

  • I am hawx on github.
  • I am hawx (https://keybase.io/hawx) on keybase.
  • I have a public key ASD8XrovFOPizoGwLG8dtAm7RyqQAHPjqyAYnqYaHy61Bgo

To claim this, I am signing this object:

@hawx
hawx / helpscout.d.ts
Created November 10, 2017 08:25
Typings for the helpscout beacon <https://www.helpscout.net>
interface HelpScout {
beacon: HelpScoutBeacon;
}
interface HelpScoutBeacon {
config(configObject: HelpScoutConfig): void;
ready(handler: () => void): void;
open(): void;
close(): void;
toggle(): void;
@hawx
hawx / checkbox.test.js
Created April 24, 2017 10:47
Testing checkbox in Angular...
it('test', () => {
const element = `
<section>
<label>
<input type="checkbox" name="test" ng-model="$ctrl.value" />
ok
</label>
<div ng-if="$ctrl.value">what</div>
</section>
@hawx
hawx / radio.test.js
Created April 24, 2017 10:42
Testing radio buttons in Angular...
it('test', () => {
const element = `
<section>
<label>
<input type="radio"
ng-value="true"
name="test"
ng-model="$ctrl.value"
hidden
required />
'use strict';
var GitHub = require('github-api');
var fetch = require('node-fetch');
var exec = require('child_process').exec;
const gh = new GitHub({ token: 'MY_TOKEN' });
const org = gh.getOrganization('MY_ORG');
fetch('https://api.bitbucket.org/2.0/teams/MY_ORG/repositories')
@hawx
hawx / listener.go
Last active February 5, 2016 11:21
HTTP Listener
package main
import (
"io/ioutil"
"log"
"net/http"
"os"
"strings"
)
@hawx
hawx / quit.go
Created January 2, 2016 14:25
Example showing how to provide a blocking-close for long running processes in golang. The process will run until Close() is called, this call blocks until the process has actually stopped.
package main
import (
"log"
"time"
)
type Process struct {
quit chan struct{}
}
@hawx
hawx / poker_test.py
Last active December 2, 2015 19:40
Suit-blind poker hands kata solution in simple (fors and ifs as much as possible) Python
import unittest
def winner(hand1, hand2):
hand1 = sorted(hand1, reverse=True)
hand2 = sorted(hand2, reverse=True)
result = try_winner([four_of_a_kind, full_house, straight, three_of_a_kind,
two_pairs, pair], hand1, hand2)
if result != 0: