Skip to content

Instantly share code, notes, and snippets.

@jul
jul / liseuse.draft.py
Last active May 1, 2022 09:01
FUCK LA BNF.py
from pyquery import PyQuery as S
import urllib
from json import loads, dumps
from os import path, makedirs
from requests import get
WAIT=.5
"""
Admire the doc made by these fucking twats
http://www.bnf.fr/fr/professionnels/donnees_bnf_recuperables/a.donnees_rdf.html#SHDC__Attribute_BlocArticle7BnF
@jul
jul / oneline.sh
Last active January 24, 2022 23:41
timing python oneliner by size of line
#!/usr/bin/env bash
export LANG=C
redadd() { python3 -c '(s,d,r)=(__import__("sys"),__import__("archery").mdict,__import__("functools").reduce);print(sorted(r(d.__add__,(d({l[:-1]:1}) for l in s.stdin.readlines())).items(),key=lambda k:k[1],reverse=True)[:10])' ; }
red() { python3 -c '(s,d,r)=(__import__("sys"),__import__("archery").mdict,__import__("functools").reduce);print(sorted(r(d.__radd__,(d({l[:-1]:1}) for l in s.stdin.readlines())).items(),key=lambda k:k[1],reverse=True)[:10])' ; }
function count() { python3 -c'(s,d)=(__import__("sys"),__import__("archery").mdict);print(sorted(sum((d({l[:-1]:1}) for l in s.stdin.readlines()),{}).items(),key=lambda k:k[1],reverse=True)[:10])'; }
cfl() { python3 -c'(s,t,d,f)=(__import__("sys"),__import__("tld"),__import__("archery").mdict,lambda l:t.get_fld(l[:-1],fix_protocol=True,fail_silently=True));print(sorted(sum((d({f(l):1}) for l in s.stdin.readlines()),{}).items(),key=lambda k:k[1],reverse=True)[:10])'; }
test_time() {
func="$1"
TIMEFORMAT="%U"
@jul
jul / todel.py
Last active December 13, 2021 11:21
jeu de la vie (à réécrire (kleenex)) en pavage triangulaire
import PySimpleGUI as sg
from operator import itemgetter
### uitliser ipython -i argv[0] pour être en interactif et faire joujou
can = sg.Canvas(size=(1412,998))
status=sg.Text('status')
win = sg.Window("titre",[[can,],[status,],], finalize=True)
c = can.TKCanvas
from time import sleep, time
from random import randint
from os import system
@jul
jul / goft.py
Created December 12, 2021 12:22
gof triangulaire on the way
import PySimpleGUI as sg
from operator import itemgetter
### uitliser ipython -i argv[0] pour être en interactif et faire joujou
can = sg.Canvas(size=(400,600))
status=sg.Text('status')
win = sg.Window("titre",[[can,],[status,],], finalize=True)
c = can.TKCanvas
from time import sleep
SZ=50
@jul
jul / gof_base.py
Created December 11, 2021 21:02
préparer un jeu de la vie en base triangulaire (les carrés sucent)
import PySimpleGUI as sg
### uitliser ipython -i argv[0] pour être en interactif et faire joujou
can = sg.Canvas(size=(400,600))
win = sg.Window("titre",[[can,],],finalize=True)
c = can.TKCanvas
from time import sleep
SZ=50
ORD=1
def save(canvas, name="save"):
@jul
jul / tr.py
Created December 11, 2021 09:11
dessiner un pavage triangulaire en python en moins de 100 sloc
import PySimpleGUI as sg
### uitliser ipython -i argv[0] pour être en interactif et faire joujou
can = sg.Canvas(size=(400,600))
win = sg.Window("titre",[[can,],],finalize=True)
c = can.TKCanvas
SZ=50
def tr(x,y, up=1,**kw):
""" créer un triangle équilatéral centré en x,y avec une homothétie /
symmétrie sur l'axe des y (up / down) exprimée en coordonnées
@jul
jul / wall_clock.py
Last active August 30, 2021 10:32
a wall clock with matplotlib
import matplotlib.pyplot as plt
from time import sleep, time, localtime
# Constant are CAPitalized in python by convention
from cmath import pi as PI, e as E
# correcting python notations j => I
I = complex("j")
# maplotlib does not plot lines using the classical
# (x0,y0), (x1,y1) convention
@jul
jul / stem.py
Last active April 9, 2021 08:43
Tokenization, stemmisation en Français avec ce pot de pue appelé NLTK.
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# vim: set fileencoding=utf-8 :
import nltk
import nltk.data
import re
from nltk.corpus import stopwords
from nltk.stem.snowball import SnowballStemmer
from vector_dict.VectorDict import VectorDict
@jul
jul / test_fdj.py
Last active January 12, 2021 10:54
simulation de 100 tirages au hasard et mesure des fréquences des gains a Végas
#!/usr/bin/env python3
from archery import mdict
from functools import reduce
from random import randint, seed
from json import dumps
from sys import argv
pp = lambda d:print(dumps(d, indent=4))
_seed = argv[1]
print(_seed)
seed(int(_seed))
@jul
jul / test.sh
Last active November 3, 2020 21:55
checking font substitution on firefox
#!/usr/bin/bash
MIN_FF_OPT=" --headless "
FF="firefox $MIN_FF_OPT"
die() { echo "$@"; exit 0;}
fc-match Andika || die "le test va pas marcher"
echo "basically if I could create profile from scratch I would put only this"
cat <<EOF
user_pref("font.default.x-western", "Andika");