[comp.sys.amiga] Another Text Editor

rouaix@inria.UUCP (02/09/87)

Preliminary: this product is named Med, but it is not related to Matt Dillon's
editor MED. We are sorry for this confusion, but since this editor has been
sold in France for six months, it is not possible to rename it for 
international distribution.



      DOCUMENTATION FOR THE VERSION 2.1 OF TEXT EDITOR MED
      ======================================================


Med is a text editor that I wrote especially for the Amiga. I wanted to use
the features of the Amiga to make it as user-friendly as possible.
So my program works with the mouse and the menus (and many other Intuition
features).
You can edit up to 36 texts simultaneously. In this documentation I will try
to explain some of the special features of Med.

I ask you to be indulgent with my english which is very poor.


Use of the Mouse:
=================

   Move the cursor.
   Move the lift. (scroll-bar)
   Selecting text:
      Hold down the left button and move the mouse. Release the button
      at the end of the region you want to select.
      The selected text is highlighted.
      You may also use an 'extended-select' mode
         1. Hold down the left mouse button.
         2. Press the Escape key.
         3. Release the left mouse button.
         4. Use the lift (as many times as you need).
         5. Click in the window. The visible selected text is highlighted.
         5. You can return in 2.

      The mouse is also used for all the usual Amiga interface.



The menus:
==========

   There are 28 of them.
   ONLY THE MENUS WHICH DON'T HAVE AN EVIDENT MEANING ARE
   DESCRIBED HERE.

Menu File/Quit:
   Med asks you if you are really sure that you don't want to save the file
   you have modified. It gives you the name of this file.

Menu Edition/Special/Path:
   You can give a string which will be put in front of all the filenames.
   It is very useful when you work on files in a directory which is not
   the current directory, allowing you not to type the entire path each
   time you open (or save) a file in this directory.

Menu Edition/Special/Execute:
   You can execute a CLI command just as you would from the CLI.
   Med is stopped since this command runs.

Menu Edition/Special/NewCli:
   You can create a new CLI.

Menu Edition/Special/Script:
   Use this menu to load several files with an unique command.
   A requester appears and asks you for a filename.
   This file will be used as a description file.
   Each line of this file will be understood by Med as the description of
   a file to load.
   The syntax you must use is:
            filename size comment
     filename: the file Med should load. If there is a path, it is used.
     size: the buffer size that Med should allocate . (optionnal)
     comment: for the user, may be empty.

         Between the fields you must put at least one space.
         The lines which begin with * are comments.

            example of a script file
C-DEVEL:one.window.c   20
C-DEVEL:essai.c        10000
* this a comment
C-DEVEL:toto.c         1
tob.asm                20000

         You can use this feature directly from the command line with the
         syntax :
            Med -sfile
               file must be a script file.

Menu Edition/Special/Save Table
Menu Edition/Special/Load Table

    These 2 menus deal with the conversion table that Med use when it loads
    a file. All the character it reads are changed according to this table.
    Usually a character is changed into itself.
    The default table is the identity.
    The menu Load Table can be used to change it.
    A requester appears asking you for a filename.
    In this file you must put lines of this type:
         iv fv comment
           where
            iv  :  initial value of the character in hexadecimal
            fv  :  final value of the character in hexadecimal
            comment : field reserved to the user.

    These fields must be separed by one (or more) space.
    If one value iv appears several times the last value is used.
    If any value doesn't appear Med keeps the default value .
    The lines which begin with * are comment.

    The menu 'Save Table' may be used to create a file which is the map
    of the conversion table  and  has the same format.

    This feature is designed to allow you to work on files coming from
    an another machine or containing special characters.

Example of a table file:

0 20    0 are changed into space.
D A     ^M becomes ^J
* comment
41 42   A --> B (!!!).


Edition/Special/Without Spaces:
   This defines a parameter for the way Med writes a file on the disk.
   When the name of menu is 'Without Space', the spaces Med finds at
   the end of a line are not written.
   When the name is 'With Space' they are.
   The default mode is 'Without Space'.

