Skip to content

Instantly share code, notes, and snippets.

@PCouaillier
PCouaillier / get enum.sql
Last active November 14, 2019 10:08
Postgresql get enum
-- Fetch enum values
SELECT e.enumlabel
FROM pg_type t
INNER JOIN pg_enum e ON t.oid = e.enumtypid
WHERE t.typname = :enumtypname
ORDER BY e.enumsortorder;
-- export enums
@PCouaillier
PCouaillier / exportVar.js
Created January 21, 2019 14:44
exportVar
function exportVar(varToExport, filename) {
if (varToExport === undefined) { throw new Error('undefined var'); }
if (!filename) {
filename = 'exportedVar.json';
}
const fileBlob = new File([JSON.stringify(varToExport)], filename);
const dowloader = document.createElement('a');
dowloader.setAttribute('download', filename);
const url = URL.createObjectURL(fileBlob);
@PCouaillier
PCouaillier / spy.ts
Last active May 1, 2020 11:32
spy.ts
import {inspect} from 'util';
/**
* This show arguments and output of a function / a method
*
* @param {Function} thisArg
* @param {Function} func
*/
export const spy = <T, A extends any[], R, F extends (this: T, ...args: A) => R>(thisArg: T, func: F): F => {
return function() {

npm commands

npm install

npm install save

Save

npm i -S
[
{
"code": "AED",
"symbol": "د.إ",
"name": "UAE dirham"
},
{
"code": "AFN",
"symbol": "؋",
"name": "Afghan afghani"
@PCouaillier
PCouaillier / show_exception_tree.php
Created September 10, 2019 05:42
Show exception tree
<?php
if (!function_exists('interface_exists')) {
die('PHP version too old');
}
$throwables = listThrowableClasses();
$throwablesPerParent = splitInParents($throwables);
printTree($throwablesPerParent);
if (count($throwablesPerParent) !== 0) {
die('ERROR!!!');
const notString = s => `^(?:[^${s[0]}]|${s[0]}(?!${s.substring(1)}))*$`;
const cleanUtf8Regex = str => {
let i = 0;
let res = '';
let code;
while(code = str.charCodeAt(i)) {
res += 0x7E < code && code <= 0xFF ? `\\x{${code.toString(16)}}` : str[i];
i += 1;
}
return res;
}
({name: player.currentItem.label + '.mpga', source: player.currentItem.source})
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!