home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / progmisc / tde221.zip / READ_ME.TDE < prev    next >
Text File  |  1993-04-01  |  27KB  |  593 lines

  1.  
  2.                      TDE, the Thomson-Davis Editor
  3.                               Version 2.21
  4.                              April 1, 1993
  5.                               Frank Davis
  6.  
  7.  
  8. Author:
  9.  
  10.                Author:          Frank Davis
  11.  
  12.                Program name:    TDE, the Thomson-Davis Editor
  13.                                 version 2.21
  14.  
  15.                e-mail address:  fmd@tifton.cpes.peachnet.edu
  16.  
  17.                Home address:    102 Starr Street
  18.                                 Tifton, Georgia  31794
  19.                                 USA
  20.  
  21.                Work address:    U.S. Department of Agriculture
  22.                                 Agricultural Research Service
  23.                                 Southeast Watershed Research Laboratory
  24.                                 Georgia Coastal Plain Experiment Station
  25.                                 Tifton, Georgia  31793
  26.                                 USA
  27.  
  28.  
  29. Based on an editor by:          Douglas Thomson
  30.                                 c/- Computing
  31.                                 M.U.C.G.
  32.                                 Switchback Road
  33.                                 Churchill
  34.                                 Victoria   3842
  35.                                 AUSTRALIA
  36.                                 doug@giaeb.cc.monash.edu.au
  37.  
  38.                                 Doug's old e-mail address was doug@giaea.oz
  39.  
  40.  
  41. Contributions by:
  42.  
  43.    Tom Waters, twaters@relay.nswc.navy.mil - testing/comments/code since 1.0
  44.      (Tom can be reached by BBS (301)-596-1044)
  45.  
  46.    Dave Regan, regan@jacobs.cs.orst.edu - basic detab and entab code
  47.  
  48.    Pierre Jelenc, pcj1@columbia.edu - language support, testing/code/comments
  49.  
  50.  
  51. Contacts:
  52.  
  53.    Pierre Jelenc, pcj1@columbia.edu, will maintain and
  54.    distribute documentation and support files for translated versions of
  55.    TDE.  Some users are interested in using TDE with non-English
  56.    languages.  Check with Pierre before you translate the documentation,
  57.    as he may have the language version you need.  Incidentally, Pierre
  58.    is also developing a language independent sort program.
  59.  
  60.    For those in the Department of Defence, Tom Waters,
  61.    twaters@relay.nswc.navy.mil, will be available to answer questions
  62.    and provide support.  He has worked with TDE source code since
  63.    version 1.0, so he knows how the guts of the program works.  Usually,
  64.    the hardware and software at DoD are from the same manufacturor, so
  65.    he may have a version of TDE that takes advantage of the capabilities
  66.    of those machines.
  67.  
  68.  
  69. File descriptions:
  70.  
  71.    TDE.EXE       TDE executable for IBM PC or compatible
  72.    TDE.DOC       TDE user's manual
  73.    TDE.CFG       configuration file
  74.  
  75.    TDECFG.EXE    utility to customize color and keys in tde.exe
  76.    TDECFG.DOC    tdecfg user's manual
  77.    SAMPLE.HLP    sample file for redefining help screen
  78.  
  79.    READ_ME.TDE   this file
  80.  
  81.  
  82.       All source for TDE editor, not needed unless you want to modify TDE.
  83.  
  84.    INT24.ASM     critical error replacement - interrupt 24
  85.    SIMUL101.ASM  utility to simulate 101 scan codes on 83/84 key keyboards
  86.    BLOCK.C       line, stream, and box block functions
  87.    CONSOLE.C     video and keyboard routines
  88.    CRITER.C      critical error prompt and info
  89.    DIFF.C        diff algorithms
  90.    DIRLIST.C     directory list functions
  91.    ED.C          basic editor functions
  92.    FILE.C        readin and writing files
  93.    FINDREP.C     Boyer-Moore search routines
  94.    HWIND.C       initialization and display routines
  95.    MACRO.C       keyboard macros
  96.    MAIN.C        main function and hardware routines
  97.    PORT.C        routines for MSC and BC
  98.    SORT.C        stable quicksort
  99.    TAB.C         entab and detab routines
  100.    TDEASM.C      pointer/string/display assembly routines
  101.    UTILS.C       misc. editor functions
  102.    WINDOW.C      window routines
  103.    WORDWRAP.C    word wrap functions
  104.    COMMON.H      external global variable declarations
  105.    CRITER.H      critical error info
  106.    DEFAULT.H     default function key assignments
  107.    DEFINE.H      editor function defs
  108.    GLOBAL.H      initial global variable declarations and editor function array
  109.    HELP.H        intro and help screen
  110.    PROMPTS.H     all user prompts
  111.    TDEFUNC.H     prototypes for all functions
  112.    TDESTR.H      defs for all structures and defines
  113.    MAKETDE       make file -- MSC, BC, QuickC
  114.  
  115.  
  116.   All source for configuration utility, not needed unless you want to modify.
  117.  
  118.    TDECFG.C      main configuration routines
  119.    CFGCOLOR.C    color utility routines
  120.    CFGFILE.C     parse routines for configuration file
  121.    CFGHELP.C     redefine the help screen
  122.    CFGKEYS.C     key redefinition routines
  123.    CFGMACRO.C    save macro file in tde.exe
  124.    CFGMODES.C    default editor routines
  125.    TDECFG.H      global structures and prototypes for tdecfg
  126.    CFGCOLOR.H    defines for color utility
  127.    CFGFILE.H     structures for parse routines
  128.    CFGHELP.H     defines for rewriting help screen
  129.    CFGKEYS.H     structures for all available keys and functions
  130.    CFGMACRO.H    defines for macro screen
  131.    CFGMODES.H    structures for default editor modes
  132.    MAKECFG       config make file
  133.  
  134.  
  135. Disclaimer:
  136.  
  137.   This program is provided "as is" without warranty of any kind, either
  138. expressed or implied, including, but not limited to the fitness for a
  139. particular purpose.  You assume all risk for the use, inability to use,
  140. misuse, or abuse of this program.  In any event, you (and not Frank Davis)
  141. assume the entire cost of loss of use; loss of information; loss of
  142. savings; loss of business profits, business interruption; mental anguish,
  143. mental distress; all direct, consequential, or incidental damages or
  144. losses; all necessary servicing, repair, or correction; and all physical
  145. and mental health problems, acute or chronic, caused by direct or indirect
  146. use of this program by you or any of your relatives, friends, acquain-
  147. tances, co-workers, or otherwise fellow man either known or unknown by
  148. you.
  149.  
  150.   Your use of this software constitutes agreement with and notice of
  151. acknowledgement of the above heretofore stated warranty and limitations.
  152. In addition with your agreement, you henceforth and forever relinquish,
  153. waive, and forfeit all claims, rights, rulings, or judgements against the
  154. forementioned author of said software; however, you retain the right to
  155. keep your first born.  If you decide that it is in your best interest to
  156. waive your right to your first born child, the author is in no way
  157. obligated to accept or support the offspring regardless of age, marital
  158. or employment status of said offspring.
  159.  
  160.   This program is not a product of the U.S. Department of Agriculture or
  161. any other branch of the U.S. Government.  I work on TDE at night,
  162. weekends, and holidays on my own personal time, Frank Davis.
  163.  
  164.  
  165. Claimer:
  166.  
  167.   I use this program all-day-every-day on all of my FORTRAN, C, and
  168. assembly source code at home and at work, Frank Davis.
  169.  
  170.  
  171. Licensing:
  172.  
  173.   This program is released into the public domain.  You may use and
  174. distribute it freely.  There is no copyright, no fee for use, no
  175. licensing, or no registration.  This editor is not user supported,
  176. corporate sponsored, or government subsidized - it is sustained and
  177. maintained solely by Frank Davis.  This editor was written for use not
  178. only as a simple text editor but also as a learning tool.  Examine the
  179. code and discover the basics of editor construction.  Experiment a
  180. little and add your favorite functions or modify the existing functions
  181. to suit your needs/requirements/tastes/etc.  If anyone includes TDE with
  182. their own software, please use common courtesy and give Doug Thomson and
  183. Frank Davis credit for their work (that's the only payment I ask).  If
  184. you release any changes or additions to the TDE editor, please observe
  185. the original spirit of Doug Thomson's DTE 5.1 and release the changes as
  186. public domain software.
  187.  
  188.  
  189.  
  190. Legal Legal Stuff:
  191.  
  192.   Six years ago, as an employee of the Federal government, as part of
  193. my official duties, I wrote several editors that use a double linked
  194. list.  The new scheme in TDE 2.2 uses a double linked list.  Some of the
  195. concepts and/or code and/or techniques that I used to develop those
  196. editors as part of my official duties are incorporated into TDE 2.2.
  197. Being that my current official duties as an employee of the Federal
  198. government requires that I maintain and support those editors, as a
  199. matter of law and ethics, version 2.2 of TDE is released into the public
  200. domain.  It's not so much that I want to release TDE into the public
  201. domain, but more so, it's the law that requires that I release TDE into
  202. the public domain.  Not only is TDE 2.2 based on DTE 5.1, the public
  203. domain editor by Doug Thomson, but it is also based on works of the
  204. United States government, written and currently maintained by my
  205. ownself, Frank.  Copyrighting off-the-job what I do on-the-job would not
  206. be ethical.
  207.  
  208.    See:
  209.  
  210.      Title 17 United States Code (Copyright Act of 1976):
  211.  
  212.      Section 101, page 1292-1293:
  213.  
  214.        "Definitions"
  215.  
  216.           'A "derivative work" is a work based upon one or more preexisting
  217.            works, such as a translation, musical arrangement, dramatization,
  218.            fictionalization, motion picture version, sound recording, art
  219.            reproduction, abridgement, condesation, or any other form in
  220.            which a work may be recast, transformed, or adapted.  A work
  221.            consisting of editorial revisions, annotations, elaborations,
  222.            or other modifications which, as a whole, represent an original
  223.            work of authorship, is a "derivative work".'
  224.  
  225.           'A "work of the United States Government" is a work prepared
  226.            by an officer or employee of the United States Government
  227.            as part of that person's official duties.'
  228.  
  229.  
  230.      Section 105, page 1310:
  231.  
  232.         "Subject matter of copyright:  United States Government works"
  233.  
  234.           'Copyright protection under this title is not available for
  235.            any work of the United States Government, but the United States
  236.            Government is not precluded from receiving and holding copyrights
  237.            transferred to it by assignment, bequest, or otherwise.'
  238.  
  239.    See also:
  240.  
  241.      Executive Order 12674 of April 12, 1989 (as modified by E.O. 12731)
  242.  
  243.        Part I--Principles of Ethical Conduct:
  244.  
  245.           Section 101. Principles of Ethical Conduct, paragraph (n).
  246.  
  247.             'Employees shall endeavor to avoid any actions creating
  248.              the appearance that they are violating the law or the
  249.              ethical standards promulgated pursuant to this order.'
  250.  
  251.    See also:
  252.  
  253.       5 Code of Federal Regulations, 57 Federal Register 35006-35067:
  254.  
  255.         Section 2635.101, "Basic obligation of public service"
  256.  
  257.  
  258.           2635.101 (b)(10):
  259.  
  260.             'Employees shall not engage in outside employment or
  261.              activities, including seeking or negotiating for
  262.              employment, that conflict with official Government
  263.              duties and responsibilities.'
  264.  
  265.  
  266.           2635.101 (b)(14):
  267.  
  268.             'Employees shall endeavor to avoid any actions creating
  269.              the appearance that they are violating the law or the
  270.              ethical standards set forth in this part.  Whether
  271.              particular circumstances create an appearance that the
  272.              law or these standards have been violated shall be
  273.              determined from the perspective of a reasonable person
  274.              with knowledge of the relevant facts.'
  275.  
  276.  
  277. Distribution Sites:
  278.  
  279.   You will always be able to find the latest version of TDE in the
  280. SIMTEL20 archives in the PD1:<MSDOS.EDITOR> directory, in Library 16 of
  281. Utilforum/Tips forum in PC MagNet on CompuServe (search for TDE as the
  282. keyword), or on the Keystone Connection BBS, Keystone Heights, Florida,
  283. USA, in directory 15, DOS help/utils.  I do not upload TDE to any other
  284. file archive, Frank.
  285.  
  286.  
  287. =============================  cut here  =================================
  288.  
  289.                     Standard SIMTEL20 download Info
  290.  
  291.                          ----------------------
  292.  
  293. SIMTEL20 allows only nine ANONYMOUS FTP logins during weekday prime
  294. time, 5am to 3pm Mountain Time (GMT-7), but 27 otherwise.
  295.  
  296. SIMTEL20 files are also available by anonymous ftp from mirror sites
  297. OAK.Oakland.Edu (141.210.10.117), wuarchive.wustl.edu (128.252.135.4),
  298. archive.orst.edu (128.193.2.13), ftp.uu.net (137.39.1.9), nic.funet.fi
  299. (128.214.6.100), src.doc.ic.ac.uk (146.169.3.7), nic.switch.ch
  300. (130.59.1.40), archie.au (139.130.4.6), NCTUCCCA.edu.tw (140.111.3.21),
  301. by e-mail through the BITNET/EARN file servers, or by uucp from UUNET's
  302. 1-900-GOT-SRCS.  See UUNET file uunet!~/info/archive-help for details.
  303.  
  304. OAK.Oakland.Edu is the primary mirror site for WSMR-SIMTEL20.Army.Mil.
  305. All other mirror sites (except wuarchive) and all LISTSERV and TRICKLE
  306. servers get their SIMTEL20 files from OAK instead of SIMTEL20 because
  307. it is much faster and allows more simultaneous ftp connections.  OAK is
  308. always "in sync" with SIMTEL20 because I maintain it, in addition to my
  309. duties at SIMTEL20.  I run OAK's mirror program whenever new files are
  310. added at SIMTEL20.
  311.  
  312. If you cannot access them via FTP or e-mail, most SIMTEL20 MSDOS
  313. files, including the PC-Blue collection, are also available for
  314. downloading from Detroit Download Central (313) 885-3956.  DDC
  315. has multiple lines which support 300/1200/2400/9600/14400 bps
  316. (103/212/V22bis/HST/V32bis/V42bis/MNP).  This is a subscription system
  317. with an average hourly cost of 17 cents.  It is also accessable on
  318. Telenet via PC Pursuit and on Tymnet via StarLink outdial.  New files
  319. uploaded to SIMTEL20 are usually available on DDC within 24 hours.
  320.  
  321. CD-ROM copies of the SIMTEL20 MS-DOS collection are available from
  322. Coyote Data, Ltd., 1142 N. Main, Rochester, MI 48307, telephone
  323. (800) 451-7093 or (313) 656-8265, or FAX (313) 651-4071.  E-mail:
  324. 71756.444@CompuServe.COM  or  CIS 71756,444.  The consumer version of
  325. their Oasis Library CD-ROM re-catalogs the MS-DOS files of SIMTEL20,
  326. adds category and key-word search and retrieval utilities, and provides
  327. on-line file descriptions.  Quarterly update subscriptions are available.
  328.  
  329. CD-ROM copies of the SIMTEL20 MS-DOS, Macintosh and Unix-C collections
  330. are available from Walnut Creek CDROM, 1547 Palos Verdes, Suite 260,
  331. Walnut Creek, CA 94596-2228, telephone (800) 786-9907 or (510) 947-5996,
  332. or FAX (510) 947-1644.  E-mail: rab@cdrom.com.  Quarterly update sub-
  333. scriptions are available.
  334.  
  335. Keith Petersen
  336.  
  337.                          ----------------------
  338.  
  339.                         Additional SIMTEL20 info
  340.  
  341.                          ----------------------
  342.  
  343.  
  344. PD1:<MSDOS.FILEDOCS>CHANGES.DOC            Last revised: March 29, 1993
  345.  
  346.             WSMR-SIMTEL20.Army.Mil switches to ZIP 2.0
  347.  
  348. Effective April 2, 1993 many of the new ZIP files uploaded to SIMTEL20
  349. will be in the public domain ZIP version 2.0 format.  After that date
  350. the index files SIMIBM.ZIP and SIMLIST.ZIP will be created in the new
  351. format.
  352.  
  353. SIMTEL20 has standardized on the Info-ZIP group's ZIP and UNZIP because
  354. they are freely distributable and they have no restrictions on exporting.
  355. The latest version of Info-ZIP's ZIP and UNZIP can always be found in
  356. directory PD1:<MSDOS.ZIP> and will always have the name "Info-ZIP" in
  357. the description to make them easy to locate.
  358.  
  359. PKWare's PKZIP 2.x will not be offered due to export restrictions.
  360. Older versions of PKZIP will be deleted to avoid confusion due to
  361. the fact that they cannot handle the ZIP version 2.0 format files.
  362.  
  363. Keith
  364. --
  365. Keith Petersen
  366. Maintainer of the MS-DOS archive at WSMR-SIMTEL20.Army.Mil [192.88.110.20]
  367. Internet: w8sdz@WSMR-SIMTEL20.Army.Mil   or     w8sdz@Vela.ACS.Oakland.Edu
  368. Uucp: uunet!umich!vela!w8sdz                         BITNET: w8sdz@OAKLAND
  369.  
  370. =================================  end  ==================================
  371.  
  372.  
  373.                          Keystone Connection BBS
  374.  
  375.   The Keystone Connection BBS (904)473-9790 is a free public board.  This
  376. is a multiline BBS with no restrictions.  The latest version of TDE will
  377. always be available here.  USRobotics Dual Standard modems allow
  378. connections up through 16800 bps, so it will only take a few minutes to
  379. download the file.  TDE will be in directory 15, the DOS help/utils
  380. directory.  If you have any questions concerning the BBS, leave a message
  381. for the friendly sysop, Bruce McHollan.  If you have any questions
  382. concerning TDE, leave a message for me, Frank.  I usually drop by Keystone C.
  383. once or twice a week.
  384.  
  385.  
  386. Background:
  387.  
  388.   At work, I have written several editors that may only be used for a
  389. certain type of file (almost an expert system).  I have always wanted to
  390. write a general purpose public domain text editor.  It seems none of the
  391. existing public domain or shareware editors have all of the features I
  392. like.  I'm stupid and proud of it.  Since I'm so stupid, the new editor
  393. should be really easy to use.  My wish list of features are:
  394.  
  395.    Blocks:
  396.       Line, stream, and box blocks.
  397.       Move, delete, copy, kopy, overlay, fill, print, number, and sort.
  398.       Block actions within or between files.
  399.  
  400.    Files:
  401.       Multiple files limited only by memory.
  402.       Text and binary files.
  403.  
  404.    Windows:
  405.       Multiple windows limited only by memory.
  406.       Split screen horizontally and vertically
  407.       Changes to text in one window are updated in all windows of same file.
  408.       Interactively resize windows.
  409.       Two windows of same size so two files can be easily compared.
  410.  
  411.    Search/Replace:
  412.       Ignore or Match case of pattern.
  413.       Prompt or no prompt replace.
  414.       Boyer-Moore pattern matching algorithm.
  415.  
  416.    User Configuration:
  417.       Ability to assign any editor function to any recognized function key.
  418.       Redefine color attributes in all editor fields.
  419.       Change default editor settings.
  420.       Macro recording and playback.
  421.  
  422.    Other:
  423.       Split/join line.
  424.       Lines as long a 1040 characters.
  425.       Paren balance.
  426.       Mode/information line.
  427.       Cursor sync.
  428.       Directory list
  429.       Ruler with a cursor pointer
  430.  
  431.  
  432.  
  433. Douglas Thomson's editor, DTE 5.1:
  434.  
  435.   Well, I found a public domain editor that had most of the features on my
  436. wish list.  The original code was extremely well documented.  That editor
  437. was DTE 5.1, written by Douglas Thomson, Gippsland, Victoria, Australia.
  438. So instead of writing an editor from scratch, I based my editor around
  439. Doug's well designed and documented program.   My editor was written using
  440. DTE 5.1 as an outline.  Doug, thanks a lot for releasing the source code
  441. for your editor.
  442.  
  443.   DTE 5.1 is pretty much machine independent.  It runs on PC's, HP 3000's,
  444. and generic Unix system V release 2 systems.  It was designed to work well
  445. over slow communication lines, eg 1200 baud.  Screen updates are kept to a
  446. minimum which saves time and money when using dial-up phone lines.  DTE
  447. 5.1 uses the WordStar/Turbo x style key definitions.  If you need an
  448. editor for use over slow communication terminals, check out Doug's editor.
  449.  
  450.  
  451. TDE, the Thomson-Davis Editor:
  452.  
  453.   My dream editor was to be written specifically for PC's.  At work, we
  454. have an IBM mainframe.  The only reason I use the mainframe is for e-mail
  455. and for backup of my PC files (I have exaggerated a little).  I use my PC
  456. editors to compose my mail then upload to the mainframe to send it.  So, I
  457. really don't need or desire a machine independent editor.
  458.  
  459.   Being that the big text buffer was replaced by a double linked list,
  460. most of the pointer arithmetic stuff went away.  Now that TDE can handle
  461. binary files, the '\0' and ^Z went away, too.
  462.  
  463.   I modified almost all of the algorithms in the original DTE 5.1 editor
  464. and added several more.  The block and find/replace algorithms are
  465. completely rewritten.  Block operations now use line, box, and stream
  466. blocks.  Available block operations include move, delete, copy, kopy,
  467. fill, overlay, block expand tabs, block compress tabs, block compress
  468. indent tab, block print, block write to file, block upper case, block
  469. lower case, block strip hi bit, trim block, number box block, swap block,
  470. and sort box block (a few of these functions were available for stream
  471. blocks in the original DTE 5.1).  Block operations are allowed within or
  472. between files.  The "brute force" text find algorithm was replaced by the
  473. Boyer-Moore string matching algorithm, a very fast text search algorithm.
  474. The text display algorithms were rewritten.  Window operations were
  475. rewritten, enhanced, and streamlined.  Windows may now be split vertically
  476. as well as horizontally.  Support for lines as long as 1040 characters was
  477. added.  Horizontal scrolling/paging/panning are allowed.  A mode/
  478. information lite bar was added to display the various modes at the bottom
  479. of the screen.  Displayed in the lite bar are: number of open files and
  480. total number of windows, available memory for editing the current file or
  481. additional files, and the editor mode flags.  Displayed with the file name
  482. are:  file attributes, the total number of lines in the file (size), and
  483. the current line number and column number of the cursor.  The join line,
  484. split line, and dup line functions were added.  Any ASCII or Extended
  485. ASCII character can be entered into the text file by using the ALT-xxx
  486. method.  Several often used string routines were rewritten in assembly
  487. and optimized for 16 bit processors, which makes cursor movement very
  488. fast through any size file.  One function that I sorely missed, a simple
  489. undelete function, was added.  A few simple word processing functions
  490. were also added: word wrap, paragraph format, and left, right, and
  491. center justify functions.  A dynamic left margin was added for writers.
  492. Smart tabs were added for use with tables and formatted data files.  To
  493. make TDE a more "standard" editor, logical physical tabs were added.
  494. With TabInflate, the user no longer has to physically expand tabs, as
  495. TDE will inflate tabs on the screen.  Also added was a cursor sync
  496. function.  After using the sync function for a day, it became apparent
  497. that a hilited cursor line was needed to keep track of cursor positions
  498. in all windows.  A directory function was added so users may search
  499. directories for files to load.  The file loading feature was expanded to
  500. make TDE search a file list for a pattern.  Files are loaded only if the
  501. pattern is present.  Another useful feature, a key stroke record and
  502. playback (simple macros), was added to make simple, repititive, editing
  503. tasks easier; recursive macros are allowed.  A critical error handler
  504. was added to give the user more info on hardware faults.  To help users
  505. construct formatted data or formatted source code (FORTRAN) files, a
  506. ruler line with a column pointer was added.  Now, TDE will diff any two
  507. windows.  A configuration utility was written to allow the user to
  508. customize all colors and the 233 recognized function keys with no
  509. restrictions.  Users may now customize the sort sequence for
  510. Ignore/Match case, which allows for correct sorting of alphabets with
  511. characters in the Extended ASCII character set.  All keys, modes, and
  512. colors may be assigned from a configuration file.  For users who work
  513. with alphabets that contain special accent characters, any ASCII or
  514. Extended ASCII character may be assigned to unused function keys by
  515. permanently storing a macro definition file in tde.exe.  And last, an
  516. instant help screen with key definitions was added.
  517.  
  518.  
  519. Programming Notes:
  520.  
  521.   The text buffer scheme was replaced by a double linked list.  During
  522. testing, I also implemented an array of text pointers.  Just thought
  523. a double linked list was easier.  Incidentally, in previous versions
  524. of the READ_ME.TDE file, I wrote that most commercial editors use a
  525. relocatable array of text pointers.  That's probably wrong  -- most
  526. commercial editors use a double linked list.  Even the editors that
  527. I wrote at work over the past six years use a double linked list.
  528. Oh well, just reinforcing how stupid I am.  I have trouble remembering
  529. what I did five minutes ago.
  530.  
  531.   The 101 key keyboard simulation utility requires an assembler to produce
  532. object code.  If you don't have access to an assembler, you may comment
  533. out the calls to function simulate_enh_kbd( ) in main.c.  TDE will still
  534. take advantage of the 101 enhanced keyboard, but will not be able to use
  535. the simulated 101 keys on older 83/84 keyboard systems.
  536.  
  537.   Several functions in TDE return an integer value that indicates whether
  538. or not an ERROR occured.  The variable name most often used to return the
  539. result is "rc".  For non-IBM mainframers, rc == return code.
  540.  
  541.  
  542. Further Reference/Reading:
  543.  
  544.   "The Literature" is filled with all areas of text editing:  human
  545. factors, construction schemes, function definitions, pattern matching,
  546. documentation guidelines, and a proposed ANSI/ISO standard for editors.
  547. Some journals you might browse thru are Communications of the ACM,
  548. Journal of the ACM, Computing Surveys, Software-Practice and Experience,
  549. and SIAM Journal on Computing.
  550.  
  551.   One particular publication you might browse is _ACM Sigplan Notices_
  552. 16 (No. 6), June 1981, Proceedings of the ACM SIGPLAN SIGOA Symposium on
  553. Text Manipulation, Portland, Oregon, June 8-10, 1981 (ACM Order No.
  554. 548810).  Several papers on text editing/manipulation were presented.
  555. One paper you might read is by Richard M. Stallman, "EMACS The
  556. Extensible, Customizable Self-Documenting Display Editor", pp 147-156.
  557. EMACS and EMACS subsets have been ported numerous times to most major
  558. operating systems.
  559.  
  560.   A text that encourages good programming practices while including
  561. "real world" examples is by Brian W. Kernighan and P. J. Plauger,
  562. _Software Tools_, Addison-Wesley Publishing Company, Reading, Mass.,
  563. 1976, ISBN 0-201-03669-X.  Incidentally, the authors present all the
  564. tools needed to construct a text editor.  You may recognize Brian
  565. Kernighan as a coauthor of _The C Programming Language_, 1978 and 1988,
  566. Prentice-Hall, Englewood Cliffs, New Jersey, ISBN 0-13-110362-8.  And,
  567. you may recognize P. J. Plauger as the secretary of X3J11, the ANSI
  568. technical subcommittee on C language standardization.
  569.  
  570.  
  571.  
  572. Bug reports:
  573.  
  574.   There are no bugs in TDE, only features that may inconvenience you. ;*)
  575. Please send inconvenience reports via e-mail, if at all possible, to
  576. fmd@tifton.bitnet.  For y'all over there on CompuServe, my e-mail address
  577. is ">Internet:fmd@tifton.bitnet" (don't type the quotes, just everything
  578. between them).  I'll try to respond as quickly as possible to reports
  579. received via e-mail.
  580.  
  581.  
  582. About the author of TDE, Frank Davis:
  583.  
  584.   Frank "yank" Davis, who has an impressive collection of inflatable bed
  585. bunnies, graduated near the bottom of his class in 1983 from Georgia Tech
  586. with a BS in Information and Computer Science.  He can be found drinking
  587. massive quantities of beer in his underwear (boxer shorts) on his couch
  588. while watching college football and Atlanta Braves baseball on his 19 inch
  589. color TV.  Hobbies include:  sex, drugs, and rock 'n' roll.
  590.  
  591.   This program is another quality product from Yank Software, "Software
  592. you just can't beat."
  593.