Skip to content

Instantly share code, notes, and snippets.

View otsaloma's full-sized avatar

Osmo Salomaa otsaloma

  • Helsinki, Finland
View GitHub Profile
@otsaloma
otsaloma / gist:1912053
Created February 26, 2012 01:24
Line numbers in Gtk2 text view margin
#!/usr/bin/env python
import gtk
import pango
def on_text_view_expose_event(text_view, event):
text_buffer = text_view.get_buffer()
bounds = text_buffer.get_bounds()
text = text_buffer.get_text(*bounds)
nlines = text.count("\n") + 1
layout = pango.Layout(text_view.get_pango_context())
layout.set_markup("\n".join([str(x + 1) for x in range(nlines)]))
@otsaloma
otsaloma / gist:1912166
Created February 26, 2012 01:43
Line numbers in Gtk3 text view margin
#!/usr/bin/env python3
from gi.repository import Gtk
from gi.repository import Pango
def on_text_view_draw(text_view, cairoc):
print("Drawing...")
# XXX: Rest of function not yet ported.
text_buffer = text_view.get_buffer()
bounds = text_buffer.get_bounds()
text = text_buffer.get_text(*bounds)
nlines = text.count("\n") + 1
@otsaloma
otsaloma / gist:2570392
Created May 1, 2012 18:45
Remove subtitle overlaps using aeidon
#!/usr/bin/env python
import aeidon
project = aeidon.Project()
project.open_main("test.srt")
for i in range(len(project.subtitles) - 1):
end = project.subtitles[i].end_seconds
next_start = project.subtitles[i+1].start_seconds
if end > next_start:
print (i + 1,
project.calc.seconds_to_time(end),
import pyotherside
import threading
import time
def run():
while True:
pyotherside.send("test-errors")
time.sleep(3)
thread = threading.Thread(target=run)
@otsaloma
otsaloma / kapsi_mml_peruskartta_@1x.json
Last active July 21, 2017 20:04
MML peruskartta definitions for Poor Maps
{
"attribution": "Peruskartta © Maanmittauslaitos",
"extension": ".png",
"format": "slippy",
"name": "Kapsi MML peruskartta @1x",
"scale": 0.5,
"smooth": true,
"source": "kartat.kapsi.fi",
"url": "http://tiles.kartat.kapsi.fi/peruskartta/{z}/{x}/{y}.png"
}
@otsaloma
otsaloma / stamen_toner.json
Created January 18, 2015 03:34
Regular and @2x Stamen Toner definitions for Poor Maps
{
"attribution": "Maps © Stamen\nData © OpenStreetMap contributors",
"extension": ".png",
"format": "slippy",
"name": "Stamen Toner",
"source": "maps.stamen.com",
"url": "http://tile.stamen.com/toner/{z}/{x}/{y}.png"
}
@otsaloma
otsaloma / kelkkapoi.json
Created February 8, 2015 20:40
Kelkkareitit definitions for Poor Maps
{
"attribution": "© OpenStreetMap contributors\nhttp://www.openstreetmap.org/copyright",
"extension": ".png",
"format": "slippy",
"name": "Kelkkapisteet",
"source": "kelkkareitit.fi",
"type": "overlay",
"url": "http://tiles.kelkkareitit.fi/kelkkapoi/{z}/{x}/{y}.png",
"z": 30
}
@otsaloma
otsaloma / openptmap.json
Created September 27, 2015 11:34
OpenStreetMap public transportation definitions for Poor Maps
{
"attribution": "© OpenStreetMap contributors",
"extension": ".png",
"format": "slippy",
"name": "OpenPTMap",
"source": "openptmap.org",
"type": "overlay",
"url": "http://openptmap.org/tiles/{z}/{x}/{y}.png",
"z": 20
}
@otsaloma
otsaloma / PositionSource.qml
Last active March 17, 2018 21:09
A drop-in replacement for PositionSource.qml for testing
// -*- coding: utf-8-unix -*-
import QtQuick 2.0
import QtPositioning 5.2
// A drop-in replacement for PositionSource.qml for testing.
Item {
id: gps
property var direction: 0
@otsaloma
otsaloma / Circle.qml
Last active July 21, 2017 20:05
Poor Maps position centering testing circle
Rectangle {
id: circle
color: "red"
opacity: 0.2
radius: width/2
z: 10000
}
// onPositionChanged: