Lugaru's Epsilon
Editor 14.04

Epsilon User's Manual and Reference
   Commands by Topic
      . . .
      Buffers and Files
         File Variables
         . . .
         Buffer List Editing
      Starting and Stopping Epsilon
         Session Files
         File Associations
         Sending Files to a Prior Instance
         MS-Windows Integration Features
      Running Other Programs
         The Concurrent Process
         Compiling From Epsilon
      . . .

Previous   Up    Next
File Associations  Commands by Topic   MS-Windows Integration Features

Epsilon User's Manual and Reference > Commands by Topic > Starting and Stopping Epsilon >

Sending Files to a Prior Instance

Epsilon's command line flag -add tells Epsilon to locate an existing instance of itself (a "server"), send it a message containing the rest of the command line, and immediately exit. (Epsilon ignores the flag if there's no prior instance.)

The command line flag -noserver tells Epsilon that it should not respond to such messages from future instances.

The command line flag -server may be used to alter the server name for an instance of Epsilon, which is "Epsilon" by default. An instance of Epsilon started with -server:somename -add will only pass its command line to a previous instance started with the same -server:somename flag.

An -add message to Epsilon uses a subset of the syntax of Epsilon's command line. It can contain file names to edit, the +linenum flag, the -dir dirname flag to set a directory for interpreting any relative file names that follow, the flag -dvarname=value to set an Epsilon variable, -lfilename to load an EEL bytecode file, or -rfuncname to run an EEL function, command, or macro. Use -rfuncname=arg to run an EEL function and pass it a single string parameter arg. Epsilon unminimizes and tries to move to the foreground whenever it gets a message, unless the message uses the -r flag and doesn't include a file name.

Spaces separate file names and flags in the message; surround a file name or flag with " characters if it contains spaces. In EEL, such messages arrive via a special kind of WIN_DRAG_DROP event.

You can also use the -wait flag instead of -add. This causes the client Epsilon to send the following command line to an existing instance and then wait for a response from the server, indicating the user has finished editing the specified file. Use the resume-client command on Ctrl-c # to indicate this.

Epsilon for Windows normally acts as a server for its own internal-format messages, as described above, and also acts as a DDE server for messages from Windows File Explorer. The -noserver flag described above also disables DDE, and the -server flag also sets the DDE server name. The DDE server in Epsilon uses a topic name of "Open" and a server name determined as described above (normally "Epsilon").

When Epsilon gets an -add message, it tries to move itself to the top of the window order (unless the message used the -r flag and specified no file; then the function run via -r is responsible for changing the window order, if desired). Under Epsilon for X11, the server-raises-window variable controls this behavior.

Standard bindings:

  Ctrl-c #  resume-client

Previous   Up    Next
File Associations  Commands by Topic   MS-Windows Integration Features

Lugaru Epsilon Programmer's Editor 14.04 manual. Copyright (C) 1984, 2021 by Lugaru Software Ltd. All rights reserved.