Skip to content

Instantly share code, notes, and snippets.


Sebastian Porto sporto

  • Melbourne, Australia
View GitHub Profile
sporto / Cost.fsx
Created Dec 17, 2021
Get stats from cost page usage
View Cost.fsx
#r "nuget: FSharp.Data,4.2.6"
#r "nuget: FSharpPlus,1.2.2"
#r "nuget: FSharp.Stats, 0.4.2"
open FSharp.Data
open FSharpPlus
open System.Web
open System
open FSharp.Stats
View gist:9a35f5caa1184807ea9d12412fcadac7
[Trace - 11:59:50 am] Sending request 'initialize - (0)'.
Params: {
"processId": 453470,
"clientInfo": {
"name": "Visual Studio Code",
"version": "1.52.1"
"locale": "en-gb",
"rootPath": "/home/sebastian/Source/staxio/stax",
"rootUri": "file:///home/sebastian/Source/staxio/stax",
sporto / Download.elm
Created Nov 8, 2020
Download a file in Elm
View Download.elm
module Main exposing (main)
import Browser
import Bytes exposing (Bytes)
import File.Download as Download
import Html exposing (Html, button, div, text)
import Html.Events exposing (onClick)
import Http
sporto /
Last active May 13, 2020
Back to issue

The problem

There are several pages in our app where users arrive from different places.

e.g. Page A -> Page C Page B -> Page C

In Page C we want to show a link back to the previous page. E.g.

sporto / replace.nim
Created Apr 21, 2020
Replace text in files
View replace.nim
# nim c -r ./scripts/replace.nim ./replacements.csv
import strutils, sequtils, os, sugar
proc split_line(line: string): seq[string] =
proc get_replacements(filename: string): seq[seq[string]] =
View QuickChart URL!%0A%7B%0A%20%20type%3A%20%27bar%27%2C%0A%20%20%20options%3A%20%7B%0A%20%20%20%20legend%3A%20%7B%0A%20%20%20%20%20%20position%3A%20%27bottom%27%2C%0A%20%20%20%20%20%20labels%3A%20%7B%0A%20%20%20%20%20%20%20%20boxWidth%3A%2012%2C%0A%20%20%20%20%20%20%20%20padding%3A%2020%2C%0A%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%7D%2C%0A%20%20%20%09scales%3A%20%7B%0A%20%20%20%20%09xAxes%3A%20%5B%0A%20%20%20%20%20%20%20%20%20%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20stacked%3A%20true%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20gridLines%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20offsetGridLines%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20drawOnChartArea%3A%20false%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%7D%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20%20%20%20%20ticks%3A%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20fontSize%3A%2014%2C%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20maxTicksLimit%3A%205%2C%0A%20%2
sporto / elm-touch-and-measure.js
Created Jul 18, 2018
Touch Elm files and recompiles
View elm-touch-and-measure.js
This script touches each elm file
And recopiles it, then stores the time taken
const r = require("ramda")
const dir = "./src/Elm"
const fs = require("fs")
const childProcess = require('child_process')
const async = require('async')
sporto / elm-elmi-timestamps.js
Last active Jul 18, 2018
Compare timestamps of elmi files
View elm-elmi-timestamps.js
This script compares timestamp of elmi files
To try getting files that take a long time to compile
But this attempt has proven very useful
var fs = require("fs")
var path = require("path")
var dir = "./elm-stuff/build-artifacts/0.18.0/Versent/stax/1.0.0/";

Register Element

First you will need document-register-element

yarn add document-register-element

Add script to register elements

sporto /
Last active Oct 4, 2017
What is wrong with exceptions?

Exceptions are surprising

Given something like this:

proc sub(): string {.raises: [OSError].} =
    raise newException(OSError, "OS")

proc main() =