Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!mit-eddie!bbn!jr@bbn.com From: jr@bbn.com (John Robinson) Newsgroups: comp.emacs Subject: Re: Problem with GNU Emacs. Summary: C-^, not C-~ Keywords: control characters names Message-ID: <49650@bbn.COM> Date: 13 Dec 89 21:01:29 GMT References: <3071@uceng.UC.EDU> <14572@eerie.acsu.Buffalo.EDU> <1013@dialogic.UUCP> Sender: news@bbn.COM Reply-To: jr@bbn.com (John Robinson) Distribution: usa Organization: BBN Systems and Technologies Corporation, Cambridge MA Lines: 39 In-reply-to: drich@.UUCP (Dan Rich) Just a dumb niggle (so why the long note?): In article <1013@dialogic.UUCP>, drich@.UUCP (Dan Rich) writes: >We have chosen the characters C-~ (or C-^ on some terminals) C-^ C-~ The VT100 has it wrong, folks, and this ain't the first time. The way to print a control character is to print a C- (or a ^) and then print the printing character whose ascii value is 64 greater. These are the 32 characters generated by: (progn (setq i 0) (while (< i 32) (insert (char-to-string (+ i 64))) (setq i (1+ i)))) that is (try it!): @ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_ ~ has the value 126. C-~ would be the character whose code is 126-64, or 62. This character is > . Some people express rubout as ^?. This obeys the above prescription if you make the operator a bitwise XOR instead of plus; ? has the code 63 and RUB 127. Another rule would be "take the remainder mod 32 of the character code". C-~ works by this rule, but there is no guidance to make this the representation preferred to C-> or C-^, since it is a many-one rule. Also, the rule needs an exception for C-? (as RUB), which needs to be distinguished from C-_. Apologies to those of you who can't see tilde or caret or underscore or square- or angle-bracket characters; this note must be very confusing. -- /jr, nee John Robinson Life did not take over the globe by combat, jr@bbn.com or bbn!jr but by networking -- Lynn Margulis