Worker file manager

1. Start prog

The "start prog" command can be used to execute any external command interactively by entering the name of it at runtime (in contrast to the own command which executes pre-configured commands only). The dialog can be opened by clicking on the "start prog" button or pressing Ctrl-x twice.

The command to execute can be entered in the text field. The string will be executed by a shell so some but not all shell features are available and special characters need to be protected correctly.

The name of the current list view entry is put into the text filed at the beginning so the external command can get the file name directly without typing it in again.

The options for the command execution are similar to the own command. Also, the same flags as for the own command can be used, for example to include all selected entries as additional arguments. This is available since version 3.5.1.

Similar to the own command, the output of the executed command can be shown either inside a terminal, using an external viewer, using the internal viewer, showing it in the text view mode, or as a custom file entry attribute.

1.1. Parsing and character protecting rules

Here is short description about how the final command is created and how to protect special characters in the string.

  1. The entered string will be parsed with the same mechanism as for the own command. Therefor the characters { and } has a special meaning to describe the flag to be replaced. If you want to have one of these characters in the final string, you need to put a backslash before it. The same is true for a backslash itself, when it should be part for the command, a double backslash must be used.
  1. After parsing, the resulting string is split into whitespace separated words which will be single-quote protected to avoid arbitrary command execution (with special crafted file names). Because of that, if you enter a command or file name with spaces in it, you have to protect them with backslashes (in this case with double backslashes, because of the previous step of parsing and replacing flags). The current file name is the default content of the command text field and this file name is already modified so that any special character in the file name is modified accordingly.

1.2. Command completion

A command completion is available based on the previously used commands. You can start typing and the next best match is automatically suggested. The list view below the text field also contains all other matches which can be selected by pressing cursor up or down. If the completion mechanism hinders the text entry, it can be disabled by changing the cursor position with left or right cursor key. Once this is done, no more automatic suggestions are inserted but the list view with matches is still updated.

The completion history is separated for each file type, each mime type for unknown file types, and all file types. This makes it easier to access the commands executed for a specific file type.

Also, the stored history includes the command settings which are automatically restored when choosing an entry from the history.

1.3. Handle as different file type

It is also possible to handle the current element as a different file type, for example if the recognition was wrong are did not worked as expected. By pressing F2 or selecting the corresponding tab, the list of available file types is shown and the type can be selected from this list. Worker will then execute the double click action of the selected file type.

A filter can be used to find a specific file type more easily.

1.4. Handle as specific archive type

Worker uses the virtual file system AVFS (VFS) to allow looking into archives and remote sites. When pressing Enter on an archive, Worker will usually enter the archive and show its content. Worker relies on the automatic archive handling of AVFS (which is used by adding a single hash sign to the file name). If this mechanism does not work, specific archive handler can be used in the third tab (press key F3 to show it). In this dialog, you can select the archive handler from all handlers registered to AVFS or enter any combination of handlers.

Example: Sometimes a zip archive is named as a .zip file and the file type recognition may not work (or is disabled). In this case it is possible to manually select the "uzip" handler to let AVFS unzip the archive.