Window/Open
   Open a new window.
   It is possible only if there are more loaded texts than opened windows.


Window/Close
   Close the active window.
   It won't work if the active window is the only window.

Window/Info
   Give the number of windows opened by Med.


Text/....

   It shows all the files being currently edited.
   You may edit up to 36 texts simultaneously.
   If a file has been modified, its name will appear in a box when selected,
   else it will be highlighted.



The soft keys.
=============

F1
   The cursor toggles between beginning and end of line. The cursor will stay
on the last visible colon if there are characters at his right. This is a sim-
ple way to tell which line is more than 80 characters long.

F2
   Creates a new line under the current one.

F3
   It is a parenthesis and brace verificator. You point the cursor on a
   parenthesis or a brace, press F3 and the cursor goes to the matching
   element if it exists. Else, the screen flashes.

F4
F5
   Moves the text up and down by a screen unit.


F6
   Repeats commands which are among the menus. Possible commands are Find,
   Replace,Go to Line,Copy in a File.

F7
   Gives back the last part of the text which has been deleted by a cut
   or by F10.

F8
   Switch upper-case and lower-case letters.

F9
   Put the cursor on the next tabulation.

F10
   Delete the line where the cursor is.


The control keys:
================

   Some are implemented to help Ed users:

         ^a  == F2
         ^b  == F10
         ^f  == F8

Moving in the text:
=================

   You may use the cursor keys.
   Tab indents the line (shifting the text to the right).
   Shift Tab just moves the cursor to the right.

Some Basics:
=================

   When you select text with the mouse, your next action specifies the use
   of this text.
   If Med can't have the memory it needs, it shows a requester or it
   does a screen flash.

   There is no limitation on the length of the lines so you may always
   put some character in the line BUT a character is inserted exactly
   where the cursor is.

   Med never accepts non-visible characters.

   The end of line is LineFeed (standard for the Amiga).

   The tabulation characters are always changed in spaces.

   When you load or you save a file, Med doesn't do any back-up.
   This saves room on disks, while the user generally makes his own back-up
   on another disk.



The command line:
=================

   med [file [size]]
      file :file which should  be loaded by med.
      size :buffer size Med will allocate for the file.
            You may give it in bytes or in kilo-bytes.
            Default is 30K.

   med -sfile
      You use it to load several files with only one command (see the ex-
      planation above).



I give my thanks to Francois Rouaix who helped me to write this text in
english and to test the editor and to Gerald Hewes who always pushes me to
define more useful commands.

                                 Paris the 01/27/87
                                          Regis Vaillant.


PS: please email any bugs, comments and suggestions to 
	...mcvax!inria!rouaix

spencer@eris.UUCP (02/13/87)

In article <384@inria.UUCP> rouaix@inria.UUCP (Francois Rouaix) writes:
>      DOCUMENTATION FOR THE VERSION 2.1 OF TEXT EDITOR MED
>
>Use of the Mouse:
>=================
>
>   Move the cursor.
>   Move the lift. (scroll-bar)
>   Selecting text:
>      Hold down the left button and move the mouse. Release the button
>      at the end of the region you want to select.
>      The selected text is highlighted.
>      You may also use an 'extended-select' mode
>         1. Hold down the left mouse button.
>         2. Press the Escape key.
>         3. Release the left mouse button.
>         4. Use the lift (as many times as you need).
>         5. Click in the window. The visible selected text is highlighted.
>         5. You can return in 2.

OK, so maybe this is not the forum to bring up the Mac, but...

    When I first got the Amiga documentation I read RJ's comments on
the Intuition interface and loved them.  Then later I read the Inside
Mac stuff and realized that they had gone to greater length to figure
stuff out.  Now I am not saying that the Mac is a better machine, is
there a CS major out there who doesn't appreciate the Amiga design?,
but the workbench is not as hot as the Mac Desktop.  So, let's learn
from the Mac desktop.  Why do we:

1. Hold the mouse button, then 2. press Esc, then 3. lift the button, 
4. button the lift, 5. click in the window again?, 5. have two item 5's  ??

