Lugaru's Epsilon Programmer's Editor
Context:
| Updating from an Old Version
|
|
Previous
|
Up
|
Next
|
Changing Commands with EEL |
Commands by Topic |
Importing Color Settings |
Epsilon User's Manual and Reference >
Commands by Topic >
Advanced Topics >
Updating from an Old Version
A new
version of Epsilon often has a different internal format for the
bytecode and state files it uses. If you have customized Epsilon,
you'll probably want to incorporate your changes into the new
version. This section describes how to do this with a minimum of
trouble. If you want to preserve your changes, please read it before
overwriting your existing copy of Epsilon with a new version.
If you've changed Epsilon by writing commands in Epsilon's extension
language, EEL, you should recompile them using the new EEL compiler
and load them into Epsilon. (If some of your commands have cursor
key bindings, and you want to update from version 4.4 or earlier, use
the eel-change-key-names command on your EEL files before
compiling them, as described at the end of this section.) If some of
the built-in functions or subroutines you call have changed, you will
have to modify your commands to take this into account. Look in the
file "fromversion" for a list of changes, where version
represents the old version number. (Find the closest file to your
version. If you had version 3.23, for example, you would use the
file "from32", since we do not provide a "from323"). The
installation process normally installs these files in the
changes subdirectory within Epsilon's main directory.
Other types of changes you might make include setting variables,
changing bindings, or adding macros. To move these changes to the
new version requires several steps.
- Start the old version of Epsilon as you do normally.
- To update from a Unix version of Epsilon
prior to version 4.05, issue the key-switch command and give
the name "xxxx" when it asks for the terminal to switch to. This
ensures that Epsilon records your key bindings in a
terminal-independent manner.
- Run the list-all command. Epsilon provides this command
starting with version 4.0. If you have an older version of Epsilon,
see Updating from Epsilon 4.
This will make a list of all the variables, bindings, macros, and
functions defined in your old version of Epsilon.
- Save the result in a file. We will assume you wrote it to a
file named "after".
- If you wish to transfer customized color settings, run the
export-colors command to construct a mycolors.e file. If you're
running a version of Epsilon prior to 9.0, and for more details, see Importing Color Settings.
- You should no longer need the old version of Epsilon, so you
can now install the new version in place of the old one if you wish.
Or you can install the new version in a separate directory.
- Locate the "changes" subdirectory
within Epsilon's main directory.
For each old version of Epsilon, you'll need several files in
the steps below. In the description that follows, we will assume
that you want to move from Epsilon 9.0 to this version, and will use
files with names like list90.std. Substitute the correct file name if
you have a different version (for example, list10.std to
upgrade from Epsilon 10).
- Locate the file in the changes subdirectory from the new version
of Epsilon with a name like list90.std. It resembles the "after"
file, but comes from an unmodified copy of that version of Epsilon.
We will call this the "before" file. If you have a very old version
for which there is no .std file, see Updating from Epsilon 4 to make
one.
- Start the new version of Epsilon. Run the list-changes
command. It will ask for the names of the "before" and "after"
files, and will then make a list of differences between the files, a
"changed" file. When it finishes, you will have a list of the
changes you made to the old version of Epsilon, in the format used by
the list-all command. Edit this to remove changes you don't
want in the new version, and save it.
- To update from version 4.4 or earlier, load the
bytecode file called newkeys.b in the changes subdirectory, using the
load-bytes command on key F3. Now you can run the
change-key-names command to convert any old-style key names
such as N-3 to their new names (in this case, <PgDn>).
- Run the load-changes command, and give it the name of
the "changed" file from the previous step. It will load the
changes into Epsilon. You can define commands, subroutines, and some
variables only from a compiled EEL file, not via
load-changes. If any of these appear in your changed file,
Epsilon will add a comment after that line, stating why it couldn't
make the change.
- Use the write-state command to save your new version of
Epsilon. (Epsilon will automatically make a backup copy of your old
state file.)
Note that this procedure will not spot changes made in .e files, only
those made to variables, bindings or macros. It will notice if you
have defined a new command, but not if you have modified an existing
command.
The above procedure uses several commands. The list-all
command lists the current state of Epsilon in text form, mentioning
all commands and subroutines, and describing all key bindings,
macros, and variables. The list-changes command accepts the
names of the "before" and "after" files produced by
list-all, and runs the compare-sorted-windows command
on them to make a list of the lines in "after" that don't match a line
in "before".
Finally, the load-changes command reads this list of
differences and makes each modification listed. It knows how to
create variables, define macros, and make bindings, but it can't
transfer extension-language commands. You'll have to use the new EEL
compiler to incorporate any EEL extensions you wrote.
Previous
|
Up
|
Next
|
Changing Commands with EEL |
Commands by Topic |
Importing Color Settings |
Copyright (C) 1984, 2020 by Lugaru Software Ltd. All rights reserved.
|