


Installation(1)                   microemacs                    Installation(1)




INSTALLATION 
     This page describes introductory  notes for the  installation and setup of
     MicroEmacs 2009. 

  Quick Install 
     The quickest  way to  install MicroEmacs  for testing  without reading the
     rest of this document is to:- 

       *  Create a new directory i.e. jasspa. 
       *  Unpack the macros archive into this directory. 
       *  Unpack the executable into this directory. 
       *  Run me from this directory. 

     On starting,  you will  be prompted  for a  default directory,  accept the
     defaults. Use the mouse and configure the user from the menu bar:- 

       Tools -> User Setup 

     This allows the user  and screen settings to  be altered. On becoming more
     accustomed to the editor then a fuller installation may be performed. 

     Getting Help 
          See Contact Information for full  contact information. A mail archive
          exists at:- 

            http://groups.yahoo.com/group/jasspa/ 

          If you wish to  participate in the list  then you must first register
          by sending an empty mail message body to:- 

            jasspa-subscribe@yahoogroups.com 

          You  will  then  be  able  to  mail  any  questions  into  the group.
          Registration is  required  in  order to  prevent  spam  mailings from
          entering into the lists. 

  Distribution 
     MicroEmacs is distributed in the following files:- 

     Complete Installations 
          The Microsoft  95/98/NT/2K/XP,  Solaris,  HP-UX, Linux  and  the more
          popular platforms may be installed using a package and do not require
          the components specified in  later sections as  these are all bundled
          together (these packages do not include spelling). 

          jasspa-me-YYYYMMDD-1.i386.rpm - Linux RedHat 9.x package. 
          jasspa-me-YYYYMMDD-1.src.rpm - Linux RedHat 9.x source package. 
          jasspa-mepkg-hpux-pa-10.20-YYYYMMDD.depot.gz - HP-UX 10 package. 
          jasspa-mepkg-hpux-pa-11.00-YYYYMMDD.depot.gz - HP-UX 11 package. 
          jasspa-mepkg-ms-win32-2004030.zip  - 95/98/NT/2K/XP Install Shield 
          jasspa-mepkg-sun-i386-58-YYYYMMDD.zip - Sun 2.8(i386) package. 
          jasspa-mepkg-sun-i386-59-YYYYMMDD.zip - Sun 2.9(i386) package. 
          jasspa-mepkg-sun-sparc-56-YYYYMMDD.zip - Sun 2.6(Sparc) package. 
          jasspa-mepkg-sun-sparc-58-YYYYMMDD.zip - Sun 2.8(Sparc) package. 
          jasspa-mepkg-sun-sparc-59-YYYYMMDD.zip - Sun 2.9(Sparc) package. 

     Executable Source Code 
          The  source  code  release  for  MicroEmacs  2009  contains makefiles
          (*.mak)  for  all  supported  platforms.  Microsoft  '95/'98/NT/2K/XP
          makefiles  contain   options   at  the   top   of  the   makefile  to
          enable/disable console and URL support. 

          jasspa-mesrc-YYYYMMDD.zip - Source code for all platforms 
          jasspa-mesrc-YYYYMMDD.tar.gz - Source code 

     Executable Images 
          jasspa-me-cygwin-YYYYMMDD.exe.gz - Cygwin Executable (X-Windows) 
          jasspa-me-hpux-pa-10.20-YYYYMMDD.gz - Hewlett Packard HP-UX 10 Executable
          jasspa-me-hpux-pa-11.00-YYYYMMDD.gz - Hewlett Packard HP-UX 11 Executable
          jasspa-me-ibm-aix-4-YYYYMMDD.gz - IBM's AIX 4.3 Executable 
          jasspa-me-linux-i386-2.4-YYYYMMDD.gz - Linux 2.2.x/2.4.x Executable 
          jasspa-me-linux-i386-2.6-YYYYMMDD.gz - Linux 2.6.x Executable 
          jasspa-me-ms-win32-YYYYMMDD.zip - Windows 32' (95/98/NT/2K/XP) Executable
          jasspa-me-ms-win32s-YYYYMMDD.zip - Windows win32s (Win3.1/3.11) Executable
          jasspa-me-msdos-djgpp1-YYYYMMDD.zip - DOS Executable (DJGPP v1.x) 
          jasspa-me-msdos-djgpp2-YYYYMMDD.zip - DOS Executable (DJGPP v2.x) 
          jasspa-me-openbsd-i386-3.4-YYYYMMDD.gz - Open BSD 3.4 Executable 
          jasspa-me-sgi-irix-6-YYYYMMDD.gz - Silicon Graphics Irix 6 Executable
          jasspa-me-sun-i386-58-YYYYMMDD.gz - Sun Solaris 2.8 Intel Platform Executable
          jasspa-me-sun-i386-59-YYYYMMDD.gz - Sun Solaris 2.9 Intel Platform Executable
          jasspa-me-sun-sparc-56-YYYYMMDD.gz - Sun OS 5.5 Executable 
          jasspa-me-sun-sparc-58-YYYYMMDD.gz - Sun OS 5.8 Executable 
          jasspa-me-sun-sparc-59-YYYYMMDD.gz - Sun OS 5.9 Executable 
          jasspa-mec-apple-darwin-6.6-YYYYMMDD.gz - Apple console Executable 
          jasspa-mec-cygwin-YYYYMMDD.exe.gz - Cygwin Executable (Console) 

     Help File Images (all platforms) 
          jasspa-mewinhlp-YYYYMMDD.zip - Windows Help file 
          jasspa-mehtm-YYYYMMDD.zip  - HTML Help files for 8.3 file systems (.htm)
          jasspa-mehtml-YYYYMMDD.tar.gz - HTML Help files (.html) 

     Macro File Images (all platforms) 
          jasspa-memacros-YYYYMMDD.tar.gz - Macro files 
          jasspa-memacros-YYYYMMDD.zip - Macro files 

          jasspa-metree-YYYYMMDD.tar.gz - Complete install tree + help 
          jasspa-metree-YYYYMMDD.zip - Complete install tree + help 

     Spelling Dictionaries (all platforms) 
          One of the following base  dictionaries is required for spelling. The
          extended dictionaries require the base dictionary and are recommended
          for  a  more   comprehensive  spelling  list.   Other  languages  are
          supported. 

          ls_dede.zip - German rules and base + extended dictionary. 
          ls_engb.zip - British rules and base + extended dictionary. 
          ls_enus.zip - American rules and base + extended dictionary. 
          ls_eses.zip - Spanish rules and dictionary. 
          ls_frfr.zip - French rules and dictionary. 
          ls_itit.zip - Italian rules and dictionary 
          ls_plpl.zip - Polish rules and dictionary. 
          ls_ptpt.zip - Portuguese rules and dictionary. 
          ls_ruye.zip - Russian YE rules and dictionary. 
          ls_ruyo.zip - Russian YO rules and dictionary. 

          ls_dede.tar.gz - German rules and base + extended dictionary. 
          ls_engb.tar.gz - British rules and base + extended dictionary. 
          ls_enus.tar.gz - American rules and base + extended dictionary. 
          ls_eses.tar.gz - Spanish rules and dictionary. 
          ls_frfr.tar.gz - French rules and dictionary. 
          ls_itit.tar.gz - Italian rules and dictionary 
          ls_plpl.tar.gz - Polish rules and dictionary. 
          ls_ptpt.tar.gz - Portuguese rules and dictionary. 
          ls_ruye.tar.gz - Russian YE rules and dictionary. 
          ls_ruyo.tar.gz - Russian YO rules and dictionary. 

          NOTE: The binary versions of the executables held on the site include
          the platform name as part  of the executable name  i.e. me for DOS is
          called medos.exe. On installing the binaries onto the target machine,
          you should  rename  the  executable  to  me  or  me.exe,  whatever is
          appropriate. The ONLY exception to this rule is the Microsoft Windows
          executable where  mewin32.exe  should  be  renamed  to  me32.exe. Our
          reason for this naming is to  allow the executables to be unpacked in
          the same directory and not be confused with each other. 

  Installation Directories 
     The suggested installation structure for all platforms is defined as:- 

                 jasspa 
                 / | \ 
                /  |  \ 
               /   |   \ 
        spelling macros company 

     This directory structure is suggested to facilitate upgrades in the future
     and  to  keep  user  data  separate  from  the  system  macros. MicroEmacs
     understands this directory structure. 

     The directory structures are defined as: 

     macros 
          The standard macro distribution, as supplied by JASSPA. 

     spelling 
          Spelling dictionaries. 

     company 
          Company wide local definitions for the local site. This directory may
          be omitted if  not applicable.  Header templates  (.etf are typically
          copied from the macro directory to the company directory and modified
          for the local site. 

     The search order is defined as root, company, macros, spelling. 

  UNIX Installation (System Wide) 
     A  system  wide  installation  on  UNIX  for  multiple  users  adheres  to
     conventional package installation methods. 

     Distribution Components Required: 
     jasspa-me-<unix>-YYYYMMDD.gz 
     jasspa-metree-YYYYMMDD.tar.gz 
     <spelling>.gz 
     jasspa-mehtml-YYYYMMDD.tar.gz (optional) 

     Installation: 
     It is recommended  that the  macro files are  placed in  a standard shared
     system directory. The standard  directory locations searched by MicroEmacs
     are defined on a per-platform basis,  only one of the directory locates is
     selected, as follows: 

                                   HP-UX     SunOS      AIX      Cygwin 
                              IRIX     UnixWare   ***BSD    Linux      NeXT 
       /opt/jasspa:             y    y    y    y    y    y    n    n    n 
       /usr/share/jasspa:       y    y    y    y    y    y    y    n    n 
       /usr/local/jasspa:       y    y    y    y    y    y    y    y    y 
       /usr/local/share/jasspa: n    n    n    n    y    n    n    n    n 

       *  Create the directory /usr/local/jasspa. 
       *  Unpack  and  install   the  jasspa-metree-YYYYMMDD.tar.gz  into  this
          directory. 
       *  If spelling dictionaries are required then place them in the spelling
          sub-directory created  when metree  was unpacked.  Unpack and install
          the spelling into this directory. 
       *  If the  standard icons  are  required for  Gnome,  KDE or  some other
          window manager then  create the sub-directory /usr/local/jasspa/icons
          and unpack and install the icons into the new directory. 
       *  Unpack (or build) the executable and place in "/usr/local/bin" 

     The executable may now be run by all  users. If the macros are placed in a
     non-standard   directory   location    then   the   environment   variable
     MEINSTALLPATH(5) to define the root jasspa tree. 

     For csh(1) users execute a "rehash" command and then me(1) can be executed
     from the command line. 

     By default  a X-Windows  terminal is  displayed, ensure  that $DISPLAY and
     $TERM are  correctly  configured.  To execute  a  terminal  emulation then
     execute me  with  the -n  option  i.e. "me   -n".  Note that  this  is not
     required if you are using a vt100 emulation. 

     When MicroEmacs is executed  the local directory  ~/.jasspa is created for
     the user settings. The  user home directory may  be changed by setting the
     environment variable $MEPATH(5). 

  UNIX Installation (Single User) 
     Where the user is  not permitted to install  3rd party applications in the
     system directories then MicroEmacs may be installed locally as follows:- 

       *  Create the directory ~/.jasspa. 
       *  Unpack  and  install   the  jasspa-metree-YYYYMMDD.tar.gz  into  this
          directory. 
       *  If spelling dictionaries are required then place them in the spelling
          sub-directory created  when metree  was unpacked.  Unpack and install
          the spelling into this directory. 
       *  If the  standard icons  are  required for  Gnome,  KDE or  some other
          window manager  then  create  the  sub-directory  ~/.jasspa/icons and
          unpack and install the icons into the new directory. 
       *  The user files will be placed  in the ~/.jasspa directory by default.
          To   keep   the    user   macros   separate    then   the   directory
          ~/.jasspa/$LOGNAME may be  created and  will identified  as the users
          home directory. 
       *  Unpack (or build) the executable and place in "~/bin" 

     MicroEmacs may be executed  after it has been  re-hashed (depending on the
     shell). 

  DOS Installation 
     MS-DOS has no concept  of a standard  installation directory. The location
     of the  MicroEmacs  macros  is  generally  determined  from  the directory
     location of the executable. 

     Executable: 
     Compiled with DJGPP V1.0 

     Distribution components required: 
          jasspa-me-msdos-djgpp1-YYYYMMDD.zip 
          jasspa-metree-YYYYMMDD.zip 
          <spelling>.zip 

          mewinhlp.zip if you are using windows 3.1/3.11 

     Recommended installed components: 
          grep - Version of grep (djgpp recommended) 
          make - Version of make (djgpp recommended) 
          diff - Version of diff (djgpp recommended) 

     Installation: 
     This installation relies on the executable position. 

       *  Create the directory c:\jasspa (or other location) 
       *  Unpack  and   install   the   jasspa-metree-YYYYMMDD.zip   into  this
          directory. 
       *  If spelling dictionaries are required then place them in the spelling
          sub-directory created  when metree  was unpacked.  Unpack and install
          the spelling into this directory. 
       *  Unzip the  executable  and  place  it in  the  jasspa  root directory
          c:\jasspa. 
       *  Edit "c:\autoexec.bat" and add the following lines:- 

           SET PATH=%PATH%;c:\jasspa 

       *  Reboot the system. 
       *  MicroEmacs may be run from the command line using me. 

     Graphics Cards: 
     MicroEmacs may  be configured  to the  text modes  of your  graphics card.
     Refer to  you graphics  card DOS  text  modes to  identify the  text modes
     supported by your  monitor. The text  mode number may  be entered into the
     user monitor configuration, defined in Tools -> User Setup. 

     Running DOS Version From Windows (3.x) 
          The MS-DOS version  of MicroEmacs may  be executed from  a .pif file.
          Use the pif  editor to create  a new .pif  file to launch MicroEmacs.
          The size of the  DOS window may be  configured from the command line,
          set the terminal size using one of the following command lines:- 

                me -c -v$TERM=E80x50        - 80 x 50 window 
                me -c -v$TERM=E80x25        - 80 x 25 window. 

          We usually  add the  -c option  so that  MicroEmacs is  executed with
          history information. This may be omitted if required. 

  Microsoft Windows 3.1/3.11 
     Executable: 
     Compiled with Microsoft Developer 2.0 

     Helper DLL: 
     Under  Win32s  a  helper  DLL  methnk16.dll  is  required  to  perform the
     pipe-shell-command(2) in  a synchronous  manner. This  should be installed
     into the C:\WINDOWS\SHELL directory. This (rather inelegantly) gets around
     the problems  of  spawning  a process  under  win32s  due to  a  number of
     Microsoft bugs in the operating system.  Note: that on a spawn operation a
     MS-DOS window is visible, this  is due to the  nature of the command shell
     on this  platform  which  has  a  tendency to  prompt  the  user  at every
     opportunity, hence a  certain amount of  interaction (which is  out of our
     control) is necessary. 

     The helper DLL is compiled with a 16-bit Windows compiler - MSVC 1.5. 

     Distribution components required: 

          jasspa-me-ms-win32s-YYYYMMDD.zip 
          jasspa-metree-YYYYMMDD.zip 
          jasspa-mewinhlp-YYYYMMDD.zip 
          <spelling>.zip 

     Recommended installed components: 

          4dos - command shell (giving stderr redirection) 
          grep - Version of grep (GNU port of grep recommended) 
          diff - Version of diff (GNU port of grep recommended) 
          make - use nmake or GNU port of make. 

          Ifwin32s is  a  requirement on  this  platform, typically  taken from
          pw1118.exe which freely available on the Internet. 

     Installation: 
     This version of Windows  does not have a  install directory as '95/'98 and
     it is expected  that the  MS-DOS version  will coexist.  No Install Shield
     installation is  provided.  Install in  a  directory structure  similar to
     MS-DOS.  Install  the  helper  DLL  methnk16.dll  in  the C:\WINDOWS\SHELL
     directory. Create  a  me32.ini(8)  file  in  the  C:\WINDOWS  directory to
     identify the  location of  the MicroEmacs  2009 components,  this much the
     same as the '95/'98 file, change  the directory paths to suite the install
     base. 

     Support Status: 
     The win32s release has not been  used with vengeance, although no specific
     problems have been reported with this release. 

  Windows 95/98/NT/2K/XP 
     Executable: 

          Compiled with Microsoft Developer 6.x 

     Install Shield 

          An Install Shield  version of MicroEmacs  is available which includes
          all of the distribution components. 

     Distribution components required: 

          jasspa-mepkg-ms-win32-2004030.zip 

     Recommended installed components: 

          grep - Version of grep (GNU port of grep recommended) 
          diff - Version of diff (GNU port of grep recommended) 
          make - use nmake or GNU port of make. 

          A good source of UNIX native tools is 

          http://unxutils.sourceforge.net/ - for native windows grep, diff, zip
          etc. 
          http://www.cygwin.com - for a shell environment. 

     Installation: 

       *  Create the  directory "c:\Program Files\Jasspa\MicroEmacs"  (or other
          location) 
       *  Create  the  sub-directory c:\Program Files\Jasspa\MicroEmacs\macros.
          Unpack and install the memacros.zip into this directory 
       *  If spelling  dictionaries  are  required  then  create  the directory
          c:\Program Files\Jasspa\MicroEmacs\spelling. Unpack  and  install the
          spelling into this directory. 
       *  Unzip     the     executable      components     into     "C:\Program
          Files\Jasspa\MicroEmacs" 
       *  Create a short cut to MicroEmacs for the Desktop 

          Right click on the desk top 

          => New 
          => Short 
          => Command Line: "c:\Program Files\Jasspa\MicroEmacs\me.exe -c" 
          => Short Cut Name: "MicroEmacs" 

          MicroEmacs may be executed from the shortcut. 

     Open  Actions  Microsoft  Windows  95/98/NT  provide  short  cut  actions,
     assigning an open action to  a file. The short  cuts may be installed from
     the Install  Shield  installation,  but  may  alternatively  be explicitly
     defined by editing the registry file with regedit(1). 

     A file open action in the registry is bound to the file file extension, to
     bind a  file extension  .foo  to the  editor  then the  following registry
     entries should be defined:- 

       [HKEY_CLASSES_ROOT\.foo] 
       "MicroEmacs_foo" 
       [HKEY_CLASSES_ROOT\MicroEmacs_foo\DefaultIcon] 
       "C:\Program File\JASSPA\MicroEmacs\meicons,23" 
       [HKEY_CLASSES_ROOT\MicroEmacs_foo\Shell\open] 
       "&Open" 
       [HKEY_CLASSES_ROOT\MicroEmacs_foo\Shell\open\command] 
       "C:\Program File\JASSPA\MicroEmacs\me32.exe -o "%1"" 

     In the previous example the DefaultIcon  entry is the icon assigned to the
     file. This may be an icon taken from meicons.exe (in this case icon number
     23), or may be some other icon. The open action in the example uses the -o
     option of  the  client-server,  which  loads  the  file  into  the current
     MicroEmacs 2009 session, alternatively the -c option may be used to retain
     the previous context, or  no option if  a new session  with no other files
     loaded is started. 

     A generic open for ALL files may be defined using a wild-card, this may be
     used to place a  MicroEmacs edit entry in  the right-click pop-up menu, as
     follows:- 

       [HKEY_CLASSES_ROOT\*\shell] 
       [HKEY_CLASSES_ROOT\*\shell\MicroEmacs] 
       "&MicroEmacs" 
       [HKEY_CLASSES_ROOT\*\shell\MicroEmacs\command] 
       "C:\Program File\JASSPA\MicroEmacs\me32.exe -o "%1"" 

ORGANIZING A LOCAL USER PROFILE 
     MicroEmacs uses local  user configuration profiles  to store user specific
     information.  The  user  information  may  be  stored  in  the  MicroEmacs
     directory, or  more  typically  in  a users  private  directory.  On login
     systems  then  the  user  name  and  user  private  directory  location is
     automatically determined from the system. 

     The user name identified by MicroEmacs  is $user-name(5) this value may be
     set or re-defined using the environment variable $MENAME(5). On MS-DOS and
     early windows systems  where there is  no user login  then then $MENAME(5)
     may be defined in the environment. 

     The location  of  the  user  information depends  upon  your  platform and
     installation configuration. The private directory identified by MicroEmacs
     is $user-path(5) this location may  be changed by defining the environment
     variable $MEUSERPATH(5). 

     Microsoft Windows users may use  the me32.ini(8) file to define MicroEmacs
     configuration path and name information. 

  User Profile Files 
     Files contained in the user profiles typically include:- 

     <name>.emf - The users start up profile - <user>.emf. 
     <name>.edf - The users spelling dictionary. 
     <name>.erf - The users registry configuration file. 

     These files  are  automatically  set  up by  MicroEmacs.  These  files are
     established from the  menu "Tools  -> User  Setup". The  "Setup Path" item
     defines the location  of the files,  but must be  MANUALLY included in the
     $MEPATH environment. 

  Company Profiles 
     Company profiles  include standard  files and  extensions to  the standard
     files which may be  related to a company,  this is typically <company>.emf
     where <company> is the name of the company. 

     The directory may also  include template files  etf(8) files which defines
     the standard header  template used  in the  files. Files  in the "company"
     directory would over-ride the standard template files. 

SEE ALSO 
     $user-name(5), $user-path(5), $MEINSTALLPATH(5), $MENAME(5), $MENAME(5),
     $MEPATH(5), $MEUSERPATH(5), Company Profiles, File Hooks, File Language
     Templates, User Profiles. 

USER PROFILES 
     This section  describes how  a  user profile  should be  incorporated into
     MicroEmacs 2009. A user profile defines  a set of extensions to MicroEmacs
     which encapsulates settings which are used by an individual user. 

     The user profile allows:- 

       *  Saving of the last session (history), allowing the next invocation of
          MicroEmacs 2009 to  restore your  previous session. The  -c option to
          me(1) restores a previous sessions buffers to the same state prior to
          exiting the editor. 
       *  Personalized spelling dictionaries. 
       *  Redefinition of MicroEmacs 2009 operation,  allowing the editor to be
          tailored to an individual's requirements. Including the re-binding of
          keys, modification  of  the  screen  colors.  Definition  of personal
          macros etc. 

  Identification 
     In order to identify a user MicroEmacs 2009 uses information in the system
     to determine the name of  the user, and in  turn the configuration to use.
     On all  systems the  value  of the  environment variable  $MENAME(5) takes
     priority over any other means of  user identification. If this variable is
     not defined  then  the  host  system  typically  provides  a  mechanism to
     determine the current  user. MS-DOS and  Microsoft Windows systems present
     problems where a login prompt is not used. 

     Each of the supported platforms are now described. 

     UNIX The login name  is determined  from the /etc/passwd  file and defines
          $user-name(5). The  environment  variable $MENAME(5)  may  be defined
          alter the default user configuration file name. 

     DOS  MS-DOS typically has no  concept of the user  name. The user name may
          be defined in the autoexec.bat file, choose a name of 8 characters or
          less, i.e. to fix the user name to fred then add the following line:-

            SET MENAME=fred 

          Remember to re-boot the  system before the  new command takes effect.
          (see the next step, there is another change to autoexec.bat). 

     Microsoft Windows 
          Microsoft windows environments  may, or may  not, have login enabled.
          If login is enabled then $user-name(5) is set to the login user name.
          The login name may be  overridden by setting the environment variable
          $MENAME(5) this may  be performed  in the environment  or through the
          me32.ini(8) file. 

  Shared Platforms 
     Platforms may share the same set of configuration files. Consider a system
     which may boot under MS-DOS, Windows  '98, NT and Linux. Provided that the
     macro files are located on a file system that may be mounted by all of the
     other operating  systems  and the  $MEUSERPATH(5)  and $MEPATH(5)  are set
     appropriately  to  point  to  the  users  private  MicroEmacs  and  system
     directories, then a  single set  of macro files  may be  shared across all
     platforms. 

  Personal MicroEmacs Directory 
     The private user profile is stored  in a separate directory. The directory
     that MicroEmacs uses is  typically automatically created  at start up, but
     may be created manually by the user. If the directory is to be placed in a
     special location  then the  $MEUSERPATH(5) environment  variable should be
     defined and set to point at this directory location. 

     UNIX In the UNIX environment then the local directory is typically created
          in the users home directory obtained from the /etc/passwd file and is
          called  ~/.jasspa.  MicroEmacs  will   automatically  look  for  this
          directory and  set  the  $user-path(5) variable  to  this  value. The
          location  may  be  overridden  by  setting  the  environment variable
          $MEUSERPATH(5) to reference a different directory location. 

     DOS  For MS-DOS environments, there is  typically no user directory, it is
          suggested that  the  user  directory  is  created  in  the MicroEmacs
          directory, use the $MENAME defined in the previous step i.e. 

            mkdir c:\jasspa\fred 

          Change  or  add  the   environment  variable  $MEUSERPATH(5)  in  the
          autoexec.bat to include the new directory i.e. 

            SET MEUSERPATH=c:\jasspa\fred 

     Windows 
          In Microsoft Windows environment  using Explorer 4.0  or later then a
          user application data directory exists ($APPDATA) and MicroEmacs will
          create a directory jasspa in  this directory location to hold private
          data. If there  is no such  data area then  all user configuration is
          stored in  the  executable  directory  location  (or  a sub-directory
          called $user-name(5)). 

          The user data  area $user-path(5) may  be modified by  creating a new
          directory and  setting  the  environment  variable  $MEUSERPATH(5) to
          point to this new directory location.  The location be specified by a
          meuserpath entry  in  the me32.ini(8)  file  rather than  setting the
          environment variable $MEUSERPATH(5). 

  Creating Your Profile 
     On starting MicroEmacs for the first  time then the user is guided through
     the configuration file setup to create any local configuration files. Once
     set up then MicroEmacs may be configured using the user-setup(3) dialog:- 

       Tools -> User Setup 

  The User Profile 
     Files created in the user directory include:- 

       *  Setup  registry  and  previous  session  history  $user-name.erf (see
          erf(8)). This  stores the  user-setup settings  and the  context from
          previous edit sessions. 
       *  Users start-up  file $user-name.emf  (see emf(8)).  This is typically
          referred to as  "user.emf" in  the documentation and  means the users
          private MicroEmacs  macro file.  The user  may make  local changes to
          MicroEmacs in  this  file, this  may  include definition  of  new key
          bindings, defining new  hook functions  etc. You  should override the
          standard MicroEmacs  settings  from  your start-up  file  rather than
          modifying the standard MicroEmacs files. 
       *  Personal  spelling  dictionary  lsdplang.edf  (see  edf(8)). Multiple
          spelling dictionaries  may  be created,  one  for each  language. Any
          words that are added  to the spelling dictionary  are stored in these
          files. 

     In addition to the above, if  new private macro files are constructed then
     they should be  added to  this directory  (if they  are not  global to the
     company). 

EXAMPLE 
     The following are examples of some individuals start-up files:- 

       ; Jon's special settings 
       ; 
       ; Last Modified <190698.2226> 
       ; 
       ; Macro to delete the whitespace, or if an a word all of the 
       ; word until the next word is reached. 
       define-macro super-delete 
           set-variable #l0 0 
           !while &not &sin @wc " \t\n" 
               forward-char 
               set-variable #l0 &add #l0 1 
           !done 
           !repeat 
               !force forward-char 
               !if $status 
                   set-variable #l0 &add #l0 1 
               !endif 
           !until &or &seq @wc "" &not &sin @wc " \t\n" 
           #l0 backward-delete-char 
           !return 
       !emacro 
       ; Make a previous-buffer command. 
       define-macro previous-buffer 
           &neg @# next-buffer 
       !emacro 
       ; spotless; Perform a clean and remove any multi-blank lines. 
       define-macro spotless 
           -1 clean 
       !emacro 
       ; comment-adjust; Used for comments in electric-c mode (and the other 
       ; electic modes. Moves to the comment fill position, saves having to mess
       ; around with comments at the end of the line. 
       0 define-macro comment-adjust 
           ; delete all spaces up until the next character 
           !while &sin @wc " \t" 
               forward-delete-char 
           !done 
           ; Fill the line to the current $c-margin. We use this as 
           ; this is the only variable that tells us where the margin 
           ; should be. 
           !if &gre $window-acol 0 
               backward-char 
               !if &sin @wc " \t" 
       	    forward-delete-char 
                   !jump -4 
               !else 
                   forward-char 
               !endif 
           !endif 
           ; Now fill to the $c-margin 
           &sub $c-margin $window-acol insert-string " " 
       !emacro 
       ; Macro to force buffer to compile buffer for C-x ' 
       define-macro compile-error-buffer 
           !force delete-buffer *compile* 
           change-buffer-name "*compile*" 
       !emacro 
       ; 
       ; Set up the bindings. 
       ; 
       global-bind-key super-delete            "C-delete" 
       global-bind-key beginning-of-line       "home" 
       global-bind-key end-of-line             "end" 
       global-bind-key undo                    "f4" 
       !if &seq %emulate "ERROR" 
           global-bind-key comment-adjust      "esc tab" 
           global-bind-key comment-adjust      "C-insert" 
           ; Like a korn shell please. 
           ml-bind-key tab "esc esc" 
       !endif 
       ; 
       ; Setup for windows and UNIX. 
       ; 
       ; Define my hilighting colour for Windows and UNIX. 
       !if &equ &band $system 0x001 0 
           !if &not &seq $platform "win32" 
               ; Small bold font is better for me. 
               change-font "-*-clean-medium-r-*-*-*-130-*-*-*-*-*-*" 
           !endif 
       !endif 
       ; Change the default diff command-line for GNU diff utility all platforms
       set-variable %diff-com "diff --context --minimal --ignore-space-change --report-identical-files --recursive"
       set-variable %gdiff-com "diff --context --ignore-space-change -w" 
       ; Setup for cygwin 
       !if &seq $platform "win32" 
           set-variable %cygwin-path "c:/cygwin" 
           set-variable %cygwin-hilight 1 
       !endif 
       ; Set up the ftp flags. The letters have the following meaning: 
       ; c   - Create a console (*ftp-console* for ftp, *http-console* for http)
       ; s   - Show the console 
       ; p   - Show download progress ('#' every 2Kb downloaded) 
       set-variable %ftp-flags "csp" 
       ; Info files 
       ;To hilight the .info and also the dir file 
       add-file-hook ".info dir"                                   fhook-info   ; Info-files
       ;To hilight all info files without the extension .info 
       ;but starting with the text "This is info file.. 
       -2 add-file-hook "This is Info file"                        fhook-info 

       ; Finished 
       ml-write "Configured to Jon's requirements" 

SEE ALSO 
     user-setup(3), $search-path(5), $user-name(5), $user-path(5),
     $MEINSTALLPATH(5), $MENAME(5), $MEPATH(5), $MEUSERPATH(5), me32.ini(8),
     Company Profiles, File Hooks, File Language Templates, Installation. 

COMPANY PROFILES 
     This section describes how  a company profile  should be incorporated into
     MicroEmacs  2009.  A  company  profile  defines  a  set  of  extensions to
     MicroEmacs which  encapsulate settings  which are  used on  a company wide
     basis. This  type  of configuration  is  typically used  with  a networked
     (shared) installation. The company profile would typically include:- 

       *  Name of the company. 
       *  Standard header files including company copyright statements. 
       *  Standard file layouts 
       *  Company defined language extensions. 

  Location Of The Company Information 
     It is suggested that  all of the company  extensions applied to MicroEmacs
     2009 are  performed in  a  separate directory  location which  shadows the
     MicroEmacs standard macro file directory.  This enables the original files
     to be sourced if a  user does not want to  include the company files. This
     method  also  allows  MicroEmacs  to  be  updated  in  the  future, whilst
     retaining the company files. 

     The company  files  are  generally  placed  in  the  company sub-directory
     described in the installation notes. 

  Content Of The Company Information 

     Company macro file 
          The company  file  is  typically  called by  the  company  name (i.e.
          jasspa.emf) create a new company file. The file includes your company
          name and hook functions for any new file types that have been defined
          for the company, an example company  file for Jasspa might be defined
          as:- 

            ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
            ; 
            ;  Author        : Jasspa 
            ;  Created       : Thu Jul 24 09:44:49 1997 
            ;  Last Modified : <090829.1633> 
            ; 
            ;  Description     Extensions for Jasspa 
            ; 
            ;  Notes 
            ; 
            ;  History 
            ; 
            ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
            ; Define the name of the company. 
            set-variable %company-name "Jasspa" 
            ; Add Jasspa specific file hooks 
            ; Make-up foo file hook 
            add-file-hook ".foo"    fhook-foo 
            1 add-file-hook "-!-[ \t]*foobar.*-!-" fhook-foo ; -!- foobar -!- 
            ; Override the make with localised build command 
            set-variable %compile-com "build" 

          The file contains  company specific  file hooks  and the  name of the
          company. 

     Other Company Files 
          Files defined on  behalf of the  company are included  in the company
          directory. These would include:- 

            *  Template header files etf(8). 
            *  Hook file  definitions (hkXXX.emf)  for company  specific files,
               see add-file-hook(2). 
            *  Extensions to  the  standard  hook  definitions  (myXXX.emf) for
               company specific language extensions to the standard hook files.
               See File Hooks and File Language Templates. 

SEE ALSO 
     $MEINSTALLPATH(5), $MENAME(5), $MEPATH(5), File Hooks, File Language
     Templates, Installation, user-setup(3), User Profiles. 

