Skip to content

Instantly share code, notes, and snippets.

View WildRikku's full-sized avatar

Wild Rikku WildRikku

View GitHub Profile
@WildRikku
WildRikku / SceneViewRightClickThingy.cs
Created October 30, 2025 11:21
Unity editor panel with right-clickable button
[Overlay(typeof(SceneView), "SceneViewDemo", true)]
public class SceneViewDemo : Overlay {
public override VisualElement CreatePanelContent() {
VisualElement root = new() { name = "SceneViewDemo" };
Button btn = new() {
text = "Hello World";
};
btn.clickable.activators.Add(new() {
button = MouseButton.RightMouse
@WildRikku
WildRikku / import-sqlite-to-quodlibet.py
Created September 13, 2025 02:00
Simple and dumb script to import the most important meta data to Quod Libet from SQLite. It was sufficient for me but might not be for you, for example it lacks a check for multiple artists. However I thought it might be helpful since the documentation for the Quod Libet python API is not great
import quodlibet.library
from quodlibet.query import Query
from quodlibet import app
import sqlite3
# you need a Quod Libet dev environment
# this script and your QL songs file need to be placed at the root of your Quod Libet git checkout
# there is another one for copying QL data to SQLite https://gist.github.com/WildRikku/15b645d236b2d4edf32c01c9603a2c86
dbcon = sqlite3.connect("../songs.db")
@WildRikku
WildRikku / quodlibet-to-sqlite.py
Created September 9, 2025 07:53
Very primitive script to save the most important tags from a Quod Libet "database" (pickled dict) to an SQLite database
import quodlibet.library
from quodlibet.query import Query
from quodlibet import app
import sqlite3
# you need a Quod Libet dev environment https://quodlibet.readthedocs.io/en/latest/development/devenv.html
# this script and your QL songs file need to be placed at the root of your Quod Libet git checkout
# the SQLite file will also be placed there
dbcon = sqlite3.connect("songs.db")
@WildRikku
WildRikku / .gitignore
Created December 14, 2022 15:33
Unity Odin inspector gitignore - for when you use ODIN but your team does not, so they need the attributes library but most not receive the rest of the files
# Odin
Assets/Plugins/Sirenix/*
!Assets/Plugins/Sirenix/Assemblies
!Assets/Plugins/Sirenix/Assemblies.meta
Assets/Plugins/Sirenix/Assemblies/*
!Assets/Plugins/Sirenix/Assemblies/Sirenix.OdinInspector.Attributes*