,MOD
- R 44X (11 April 1983) <PSL.NMODE-DOC>NM-INTRODUCTION.ibm
PLA 97_LAS 80 0_FIR 2_INT 1 6.0_TYP 160 163 162 193_INP 12 101_MAR 2
,END
,PRO
201 OUT 160_202 OUT 163_203 OUT 162_204 OUT 193
205 INP 12 101_206 INP 12 102
,END
,DEFINE
 UNIT SPACE
 FUNCTION
,END

          201/NMODE Manual (Introduction)                                        Page 1-1


          202/1.  Introduction

          201/This document describes the NMODE text editor.  NMODE is an advanced,
          self-documenting,  customizable,  extensible,  interactive,  multiple-window,
          screen-oriented editor written in PSL (Portable Standard Lisp).  NMODE
          provides a compatible subset of the EMACS text editor, developed at M.I.T.
          It also contains a number of extensions, most notably an interface to the
          underlying Lisp system for Lisp programmers.

          NMODE was developed at the Hewlett-Packard Laboratories Computer Research
          Center by Alan Snyder.  A number of significant extensions have been
          contributed by Jeff Soreff.

          NMODE is based on an earlier editor, EMODE, written in PSL by William F.
          Galway  at  the  University  of  Utah.   Many of the basic ideas and the
          underlying structure of the NMODE editor come directly from EMODE.

          This document is only partially complete, but is being reprinted at this time
          for the benefit of new users that are not familiar with EMACS.  The bulk of
          this document has been borrowed from EMACS documentation and modified (by
          Jeff Soreff) appropriately in areas where NMODE and EMACS differ.  The
          EMACS documentation was written by Richard M. Stallman.

            We say that NMODE is a screen-oriented editor because normally the text
          being edited is visible on the screen and is updated automatically as you type
          your commands.  See Section 2 [Display], page 1.

            We call it an interactive editor because the display is  updated  very
          frequently, usually after each character or pair of characters you type.  This
          minimizes the amount of information you must keep in your head as you edit.

            We call NMODE advanced because it provides facilities that go beyond simple
          insertion and deletion: filling of text; automatic indentation of programs;
          viewing two files at once; and dealing in terms of characters, words, lines,
          sentences, and paragraphs, as well as LISP constructs.  It is much easier to
          type one command meaning "go to the end of the paragraph" than to find the
          desired spot with repetition of simpler commands.

            Self-documenting means that there are on-line functions to find out the
          function of any command and to view documentation about that command.  See
          Section 9 [Help], page 1.

            Customizable means that you can change the definitions of NMODE commands
          in little ways.  For example, you can rearrange the command set.  If you
          prefer the four basic cursor motion commands (up, down, left and right) on
          keys in a diamond pattern on the keyboard, you can have it.  See Section 22
          [Customization], page 1.

            Extensible means that you can go beyond simple customization and write
          entirely new commands, programs in the language PSL.  NMODE is an "on-line
          extensible" system, which means that it is divided into many functions that
          call each other, any of which can be redefined in the middle of an editing
          session.  Any part of NMODE can be replaced without making a separate copy
          201/Page 1-2                                        NMODE Manual (Introduction)


          of all of NMODE.

          202/1.1  Preface

            201/This manual documents the use and simple customization of the display
          editor NMODE with the hp9836 operating system.  The reader is 203/not 201/expected
          to be a programmer.  Even simple customizations do not require programming
          skill, but the user who is not interested in customizing can ignore the
          scattered customization hints.

            This is primarily a reference manual, but can also be used as a primer.
          However,  I  recommend  that  the  newcomer  first  use  the  on-line,
          learn-by-doing tutorial NTEACH.  With it, you learn NMODE by using NMODE
          on a specially designed file which describes commands, tells you when to try
          them, and then explains the results you see.   This gives a more vivid
          introduction than a printed manual.

            On first reading, you need not make any attempt to memorize chapters 2
          and 3, which describe the notational conventions of the manual and the
          general appearance of the NMODE display screen.  It is enough to be aware
          of what questions are answered in these chapters, so you can refer back
          when you later become interested in the answers.  After reading the Basic
          Editing chapter you should practice the commands there.   The next few
          chapters describe fundamental techniques and concepts that are referred to
          again and again.  It is best to understand them thoroughly, experimenting
          with them if necessary.

            To find the documentation on a particular command, look in the index if you
          know what the command is.  Both command characters and function names are
          indexed.   If you know vaguely what the command does, look in the topic
          index.