I hereby claim:
- I am jrimbault on github.
- I am jrimbault (https://keybase.io/jrimbault) on keybase.
- I have a public key ASCJbccC_OQIOWePapelONQSO9ZVchrtOOYwJ2ogQ1BS2wo
To claim this, I am signing this object:
I hereby claim:
To claim this, I am signing this object:
#!/usr/bin/env bash | |
#/ Script Name: template.sh | |
#/ Author: jRimbault | |
# Date: 2017-04-06 | |
#/ | |
#/ Description: | |
#/ This is a template file meant to be used for all my future | |
#/ bash scripting. | |
#/ | |
#/ Error Log: |
/** | |
* Trigger callback when the user inputs the konami code | |
* @param {Function} callback | |
* @returns {Function} event handler | |
*/ | |
function konami(callback) { | |
'use strict' | |
let kkeys = [] | |
// up,up,down,down,left,right,left,right,B,A | |
const konami = '38,38,40,40,37,39,37,39,66,65' |
#!/usr/bin/env node | |
const fs = require('fs') | |
const fileinput = { | |
/** | |
* Basic behavior of python's method of the same name | |
* @returns string[] lines of the file passed as an argument or piped | |
*/ |
{"identity":{"name":"Jacques Rimbault","shortName":"jRimbault","description":"Programmeur, 29 ans, -Werror","location":"Paris"},"paragraphs":[{"name":"Experience","id":"experience","elements":[{"aside":{"kind":"date","date":"2018 .. 2019"},"title":"Développeur C# Angular","subTitle":"Société Générale - Corporate and Investment Banking","tags":[["C#","TypeScript","PowerShell"],[".NET","Angular"],["Windows Server"],["GitHub","TeamCity"]]},{"aside":{"kind":"date","date":"2016 .. 2018"},"title":"Développeur PHP","subTitle":"Ministère de l'Intérieur - SG-DSIC","subTitleDescription":"Secrétariat Général - Direction des Systèmes d'Information et Communication","resume":["Développement et maintenance d'une application de l'administration centrale."],"points":[{"description":"Migration de PHP 5.4 vers PHP 7.2","subPoints":[{"description":"Changement de l'API d'interface avec la base de donnée"},{"description":"Refonte sous une forme routeur/controleur"},{"description":"Management des dépendances"}]},{"description":"Fo |
export type DeepDotKey<T> = { | |
[P in keyof T]: DeepDotKey<T[P]>; | |
} & (() => string); | |
/** | |
* Type safe string builder deep dot notation | |
* | |
* @example | |
* interface Foo { | |
* dictionary: { [key: string]: { value: number } | undefined }; |
function partition<T, K extends string | number>( | |
list: readonly T[], | |
getKey: (el: T) => K, | |
) { | |
const res: { [k in K]?: T[] } = {} | |
for (const el of list) { | |
const key = getKey(el) | |
const target: T[] = res[key] ?? (res[key] = []) | |
target.push(el) | |
} |
""" Script to quickly generate some classic TTRPG character's attributes """ | |
import argparse | |
import random | |
import textwrap | |
from typing import Iterator | |
def rolling_methods(): | |
""" |
use std::fs; | |
use std::io; | |
use std::path::PathBuf; | |
use structopt::{clap::ArgGroup, StructOpt}; | |
#[derive(Clone, StructOpt, Debug)] | |
#[structopt(group = ArgGroup::with_name("action").required(true))] | |
struct Arguments { | |
/// File containing a G4C key | |
key_file: PathBuf, |
interface ResultMethods<T, E> { | |
ok(): T | null, | |
err(): E | null, | |
unwrap(): T | never, | |
unwrapErr(): E | never, | |
expect(message: string): T | never, | |
expectErr(message: string): E | never, | |
map<U>(f: (value: T) => U): Result<U, E>, | |
mapErr<U>(f: (error: E) => U): Result<T, U>, | |
andThen<U>(f: (value: T) => Result<U, E>): Result<U, E>, |