VLE-Ben User Manual

A keyboard-first two-pane filer. The mouse works too; this manual centers on the keys.

Requires macOS 12 (Monterey) or later.

How the screen is laid out

  • In the blue and black themes, the focused title is a white bar with black text. FILER, FTP, VIEWER, EDITOR, SEARCH, TREE, and GALLERY sit on a cyan bar with black text. When a pane is inactive, that name is cyan text. In the white theme, the focused header is dark blue
  • The toolbar at the top is a hint of the commands. While Shift is held it switches to the ⇧ keys. While fn is held it switches to F3–F8
  • The status line at the bottom shows the selected file’s attributes, owner, size, date, and name. While Shift is held it switches to free space on mounted local disks. When the current location is Samba or FTP, only that drive is listed. In two panes it follows the active side. The filer title’s right side shows the file count. .. is not counted. With tags it shows 3 / 12, then the sort. With no tags it shows only the file count. On the active bar the count inverts so it stays visible. Search shows the number found the same way, 3 / 12 when files are tagged. The leave hint is on the bottom row. The tag count and tag marks stay on that pane when it is not active. They are not shown on the preview. While Quick Look is showing, the right end says QuickLook. Image and video previews show pixel size and camera name at the right end

Layout

KeyScreen
⇧1 / ⌘1Single Filer Mode. Left filer + right VIEWER (startup default)
⇧2 / ⌘2Dual Filer Mode. Filer on both sides. Search, the viewer, the editor, and the gallery open on the focused side
GGallery on that pane. G again returns to the filer
F / ⌘FFile search. In Dual Filer Mode, on the focused side. Two searches stay separate
WSwitch between Single Filer Mode and Dual Filer Mode. Dual Filer Mode activates the right pane. Single Filer Mode activates the left. An unsaved editor asks before the switch

In Dual Filer Mode, the header of the side that does not have focus is a gray bar.

The window title is VLE-Ben - FILER: path: VLE-Ben, then the focused header. The tab name is only that header. A filer shows FILER: path, and an editor or viewer shows EDITOR: name. An unsaved editor adds * after the name.

Useful first steps

  1. On a folder you return to often, press ⇧O (set as the startup folder) so O can bring you back
  2. On folders you visit often, press + to add them to the J jump list
  3. To read text one file after another, turn P (always-preview) on (meant for Single Filer Mode)

Moving

KeyAction
↑ ↓Move the cursor in the list
⇧↑ ⇧↓Select a range from the current row (same as ⇧-click. A plain ↑↓ clears the range)
⌘ASelect every file and folder on screen (.. is left out. In a text field or the EDITOR it selects all text)
Home / EndFirst / last row
Page Up / Page DownOne page
EnterEnter a folder or archive. A symbolic link to a folder opens the target; a link to a file moves to that file’s folder and selects it. While extensions are shown, applications and document packages are entered as folders. While they are hidden, you stay outside. A disk image is mounted and you move onto that volume.
Backspace / -Go to the parent (leave an archive). At the root of a disk image, go to the folder that holds the image
TabSwitch focus between left and right. The editor does not switch
⇧TabIn two panes, swap the contents. Focus stays on the same side. The editor does not swap
⌃Tab / ⌃⇧TabNext tab / previous tab
← →Move between panes (in the tree, collapse / expand)
⇧← ⇧→Always move focus to the left or right pane
⌘← ⌘→Move focus between panes in every layout
H / ~Go to the home folder
/Go to the root (/)
OGo to the startup folder. If none is set, or that folder is gone, go home
⇧OSet the folder you have open as the startup folder
VMove from the list of mounted volumes. A removable volume is unmounted with the icon on the right or with U, after a confirmation.
BFolders left since launch. The previous folder is first. Choose one to go there
JJump (remembered folders)
⇧JOpen a saved pair of left and right folders
+Add the folder you have open to Jump

Back (B)

  • Lists folders left since launch, newest first. The folder open now is omitted
  • The previous folder is selected. Enter returns there
  • 1–9 and a click go there too
  • The list clears when the app quits

Jump (J)

  • 1–9 in the list jumps immediately
  • The list shows only the bookmarks for the volume you have open. Macintosh HD, an external disk, Samba, and an FTP connection each have their own list
  • Home moves to the filter field
  • Del deletes a bookmark
  • S on a row asks, then sets that path as the startup folder. An FTP bookmark cannot be the startup folder
  • On FTP, + remembers that connection’s folder

