Skip to content

Instantly share code, notes, and snippets.

View tshirtman's full-sized avatar

Gabriel Pettier tshirtman

View GitHub Profile
from kivy.app import App
from kivy.uix.effectwidget import AdvancedEffectBase
from kivy.lang import Builder
from kivy.properties import NumericProperty
KV = '''
#:import Scanlines kivy.uix.effectwidget.ScanlinesEffect
#:import VerticalBlur kivy.uix.effectwidget.VerticalBlurEffect
#:import HorizontalBlur kivy.uix.effectwidget.HorizontalBlurEffect
#:import FXAA kivy.uix.effectwidget.FXAAEffect
@tshirtman
tshirtman / geobar.py
Last active April 5, 2024 02:31
Naive approach to average latitude and longitude positions
import webbrowser
from functools import cache
import numpy as np
import numpy.linalg as lin
from geopy.geocoders import Nominatim
@cache
[app]
# (str) Title of your application
title = Kpritz
# (str) Package name
package.name = Kpritz
# (str) Package domain (needed for android/ios packaging)
package.domain = fr.tshirtman.kpritz
@tshirtman
tshirtman / Overworld.png
Last active January 5, 2024 22:38
a tilemap implementation in kivy using a shader
Overworld.png
@tshirtman
tshirtman / kivy_pdf.py
Last active November 16, 2023 13:34
a very limited pdf viewer implemented directly with kivy widgets, using pdfminer to get the content
# adapted from https://github.com/dpapathanasiou/pdfminer-layout-scanner
from os.path import exists
from tempfile import mkdtemp, mkstemp
from shutil import rmtree
from binascii import b2a_hex
from os import write, close
from threading import Thread
from pdfminer.pdfpage import PDFPage
from kivy.app import App
from kivy.lang import Builder
from kivy.clock import Clock
from kivy import properties as P
KV = '''
#:import chain itertools.chain
#:import sin math.sin
#:import pi math.pi
@tshirtman
tshirtman / autofit_ti.py
Created January 10, 2021 01:20
kivy text input with automatic font size for biggest text that fits
'''
'''
from kivy.app import App
from kivy.lang import Builder
from kivy.core.text import Text
from kivy.clock import mainthread
KV = '''
TextInput:
@tshirtman
tshirtman / responsive_example.py
Last active May 27, 2023 13:56
Making a simple responsive app layout.
from kivy.app import App
from kivy.lang import Builder
from kivy.properties import OptionProperty
from kivy.core.window import Window
from kivy.factory import Factory
KV = '''
#:import A kivy.animation.Animation
<RLabel@Label>:
@tshirtman
tshirtman / radial_gradient.py
Created December 10, 2012 01:45
radial gradient texture for kivy
from kivy.graphics.texture import Texture
from kivy.graphics import Rectangle
from kivy.uix.widget import Widget
from kivy.app import App
class RadialGradient(App):
def build(self):
w = Widget()
center_color = 255, 255, 0
function! ShowWindowNumbers()
for i in range(1, winnr('$'))
" Get the buffer and window associated with this number
let bufnr = winbufnr(i)
let winid = win_getid(i)
let figlet_output = system('figlet -f small ' . i )
let popup_content = split(figlet_output, "\n")
let popup_height = 5
let popup_width = 8
let row = win_screenpos(i)[0] + (winheight(i) - popup_height) / 2