Skip to content

Instantly share code, notes, and snippets.

@suzumura-ss
suzumura-ss / slack2text.js
Last active October 3, 2024 06:35
Slack messages to text
#!/usr/bin/env node
const { readFileSync } = require('fs');
function messageHeader(item) {
const { user, ts, replies, user_profile } = item;
const name = user_profile?.display_name
|| user_profile?.real_name
|| user_profile?.name
|| user;
return { name, user, ts, replies };
@suzumura-ss
suzumura-ss / git-grep-all
Created September 13, 2024 03:27
git grep with rev-list --all
#!/bin/sh -e
git grep "$@" $(git rev-list --all)
@suzumura-ss
suzumura-ss / lmstudio.conf
Created June 21, 2024 13:30
reverce proxy from WSL:1234 to Host:1234 with nameserver=192.168.24.10
# https://github.com/openresty/lua-resty-dns
lua_shared_dict ADDRESS 1m;
server {
listen 1234 default_server;
location / {
set $upstream "";
rewrite_by_lua_block {
local ADDRESS = ngx.shared.ADDRESS
@suzumura-ss
suzumura-ss / git-branch-prune
Last active March 19, 2024 04:54
remove "gone" branches
#!/bin/bash
CURRENT_BRANCH=$(git branch --show-current)
BRANCHES=$(git branch --format="%(refname:short) %(upstream:track)" | grep "\[gone\]" | awk '{ print $1 }' | grep -v $CURRENT_BRANCH)
[[ -n "$BRANCHES" ]] && git branch -D $BRANCHES
@suzumura-ss
suzumura-ss / trust-pkink.sh
Last active November 30, 2023 12:45
Trust SSH key for SourceTree for Windows - [email protected]
#!/bin/bash
MSYS_NO_PATHCONV=1 $(cygpath.exe $LOCALAPPDATA)/SourceTree/app-*/tools/putty/plink.exe [email protected]
@suzumura-ss
suzumura-ss / code.py
Created November 14, 2023 08:28
rotary encoder and led example
import digitalio
import board
import usb_hid
import rotaryio
from adafruit_hid.consumer_control import ConsumerControl
from adafruit_hid.consumer_control_code import ConsumerControlCode
consumer_control = ConsumerControl(usb_hid.devices)
@suzumura-ss
suzumura-ss / code.py
Created October 26, 2023 06:12
send string example
import board
from digitalio import DigitalInOut, Pull
import usb_hid
from adafruit_hid.keyboard import Keyboard
from adafruit_hid.keyboard_layout_us import KeyboardLayout
kbd = Keyboard(usb_hid.devices)
layout = KeyboardLayout(kbd)
class Button:
@suzumura-ss
suzumura-ss / code.py
Last active August 8, 2023 14:17
adafruit macropad HID Example
# https://learn.adafruit.com/adafruit-macropad-rp2040/macropad-basics
# https://docs.circuitpython.org/projects/macropad/en/latest/index.html
# https://docs.circuitpython.org/projects/hid/en/latest/api.html
import time
import usb_hid
from adafruit_macropad import MacroPad
from adafruit_hid.consumer_control import ConsumerControl
from adafruit_hid.consumer_control_code import ConsumerControlCode
from adafruit_hid.keyboard import Keyboard
@suzumura-ss
suzumura-ss / setup-wsl-ubuntu.sh
Last active April 14, 2023 13:44
Setup WSL2-Ubuntu-20.04 with Docker and CUDA
#!/bin/bash
sudo apt update
sudo apt upgrade -y
# Enable systemd
echo -e "[boot]\nsystemd=true\n" | sudo tee /etc/wsl.conf > /dev/null
# Install Nodejs
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - && sudo apt-get install -y nodejs
@suzumura-ss
suzumura-ss / checkDockerIp.js
Last active August 30, 2022 10:04
Detect confricted IPs
#!/usr/bin/env node
// eth0とdocker0がコンフリクトすると docker run によるコンテナが異常になる
// eth0とbr-xxxxがコンフリクトすると docker compose によるコンテナが異常になる
const { execSync } = require('child_process');
function ipAddr () {
if (process.env.NODE_ENV === 'test') {
return [
'inet 172.17.53.125/20 brd 172.17.63.255 scope global eth0',