Pairs (⇧J)

  • ⇧J opens the list of saved left-and-right pairs
  • 1–9 and Enter open that pair on both sides at once. The screen becomes two filers
  • + in the list remembers the left and right folders you have open. Both sides must be folders. A folder inside an archive, or a right side that is the viewer, is not remembered
  • Del removes that pair. Esc closes the list
  • If either folder is gone, neither side moves, and the pair is removed from the list
  • An FTP folder can be remembered

Tree (T)

  • The tree root is the folder open when you press T
  • ← → collapse and expand. → on a folder that is already open moves to the file list on the right. After the folder changes, the cursor is on the first file
  • Enter moves into that folder and returns to the ordinary filer
  • Esc leaves the tree and stays in the folder you had open

Viewing (VIEWER)

  • Enter on a file (or move the cursor while always-preview is on)
  • The title and the name below match the filer
  • In Dual Filer Mode, the viewer opens on the focused side. The other side stays. Esc and Backspace restore the filer that was under that side
  • When the right pane has focus, ↑ ↓ scrolls the text by one visible line, or advances a Quick Look preview. Move between panes with Tab, ⇧Tab, and ←→. E opens the EDITOR. ⇧1–⇧2 change the layout

What each kind looks like

KindAppearance
FolderAlways-preview shows the icon. The name follows the filer, including extensions and localized names
TextUp to about 64 KB from the start. BOM, then strict UTF-8, then UTF-16 from a NULL pattern, then the Mac language (Japanese: CP932 / Shift_JIS, EUC-JP, Windows-1252. Western languages try Windows-1252 first)
Markdown (.md / .markdown)Headings are colored and table columns line up. E shows the source
HTML (.html / .htm)The VIEWER shows only the text of the body. E opens the source in the EDITOR
ImageScaled to fit the pane. Pixel size and camera name appear at the right end
APNG / animated GIFA still frame, plus a frame stepper at the upper right
PDFPage view. With focus on the right pane, ↑↓ scrolls
Application (.app)Always-preview and search show the icon, with the file name under it
Document package (.pages / .key / .numbers / .rtfd / .egwud / .egwut)Always-preview shows a preview. Enter steps inside while extensions are shown. While they are hidden, you stay outside. The preview is the same. An old Keynote is not previewed
VideoQuick Look, and it does not autoplay. .mov has playback controls and opens paused. Pixel size and camera name appear at the right end
AudioQuick Look, and it does not autoplay
Word-like (.doc and similar)Text is extracted when that works. Otherwise Quick Look
Disk image (.dmg / .sparseimage and similar)Enter mounts it and moves onto that volume. A writable image allows copy, move, and delete inside. Going to the parent from the root returns to the folder that holds the image

A large text file is cut off if loading takes too long. Speed comes first.

Always-preview (P)

When it is on, the right pane follows the selection in the list. While the selection is cleared, the right pane is empty too. The next ↑ or ↓ shows that file again. While extensions are shown, Enter steps inside; while they are hidden, you stay outside. The preview is the same. An FTP folder is not downloaded; the right pane says “Always-preview does not run for FTP”. A file that was opened once and is still cached is shown from that cache.

Editing (EDITOR)

  1. Open a text file in the VIEWER (or select it)
  2. E (or ⌘E) enters the EDITOR
  3. ⌘S saves
  4. Esc goes back (unsaved changes ask first). In Dual Filer Mode, a preview returns to that preview, and a filer returns to that filer

Notes:

  • Files of 256 KB or more cannot use the built-in EDITOR. Use X and an external app
  • A file inside an archive cannot be edited or saved
  • Click the encoding at the right end of the status line to change it. Besides UTF-8, UTF-16, CP932, Shift_JIS, and EUC-JP, you can choose Windows-1252 / 1250 / 1251 / 1253 / 1254 / 1257, GB18030, Big5, EUC-KR, and CP949. Japanese Shift_JIS-family text is Shift_JIS unless bytes F0–FC appear, in which case it is CP932. Saving keeps the encoding the file was opened with
  • A column ruler appears at the top of the EDITOR
  • Tab and ⇧Tab do not move focus or swap the panes
  • A file has one editor. If the other pane, another tab, or another window is already editing it, focus stays here and an error is shown

Working with files

Tags

