]> granicus.if.org Git - python/commitdiff
Extend handling for \let a bit, to also allow \let\something=<character>. We
authorFred Drake <fdrake@acm.org>
Fri, 15 May 1998 13:45:54 +0000 (13:45 +0000)
committerFred Drake <fdrake@acm.org>
Fri, 15 May 1998 13:45:54 +0000 (13:45 +0000)
still don't support things like \let^^M=\something, where ^^M could actually be
any active character.  Print a decent warning if we find one we can't handle.

Doc/perl/python.perl

index 8882b319fa2ae61966092f581890fcb36c24b79c..5a04b7c6ad3c541c031683a55cb2ec2b0dfd7370 100644 (file)
@@ -63,12 +63,23 @@ sub ArabictoRoman {
 sub do_cmd_let{
     local($_) = @_;
     my $matched = 0;
-    s/\s*[\\]([a-zA-Z]+)\s*(=\s*)?[\\]([a-zA-Z]*)/$matched=1; ''/e;
+    s/[\\]([a-zA-Z]+)\s*(=\s*)?[\\]([a-zA-Z]*)/$matched=1; ''/e;
     if ($matched) {
        my($new, $old) = ($1, $3);
        eval "sub do_cmd_$new { do_cmd_$old" . '(@_); }';
        print "\ndefining handler for \\$new using \\$old\n";
     }
+    else {
+       s/[\\]([a-zA-Z]+)\s*(=\s*)?([^\\])/$matched=1; ''/es;
+       if ($matched) {
+           my($new, $char) = ($1, $3);
+           eval "sub do_cmd_$new { \"\\$char\" . \@_[0]; }";
+           print "\ndefining handler for \\$new to insert '$char'\n";
+       }
+       else {
+           write_warnings("Could not interpret \\let construct...");
+       }
+    }
     $_;
 }