ref: 63c188f625c3939ab31231e3c6775ba72d37a00e
dir: /lib/escfmt/escsh.myr/
use std pkg escfmt = type escsh = byte[:] const sh : (s : byte[:] -> escsh) ;; const __init__ = { var s = ("" : escsh) std.fmtinstall(std.typeof(s), shfmt) } const sh = {s -> (s : escsh) } const shfmt = {sb, ap, args var s : byte[:] s = std.vanext(ap) std.sbputb(sb, ('\'' : byte)) for b : s if b == ('\'' : byte) std.sbputs(sb, "'\\''") else std.sbputb(sb, b) ;; ;; std.sbputb(sb, ('\'' : byte)) }