Tinyfugue smart quotes

I have reproduced below my Tinyfugue bindings to allow me to paste in various webpages which might use smart quotes or other non-7-bit-ASCII entities. Note: this won't work with my Tinyfugue UTF-8 patches!

/unbind ^[b
/bind ^[b^[^@^[^B = /input *
/bind ^[b^[^@^[^F = /input ...
/bind ^[b^[^@^[^P = /input -
/bind ^[b^[^@^[^Q = /input -
/bind ^[b^[^@^[^R = /input -
/bind ^[b^[^@^[^S = /input -
/bind ^[b^[^@^[^T = /input -
/bind ^[b^[^@^[^U = /input -
/bind ^[b^[^@^[^V = /input ||
/bind ^[b^[^@^[^W = /input =
/bind ^[b^[^@^[^X = /input `
/bind ^[b^[^@^[^Y = /input '
/bind ^[b^[^@^[^Z = /input '
/bind ^[b^[^@^[^[ = /input `
/bind ^[b^[^@^[^\ = /input "
/bind ^[b^[^@^[^] = /input "
/bind ^[b^[^@^[^^ = /input "
/bind ^[b^[^@^[^_ = /input "
/bind ^[b^[^@^[^` = /input +
/bind ^[b^[^@^[! = /input +
/bind ^[b^[^@^[" = /input *
/bind ^[b^[^@^[# = /input *
/bind ^[b^[^@^[$ = /input .
/bind ^[b^[^@^[% = /input ..
/bind ^[b^[^@^[& = /input ...
/bind ^[b^[^@^[' = /input -
/bind ^[b^[^@^[2 = /input '
/bind ^[b^[^@^[3 = /input ''
/bind ^[b^[^@^[4 = /input '''
/bind ^[b^[^@^[5 = /input `
/bind ^[b^[^@^[6 = /input ``
/bind ^[b^[^@^[7 = /input ```
/bind ^[b^[^@^[8 = /input ^
/bind ^[b^[^@^[9 = /input <
/bind ^[b^[^@^[: = /input >
/bind ^[b^[^@^[; = /input *
/bind ^[b^[^@^[< = /input !!
/bind ^[b^[^A^[^B = /input ***
/bind ^[b^[^A^[^C = /input -
/bind ^[b^[^A^[^D = /input /
/bind ^[b^[^A^[^E = /input [
/bind ^[b^[^A^[^F = /input ]
/bind ^[b^[^A^[^G = /input ??
/bind ^[b^[^A^[^H = /input ?!
/bind ^[b^[^A^[^I = /input !?
/bind ^[b^[^B^[, = /test input(" Euros ")
/bind ^[b^[^D^[" = /input (TM)
/bind ^[b^[^F^[^P = /input <-
/bind ^[b^[^F^[^R = /input ->
/bind ^[b^[^H^[< = /input ~
/bind ^[B^[+ = /input <<
/bind ^[B^[; = /input >>
/bind ^[B^[. = /input (R)
/bind ^[B^[) = /input (C)
/bind ^[C^[^W = /input x
/bind ^[K^[^\ = /input ~
/bind ^[B^[< = /test input(" 1/4 ")
/def -i -b"^[B^[=" = /test input(" 1/2 ")
/bind ^[B^[> = /test input(" 3/4 ")
/bind ^[B^[# = /input GBP
/bind ^[B^[" = /test input(" cents ")
/bind ^[B^[0 = /test input(" degrees ")
/bind ^[B^[1 = /input +/-
/bind ^[B^[2 = /input ^(2)
/bind ^[B^[3 = /input ^(3)
/bind ^[B^[7 = /input *

Converter Source

Here is the Perl script that I use to convert entities to bind statements. Obviously you have to fill in what you want it to translate to.

#!/usr/bin/perl

use warnings;
use strict;

while (my $input = <STDIN>) {
        chomp $input;

        my @input = map { ord } split(//, $input);

        my $output = "";
        foreach my $chr (@input) {
                if ($chr >= 0x80) {
                        $output .= "^[";
                        $chr -= 0x80;
                }
                if ($chr <= 0x20) {
                        $output .= "^";
                        $chr += 0x40;
                }
                $output .= chr($chr);
        }

        print "/bind " . $output . " = /input \n";
}

Copyright © Kenny Root. All rights reserved.