Skip to content

Instantly share code, notes, and snippets.

View matze's full-sized avatar

Matthias Vogelgesang matze

View GitHub Profile
@matze
matze / jekyll-to-zola.py
Created February 17, 2021 22:01
Script to rewrite YAML frontmatter to TOML
#!/usr/bin/env python3
import argparse
import re
from pathlib import Path
from typing import List
from enum import Enum
def to_dir_path(arg: str) -> Path:
@matze
matze / sorted-and-filtered-tree-view.c
Created October 22, 2012 20:33
A sorted and a filtered Gtk+ tree view
#include <gtk/gtk.h>
enum
{
COLUMN_ARTICLE = 0,
COLUMN_PRICE,
N_COLUMNS
};
typedef struct
@matze
matze / Makefile
Created December 3, 2012 11:45
Pandoc template
TEMPLATE = template.tex
STYLESHEET = style.css
MD = $(wildcard *.md)
TEX = $(patsubst %.md,%.tex,$(MD))
HTML = $(patsubst %.md,%.html,$(MD))
PDF = $(patsubst %.md,%.pdf,$(MD))
.PHONY: clean pdf html
all: pdf html
@matze
matze / pass.py
Created September 4, 2017 13:46
Comparison of search algorithms
import os
import sys
import re
import difflib
store = os.path.abspath('/home/matthias/dev/password-store/')
def get_password_names_old(name):
names = []
@matze
matze / gist:5325713
Last active December 14, 2016 21:55
promise decorator to resolve future arguments
from concurrent.futures import Future, ThreadPoolExecutor
class promise(object):
executor = ThreadPoolExecutor(max_workers=100)
def __init__(self, func):
self.func = func
@matze
matze / gist:7672662
Created November 27, 2013 08:54
@async based on gevent
import time
import gevent
import functools
class GreenletRunner(gevent.Greenlet):
def __init__(self, func, args, kwargs):
super(GreenletRunner, self).__init__()
self.func = func
@matze
matze / ConfigurePaths.cmake
Created October 28, 2013 17:22
configure-like path handling for CMake
# - pre-configured paths for CMake
#
# Usage:
# configure_paths(<PREFIX>)
#
# Checks if configure-like prefix and installation paths were passed by the user
# and sets up corresponding variables for use in install() commands and to fill
# out .pc files:
#
# PREFIX_PREFIX defaults to ... CMAKE_INSTALL_PREFIX
From 3201220ff9c80c9f47f69ad67e5f559036aa5464 Mon Sep 17 00:00:00 2001
From: Matthias Vogelgesang <matthias.vogelgesang@kit.edu>
Date: Tue, 22 Oct 2013 14:11:31 +0200
Subject: [PATCH] Ignore ufo-mpi-messenger.h for gtkdoc-scangobj
---
ufo/CMakeLists.txt | 1 +
1 file changed, 1 insertion(+)
diff --git a/ufo/CMakeLists.txt b/ufo/CMakeLists.txt
@matze
matze / gist:6606560
Created September 18, 2013 09:07
Co-routine example with multicast
def coroutine(func):
def start(*args, **kwargs):
g = func(*args, **kwargs)
g.next()
return g
return start
def produce(consumer):
for item in (1,2,3,4):
@matze
matze / gist:5919701
Created July 3, 2013 15:55
Diff two texts and markup result with <del> and <ins>.
# -*- coding: utf-8 -*-
import re
import difflib
import codecs
from itertools import chain
_diff_split_re = re.compile(r'(\s+)(?u)')