KeyAction
SpaceTag a file and move to the next row (folders cannot be tagged. Files inside an archive can). When the right preview has focus, Space scrolls the preview down one screen
⇧SpaceClear tags on the focused pane. When the right preview has focus, the preview scrolls up one screen
YTag by wildcard (for example *.pdf). Files inside an archive can be tagged

When any file is tagged, copy, move, and delete use the tags on the focused pane. Moving to another folder on that pane clears that pane’s tags. Moving the cursor or the folder on the other pane does not. With no tags and no mouse selection, copy and move use the file or folder under the cursor, and delete uses the file under the cursor (delete a folder with ⇧D).

Mouse (the same selection as Finder)

You can work on items in the current folder with the mouse. This is separate from tags (*).

  • A click selects that one item. A click on empty space clears the selection. The status line, Enter, and Copy leave that row alone. The next ↑ or ↓ brings the cursor back to that row (Esc does not clear it). While always-preview is on, the right pane goes empty too. A viewer opened with Enter while always-preview is off stays open
  • A right-click on empty space shows only New File and New Folder
  • ⌘-click adds or removes an item (a row already chosen from the keyboard stays)
  • ⇧-click selects a range from the previous position
  • Drag a selection onto a folder row (including ..) and choose copy or move into that folder
  • A drop on empty space in the other filer (not on a file row) uses that pane’s current folder as the destination
  • Files dragged from Finder drop onto a folder row or a pane the same way. A drop from the other pane onto FTP does the same: the upload goes to the open current folder no matter which row you drop on (asks first. Folders can be sent too)
  • With two or more items selected, C / M use that selection (folders may be included)
  • A right-click on a row opens a menu for that item (Preview, Enter, Exec, Edit, Rename, Attr, Tag, Copy, Move, Delete, Compress, Extract, New Folder, New File). A right-click inside a multi-selection keeps that selection. A right-click on an unselected row selects that one row. A file shows Preview (the VIEWER). A folder or archive shows Enter (step inside). Exec opens the file in its associated app
  • A right-click on a filer pane title offers Copy Full Path, Open in Terminal, and Show in Finder. Terminal and Finder use the local folder you have open. They are unavailable on FTP and inside an archive. A viewer title offers Copy Full Path and Copy Name

Copy, move, delete, and the rest

KeyAction
CCopy. Out of a ZIP, and into a ZIP, both work
MMove (a move inside the same folder is refused). Inside a ZIP, the item is removed after it has been copied out. A read-only archive refuses the move
DDelete (tagged files, or the file under the cursor). Inside a ZIP, that item is removed from the archive
⇧DDelete the selected folder. Inside a ZIP, that folder and everything under it are removed
N / RRename
KNew folder
INew empty file
AAttributes (mode, date, time). The file name is shown in full at the start. Owner / Group are displayed
XOpen in the associated app (choose when there are several)
⇧XType arguments after the file under the cursor and run it once in the current folder. Enter runs, Esc cancels. A file with the execute bit, or .sh .bash .zsh .command, can be run. Words inside quotes are one argument. Pipes and other commands cannot be entered. When it finishes, the result is shown. If there is no output and the exit code is 0, it says “Finished”. Unavailable inside an archive and on FTP
ZZIP compress. Confirm the file name and press Enter. One item starts as “name.zip”; several start as “Archive.zip”. A name without an extension gets .zip. If that name already exists, the prompt shows a warning
UExtract. Confirm with Enter (Esc cancels). The right-click Extract command asks the same way. The zip / tar / tgz / lzh under the cursor is unpacked into the current folder. A single top-level folder stays as it is. Loose items go into a folder named without the extension. Existing files are not overwritten. If that folder already exists, nothing is extracted. A zip also restores the execute bit, symbolic links, and the zip's quarantine, so an extracted app can launch. Unavailable inside an archive and on FTP

Where a copy or move goes

  • Dual Filer Mode: the other pane, when that pane is a filer or the gallery. Confirmation is enough. When the other pane is search, the viewer, or the editor, type a path. A single-file copy shows that file name at the start of the prompt
  • Single Filer Mode: type a destination path. A relative path is from the current folder. Enter on an empty field uses the folder you have open. A single-file copy shows the file name instead of a count
  • When the destination is the current folder and that file is already there, type another name. Enter with the same name warns and does not close

Changing how the list looks

