Skip to content

Instantly share code, notes, and snippets.

@saerdnaer
saerdnaer / gist:339289
Created March 21, 2010 12:52
Pentabarf Fahrplan Parser in PHP generating output in MediaWiki markup style
#! /usr/bin/php
<?php
/*
Ein Pentabarf Fahrplan Parser in PHP, der eine Textdatei ausspuckt, die man dem pyWikipedia-Bot vorwerfen kann.
*/
$filename = 'schedule.en.xml.0.30';
$xml = simplexml_load_file($filename);
// some functions
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="text" indent="no" encoding="utf-8" />
<xsl:template match='text()|@*' />
<xsl:template match="event">
| ? | ? | EH2010-<xsl:value-of select="@id" />-<xsl:value-of select="normalize-space(language)" /><xsl:if test="not(normalize-space(language))">de</xsl:if>-<xsl:value-of select="slug" /> | <xsl:for-each select="persons/person"><xsl:value-of select="." /><xsl:text> </xsl:text></xsl:for-each> | <xsl:value-of select="../../@date" /><xsl:text> </xsl:text><xsl:value-of select="start" /> | <xsl:value-of select="room" /> |</xsl:template>
</xsl:transform>
@saerdnaer
saerdnaer / gist:1139460
Created August 11, 2011 11:49
Pentabarf XML to CSV for label writer
<xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="text" indent="no" encoding="utf-8" />
<xsl:template match='text()|@*' />
<xsl:template match="event"><xsl:text>
</xsl:text>"<xsl:value-of select="@id" />"; "<xsl:value-of select="title" />"; "<xsl:value-of select="../../@index" />"; "<xsl:value-of select="start" />"; "<xsl:value-of select="room" />"</xsl:template>
</xsl:transform>
@saerdnaer
saerdnaer / upgrade
Last active December 27, 2015 02:29
Upgrade a dokuwiki installation to the current release candidate
#!/bin/sh
# this file shoud be placed in the dokuwiki root
wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-rc.tgz
tar -xf dokuwiki-rc.tgz --strip-components=1
rm dokuwiki-rc.tgz
# Remove unused files
grep -Ev '^($|#)' data/deleted.files | xargs -n 1 rm -vf
@saerdnaer
saerdnaer / gist:387a25535d5321bce5eb
Created April 1, 2015 20:26
Stammbaum-Software
http://alternativeto.net/software/familysearchorg/
https://gramps-project.org/
http://compgen.de/ Deutsche Seite zum Thema mit Suchmaschine
https://github.com/ryanhowdy/fcms
Gab wohl auch ne Ruby Software mit ähnlichen Funktionen, vgl. Zeile über diesem Edit: https://gramps-project.org/wiki/index.php?title=Other_genealogy_tools&diff=53340&oldid=53337
https://dev.webtrees.net/demo-stable/module.php?mod=tree&mod_action=treeview&ged=demo&rootid=i1
@saerdnaer
saerdnaer / gist:4010d7cddf28d1cc329b
Created April 21, 2015 14:31
"Filterregel für viele Listen"
#Diese Regel sortiert jede Mail in den Ordner, der zur jeweiligen Liste gehört. Es werden bewusst keine doppelten Nachrichten aussortiert, sodass in jedem Listenordner der komplette Nachrichten-Verlauf vorhanden ist. Allerdings wird die Mail in nur einem Ordner als ungelesen angezeigt.
# Falls zu der Liste noch kein Ordner existiert, wird er angelegt und abonniert, sodass er in den Mail-Clients angezeigt wird.
`reformail -D 8196 .msgid.cache`
if ( $RETURNCODE == 0 )
DOPPELT=1
else
DOPPELT=0
if (/^List-Id:.*<([-_a-z0-9]+)\.fs\.tum\.de>/ || /^Delivered-To:.* ([-_a-z0-9]+)-owner@fs\.tum\.de/)
#!/bin/sh
#
# Author: Aaron Voisine <aaron@voisine.org>
# Inkscape Modifications:
# Michael Wybrow <mjwybrow@users.sourceforge.net>
# Jean-Olivier Irisson <jo.irisson@gmail.com>
#
CWD="`(cd \"\`dirname \\\"$0\\\"\`\"; echo \"$PWD\")`"
# e.g. /Applications/Inkscape.app/Contents/Resources/bin
@saerdnaer
saerdnaer / upgrade.sh
Created September 2, 2015 20:25
Dokuwiki upgrade script
export VERSION=stable
wget http://download.dokuwiki.org/src/dokuwiki/dokuwiki-$VERSION.tgz
tar -xf dokuwiki-$VERSION.tgz --strip-components=1
rm dokuwiki-$VERSION.tgz
# Remove unused files
grep -Ev '^($|#)' data/deleted.files | xargs -n 1 rm -vf
# fix permissions
chown -R wiki:wiki data
#!/usr/local/bin/python3
from urllib.parse import quote_plus
from urllib.request import URLopener
import os, subprocess
import json
from shapely.geometry import shape
import csv
from collections import OrderedDict
import json
def main():
#https://engelsystem.de/31c3/?p=shifts_json_export&key=7ae550dcafee0f084dc4e76d6d3088ca
#&start_day=2014-12-27&start_time=00%3A00&end_day=2014-12-30&end_time=23%3A59
#&rooms[]=25&rooms[]=20&rooms[]=7&rooms[]=26&rooms[]=12&rooms[]=10&rooms[]=8&rooms[]=9&rooms[]=13&rooms[]=2&rooms[]=3&rooms[]=19&rooms[]=21&rooms[]=18&rooms[]=6&rooms[]=4&rooms[]=22&rooms[]=5&rooms[]=16&rooms[]=17&rooms[]=15&rooms[]=24&rooms[]=14&rooms[]=32&rooms[]=33&rooms[]=28&rooms[]=34&rooms[]=11&rooms[]=31&rooms[]=23
#&types[]=34&types[]=33&types[]=11&types[]=12
#&types[]=4&filled[]=1&filled[]=0&export=user_shifts