branch: elpa/teco commit 3e9e86289d86007f794fbad9580c5313518e20c6 Author: Mark T. Kennedy <m...@acm.org> Commit: Mark T. Kennedy <m...@acm.org>
first cut at a github markdown README --- README.md | 36 +++++++++++++++++++++++++++++++++++- teco.el | 10 +++++++++- 2 files changed, 44 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6ba0ee9ae0..c9e1488577 100644 --- a/README.md +++ b/README.md @@ -1 +1,35 @@ -# teco +# TECO.EL + +TECO is an ancient text editor written in the days before most of you +reading this were born. It supported macros of editing commands as an +extension mechanism. The original version of EMACS was written in +TECO by loading macros that provided the EMACS functionality and then +saving the memory image of the combined TECO command interpreter and +macros as a new program ("dumping" an EMACS). + +As an editor, the TECO commands (the operators of the macro language) +were terse and powerful. From within EMACS, one could open a +'minibuffer' by typing ESC ESC and then enter a TECO program which +would be run (by typing ESC ESC again) to modify the underlying EMACS +buffer. E.g. if you wanted to add a new column containing the string +'EMPTY' between the second and third columns of a CSV file, you could +execute the TECO program + +`<.-z; 2fwl i,EMPTY$ l>` + +While this is easily done with a keyboard macro, the TECO language +offers other functionality and is often quicker to use if you're +willing to pay the cost of learning how to use it. Personally, I'm +addicted to clearing a buffer by executing the TECO program `hk`. + +Dale Worley (wor...@alum.mit.edu) implemented a TECO interpreter in +Elisp. It was available from the old EMACS LCD archive was still +kicking around the EmacsWiki. Since I still use it, I created this +repository to make it available from the modern Emacs package system. + +<https://en.wikipedia.org/wiki/TECO_(text_editor)> + +<https://emacswiki.org/emacs/TecoInterpreterInElisp>> + +<https://www.emacswiki.org/emacs/teco.el> + diff --git a/teco.el b/teco.el index 51cc9c0168..e4b126042f 100644 --- a/teco.el +++ b/teco.el @@ -2,7 +2,7 @@ ;; -*-byte-compile-dynamic-docstrings: nil;-*- ;;; Commentary -;;; Teco interpreter for Gnu Emacs, version 7. +;;; Teco interpreter for Gnu Emacs, version 9. ;; LCD Archive Entry: ;; teco|Dale R. Worley|wor...@alum.mit.edu @@ -100,6 +100,14 @@ ;; teco:command-escape, which is one of the original feature ;; of TECO. +;; Version 9 +;; Someone fixed a problem with the macro syntax used to define teco operators. +;; Someone simplified the code used to display Escape's as $'s. +;; Someone fixed the code that returns the minibuffer to strip out the prompt +;; and text properties in order to return a plain string. +;; It wasn't Dale Worley (I asked). So this now works with at least version +;; 28 now. - m...@acm.org + ;; To be able to invoke Teco directly, do: ;; (global-set-key "\C-z" 'teco:command) ;; ; or whatever key binding you want