Skip to content

Instantly share code, notes, and snippets.

@kujirahand
kujirahand / counter.py
Created October 20, 2026 08:42
Thumbyでバードカウンターを作る
import thumby
# 変数を初期化
counter = 0
is_down_a = False
is_down_b = False
# フォントの設定
thumby.display.setFont("/lib/font8x8.bin", 8, 8, 1)
@kujirahand
kujirahand / gist:82878e83dff540fe2dfaaa1d31f7e303
Created October 19, 2026 07:32
トライ木で英単語の自動補完を作ってみる
use std::collections::BTreeMap;
use std::collections::HashMap;
/// 候補の最大件数 --- (※1)
const MAX_RESULTS: usize = 50;
/// トライ木のノード --- (※2)
#[derive(Default)]
struct Node {
/// 次の1文字 → 子ノード
@kujirahand
kujirahand / maze.py
Last active June 4, 2026 01:16
Maze for Thumb
import thumby
import random
import time
# 描画フォントの設定
FW, FH = 5, 7
thumby.display.setFont("/lib/font5x7.bin", FW, FH, 1)
# FPSを指定
thumby.display.setFPS(8)
@kujirahand
kujirahand / LifeGame.py
Last active June 4, 2026 01:16
LifeGame for Thumby
import time
import thumby
import random
# 定数の定義
DISP_W = thumby.display.width # 72
DISP_H = thumby.display.height # 40
# セルのサイズと個数を定義
CW, CH = 3, 3
COLS,ROWS = DISP_W // CW, DISP_H // CH
@kujirahand
kujirahand / later.py
Last active May 18, 2026 01:57
タスクを追加、確認できるツール
#!/usr/bin/env python
""" CLIでタスクを管理するプログラム """
from datetime import datetime, timedelta
import re
import typer
from rich.console import Console
from rich.table import Table
from storage import load_tasks, save_tasks
@kujirahand
kujirahand / main.rs
Last active May 8, 2026 04:56
ExcelファイルをCSVに変換するCLIツール
// Excelファイル(xlsx/xls/ods等)をシートごとにCSVへ変換するCLIツール
use calamine::{open_workbook_auto, Data, Range, Reader};
use std::env;
use std::fs::File;
use std::io::{BufWriter, Write};
use std::path::Path;
// メイン処理 --- (*1)
fn main() {
// コマンドライン引数を取得する --- (*2)
@kujirahand
kujirahand / camera.py
Created May 2, 2026 03:21
ラズパイでDiscordにカメラ画像を送信
#!/usr/bin/env python3
import os
import subprocess
import sys
from urllib.parse import parse_qsl, urlencode, urlsplit, urlunsplit
import requests
from dotenv import load_dotenv
load_dotenv() # .envファイルを読み込む
@kujirahand
kujirahand / camera.py
Created April 13, 2026 15:22
ラズパイで画像を撮影してTelegramに送信するプログラム
#!/usr/bin/env python3
import os
import subprocess
import sys
import requests
from dotenv import load_dotenv
load_dotenv() # .envファイルを読み込む
PHOTO_PATH = "photo.jpg"
@kujirahand
kujirahand / dropbox_send.py
Created April 8, 2026 05:57
リフレッシュトークン対応したDropboxのファイルをメール送信するスクリプト
"""DropboxからファイルをダウンロードしてGmailで送信"""
import os
import dropbox
import smtplib
from email.message import EmailMessage
import sys
# 定数の設定 --- (※1)
MAIL_TO = "example@example.com" # ★要変更 - メールを送信する宛先を指定
@kujirahand
kujirahand / send.py
Created April 6, 2026 09:02
DropboxからファイルをダウンロードしてGmailで送信
"""DropboxからファイルをダウンロードしてGmailで送信"""
import os
import dropbox
import smtplib
from email.message import EmailMessage
import sys
# 定数の設定 --- (※1)
MAIL_TO = "mailto@example.com" # ★要変更 - メールを送信する宛先を指定
DROPBOX_FILE = "/売上データ.xlsx" # ★要変更 - 送信したいファイル