From: "Ben Wing" <ben@666.com>
Cc: 'XEmacs Beta' <xemacs-beta@xemacs.org>
Subject: "teco line noise"
Date: Tue, 16 Nov 2004 20:07:28 -0600 [thread overview]
Message-ID: <00a601c4cc4a$30c96e10$210110ac@NEEEEEEE> (raw)
Still can't find any version of GNU Emacs before 18.55 but I found this:
[beginning of manual]
MASSACHUSETTS INSTITUTE OF TECHNOLOGY
ARTIFICIAL INTELLIGENCE LABORATORY
AI Memo 555 2 October 1981
EMACS MANUAL FOR TWENEX USERS
EMACS MANUAL FOR TWENEX USERS EMACS MANUAL FOR TWENEX
USERS
BY BY
BY
RICHARD M. STALLMAN
RICHARD M. STALLMAN RICHARD M. STALLMAN
A REFERENCE MANUAL A
REFERENCE MANUAL A REFERENCE MANUAL
FOR THE EXTENSIBLE, CUSTOMIZABLE, SELF-DOCUMENTING
FOR THE EXTENSIBLE, CUSTOMIZABLE, SELF-DOCUMENTING FOR THE
EXTENSIBLE, CUSTOMIZABLE, SELF-DOCUMENTING
REAL-TIME DISPLAY EDITOR
REAL-TIME DISPLAY EDITOR REAL-TIME DISPLAY EDITOR
This manual corresponds to EMACS version 161
[excerpt from emacs.src]
\f
!* START !
EI^[ !*Close off the input file !
HK !*Purge the buffer !
GZ !*Pull in the command line from QZT !
J !*Jump back to beginning !
^D
128,0ET !*Reset abort on error bit !
-1,5:W !*Set terminal to hold whole screen !
^[ !*Discard numeric argument returned by :W cmd !
22,2:W !*Protect the bottom 2 status lines from update !
^[ !*Discard numeric argument returned by :W cmd !
!* Preload QHT with macro to erase a given line on screen, leave cursor !
!* at that line, and make TECO forget it did anything to the terminal. !
@^UH~ !* QHT <= macro between the "~" s !
[A !* Push QAT and QAN onto Q register stack !
UA !* QAN <= input line number !
0,1ET !* Enable image mode output !
27^T !* Send escape to terminal !
^^[^T
QA\
^YT
^YK
^^H^T
1,0ET !* Disable image mode output !
^^KMM !* Kill the current lines contents !
32768W !* Make TECO forget we messed with screen !
]A !* Pop QAT and QAN off the Q register stack !
~ !* End of macro load into QHT !
!*Preload QMT with macro to output characters to terminal in image mode !
!*Q registers affected by an MM: QAN !
@^UM~ !*QMT <= macro between "~" s !
UA !*QAN <= macro's argument (char to output) !
0,1ET !*Set image mode bit !
27^T !*Send ESC to terminal for special sequence !
^^[^T
QA^T !*Send the saved character to terminal !
1,0ET !*Reset back to non image mode !
~ !*End of image mode macro load in QMT !
!*Preload QUT with macro to optionally save a modified buffer !
!*Q register affected by MU: QLT, QAN, QST, QAN, QTN, QQN, QYN, QXN, !
!*QWT !
@^UU~ !*QUT <= all characters between the "~" s !
< !*Begin loop to save buffer !
@^UL%Save% !*QLT <= "Save" !
@32:^UL%% !*QLT <= "Save " !
@:^UL%modified% !*QLT <= "Save modified" !
@32:^UL%% !*QLT <= "Save modified " !
@:^UL%buffer% !*QLT <= "Save modified buffer?" !
@32:^UL%% !*QLT <= "Save modified buffer? " !
@:^UL%(Y/N)% !*QLT <= "Save modified buffer? (Y/N)" !
MN !*Get response from user !
UA !*Save returned success/abort code !
QA; !*Abort function if string fetch failed !
GS !*Get the response string !
-1A-^^N"E !*If response is "N" then !
-1UA !*QAN <= code for successful execution !
HK !*Purge the current buffer !
0; !*Abort iteration and go to terminal code !
' !*End of "N" processing !
-1A-^^Y"E !*If response is "Y" then !
^YK !*Delete response from text buffer !
@^UL%File:% !*QLT <= "File:" !
@32:^UL%% !*QLT <= "File: " !
MN !*Get response from user !
UA !*Save returned success/abort code !
QA; !*Abort function if string fetch failed !
@^UA%@EW/% !*QAT <= "@EW/" !
GS !*Pull file name string into buffer !
^Y:XA !*QAT <= "@EW/<filename>" !
^YK !*Delete from buffer in case we bomb !
@:^UA%/% !*QAT <= "@EW/<filename>/" !
MA !*Open the file to save current buffer in !
EC !*Write out buffer and close file !
HK !*Purge the buffer !
0; !*Abort iteration and go to terminal code !
' !*End of "Y" processing !
^YK !*Delete previous response from text buffer !
> !*End loop to save buffer !
QA !*Return success code !
~
!*Preload QPT with macro to get next char from terminal stream !
!*Q registers affected by MP: QTN, QYN, QXN, QQN !
@^UP~ !*QPT <= everything between "~" s !
0,32ET !*Set read with no wait for pending commands !
^TUT !*QTN <= next pending command (-1 if none) !
QT"L !*If no pending commands then !
32,0ET !*Reset read with no wait bit to get user input !
16&QZ"E !*If screen update is not inhibited then !
-1W !*Update the terminal screen !
' !*End of screen update test !
^TUT !*QTN <= next command from user !
' !*End of no pending commands execution !
QT-7"E !*If input from terminal is a ^G then !
0UY !*Reset counter to exit current macro !
0UX !*Reset counter to exit pending macros !
0UQ !*Reset word to cause abort to highest level !
' !*End of ^G from terminal processing !
QQ !*Return ^G abort code as numerical argument !
~ !*End of QPT macro load !
!* Preload QOT with macro to update editor status line (line 23) !
@^UO~ !* QOT <= all characters between the "~" s !
23MH !* Go ready the editor status line !
@^A%EMACS% !* First entry on editor status line !
32^T !* Send blank to terminal !
@^A%Ver% !* Second entry on editor status line !
32^T !* Send blank to terminal !
@^A%1.4% !* Third entry on editor status line !
32^T !* Send blank to terminal !
32^T !* Send blank to terminal !
QZ&32"N !* If LEARN mode is enabled then !
@^A%(Learn)% !* Show learn prompt !
| !* Else if not learn mode !
@^A%(Fundamental)% !* Show fundamental mode !
' !* End of mode entry on status line !
32^T !* Send blank to terminal !
32^T !* Send blank to terminal !
12&QZ"N !* If a primary file is open then !
32^T !* Send another blank to terminal !
@^A%File:% !* Filespec is last entry on status line !
8&QZ"N !* If primary output file stream is open then !
:GT !* Get the output file spec !
| !* Else input file must be open !
:GK !* Get input file spec !
' !* End of file spec test !
' !* End of filespec insertion !
32768W !* Forget we did anything to screen !
~ !* End of status line update macro !
!*Preload QXT with macro to fetch next command character !
!*Q registers affected by MX: QTN, QYN, QXN, QQN, QWT, !
@^UX~ !*QXT <= all characters between the "~" s !
QY"E !*If no EMACS macro commands to execute then !
MP !*Get next command from command stream !
32&QZ"N !*If learn mode is enabled then !
@QT:^UW%% !*Append the command to the macro buffer !
' !*End of macro collection test !
' !*End of no EMACS macro commands execution !
QY"L !*If EMACS macro commands to execute then !
GW !*Pull macro commands into buffer !
QYAUT !*QTN <= EMACS command extracted from string !
^YK !*Kill string in buffer !
%Y !*Increment macro command counter !
"E !*If was last EMACS macro command then !
%X !*Increment macro repeat counter !
"L !*If more repeat loops to be done then !
-:QWUY !*Restore command counter contents !
' !*End of macro command counter restore !
' !*End of last repeat loop test !
' !*End of EMACS macro command fetch !
QQ !*Return abort code as argument !
~ !*End of QXT macro load !
next reply other threads:[~2004-11-17 2:07 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-17 2:07 Ben Wing [this message]
2004-11-17 2:34 ` "teco line noise" Alfred M. Szmidt
2004-11-17 8:38 ` Gian Uberto Lauri
2004-11-17 17:12 ` Alfred M. Szmidt
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='00a601c4cc4a$30c96e10$210110ac@NEEEEEEE' \
--to=ben@666.com \
--cc=xemacs-beta@xemacs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).