Skip to content

Instantly share code, notes, and snippets.

View tana's full-sized avatar

Satoshi Tanaka tana

View GitHub Profile
@tana
tana / ラズパイでSiv3D.md
Last active October 6, 2023 12:08
ラズパイでSiv3D

前提条件

  • Raspberry Pi 4 Model B
    • OpenGL ES 3.1はPi 4でないと動かないため
  • Raspbian bullseye (64ビット、32ビット両対応。ただし32ビットでは検証不足)

手順

  1. aptから入れられる範囲で依存パッケージを入れる
    sudo apt install ninja-build libasound2-dev libavcodec-dev libavformat-dev libavutil-dev libboost-dev libcurl4-openssl-dev libgtk-3-dev libgif-dev libglu1-mesa-dev libharfbuzz-dev libmpg123-dev libopencv-dev libopus-dev libopusfile-dev libsoundtouch-dev libswresample-dev libtiff-dev libturbojpeg0-dev libvorbis-dev libwebp-dev libxft-dev uuid-dev xorg-dev clang cmake
  • GCCではなくClangコンパイラが必要(32ビットではGCCでもコンパイル可能な可能性あり。要検証)
@tana
tana / README.md
Created March 13, 2022 14:09
systemdを使ってBluetoothデバイスに自動接続する

Linuxの起動時にBluetoothデバイス(ゲームパッドなど)に自動接続するsystemd Unitです。 デバイスは事前にbluetoothctlでペアリングしておく必要あり。 `` は接続先BluetoothデバイスのMACアドレス(例:AB:CD:EF:12:34:56)に置き換えてください。

@tana
tana / M5StampC3_Test.ino
Created October 23, 2021 10:13
LED blink using M5Stamp C3
#include <Adafruit_NeoPixel.h>
const int NUM_LEDS = 1;
const int LED_PIN = 2;
Adafruit_NeoPixel pixels(NUM_LEDS, LED_PIN, NEO_GRB + NEO_KHZ800);
void setup() {
Serial.begin(115200);
@tana
tana / EmitTest.cs
Created January 12, 2021 04:51
IL shift amount test
using System;
using System.Reflection;
using System.Reflection.Emit;
namespace EmitTest
{
class EmitTest
{
static void Main(string[] args)
{
@tana
tana / factorial.rs
Created November 5, 2014 03:38
ifとmatchで階乗を書いて、実行時間を比べてみる。
extern crate time;
fn factorial(n: uint) -> uint {
if n > 1 {
n * factorial(n - 1)
} else {
n
}
}
@tana
tana / README.md
Created April 18, 2014 18:16
MacでLaunchpadやDockにmikutterのアイコンを表示する

Macにmikutterをインストールしていて、Launchpadやdockにmikutterのアイコンを表示してみたくなったのでやってみました。

あらかじめ、X Window Systemや依存ライブラリ、mikutterをインストールしておきます。 それに関してはこの記事が詳しいです。
mikutter Advent Calendar 2013 Day2 - あっきぃ日誌

それでは、まず最初に、この記事を参考に起動用の.appファイルを作ってみます。
シェルスクリプトを Mac OS X 方式の .app にする方法 [簡単 2 ステップ] - うむらうす
mikutterを起動する命令を書いたAppleScriptファイルをAppleScriptエディタで開き、ファイルフォーマットを「アプリケーション」にして保存するだけです。
使用したAppleScriptはこのgistに貼り付けておきました。「/path/to/mikutter.rb」の部分は、mikutter.rbのパスに適宜置き換えてください。

@tana
tana / binary-move.vim
Created February 21, 2014 09:09
Vimで二分探索っぽくカーソルを移動する
" 二分探索のようにカーソルを移動する
"
" 操作方法
" 現在位置より左に行きたい場合は <C-H>
" 右に行きたい場合は <C-L> (再描画を上書きするが、大丈夫だろう)
" <C-K> で状態をリセット
" 行を移動するとリセットされる。
let s:left = 0 " 範囲の左端
let s:right = 0 " 範囲の右端
@tana
tana / test.txt
Created October 8, 2012 11:28
自作言語テストプログラム
/*co\nmm/*en*/t*/def hoge():
arr = [1, 2, 3, 4]
// array
arr[3] = 9
c = arr.length
while c:
console.log(arr[c - 1])
c = c + -1
@tana
tana / out.js
Created September 29, 2012 13:46
自作言語のコンパイラ出力(標準ライブラリ除く)
function hoge(){
var arr = [1, 2, 3, 4];
var c = (arr).length;
return (function() {
while (c) {
((console).log)((arr)[($$mn$$)(c, 1)]);
$$result$$ = c = ($$mn$$)(c, 1);
}
return $$result$$;
})();
@tana
tana / MyServer.java
Created August 23, 2012 13:37
Modified NanoHTTPD
import java.io.*;
import java.util.*;
class MyServer extends NanoHTTPD {
public MyServer() throws IOException {
super(44444, null);
}
public Response serve(String uri, String meth, Properties header, Properties params, Properties files) {
System.out.println(uri);
if (uri.equals("/")) {
String str = "<html><head><title>hoge</title></head><body><a href=\"/test\">test</a></body></html>";