Now why can't we simply click the mouse button, setting an insert
point, or placing the cursor (since insert point is not as easy on the
Amiga), then move to the other end of the block we want to define
(anyway we can), and shift click? thus selecting everything between
point and, um.. well, let's call it mark. 

Every file would be in a seperate, resizable window.  If we want to
edit 80 columns in a window with a boarder you use MoreRows and
increase the size of your workbench screen.  Now I spoke to Mike Meyer
once about putting scroll bars on MicroGnuEmacs, and he was against
the idea, because if you put a scroll bar on the full window you
wouldn't be able to tell which little Emacs window to scroll.  Now I
can see with MG that he would want to keep it all in one window
because it is transportable from the Amiga to Unix to CP/M.  But what
about another editor.  MattED (new name for MED) would be great for
this kind of editor, but then again, I know Matt, and he wants the
menu button to do what it does now.  Take him anywhere in the file
_FAST_. Let nothing come between Matt and making his computer as fast
as possible. (BTW, Matt, MattED _is_ really great.) So, that shoots
the two best PD editors out of the race. 

But if there is some kind soul out there who wants to make _One More
Editor_, I would love to see it work well in the DeskTop environment.
Drag Select text, cut copy paste.  New and open that are always ready
to open a new window on the screen with another document in it.  I can
shuffle through the windows with ^X^O, if I want two windows into the
same document I do a ^X2 and I get two windows with scroll gadgets.
Windows have close gadgets to say you are done with a file, and the
status line and the line below it (extended command line) are in
another seperate window( ala Scribble).  This is great stuff.  If
anybody wants a full product discription I am going to write one up
now and try to con programmers I know into writing it. 

Boy listen to that rain!

PS.  Thanks for the weird answers on the 2 meg chip ram Amiga 1000.  I
think what the response was, was, yes, you do have 2 meg of chip ram,
if you follow the advice in the Amazing Computing article, but you
can't get the new Agnus chips to address the memory because the old
chips have not got enough legs. 

So I go and I decide that to add 1.5 meg inside may Amiga, with it's
own power supply (so as not to rob the power from dangling df2: and
the Allegra card) I will put it on it's own seperate board.  Well then
I get the new Agnus chip and I realize that I want it to talk to the 2
meg of chip ram I am making... so I make the new board plug into the
old chip set sockets and bring all those lines up to the new board.
Then I run lines from the new Agnus chips to the same place that the
new chip ram is going to go to get decoded (See Amazing Computing's
current issue).  Now the 2 meg _is_ considered "Chip" memory AND the
new Agnus, Paula, and Denise chips can get to all of it. 

Is this totally in left field?

    "Boy, that guy Randy sure is a dreamer, no one will ever be able 
     to do the stuff that he wants."

     Tough!  Somebody has to dream!
                        --Randy
                   (but today I go by "Randy Root Canal")

Will you listen to that rain! Gee...
Ow! my tooth!
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Randy Spencer P.O. Box 4542 Berkeley CA 94704 (415)284-4740 C#(415)283-5469
                         I N F I N I T Y          spencer%eris@berkeley.edu
Now working for          |||||||||||::::... . .      spencer@USCVAXQ.bitnet
But in no way            |||||||||||||||::::.. .. . ....ucbvax!eris!spencer
Officially representing  ||||||||||||:::::... ..         
                         s o f t w a r e 
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

rouaix@inria.UUCP (02/17/87)

Let's make things clear:
	- R. Vaillant 's Med will be available on UseNet soon. (maybe already)
It has been tested for 6 months yet.
	- there is Drag Select just like Mac editors : the advantage is that
you have automatic scrolling when you move out of the window, and you really
see what you are selecting.
	- there is Extended Select for selecting big (very big) regions, 
without wasting time in scrolling.

	- Med is multi-window. But you may have less windows than files.
Each window has a scroll bar. You may copy/paste from one window to another.
You select the window with menu or with usual window manipulation .
	- Browsing down or up the file IS FAST using F4 and F5.

Med has been designed for programmers and has some useful features like:
	-  go to a line with its number 
	- parenthesis and brace verification