KeyAction
⇧FFilter the names on screen. Esc ends it
SSort (name / date / size). The current sort is on that pane’s bar, as SORT:NAME. A click cycles NAME → TIME → SIZE
LLocalized names (Documents becomes 書類, and so on)
.Show or hide hidden files
⇧.Show every filename extension (the same idea as Finder. Off follows each file’s “hide extension” flag). .localized is hidden while this is off and shown while it is on. On: applications and document packages open as folders, and the extension is shown. Off: they stay packages and you do not enter them. The preview is the same

The first time, extension display follows Finder’s “Show all filename extensions”. After you toggle ⇧. once, the app keeps its own setting. The size column of a package (an application or a document) is that file’s size, not a folder’s <DIR>.

That pane shows the same files as the filer, as thumbnails and file names. Images use a thumbnail. Other files use an icon. The title bar matches the filer. Preview, Enter, and the right-click menu match the filer. When a file has no preview, the viewer shows its icon. In Single Filer Mode it is on the left. In Dual Filer Mode it is on the focused side. G again returns to the filer.

File search (F / ⌘F)

The left pane becomes search. Spotlight looks under the folder you name. From the top: Place, then Find.

Place starts as the current folder when search opened. The name follows localized names. Editing the path limits the search to that folder and below. ~ and a path relative to that current folder both work. An empty field returns to the current folder from when search opened.

Find is one word. Nothing is searched while it is empty. There are no wildcards.

Match is Name only or Include text. It starts as name only. Include text searches both file names and indexed contents under that place. On that row, ←→ or Space switches it.

  • Each row uses the ordinary list layout: name, size, date, and the same colors as the filer. While a search is running, that status sits at the bottom
  • ↓ enters the results, and ↑↓ moves in that list. The right preview and the bottom status follow that file. The cursor in the current folder does not move
  • On a result, Space tags (not a folder), C copies, M moves, D deletes. Existing tags are the target. → moves to the preview on the right. While the preview has focus, Space / ⇧Space scroll it one screen, and tags or copy do not reach the results. Tab or ← returns to search. ⇧2 makes the right side a filer, and you can copy or move there. ⇧→ moves to the right pane. ⇧1 returns to the preview
  • E edits, X opens externally (depending on the item)
  • A right-click on a result selects that row and opens a menu. A file offers Preview, Exec, Edit, and Tag. A folder, a compressed file, or a disk image offers Enter. Open Containing Folder moves to that folder and selects the file
  • Enter on a compressed file in the results opens it. .. or Backspace goes to the parent. At the top of the archive, that is the folder that holds the file. Esc returns to the search results
  • Enter on a disk image (.dmg / .sparseimage and similar) mounts it and moves onto that volume. Going to the parent from the root returns to the folder that holds the image
  • Esc ends search. Tags made in search are cleared and do not stay on the filer count

Colors

ColorMeaning
CyanFolder
Pale greenFolder shown with a localized name
YellowCompressed archive, disk image (.dmg and similar)
WhiteFile you can read and write
PurpleFile you can read but not write
BlueFolder you cannot open
RedFile you cannot open

Refresh

KeyAction
⌘RReload the focused side
⇧⌘RReload both sides

Folders are watched and refresh when something outside the app changes them (the inside of an archive is not watched). Bringing the window forward reloads as well.

Quit

Q asks “Quit?” and then quits. ⌘Q quits without that question. When the editor has unsaved changes, both ask “Save?”. Save writes the file and then quits.

FTP

FTP Connection… on the VLE-Ben menu stores explicit-FTPS connections. It opens on the list. Order is by server name, and by account name when the server is the same. ↑↓ selects a row, and Enter opens that setup. New starts a blank setup. In the setup, ↑↓ moves between fields. Space toggles FTPS and passive. Enter saves and returns to the list. Esc returns to the list without saving. On the list, Del asks before deleting, and Esc closes. A password no other connection uses is also removed from the Keychain. The defaults are explicit FTPS, port 21, and passive. To enter a public folder, put /public_html in the start folder. The password stays in the keychain.

In the V volume list, disks come first, then iCloud Drive when you use it, then the saved FTP connections. A removable disk has an icon on the right of the row; click it or press U to unmount after a confirmation. The startup disk has no icon. The label is user@server, in the same order as the FTP setups (server name, then account name on the same server). Enter on an FTP row opens the start folder. In one pane (viewer or gallery) that is the left side; in two panes it is the selected side. The other pane stays as it is, so both sides can be FTP. Enter on a folder, and .. goes to the parent. You cannot go above the server root. The left of the title says FTP. The dot on the right of the title stays visible even when that pane is inactive. Green means connected; red means disconnected.

