Lugaru Wolf

Download Epsilon 13.17 Update

Epsilon 13.17 is now available. This update fixes a number of bugs and adds some minor new features since Epsilon 13.00. To install this software, you must have a copy of Epsilon 13.00 or later (retail, not evaluation) already installed on your computer. If you installed 13.17 during its beta test period, you don't have to reinstall now; it hasn't changed. The 13.17 updater is available in these formats:
To install the .tar.bz2 files above, execute these commands as root:

cd /usr/local
tar xjf eupd13.17.tar.bz2  (provide the name of the downloaded file here)
cd epsilon13.17
./eupdate
Once you've updated Epsilon, you may delete the update file you downloaded.

The above updaters include a revised online manual in HTML, Info, and (for Windows versions) WinHelp formats. The revised manual is also available in PDF format.

Epsilon 13.17 contains various new features and a number of bug fixes:

New Features

13.15 Comment filling is better at distinguishing decorative punctuation at the start of a line from text to be filled.
13.15 The Epsilon update script for Mac OS produces better diagnostic messages if something goes wrong.
13.15 Improved the error when a tag file is read-only.
13.15 The documentation for Epsilon's ssh and scp features was extensively revised, and documentation for v13.14's new align-by-tab command was added.
13.14 In HTML and XML buffers, paragraph filling now works more sensibly when outside of HTML/XML/scripting comments, filling ordinary text containing inline tags while treating block tags as paragraph delimiters. You can control which tag names serve as paragraph delimiters using the new variables html-paragraph-elements and xml-paragraph-elements.
13.14 The new align-by-tab command takes text containing tab characters (such as text copied from a spreadsheet) and reformats it using spaces and tabs so the text appears visually in columns, making each column just wide enough for its contents.
13.14 Epsilon for Windows now disables a Windows feature called "file system redirection", so files in certain system directories like C:\Windows\System32 may be successfully edited when you run Epsilon as an Administrator.
13.14 The reindent-c-comments variable has a new bit (16) which controls whether indent-region reindents lines that start block comments.
13.14 Ssh and telnet buffers now interpret UTF-8 sequences in program output. New bits in the ssh-interpret-output and telnet-interpret-output variables may be used to disable this in case the remote system uses a legacy encoding, or if you want to see the UTF-8 sequences sent, instead of the resulting Unicode characters. Process buffers now do likewise; the variable process-coloring-rules may be used to disable this if desired.
13.14 Starting an interactive xterm with the push command now falls back to a hardwired path on Mac OS X, set by the new push-cmd-unix-macos-interactive variable.
13.14 The new variable process-max-size may be used to limit the size of all process buffers. Under Mac OS and Unix, concurrent processes that produce a lot of output are now handled more efficiently. Concurrent processes now operate correctly again under the latest releases of Mac OS, Linux and FreeBSD.
13.14 The new variable c-biggest-declarator lets you customize how far ahead Epsilon scans when checking whether a C language function name is being defined, not just declared.
13.14 Under Windows, when another program's window has the focus, clicking in Epsilon's window now sets point to the place you clicked. The previous behavior (switching to Epsilon but not setting point) may be restored if desired by setting the new configuration variable NOFOCUSCLICK in the registry.
13.14 The list-bookmarks command now shows buffer text with its syntax highlighting intact, and without its leading indentation.
13.14 JavaScript mode now recognizes the .as extension.
13.14 The closeback variable now recognizes the value 2 to indicate that lines starting with a right parenthesis should be indented to match the start of the line with its matching left parenthesis, not the left parenthesis itself. The variables perl-closeback and php-closeback also understand this new value.
13.14 GAMS mode's handling of the GAMS commands that set the commenting characters, and of big blocks of data, was rewritten to make syntax highlighting much faster on big files.
13.14 In .mnu files, an entry starting with % may now be used to run an external command, passing it the name of the current file.
13.14 The process-echo variable recognizes a new bit (8) that makes filter-region run the process synchronously.
13.14 PHP tagging now understands the syntax of return type declarations. Perl mode now understands the defined-or operator //.
13.14 Tagging in C-like languages now recognizes the keyword "package", used in Java and other languages, and certain syntax elements of Javascript.
13.14 Under Windows, the change-font-size command now accepts a numeric prefix argument to change the font size by that amount without further interaction.
13.14 Epsilon for X11 now returns a WIN_BUTTON key for any mouse buttons beyond the three with built-in support, setting the key_is_button variable to a distinct code for each button. (A future version will include specific key codes for each button.)
13.14 Epsilon uses a revised list of fallbacks for its default font under X11.
13.14 Tag names and function names displayed in the mode line can now be up to 1023 characters long.
13.14 Under Unix, the size in dired listings of very large files now displays with a G suffix for gigabytes (in addition to K and M suffixes), when displaying the precise file size would otherwise overflow its column.
13.14 The grep-text color class is no longer used, as grep now always uses the same color for text as in the original buffer.
13.14 Epsilon now recognizes the .ts extension to support TypeScript files (a JavaScript variant).
13.13 Indenting of JavaScript object literals was improved.
13.13 An .epsilon_vars file can now specify rules for file names matching a pattern, not just by extensions or modes.
13.13 When using the variables ssh-command-windows, scp-unix-sftp-command, and scp-windows-sftp-command, Epsilon now looks for per-system versions.
13.13 Epsilon now checks file variables when restoring a file from a previous session.
13.13 Grep now skips over session files by default, due to a change in the grep-ignore-file-extensions variable.
13.12 The Epsilon for Windows installer and updater now use a wrapper that supplies a manifest.
13.11 Epsilon for Windows installers are now signed with a code signing certificate. Various included executables are also signed.
13.11 The Windows installer and the configure-epsilon command can now use a second method for the option that adds Open With Epsilon to Explorer's context menu for all files. This resolves an incompatibility with 64-bit Windows versions. Run Alt-x configure-epsilon to enable this support.
13.11 When Epsilon displays help using WinHelp (in older versions of Windows), variable values that contain special characters are now shown with appropriate ^ or M- notation.
13.11 A few internal functions now handle longer filenames.
13.11 EEL's bprintf() and similar functions that printf to a buffer now call the buffer's on_modify() function only once, not potentially on every character.
13.11 The EEL compiler now offers appropriate diagnostics for some invalid syntax in numeric and character constants.
13.10 Epsilon for Mac OS X now includes both Intel and PowerPC installation packages. The new Intel package requires an Intel-based Mac system (such as current Macs) and OS X 10.4 or later. The legacy PowerPC package requires OS X 10.3.9 though 10.6.8, and will not run on OS X 10.7 (Lion) or later.
13.10 The process-completion-style variable has a new default value, 2, that excludes file names starting with a dot (hidden names), and recognizes a new flag, 8, that makes it display the full path of the completed file name when there is only one match. Under Unix, process initialization now works correctly with the zsh shell, and handles an EPSSHELL environment variable correctly.
13.10 The new process-completion-windows-programs variable lets you customize which extensions indicate an executable program during process buffer completion in Windows.
13.10 The indent-under command now takes a numeric argument to indicate which run of non-spaces to align under, and if a region is highlighted, indents the whole region according to its usual rules.
13.10 The indent-to-tab-stop command was added. It provides another alternative command to bind to Tab for users who don't want smart indenting.
13.10 Epsilon's help commands now prefer HTML-based help under X11.
13.10 The new session-warn-when-saving variable lets you disable Epsilon's prompt "Error writing session file, exit anyway?" when it can't save your session while exiting.
13.10 The bind-to-key command now asks for confirmation if you try to bind a key that normally self-inserts.
13.10 The bind-last-macro command now shows how to skip binding the new macro after defining it.
13.10 The unbind-key command now does the right thing if you say to make the Enter key self-insert.
13.10 Under X11, the "viewer" function in dired now tries several other programs that provide viewer support under various desktop environments: gnome-open, xdg-open, and exo-open. This is in addition to its existing support for the native Mac viewer, kfmclient, and the older Gnome helper programs provided with Epsilon.
13.10 The default values of the session-restore-max-files and session-restore-biggest-file variables have been increased.
13.10 The new variable reindent-perl-comments controls how Perl mode indents comment lines.
13.10 When you set the c-fill-column variable, Epsilon offers to set it for all existing C mode buffers too.
13.10 In C mode, align-region now aligns the \ at the end of a continued preprocessor line.
13.10 GAMS mode now colors "nonnegative" and "nonpositive" as type keywords.
13.10 HTML and XML modes are much faster editing certain extremely large files. XML coloring is stricter recognizing comments, and doesn't get confused by some tag names and syntax that have special meaning only in HTML. XML tag names with various special characters no longer confuse coloring. Various other minor coloring issues were corrected.
13.10 Paragraph filling in HTML/XML now follows the same rules as auto-filling does about where it's OK to break a line.
13.10 Epsilon now uses XML mode for files with .ui and .xaml extensions.
13.10 PHP tagging now recognizes the "define" keyword, and Perl tagging now recognizes "use constant".
13.10 The new python-language-level variable lets you set whether Python mode recognizes the new keywords of Python 3. (Previously Epsilon unconditionally recognized a few Python 3 keywords, but not others.)
13.10 The new inline_eel() subroutine is useful in command files, letting them load arbitrary EEL code inline.
13.10 The load_eel_from_path() subroutine, also useful in command files, now understands a new flag value, 4, that says to also search for the EEL file in the current directory.
13.09 C tagging now has special logic for the PROTO macro, in addition to the _ANSI_ARGS and __P macros.
13.09 Visual Basic indenting now understands the MustOverride and Interface keywords.
13.09 Under Mac OS X, Epsilon's CPU usage when waiting for an event is now lower.
13.08 Epsilon for Windows now has much better support for NTFS junctions and symbolic links. Dired will show their destinations, and ** file syntax will follow them while guarding against loops, as under Unix.
13.07 In HTML/XML buffers, auto-filling avoids breaking lines inside quoted attributes, and right after short element names. The new html-auto-fill-combine and xml-auto-fill-combine variables control the latter.
13.07 The meaning of the possible values of the html-auto-fill-mode and xml-auto-fill-mode variables has changed. Instead of 4 possibililies, there are now bits that let you individually disable auto-filling for HTML comments, scripting comments, HTML/XML tags, and text.
13.07 Four new flags in the html-indenting-rules variable let you disable HTML/XML smart indenting in various additional contexts, such as for lines that start inside a tag.
13.07 The mouse-selection-copies variable is now zero by default. As a result, Epsilon for Unix no longer automatically copies text you highlight with the mouse.
13.07 Epsilon now saves many more command history entries. If a command history entry is extremely long (over 10,000 characters), it can no longer make Epsilon drop all prior entries. Instead, Epsilon doesn't save such long entries in its command history. As part of this change, the recall-longest-response variable was added and the recall-maximum-session and recall-maximum-size variables have new default values.
13.07 Epsilon now warns if you try to exit without saving a nonempty scratch buffer created with the select-buffer command, the same as it does for those created with the File/New menu command.
13.07 The set-file-name command now warns about overwriting if you name an existing file.
13.07 In Telnet buffers, Epsilon recognizes some xterm control sequences and the use of backspace for emphasis, as in Unix process buffers. The telnet-interpret-output variable has new flags to control this. The new ssh-interpret-output variable provides corresponding features for Ssh buffers, replacing the ssh-coloring-rules variable.
13.07 The file-query-replace command now reports how many files it skipped due to a grep-ignore- variable, as grep does.
13.07 Comment filling in PHP mode now automatically detects which type of comment marker, // or #, is being used.
13.07 The tag-files command now defaults to the previous file pattern, if any. (Press Alt-g at the prompt to easily tag only the current file.) The new tag-options variable can be used to make this command always clear the existing tags before scanning for new ones.
13.07 The bufed-show-absolute-path variable now recognizes new values 3 and 4 to make it always display the directory portion of each file name.
13.07 HTML mode now recognizes the .ascx extension.
13.07 In XML mode, typing ) in text now shows its match.
13.07 Process completion now considers = a file name delimiter.
13.07 Clicking the mouse at a query-replace prompt now exits the replace command.
13.07 The list-definitions command now only displays its progress messages when the command takes a long time, not always.
13.07 The kill-rectangle command now uses a numeric prefix argument to toggle the sense of the kill-rectangle-removes variable (which controls whether it deletes the columns of the rectangle or just fills them with spaces).
13.07 The create-variable command now warns before replacing an existing item.
13.07 The next-error command and related commands are now smarter by default when looking for a file, due to a new default for the process-next-error-options variable.
13.07 Some dialog prompts in Epsilon for Windows now have space for more text. Ssh/scp prompts in particular use a much larger dialog so that long multi-line prompts from ssh aren't cut off.
13.07 Visual Basic indenting now indents case statements inside select case blocks. The new vbasic-indent-case variable controls this.
13.07 When selecting the best mode for a file, Epsilon now ignores any .in suffix in its name. For instance, \x{file.pl.in} is now recognized as a Perl file.
13.07 Epsilon's prompt when a file on disk has become read-only now includes the file name, and now appears on top of the buffer in question, even if it's not the current buffer.
13.06 You can now set C mode to use different indentation on very long continuation lines, using the new variables c-align-contin-max-width and c-align-contin-max-offset.
13.06 When the next-error command parses a compiler error message, but can't work out the correct directory for the file it names, you can now set Epsilon to look through those you've already loaded, using the new process-next-error-options variable.
13.06 During incremental searching, keys bound to the delete-character command, like Del or Ctrl-D, now delete the highlighted match and exit the search. The new search-delete-match variable controls this.
13.06 The R command in dired to refresh the current listing now scrolls the window, if it would otherwise be empty (commonly, when an external program has just deleted many files).
13.06 Epsilon for Mac OS X now loads any X11 resource file named ~/.Xresources when it's started from its icon, since this may not happen automatically on Macs.
13.06 Setting the process-echo variable to zero to suppress echoing now works under Unix.
13.05 Epsilon now recognizes certain keywords added in recent versions of Visual Basic, up through Visual Basic 2008. The new vbasic-language-level variable controls which keywords it recognizes.
13.05 Find-linked-file in CSS declarations now understands @import.
13.05 Dired's A command to set attributes now works on scp files.
13.05 Disabling smart indenting by setting bits in the html-indenting-rules variable now copies indentation from the previous line. Also, Epsilon no longer looks at certain bits in that variable whose functionality duplicated bits in the html-auto-indent and xml-auto-indent variables.
13.05 Epsilon now parses certain compiler error messages that use the syntax [line,column] to indicate the error location.
13.05 TeX/LaTeX mode now colors comments in math mode properly.
13.05 Epsilon now recognizes more PHP files that lack a .php extension, and guesses the right mode for .inc files more accurately.
13.04 The new command search-region restricts searches to the current region. Previously this functionality was only available by setting a variable.
13.04 The new wrap-grep variable lets you customize whether the grep command sets the current window to horizontally scroll long lines or wrap them.
13.04 The new switch-buffers-options variable lets you customize the buffer ordering of Ctrl-Tab.
13.04 In Telnet buffers, Ctrl-u Enter now sends a partial line to the server, without a terminating newline character.
13.04 If the find-file command, when given a telnet: or ssh: URL, decides to reuse an existing telnet or ssh buffer that has exited, it now restarts the connection.
13.04 Some problems with copying certain Unicode characters to and from the clipboard were fixed, and the clipboard-convert-unicode variable has a new bit.
13.04 Pressing Enter in HTML and XML buffers where smart indenting has been disabled now copies the previous line's indentation. The html-auto-indent and xml-auto-indent variables have a new bit that provides the previous behavior of no indentation in such cases.
13.04 In HTML and XML buffers, the keys {, :, #, plus right delimiters, normally reindent the current line in scripting. A new bit in the html-indenting-rules variable prevents that.
13.04 The new yank-options variable changes how yanking an absolute path name at a file name prompt works.
13.04 Various bit values for the -ka flag were added. There are new options for changing how Epsilon handles typing the key combinations Ctrl-@, Ctrl-^, and Ctrl-_ if you omit the Shift key, and whether Epsilon recognizes Ctrl when applied to certain ASCII characters like 9 or *.
13.04 Telnet mode now deletes null characters and Ctrl-A characters sent by the remote system. The telnet-interpret-output variable has a new bit to disable this behavior.
13.04 The documentation previously failed to mention dired's f subcommand, added in version 13.01. It searches with a restriction to only match file names.
13.04 PHP indenting now understands PHP's "alternative control structure" syntax, which uses a colon and an "end"-like statement as delimiters instead of curly braces.
13.04 EEL programmers working with Epsilon's net features can use the new buffer_url variable and divide_url() subroutine.
13.03 Epsilon now highlights matching delimiters in batch files and in Conf mode. The new variables auto-show-batch-delimiters, batch-auto-show-delim-chars, auto-show-conf-delimiters, and conf-auto-show-delim-chars control this.
13.03 The sort-region command now handles regions that don't end in a newline.
13.03 EEL now recognizes the notation 0o123 for octal numbers, in addition to C's traditional notation 0123.
13.03 The commands insert-file and compare-to-prior-version now work with URLs as well as local files.
13.03 The draw-focus-rectangle variable now uses a slightly different size of rectangle by default.
13.03 Epsilon packages for Red Hat/Fedora and Debian systems now require more recent shared libraries.
13.02 Under X11, Epsilon now remembers and restores the size of its window.
13.02 Epsilon no longer tries to use WinHelp under Windows Vista to provide help, instead using its HTML-based help. All environments provide new options for selecting which help format you prefer. The variables want-gui-help and want-gui-help-console have been replaced by new variables epsilon-help-format-win-console, epsilon-help-format-win-gui, and epsilon-help-format-unix-gui, supporting the additional options.
13.02 The new process-yank-confirm variable lets you customize or disable Epsilon's warning when yanking commands into a process buffer.
13.02 All versions of Epsilon now support changing the name of the customization directory where Epsilon looks for user customization files, using the new EPSCUSTDIR customization variable (a registry entry for Windows, and an environment variable for Unix). This replaces the Windows-only CUSTDIR registry entry of previous versions.
13.02 The reindent-c-comments variable recognizes a new bit for controlling whether // comments are reindented when you press <Enter> at the end of one. This behavior is now disabled by default.
13.02 The search-wraps variable has a new bit that enables wrapping during non-incremental searches, prompting first.
13.02 The delete-blank-lines command on Ctrl-X Ctrl-O can now operate throughout a highlighted region, reducing multiple blank lines to one, and removing all single blank lines.
13.02 The insert-date command is now bound to Ctrl-C Alt-d.
13.02 Completion in the insert-ascii command on Alt-# now lists Unicode characters with codes below 256 (those shared with the Latin 1 character set).
13.02 The sort-buffer and reverse-sort-buffer commands now support sorting into the current buffer. Pressing Alt-g at their buffer name prompts provides a quick way to enter the current buffer name.
13.02 Pressing Tab in C mode when past a line's indentation (for instance, at the end of a line) now honors any defined soft-tab-size variable.
13.02 The perldoc and man commands now interpret and remove ANSI-style color escape sequences before displaying their results.
13.02 Epsilon now automatically looks for and loads any version-specific EEL patch file that's installed.
13.02 Hex mode now notices if a file was read with line translation and offers to reread it in binary mode.
13.01 Several Epsilon commands automatically switch the current window to either horizontally scroll long lines or wrap them. Now some new variables let you control this behavior: wrap-info-mode, wrap-dired-live-link, wrap-split-vertically, and wrap-view-error-lines. You can force one mode or the other, or tell Epsilon not to change modes automatically.
13.01 In a search command, you can now retrieve the last pattern you used in that particular buffer by pressing Alt-g.
13.01 The new global-spell-options variable lets you disable the automatic saving or deleting of per-file and per-directory ignore lists. You can also use it to enable per-extension ignore lists.
13.01 In the spell-buffer-or-region command, you can now press R to ignore a misspelled word only until the current spell-buffer-or-region session ends.
13.01 The speller now uses a spell_language_prefix variable that lets EEL code select a different set of word list files for each buffer.
13.01 A standard Epsilon 13.01 installation now includes compressed speller word list files, so users don't have to download them to get spell checking. (Updating from 13.00 won't automatically add this file, since spell-configure can always retrieve it if it's missing.)
13.01 The print-heading variable now has a new bit to print a file's full path in its header under Windows.
13.01 C mode now provides special indenting logic for various macros used in Microsoft development environments that function syntactically like braces, such as BEGIN_ADO_BINDING(). See the new use-c-macro-rules variable.
13.01 Pasting text from the clipboard in Mac OS X now converts from Mac format if necessary. See the new clipboard-convert-mac-lines variable.
13.01 Dired mode has a new F subcommand, which searches using incremental-search while restricting matches to the file name column.
13.01 When you use the configure-epsilon command to create file associations, the list of extensions you select will be saved as the default for the next time you run the command. Also, the command now ensures Epsilon is listed in certain Open With dialogs that Windows will display under various circumstances, and installing Epsilon also puts an Epsilon entry into such dialogs.
13.01 Epsilon for Unix now includes image files for creating window manager icons in .png format, in addition to .xpm format, for window managers that require this.
13.01 The About dialog in Epsilon for Unix now indicates whether Epsilon is running in X11 or console mode.
13.01 The delete-matching-lines command and others are now much faster on very large syntax-highlighted buffers.
13.01 The process buffer now parses and removes certain xterm-specific escape sequences. A new bit in the process-coloring-rules variable controls this.
13.01 Epsilon now recognizes a new write-line-translate file variable, which may be used to force all files in a certain directory to be saved in Unix, Windows, Binary or Mac format.

Bug Fixes

13.17 A set of related bugs that could cause Epsilon to crash, particularly on Linux systems, have been fixed.
13.16 Fixed a regression in 13.14 that made the statically linked version of Epsilon for Linux hang on startup on certain distributions of Linux.
13.15 Fixed a regression in 13.14 that broke text-based menu bars, and other uses of the avoid-top-lines and avoid-bottom-lines system variables.
13.14 When Epsilon runs ssh or sftp commands under Windows, it now detects whether a 32-bit or 64-bit Cygwin environment is in use, and runs the corresponding helper program. The new %w sequence in variables like ssh-command-windows and scp-windows-sftp-command supports this. (The helper program makes these Cygwin commands prompt correctly when run by another program like Epsilon.)
13.14 In command files like einit.ecm, the (set-variable) command now correctly interprets \ as an escape character in string values.
13.14 The primitive function lcs_char() now compares Unicode characters correctly.
13.14 The primitive functions lcs() and lcs_char() which support finding differences in buffers now respond more quickly to the abort key, and now work properly on narrowed buffers.
13.14 Compiling EEL code from Epsilon didn't always look for included files in the right place.
13.14 A problem with interpreting Unicode keys under X11 was fixed.
13.14 The CTRL() macro now behaves correctly on characters in the range 0x00-0x3F and 0x80-0x1FF, adding Epsilon's special KEY_CTRL bit instead of producing traditional ASCII Ctrl characters.
13.14 When Epsilon for Windows backs up a file whose name could be modified by a preserve-filename-case setting, it copies instead of renaming to avoid changing the file name's case.
13.14 When Epsilon was expanding file name wildcards, certain very long file name matches could make it crash.
13.14 Epsilon for Windows now correctly reports the left and right shift key statuses separately in primitives like shift_pressed() and mouse_shift.
13.14 Under Windows, the character & in the binding of a menu command is now displayed correctly.
13.14 Epsilon now tries to detect when its tiled windows have an inconsistent structure, and recover by reverting to a single window.
13.14 Dired no longer incorrectly displays some network files as junctions under Windows.
13.14 Concurrent processes and related functions now work when Epsilon for Windows is installed on a drive with 8.3 short name generation disabled.
13.14 Epsilon for Mac OS X now looks for X11 libraries in /opt, to match the rules of recent OS X versions.
13.14 Comment filling now correctly handles certain cases with < or > at the start of a line.
13.14 Under some X11 window managers that momentarily grab focus whenever Alt is pressed, Alt keys did not repeat correctly, and had other issues.
13.14 Connection errors during internet functions are now displayed slightly differently, and extremely long host names in such messages no longer make Epsilon crash.
13.13 The update script for Linux and FreeBSD now detects in a more reliable way whether an existing installation uses dynamically linked executables.
13.13 Cutting and pasting text with both ^M and null characters under Windows truncated the text at the first null unless clipboard support had been disabled.
13.13 An error in Epsilon's NSS helper (used on some Linux and FreeBSD systems) was corrected.
13.13 Dired now checks Windows junctions for validity before trying to dereference them.
13.13 Another problem on Unix systems with parsing environment variables like CMDSHELLFLAGS that contain spaces was fixed.
13.13 Sometimes Epsilon displays a pop-up help dialog with a message that pressing h will open the corresponding Epsilon help page in a browser. Epsilon no longer does this inappropriately based on a prior h keystroke.
13.13 A long-standing bug made Epsilon incorrectly reverse-sort buffers where some lines were initial substrings of other lines.
13.13 XML mode no longer highlights <script> and <scripttext> elements specially.
13.13 Info mode links that include a file name in parentheses may now include balanced parentheses within the file name.
13.13 Some C++ templates weren't parsed correctly when tagging or coloring.
13.13 Pressing Alt-Down at a search prompt to pull in the next word no longer aborts when too many non-word characters appear before the next word.
13.13 With preserve-filename-case set to preserve filename case in buffer names but fold during completion, listing matches failed to fold as well.
13.13 On Unix and Mac systems, the set-font dialog now filters out the iso10646-1 versions of fonts by default, except when the initial font already uses it, to address speed issues and to avoid an X11 bug. And Epsilon now recovers better from some kinds of errors in this dialog.
13.13 Epsilon's update script for OS X now shuts down any running Epsilon documentation server so updated help files will be used the next time you view Epsilon help pages.
13.13 A file variable can now turn off auto fill mode.
13.13 A redundant Help menu entry in Epsilon for Windows was removed.
13.13 The uniq command and related commands no longer display inaccurate progress messages when working on a narrowed buffer.
13.13 On Unix, Epsilon no longer crashes when trying to deference symbolic links that exceed its current maximum file name length of 255 characters.
13.12a An error in the Intel Mac updater could make the update fail under Mac OS X 10.7 Lion when updating from 13.09 and older versions. (Only the Intel Mac packaging was changed, and the files, once installed, are identical to 13.12, so they bear the same version number.)
13.12 A change in the unreleased Epsilon 13.11 caused starting subprocesses to fail sometimes under Unix.
13.12 Dired normally hides files whose names start with a dot. In previous versions, it failed to hide such files if they were in a directory whose name also started with a dot.
13.11 In previous versions, Epsilon for Windows could sometimes fail to correctly locate its customization directory, and fall back to using its executable's directory instead. One consequence was that spell-mode configuration would fail.
13.11 When Epsilon for Windows invoked a browser, the browser could sometimes appear behind other windows.
13.11 Epsilon for Unix now splits a CMDSHELLFLAGS (or similar) environment variable that contains spaces into separate words when running a shell.
13.11 The latex-mode command didn't correctly switch some settings in a buffer in TeX mode.
13.11 Configuring spell checking failed if the customization directory's name contained certain special characters.
13.10a An error in the Intel Mac updater made the update fail under Mac OS X 10.7. (Only the Intel Mac packaging was changed, and the files, once installed, are identical to 13.10, so they bear the same version number.)
13.10 Remote file operations using sftp could display various extraneous messages.
13.10 Epsilon now treats reading from an http URL the same as ftp or scp for warning messages and other uses.
13.10 A buffer's translation type can now change when a different file is read into that buffer, unless it's been set explicitly. When Epsilon restores a session, if a file's auto-detected translation type has now changed, Epsilon reads it using its current translation type, instead of the type when it was first read.
13.10 The eval and execute-eel commands now search for eel.h in the current buffer if it's not found elsewhere.
13.10 The save-all-buffers command no longer prompts about zero-length buffers with no associated file names.
13.10 Various process-related commands now permit longer command lines.
13.10 The brief-delete-window command no longer switches to a different buffer sometimes.
13.10 Dired could be confused by unusual date formats on remote systems.
13.10 Rolling the mouse wheel now scrolls the window beneath the mouse, not the current window.
13.10 Various issues with X11 clipboard support were fixed. Epsilon can now exchange text successfully with certain other programs.
13.10 Issues in various Epsilon for Unix/Mac OS X setup scripts were fixed. The setup script now creates its links in ~/bin if no system-wide directory is writeable, and Epsilon's Mac helper now sends any file name argument to a running instance more consistently.
13.10 The edit-variables command now displays a tab character in a value as ^I instead of a space.
13.10 On Windows, the configure-epsilon command now displays a User Account Control prompt when appropriate. Epsilon now keeps later Windows versions from intercepting and redirecting user attempts to write to files in some system directories like Program Files.
13.10 On Windows, reading .gz files now works properly for users of the Take Command replacement command processor.
13.10 On Unix, the set-font command's Default button now tries additional font names when its usual default font is not installed, just as Epsilon does at startup.
13.10 Indenting in both C mode and Tcl mode could get confused at the very end of a buffer, in certain cases.
13.10 Javascript indenting no longer gets confused by syntax that resembles a label in C.
13.10 C mode now correctly colors identifier names over 500 characters long.
13.10 Comment filling in C mode handles more punctuation as part of the text to be filled, and avoids adding extra spaces in certain cases.
13.10 Various paragraph-related commands are a little smarter. Filling paragraphs now respects a mode's restrictions on line breaks.
13.10 In Perl mode, coloring now understands variables with package qualifiers within interpolated strings.
13.10 Tagging C code no longer gripes about certain uses of commented-out mismatched parentheses following a function name.
13.10 Displaying a list of tags now honors the tag-display-width variable in more contexts.
13.09 C mode comment handling was incorrect at the end of the buffer and in other cases.
13.09 Dired couldn't delete NTFS junctions.
13.09 The EEL compiler no longer crashes when it sees a certain invalid use of the & operator, but diagnoses the error.
13.09 The -m0 flag could make Epsilon run out of memory sometimes.
13.08 In version 13.07 only, C mode could hang while parsing certain forms of comment syntax.
13.08 On Mac OS X and Linux, Epsilon's X11 dialog helper program no longer depends on any external Gtk+ library. Issues with the set-color and set-font commands on Intel-based Mac systems and on 64-bit Linux systems should now be gone.
13.08 Debian and RPM Linux packages now depend on the bzip2 package itself instead of the package containing the libbz2 library.
13.08 Under Vista, the configure-epsilon and create-file-associations commands should now start up more reliably.
13.08 Under Mac OS X, Activity Monitor should no longer incorrectly report that Epsilon is unresponsive.
13.07 The Debian package's dependencies now account for the "ldbl transition" in some Debian package names, and are less restrictive about libc6 versions.
13.07 The find-linked-file command now works in XML mode. In HTML mode it now works correctly in buffers whose URLs lack a file component.
13.07 Epsilon for Windows avoids certain display speedups that can cause glitches on some systems using ClearType.
13.07 Certain instances of Perl variable syntax are no longer miscolored.
13.07 Visual Basic indenting no longer gets confused by certain cases where a keyword appears inside a comment or string.
13.07 Under Unix, the speller configuration routine that downloads and unpacks dictionary files now runs the "tar" command in a way that bypasses any user aliases.
13.07 The Linux install script's logic for adding Epsilon to X11 window manager menus was updated.
13.07 Under X11, repeated kill commands didn't always append to a kill buffer if a clipboard utility like klipper was in use.
13.07 Under Mac OS X, Epsilon's dock icon sometimes kept bouncing even after Epsilon had finished initializing.
13.07 C mode could get confused by comment lines like /***//***.
13.07 The print-destination-unix variable has a new default value that works properly when printing a file whose name contains spaces.
13.07 Comment filling now works better in languages that use comment delimiters like * that are also regular expression characters.
13.07 Filling indented paragraphs didn't always work properly when the next paragraph was also indented.
13.07 Alt-Q didn't run prefix-fill-paragraph as documented in various language modes like TeX and HTML. Now it works in all language modes.
13.07 The down-line command no longer scrolls unnecessarily in some keyboard macros.
13.07 Grep's prompt didn't show the default file pattern in one case.
13.07 Grepping a scratch buffer now identifies it by name in the results, not by the scratch file name Epsilon constructs for it.
13.07 Manually inserting a null character into a grep buffer could make grep-examine hang.
13.07 Selecting the Help/Help Topics command from a menu when Epsilon was set to use HTML-based help didn't ask for the type of help when it should.
13.07 Displaying, setting, and getting help on variables of type "byte" now works the same as with other numeric types.
13.07 HTML coloring recognizes all script type names starting with "vb" as VBScript, not just "vbscript".
13.07 Epsilon no longer gets confused by XML comments that resemble ColdFusion comments (<!--- --->), or by the null HTML comment <!---->. A new variable html-recognize-coldfusion-comments lets you completely disable ColdFusion comment syntax rules in HTML.
13.07 Epsilon now correctly parses HTML entity names containing digits, such as &frac12;.
13.07 Tagging in C mode now parses nested preprocessor conditionals properly.
13.07 A bug in TeX coloring was fixed.
13.07 The undo-movements command now handles narrowed buffers properly.
13.07 File names containing the " character work better with bufed. Bufed now correctly displays buffers bigger than 999,999,999 bytes.
13.07 Dired's refresh command now reports an error if you try to refresh a listing that's still being retrieved. Also, it no longer centers the window on point when it doesn't have to.
13.07 The set-font and set-color commands under X11 sometimes failed to display a message indicating shared libraries were not installed.
13.07 Under X11, if Epsilon's default font isn't available, it tries harder to find a suitable font before falling back.
13.07 The edit-variables command now works as designed when Epsilon is using HTML-based help, as under Unix.
13.07 Under Unix, scp:// access no longer displays certain unwanted messages.
13.07 A long home directory can no longer make scp:// access fail.
13.07 Javascript tagging no longer looks for tags inside a function definition.
13.07 PostScript mode coloring now recognizes the syntax of BeginBinary blocks.
13.07 Mouse movement and other events after typing Ctrl-C would make Epsilon forget you had typed that prefix key. Now the key is treated the same as Ctrl-X in that respect.
13.07 Shell mode has new logic for parsing nested quoting and delimiters of various types, such as $() within "" within ``. Various shell mode parsing bugs were fixed.
13.07 The wait_for_remote_file() subroutine now handles http://, as well as ftp:// and scp://.
13.07 The new subroutine get_key_choice() can be used to ask the user to choose from a list of options.
13.07 The new subroutine bind_universally() can be used to assign a function to a key in all modes with a binding for a generic version of that key.
13.07 The new subroutine vartype_class() tells if a variable is a numeric or a string type.
13.06 Epsilon could crash when it tried to interpret a directory wildcard pattern that had no matches.
13.06 The getenv() and verenv() variables could corrupt memory if they were called repeatedly on a variable that got longer between calls.
13.06 In Epsilon for Windows, file names of the form x:filename, with just a drive letter, could be misinterpreted if Epsilon was changing directories on that drive at startup due to a -dir or -w flag.
13.06 The EEL compiler could misinterpret file names on its command line that used directory names.
13.06 When Epsilon prompted for a number, permitting any arithmetic expression legal in EEL, it failed to handle expressions that used an EEL variable name, but no operator.
13.06 In Epsilon for X11, the cursor variables like normal-gui-cursor now respect the offset setting. As a result, you can now set Epsilon to use an underline cursor, as well as the block (default) and vertical bar cursor shapes, if you configure settable cursors.
13.06 The esetup Unix installer script wasn't correctly diagnosing when the eupdate updater script needed to run.
13.05 A problem with Javascript syntax highlighting was fixed.
13.05 A \\ sequence at the end of a line now separates TeX/LaTeX paragraphs.
13.05 Some nested process-related operations, such as auto-decoding of .gz files accessed via scp, didn't work properly. Now Epsilon suspends a process while its EEL handler runs, but permits other processes and their handlers to run normally.
13.05 Perl mode brace matching no longer misinterprets ${ and $} as variables.
13.05 Scp functions recover better when the scp helper program exits with an error.
13.05 Keys like } or : that reindent in PHP mode didn't use PHP's customization variables (like php-indent), but Perl's.
13.05 Displaying the current nesting level of HTML/XML elements could result in excess temporary buffers.
13.05 Remote grepping now skips over directories properly.
13.05 Telnet's message saying the connection had closed didn't always appear at the end of the buffer.
13.05 The Vi/Vim file variables expandtab and noexpandtab, saying whether or not tab keys should be expanded to spaces, were misinterpreted.
13.05 In non-Unicode mode, the Win32 Console version didn't correctly interpret typing some accented characters.
13.05 A highlighted region display problem was fixed.
13.05 In version 13.04, typing Ctrl-@ didn't produce a null character under Windows 95/98/ME.
13.05 Some C# strings confused Epsilon's parenthesis matcher.
13.05 Follow mode now maintains the window position better.
13.05 Setting default-translation-type to certain values caused reading Epsilon's einit.ecm file to fail.
13.05 Under X11, an incompatibility with Synergy keyboard-sharing software when keys repeated was fixed.
13.04 A bug introduced in version 13.03 made text in some dialogs and elsewhere display incorrectly.
13.04 Epsilon for Unix now sets the LANG environment variable in its process buffer initialization script, in case other shell initialization overrides the setting it passes when running a shell.
13.04 The default value of the color-html-look-back variable was increased from 50,000 to 500,000, to prevent problems syntax highlighting HTML with very long comments.
13.04 Epsilon for Windows now better handles the Alt-F6 key (which is special in Windows).
13.04 Filling a region now breaks paragraphs at lines that contain only whitespace characters.
13.04 The EEL function strkeep() was unreliable.
13.04 Some C# floating constants were miscolored.
13.04 Epsilon is better at guessing the right MS-Help2 collection name when providing that type of context help.
13.04 A Caps Lock incompatibility under X11 with the Synergy mouse/keyboard sharer was fixed.
13.04 The telnet_error_converter() sample code provided didn't work right in some types of ssh buffers.
13.04 Displaying the current function name in C mode buffers could get confused by some preprocessor lines.
13.04 The set-color command gave an error after defining a new color scheme.
13.03 A bug introduced in Epsilon for Windows version 13.02 made Epsilon fail to case-fold file names properly on some network and CD file systems.
13.03 Indenting after a Java annotation now repeats its indentation.
13.03 Filling comments now works properly on lines with multiple comment delimiters.
13.03 In C++ files, Epsilon didn't display the right class name in the mode line when there was no space between the class name and an immediately following { character.
13.03 The parse_string() primitive didn't correctly handle certain nullable patterns like ".?$".
13.03 The Windows installer now updates existing Open With registry entries.
13.03 When horizontally scrolling, Epsilon didn't properly display some highlighted regions whose start and end positions were offscreen.
13.03 Windows registry entries to customize how Epsilon runs a shell to execute a program didn't properly interpret the %%b sequence to replace \ with / while interpolating a command line.
13.03 Perl mode miscolored interpolated variables in code like s/(.*)/$1c/.
13.02 Epsilon is now more resilient in the face of incomplete updates. Running a v13.00 exectuable with a more recent state file will no longer produce stray "illegal byte code 214" errors.
13.02 A user-written telnet_error_converter() function will no longer receive an incorrect default directory sometimes.
13.02 The configure-epsilon command's option to set up file associations so double-clicking always starts a new instance of Epsilon now works.
13.02 The next-error command now correctly parses certain multi-line Gnu compiler messages.
13.02 The prefix-fill-paragraph and mail-fill-paragraph commands work better on paragraphs without prefixes, and on highlighted regions.
13.02 Shell mode no longer thinks \ is a quoting character inside single quotes.
13.02 Setting the file-pattern-wildcards variable to disable recognizing square bracket characters didn't work properly.
13.02 Under CUA mode, Ctrl-C didn't always copy in telnet mode buffers.
13.02 Java indentation now positions certain lines following annotation lines to column zero.
13.02 Java syntax highlighting now recognizes words starting with an @ character.
13.02 If the show-when-idle variable was set to display text when Epsilon was idle, certain messages like one from F1 H could remain visible for too long.
13.02 Some date-format settings caused an error in the warning about a file changing on disk.
13.02 Under certain rare circumstances, using the File/Open dialog could make Epsilon crash.
13.02 Epsilon 13.01 for Windows didn't correctly handle national keyboards using dead keys that included the AltGr modifier, such as the Finnish keyboard's key sequence for typing tildes.
13.02 Clipboard handling of Unicode text is now slightly different under X11.
13.02 Epsilon now recognizes the .jy extension for Python files, and Python tagging is now mode-based, not extension-based.
13.02 The set-color dialog under X11 didn't show descriptive text for various color class categories.
13.02 The fpatmatch() primitive's fourth parameter now has an additional flag that treats square brackets like ordinary characters.
13.02 The show_char() primitive's third parameter recognizes two new codes.
13.02 The has-feature variable has a new FEAT_WINHELP_NATIVE bit.
13.02 The is_remote_buffer() subroutine is new.
13.01 Under X11, autosaving, once enabled, could happen continuously until a buffer was explicitly saved. Epsilon now avoids autosaving a file again until its buffer actually changes, and avoids autosaving a file again if an error occurred last time.
13.01 Uninstalling Epsilon for Windows now removes its directory from the system PATH in NT/2K/XP/Vista systems, if necessary.
13.01 The configure-epsilon command couldn't always change the association of a file whose current association had been manually set from Explorer.
13.01 The configure-epsilon command sometimes failed to work around missing Epsilon registry entries, so a bad installation couldn't be uninstalled using configure-epsilon, only Add/Remove Programs.
13.01 C mode no longer misindents certain bitfield declarations.
13.01 File date checking now avoids a bug with certain Windows network configurations that makes them return a zero file length immediately after writing any file.
13.01 The indent-region command displayed bad progress messages on very large regions.
13.01 Shell mode coloring got confused by some non-comment uses of the # character.
13.01 Coloring of "here documents" in various modes wasn't correct when the delimiter word included digits.
13.01 In certain cases when goto-tag displayed a list of matching tags for the same identifier, Epsilon wouldn't go to the one selected.
13.01 Sending a file to Epsilon via the -add flag now interacts better with the file-modified dialog, postponing adding the new file until the dialog closes. The reject-client-connections variable has a new bit.
13.01 In Epsilon for Windows, the -add flag now works properly when the current directory name contains spaces.
13.01 Epsilon for Windows didn't always refresh the screen properly following a font change.
13.01 In Epsilon for Unix, the shell() primitive didn't always wait for the process to finish.
13.01 Epsilon crashed when trying to report an error in a command file, if that command file had earlier successfully loaded a different command file. This could happen, for instance, if an einit.ecm file called brief-keyboard and then tried to set a variable using a wrong name.
13.01 When displaying line numbers with wrapped lines, paging could misposition point. Several other commands didn't work properly with line numbers either. The text_width() primitive no longer counts line number columns, but only text; the new window_content_width() primitive counts both text and any columns used for line numbers.
13.01 An internal limit on the number of simultaneous subprocesses, internet connections, and similar background tasks in Epsilon for Unix was removed.
13.01 On Intel-based Mac systems running X11, clicking Epsilon's dock icon when Epsilon was already running could cause the existing instance to exit without warning.
13.01 The einstall script for installing from CD-ROM didn't work properly on Linux and FreeBSD systems.
13.01 A bug in highlighted region handle assignment could cause errors when using pull-word from a prompt with spell highlighting enabled.
13.01 Under X11, Dired's v subcommand failed to launch the appropriate program when using Gnome associations.
13.01 Epsilon for Windows didn't recognize the Ctrl versions of certain characters that don't have Ctrl versions in Ascii, such as Ctrl-%.
13.01 The brief-keyboard and epsilon-keyboard commands didn't undo certain changes made by the cua-keyboard command.
13.01 Aborting from a synchronous buf_pipe_text() now works properly under Unix.
13.01 When Epsilon inserts text from a process into a buffer, it no longer runs the on_modify() function.
13.01 Epsilon for Unix failed to start when NSS services weren't available and the DISPLAY environment variable used the syntax "unix:0.0".
13.01 Reverse regular expression searching failed for certain patterns with many nested parentheses.
13.01 Epsilon got an error trying to load certain EEL bytecode files that defined many global structure variables.
13.01 If you have a beta version installed, the Windows installer now asks whether you want to update it in place (the default) or install to a separate directory.
13.01 Under X11, if Epsilon can't load its default font, and no other font was specified, it now cycles through all available fonts until it finds one it can use.
13.01 Aborting a search while a concurrent process was actively producing output could make process command history, coloring, and other features stop working. Epsilon now handles aborting from inside a when_activity() handler better.

Last Updated: 7 November 2020