Skip to content

Instantly share code, notes, and snippets.

View gottadiveintopython's full-sized avatar

水戸う納豆齋(Nattōsai Mitō) gottadiveintopython

View GitHub Profile
@gottadiveintopython
gottadiveintopython / main.py
Last active September 19, 2021 22:26
sqlite3 database as RecycleView data source
import sqlite3
from kivy.app import App
from kivy.lang import Builder
def init_db():
import itertools
from string import ascii_uppercase
conn = sqlite3.connect(":memory:")
cur = conn.cursor()
@gottadiveintopython
gottadiveintopython / test.glsl
Created October 3, 2021 13:18 — forked from tshirtman/test.glsl
glsl vjaying experiment
$HEADER$
float PI = 3.1415926535;
uniform vec2 resolution;
uniform float time;
vec2 rotate(vec2 pos, float angle, vec2 center){
pos -= center;
pos *= mat2(cos(angle), sin(-angle), sin(angle), cos(angle));
pos += center;
from kivy.clock import Clock
from kivy.app import App
from kivy.animation import Animation
from kivy.uix.widget import Widget
from kivy.uix.floatlayout import FloatLayout
from kivy.lang import Builder
from kivy.core.window import Window
from kivy.graphics import RenderContext
from kivy.uix.modalview import ModalView
from kivy.properties import ListProperty, NumericProperty, ObjectProperty, ColorProperty
@gottadiveintopython
gottadiveintopython / getting_familiar_with_size_hint_min.py
Created July 4, 2022 14:22
getting familiar with size_hint_min #1
'''
CPython 3.8.12
pip install kivy[base]==2.1.0
pip install "asynckivy>=0.5,<0.6"
pip install git+https://github.com/gottadiveintopython/kivyx.uix.magnet#egg=kivyx.uix.magnet
'''
from kivy.config import Config
Config.set('graphics', 'width', 1280)
Config.set('graphics', 'height', 720)
# Config.set('graphics', 'maxfps', 30)
@gottadiveintopython
gottadiveintopython / class-based context managers are faster than generator-based ones.py
Last active February 23, 2025 08:14
クラスで実装されたコンテキストマネージャーの方がジェネレーターの物より速い
# CPython3.8.12 上で測ったところclass-basedの方が17倍近く速かった
from functools import partial
from contextlib import contextmanager
from timeit import timeit
class class_based:
__slots__ = tuple()
@gottadiveintopython
gottadiveintopython / create_texture_from_text.py
Created February 23, 2025 08:10
Kivyで文字列の描かれたTextureを作る。
from kivy.graphics.texture import Texture
from kivy.core.text import Label as CoreLabel
from kivy.core.text.markup import MarkupLabel as CoreMarkupLabel
def create_texture_from_text(*, markup=False, **label_kwargs) -> Texture:
'''
.. code-block::
from kivy.metrics import sp