AnotherOS

Documentation

Rastinis — the file manager

The Finder, the desktop, and how an application declares the documents it opens.

Rastinis is the file manager, styled after the Snow Leopard Finder. It is also the desktop: run with --desktop it draws your Desktop folder on the wallpaper.

Every copy, move, trash and undo runs in the background through the file-operation engine, in a child process, so a window never stops drawing while files move.

Context menus

Right-click, click with two fingers on a trackpad, or Control-click.

On Items
An item Open, Open With, Move to Trash, Get Info, Rename, Compress, Duplicate, Make Alias, Show Original, Quick Look, Copy, Copy as Pathname
Several items The same, counted — "Compress 3 Items"
An item in the Trash Put Back, Delete Immediately, Get Info, Quick Look, Copy
A search result Adds Show in Enclosing Folder
The background New Folder, Get Info, View, Sort By, Show View Options, Paste Item; Empty Trash inside the Trash

A right-click on an item that is not selected selects it alone; on one that is selected it keeps the whole selection. So the menu always acts on what is highlighted.

Keyboard

Keys Action
Cmd-N / Cmd-T / Cmd-W New Window / New Tab / Close Tab
Cmd-Shift-N New Folder, and start typing its name
Return Rename
Cmd-O, Cmd-Down Open
Space, Cmd-Y Quick Look
Cmd-I Get Info
Cmd-D / Cmd-L Duplicate / Make Alias
Cmd-Delete Move to Trash — Put Back inside the Trash
Cmd-Shift-Delete Empty Trash
Cmd-C / Cmd-X / Cmd-V Copy / Cut / Paste — the pasteboard remembers which
Cmd-Opt-V Move Item Here
Cmd-Opt-C Copy as Pathname
Cmd-Z / Cmd-Shift-Z Undo / Redo
Cmd-A, Cmd-F Select All, Find
Cmd-1 / Cmd-2 / Cmd-3 As Icons / as List / as Columns
Cmd-J Show View Options
Cmd-[ / Cmd-] / Cmd-Up Back / Forward / Enclosing Folder
Cmd-Shift-G Go to Folder — type a path; ~ is home
Cmd-K Connect to Server
Cmd-Shift-. Show Hidden Files — everywhere
Letters Select the first item whose name starts with them

Select by clicking, Cmd-click to add or remove, Shift-click for a range, or drag a rubber band over empty space.

Drag items onto a folder, a sidebar place, another window or the desktop: on the same volume they move, across volumes they copy. Hold Option to force a copy, Command to force a move.

Views

  • Icons, with the size in View Options.
  • List — click Name, Date Modified, Size or Kind to sort, again to reverse. The triangle beside a folder shows its contents inline.
  • Columns — choosing a folder opens it in the next column; Left and Right move between them.
  • A path bar above the status bar; click a component to go there.
  • The sidebar: Favorites, Devices (every mounted volume), and Places.

Hidden files, and the presented root

Shift-Cmd-period shows and hides hidden files everywhere at once. It is one system setting, not a per-window switch: pressing it in a Finder window also reveals them in every open and save dialog in every application, and a dialog opened afterwards already agrees. It works inside a dialog too. The setting is remembered across restarts.

Hiding is the default, and it means two things:

  • a name beginning with a dot is hidden, as everywhere else;
  • at the root of the system disk only Applications, Users and System are shown. /etc, /usr, /bin and the rest are all there, and Shift-Cmd-period reveals them — but the root reads as a volume rather than as a raw Unix tree.

An individual item can also be hidden by attribute, from the item menu's Hide. That is a fact about the file and is independent of the dot rule; Shift-Cmd-period reveals both.

View options

View → Show View Options holds icon size, sort order, show hidden files, show path bar, and two more below. All of them are remembered, so a choice survives quitting.

Calculate all sizes

Off by default, and list view only — that is the only view with a Size column. With it off a folder's size reads --, exactly as the Finder does.

With it on, the folders you are looking at are measured in the background and each row fills in when its own answer arrives. Nothing is measured for a row you are not looking at, scrolling away cancels work that has not started, and navigating away abandons a walk already running: a deep tree on a slow disk is the expected case, not the edge case.

Sizes are re-measured after any copy, move or trash, because a file written three levels down does not change the folder's own timestamp.

Sorting by size while folders are still being measured puts the measured ones in size order and groups the rest after them by name — in both directions, so rows still being computed do not jump across the window when you flip the sort.

Show icon preview

Off by default. A PNG, JPEG or KVI file draws its own picture instead of the generic image icon, in every view.

Anything else — and a picture whose thumbnail has not been made yet, and one that fails to decode — keeps its type icon, so a file always has an icon.

Thumbnails are produced off the interface thread and cached; the interface never waits for one. Only files on screen are decoded, and very large ones are skipped.

Conflicts, progress and Undo

Copying or moving onto an existing name asks: Keep Both (the new item becomes "name 2"), Replace (the existing item goes to the Trash — Rastinis never deletes on Replace), Skip or Stop, with Apply to All for the rest of the operation.

An operation still running after half a second shows a progress panel with a stop button, and stopping removes the half-copied item.

Undo reverses the last move, rename, trash, copy, duplicate, alias or new folder — an undone copy goes to the Trash rather than being deleted. Redo reverses the Undo.

Get Info shows kind, size (a folder is measured in the background), location, modification date, an alias's original, where a trashed item came from, Locked, Open With — choosing an application there makes it the default for that file type — and read/write permissions for owner, group and everyone.

Quick Look previews text, PNG and JPEG. Anything else shows its name, kind, size and date; there is no PDF renderer yet.

Search filters the folder as you type, and the scope bar switches to "and subfolders", which lists matches anywhere below with where each one lives.

For application developers: declaring document types

An application says which files it opens in its bundle's Contents/Info:

Name=AEdit
Exec=aedit
Icon=aedit.kvi
Documents=txt,md,c,h,sh

Documents= is a comma-separated list of extensions, or * for anything.

Rastinis lists every declaring application under Open With, uses the default on a double-click, and passes the file as the application's first argument. The user's per-type default is remembered in their own profile, so choosing "always open with" does not modify your bundle.