Transfers and deletes show the file name and File 2 / 5. Esc cancels. A drop of files or folders from the other pane or from Finder uploads into the open current folder. The confirmation is the same as C. C copies to the other pane. The prompt shows From and To. Move (M) is the same. Delete (D / ⇧D) shows only From. FTP to local is a download, local to FTP is an upload, and FTP to FTP downloads to local first and then uploads. In one pane, type a local absolute path. You cannot copy into the same folder, or copy a folder into itself. After you confirm, a name that already exists directly in the destination asks overwrite, skip, or abort. ⇧Enter applies that choice to the remaining names. D deletes tagged files or the file under the cursor from the server. ⇧D deletes the folder under the cursor. Nothing goes to the Trash. N renames, K makes a folder, and I makes an empty file. Enter on a file downloads it once and views it. Always-preview does not run on FTP; the preview says “Always-preview does not run for FTP”. A file that was opened once and is still cached is shown on the right. E downloads to a temporary file, and saving sends it back to the server.

Language and display

Save on the File menu writes the editor’s contents. It is gray when the editor is not open.

From the Edit menu:

  • Search Files… (⌘F)
  • Right Pane: Editor (⌘E)

From the View menu:

  • Single Filer Mode (⌘1), Dual Filer Mode (⌘2)
  • Refresh (⌘R), Refresh All (⇧⌘R)
  • Language: System / Japanese / English / Deutsch. Japanese when the system language is Japanese, German when it is German, and English otherwise. Manual on the Help menu opens the website manual that matches the display. Website opens the site: the Japanese site, the English site, or the German site. The Help menu search field looks through the help book inside the app. Those pages follow the language of the Mac, which can differ from the language shown in the app
  • Color Theme: Blue (Retro) / Black (Dark) / White (Light). The default is blue. It does not follow the system dark or light appearance
  • Font Size: the monospaced size of the UI

Toolbar order (reference)

With no modifier:

C M D N K I A X Z U · E T G P W · F S L · B J H O V Y · Q

While Shift is held:

⇧D ⇧X ⇧Space ⇧. ⇧O ⇧J ⇧F · ⇧← ⇧→ · ⇧1 ⇧2 ⇧3 ⇧4

While fn is held:

F3 F4 F5 F6 F7 F8 (Enter, edit, copy, move, new folder, delete. The same as E C M K D)

(Labels follow the display language. For example X = Exec, P = Preview.)

The status chips at the right end also toggle when clicked. PREV is always-preview, .* is hidden files, and EXT is filename extensions. The sort is on the pane bar.

When the active pane is FTP, unavailable commands are dimmed: move, attributes, exec, Shift-X, compress, tree, extract, wildcard, and set startup folder. Move is also dimmed when the other pane is FTP. Gallery and file search are dimmed when the left pane is FTP. On a row’s right-click menu, exec, attributes, move, and compress are unavailable under the same conditions.

Filer key bindings (letters)

FDclone (lowercase only), FILMTN, and VLE-Ben. An em dash means no binding.

KeyFDcloneFILMTNVLE-Ben
AChange attributesChange attributesChange attributes
BBackup to tape—Back
CCopyCopyCopy
DDelete fileDelete fileDelete file
EEdit fileStart editorEditor mode
FFile searchFile searchFile search
G——Gallery
HRun a child processChange directoryGo to the home folder
IFile system informationCreate an ish/maj fileNew empty file
J—Directory jumpDirectory jump
KMake directoryMake directoryMake directory
LChange directoryChange current driveToggle localized names
MMoveMoveMove
N—RenameRename
O——Go to the startup folder
PCompressAlways-preview
QQuitQuitQuit
RRenameRunRename
SSortSortSort
TTree viewTree viewTree view
UExpand archiveExtract / restore ish·majExtract
VView fileShow fileChoose a volume
WWrite the displayed directoryWrite the sort resultSwitch layout
XExecute fileExecute commandOpen by extension
Y—Change wildcardBulk wildcard
Z—Compress COM/EXEZIP compress

When something does not work

  • A protected folder will not open — if macOS asks for permission on Documents, Desktop, or similar, allow it. If you need it, also consider Full Disk Access in System Settings
  • An lzh will not open — lsar/unar or lha (Homebrew or similar) has to be installed separately
  • A network volume — mount it again in Finder, then press ⌘R
  • A disk image — .dmg / .sparseimage and similar mount with Enter. An image that needs a password follows the prompt macOS shows