Skip to content

Instantly share code, notes, and snippets.

@sonota88
sonota88 / langserver.rb
Last active April 15, 2025 09:34
Rubyで簡単な言語サーバー
require "json"
require "logger"
REQUEST_TABLE = {}
NOTIFICATION_TABLE = {}
LOGGER = Logger.new(File.join(__dir__, "debug.log"))
def log(msg) LOGGER.info(msg) end
def read_header
@sonota88
sonota88 / nes_noise.exs
Last active September 9, 2025 10:57
nes_noise
defmodule Context do
defstruct noise_timer: nil,
period: nil,
shift_register: <<0b000_0000_0000_0001::size(15)>>
end
defmodule NesNoise do
import Bitwise
defp master_clock_hz, do: 236_250_000.0 / 11
@sonota88
sonota88 / png_odg.rb
Last active December 26, 2025 22:56
RubyでPNGにLibreOffice Drawのodgファイルを埋め込んで再編集可能にする
require "base64"
require "json"
require "bundler/inline"
gemfile do
source "https://rubygems.org"
gem "chunky_png", "1.4.0"
end
KEYWORD_EMBEDDED_SOURCE = "Embedded Source"