Skip to content

Instantly share code, notes, and snippets.

View titouanc's full-sized avatar

iTitou titouanc

  • Belgium
View GitHub Profile
@titouanc
titouanc / timer.py
Created January 23, 2017 11:28
Timer with subtimers in Python
from sys import stdout
from time import time
from collections import OrderedDict
class Timer:
def __init__(self, autoshow=False):
self.subs = OrderedDict()
self.autoshow = autoshow
# Slic3r n'était pas disponible dans les dépots de Linux Mint,
# je l'ai donc téléchargé manuellement en oubliant de l'installer proprement.
# Il faut exporter le bon PATH avant de lancer crepinator, sous peine de voir
# l'impression d'une crèpe planter lors du "Tranchage".
export PATH=/home/urlab/slic3r/bin:$PATH
cd /home/urlab/crepinator
./run.sh
@titouanc
titouanc / avec typedef.c
Created January 3, 2016 20:20
Pointers ! Pointer everywhere !
#include <stdio.h>
typedef int(*Func)(void);
void demo(Func **double_ptr)
{
printf("Func **: %p\n", double_ptr);
printf("Func *: %p\n", *double_ptr);
printf("Func : %p\n", **double_ptr);
printf("Func() : %d\n", (**double_ptr)());
This file has been truncated, but you can view the full file.
consult('small_instance.pl').
maplist(is_valid,
[schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r1,3,12),event(e5,r2,4,10)]),
schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r1,3,12),event(e5,r2,5,10)]),
schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r1,3,13),event(e5,r2,4,10)]),
schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r1,3,13),event(e5,r2,5,10)]),
schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r2,3,10),event(e5,r2,3,12)]),
schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r2,3,10),event(e5,r2,3,13)]),
schedule([event(e1,r2,1,10),event(e2,r2,2,10),event(e3,r1,3,10),event(e4,r2,3,10),event(e5,r2,4,10)]),
for pts in /dev/pts/*; do
# stat -c: comme printf, mais pour formater des attributs de fichier
# %x: last access time
echo $pts: $(stat -c %x $pts)
done
echo Maintenant: $(date +"%Y-%m-%d %H:%M:%S")
touch /tmp/date && echo Maintenant aussi: $(stat -c %x /tmp/date)
@titouanc
titouanc / send.c
Last active December 20, 2015 14:54
void send_message(int fd, const char *buf, size_t len)
{
size_t sent = 0;
int r = 0;
while (sent < len){
// buf + sent == &(buf[sent])
r = send(fd, buf+sent, len-sent, 0);
if (r <= 0){
/* Gestion de l'erreur */

Awesome + MATE and Mint menu on Ubuntu

Install Awesome WM and MATE desktop

apt-get install awesome awesome-extra mate-desktop-environment python-glade2  python-xlib mozo

Install Mint Menu

cd ~/tmp
wget http://ppa.launchpad.net/eugenesan/ppa/ubuntu/pool/main/m/mintmenu/mintmenu_5.5.2-0~eugenesan~trusty1_all.deb
>>> s = "Une chaine de\ncaracteres"
>>> print(s)
Une chaine de
caracteres
>>> s.split()
['Une', 'chaine', 'de', 'caracteres']
(load "lib")
(define (mainloop)
(fill-rectangle! 0 0 64 64 #xf33)
(fill-rectangle! 0 64 64 64 #x33f)
(fill-rectangle! 64 0 64 64 #x33f)
(fill-rectangle! 64 64 64 64 #xf33)
(mainloop))
(mainloop)
# Le point d'entrée du programme (la fonction principale)
def main():
print "Hello world"
# Idiom courant en python:
# "Si le programme en cours d'exécution a été lancé à partir de ce fichier"
# (autrement dit, ce fichier n'est pas importé,
# mais appelé directement avec `python projet.py`)
if __name__ == "__main__":