Skip to content

Instantly share code, notes, and snippets.

@7shi
7shi / katex.html
Last active February 4, 2023 18:45
[はてなブログ] KaTeXのテスト
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.16.4/dist/katex.min.css" integrity="sha384-vKruj+a13U8yHIkAyGgK1J3ArTLzrFGBbBc0tDp4ad/EyewESeXE/Iv67Aj8gKZ0" crossorigin="anonymous">
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.4/dist/katex.min.js" integrity="sha384-PwRUT/YqbnEjkZO0zZxNqcxACrXe+j766U2amXcgMg5457rve2Y7I6ZJSm2A0mS4" crossorigin="anonymous"></script>
<script defer src="https://cdn.jsdelivr.net/npm/katex@0.16.4/dist/contrib/auto-render.min.js" integrity="sha384-+VBxd3r6XgURycqtZ117nYw44OOcIax56Z4dCRWbxyPt0Koah1uHoK0o4+/RRE05" crossorigin="anonymous"></script>
<script>
document.addEventListener("DOMContentLoaded", () => {
function render(src, elem, displayMode) {
if (elem.rendered) return;
try {
katex.render(src, elem, { displayMode });
} catch (ex) {
@7shi
7shi / imq.js
Last active December 4, 2022 05:43
[JS] Calculating imaginary and quaternionic numbers
function imul(x, y) {
return [x[0] * y[0] - x[1] * y[1], x[0] * y[1] + x[1] * y[0]];
}
function cross(x, y) {
return [x[1] * y[2] - x[2] * y[1], x[2] * y[0] - x[0] * y[2], x[1] * y[2] - x[2] * y[1]];
}
function vdot(x, y) {
return x.reduce((acc, xi, i) => acc + xi * y[i], 0);
@7shi
7shi / ssml_ido.py
Last active October 18, 2022 04:10
[py] SSML converter for Ido
# CC0 http://creativecommons.org/publicdomain/zero/1.0/
phonemes = {}
phonemes2 = {}
def setphonemes(phs):
for ph in phs.split():
p1, p2 = ph.split(",")
phonemes[p1] = p2
if len(p1) > 1: phonemes2[p1[0]] = 1;
@7shi
7shi / common.ts
Created October 16, 2022 15:05
[Deno] DeepL JSON Converter
export function* splitLines(text: string) {
let line = "", prev = "";
for (const ch of text) {
if (ch == '\r') {
yield line;
line = "";
} else if (ch == '\n') {
if (prev != '\r') yield line;
line = "";
} else {
@7shi
7shi / split-pdf.html
Created August 24, 2022 17:18
[HTML]Splitter & PDF
<!DOCTYPE html>
<html lang="ja" style="height:100%">
<head>
<meta charset="utf-8">
<style>
.gutter {
background-color: #eee;
}
@7shi
7shi / wintts.py
Created May 25, 2020 09:50
[py] SAPI client
import getopt, sys, win32com.client
options = "lo:v:r:i:ps:"
def usage():
print("[usage] %s -l | [-o] [-v] [-r] (-i | -p | -s | text)" % sys.argv[0])
print(" -l language: case insensitive, begins-with match")
print(" -o output.wav")
print(" -v voice: case insensitive, 'Microsoft' can be dropped.")
print(" -r rate: -10 (slow) ... 10 (fast)")
print(" -i input.txt")
@7shi
7shi / RijndaelPad.fsx
Last active July 16, 2022 12:03
Crypto Notepad with Rijndael
// (0) PUBLIC DOMAIN
// To the extent possible under law, the person who associated CC0 with this work
// has waived all copyright and related or neighboring rights to this work.
#r "System"
#if NETF
#r "System.Drawing"
#r "System.Windows.Forms"
#else
//#r "nuget: System.Drawing.Common, 5.0.2"
@7shi
7shi / __inst.txt
Created November 28, 2012 08:19
AArch64(ARM64) mnemonics
abs
adc
adcs
add
addhn
addhn2
addp
adds
addv
adr
@7shi
7shi / ImageToRtf.cs
Last active January 13, 2022 06:47
Convert image to RTF
// https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-wmf/4813e7fd-52d0-4f42-965f-228c8b7488d2
// https://www.codeproject.com/Questions/540673/InsertplusimageplusinplusRichTextBoxpluswithoutplu
// https://stackoverflow.com/questions/1490734/programmatically-adding-images-to-rtf-document
// https://garakutatech.blogspot.com/2021/01/cwpfwinformsrichtextboxjpeg.html
using System;
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Text;
@7shi
7shi / generate.sh
Created February 29, 2020 10:06
[woff] toki pona font
# https://github.com/toki-pona/ilo-pi-sitelen-pona/blob/master/client/styles/fonts/tp/toki-pona.woff
base64 -w 0 toki-pona.woff > toki-pona.woff.b64