Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,32 @@ All notable changes to Open Stus are recorded here. The format follows

### Added

- **Archives open in the panel.** Enter (or `Ctrl+PgDn`) on a zip - and its relatives jar, war,
nupkg, vsix, whl, apk - a tar, a `.tar.gz` / `.tgz` or a lone `.gz` walks into it as if it were a
folder: the title and the prompt show `...\tools.zip\bin`, `..` climbs back out onto the archive,
F3 views a file, Enter runs one, `Ctrl+L` sizes a folder, and F5 copies files and folders out with
the ordinary copy's destination rules, overwrite questions and progress. Archives are read-only:
F4, F6, F7, F8 and copying into one say so instead of acting. A path inside an archive also works
from the folder history, the saved tabs and the command line (`stus C:\x\tools.zip`). Entry
names that climb out with `..` or start from a root are never extracted. 7z, rar, cab and iso
still open with the program the system associates with them.

- **Selecting on the command line while the panels are hidden.** After `Ctrl+O`, Shift+Left /
Shift+Right, Shift+Home / Shift+End and the Ctrl+Shift word forms select text, `Ctrl+A` selects the
line, `Ctrl+C` or `Ctrl+Ins` copy the selection, `Shift+Del` cuts it, Backspace and Del remove it,
and typing or pasting replaces it. With the panels up those chords stay the panel's.

- **Colour for files of unknown type in the editor.** A file no language claims - a log, an ini, a
`.txt`, a name with no extension - gets its numbers (dates, times, versions and addresses
included), closed quoted strings, URLs, `#` / `;` / `//` comment lines, `[section]` headers and
words such as `true`, `null`, `ERROR` and `WARN` coloured. F5 in the editor switches the colouring
off and on again; the key bar shows which way it will go.

- **More file-type colours.** Backups and temporaries (`*.bak`, `*.tmp`, `*.old`, `*.orig`,
`*.swp`, `*.$$$`, `*~`, `~$*` and the like) are brown and media (images, sound, video) light red;
both are theme entries, `PanelTemporary` and `PanelMedia`. More archive extensions (`tgz`, `jar`,
`nupkg`, `zst`, `deb`, `rpm` and others) take the archive colour.

- **A startup notice on the user screen.** Before the panels come up, the program prints a text
portrait of Vasyl Stus beside the version, the licence and the credit for the photograph, so
`Ctrl+O` reveals it underneath the panels the way it reveals command output. The portrait is
Expand Down Expand Up @@ -151,6 +177,11 @@ the four reported issues at the top of this list.

### Changed

- **The drive menu lines the panels up.** Picking, with `Alt+F1` / `Alt+F2`, the drive the other
panel is on opens the other panel's folder rather than the drive's root.
- **The editor's caret is the console's own cursor.** It is no longer an inverted cell drawn into
the text but the terminal's blinking vertical bar - a blinking block while Insert has switched to
overwriting - and the terminal's own cursor shape is put back when the editor closes.
- **Renamed to Open Stus.** The solution, the projects, the namespaces and the settings folder are
`OpenStus`, and the executable is `stus` (it was `oc`). The name honours the poet Vasyl Stus; the
README says why. Settings and history now live under `OpenStus` in the profile folder.
Expand Down
15 changes: 10 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -274,8 +274,8 @@ generated from `HelpScreen.Bindings`, so they cannot drift apart.
| `Left / Right` | Move one column, or edit the command line |
| `PgUp / PgDn` | Scroll one page |
| `Home / End` | First / last item |
| `Enter` | Enter a folder, or run the file under the cursor |
| `Ctrl+PgDn` | Enter the folder under the cursor |
| `Enter` | Enter a folder or an archive, or run the file under the cursor |
| `Ctrl+PgDn` | Enter the folder or archive under the cursor |
| `Ctrl+PgUp` | Go to the parent folder |
| `Ctrl+\` | Go to the root of the current drive |
| `Tab` | Switch the active panel |
Expand All @@ -286,7 +286,7 @@ generated from `HelpScreen.Bindings`, so they cannot drift apart.
| `Ctrl+F1 / Ctrl+F2` | Hide or show the left / right panel |
| `Ctrl+H` | Show or hide hidden and system files |
| `Ctrl+B` | Show or hide the function key bar |
| `Alt+F1 / Alt+F2` | Change the drive of the left / right panel |
| `Alt+F1 / Alt+F2` | Change the drive of the left / right panel; the other panel's folder when it is on that drive |
| `Alt+<letter>` | Quick search by name |
| `Ctrl+T` | Open a new tab on the current folder |
| `Ctrl+W` | Close the current tab |
Expand Down Expand Up @@ -384,6 +384,7 @@ generated from `HelpScreen.Bindings`, so they cannot drift apart.
| `Shift+arrows` | Select text |
| `Ctrl+Y` | Delete the current line |
| `F2` | Save |
| `F5` | Switch syntax colouring off or on |
| `F7` | Search |
| `Shift+F7` | Search again |
| `F10 / Esc` | Close the editor |
Expand All @@ -402,6 +403,8 @@ generated from `HelpScreen.Bindings`, so they cannot drift apart.
| `Right / End` | Accept the grey suggestion after the caret |
| `Tab` | Complete the file name under the caret; a list when several match |
| `Ctrl+Left / Ctrl+Right` | Move one word |
| `Shift+Left / Shift+Right` | Select text while the panels are hidden (Ctrl+O); Shift+Home / End and Ctrl+Shift+arrows too |
| `Ctrl+C / Ctrl+Ins` | Copy the selected text; Shift+Del cuts it |
| `Ctrl+Backspace / Ctrl+Del` | Delete one word |
| `Ctrl+Enter / Ctrl+J` | Insert the name under the cursor |
| `Ctrl+F` | Insert the full name under the cursor |
Expand Down Expand Up @@ -459,6 +462,7 @@ src/OpenStus/
Input/ KeyEvent, MouseEvent and the Windows / portable input backends
Theming/ the Theme palette and its JSON serialisation
Files/ FileEntry, directory reading, sorting, masks, size formatting, drives
Archives/ reading and extracting zip and tar archives the panels walk into
Panels/ FilePanel, the view modes, the column layout, quick search, folder history
Ui/ dialogs, controls, popup and horizontal menus, key bar, command line, clock, help
Viewer/ the F3 file viewer and its lazily indexed model
Expand Down Expand Up @@ -498,8 +502,9 @@ the only type that wires the whole thing together.

## Roadmap

- **Archives** — browse a `.zip` or `.7z` as if it were a folder, plus <kbd>Shift</kbd>+<kbd>F1</kbd>
and <kbd>Shift</kbd>+<kbd>F2</kbd> to add and extract.
- **Archives** — `.7z` and `.rar` browsing, and writing into archives: <kbd>Shift</kbd>+<kbd>F1</kbd>
and <kbd>Shift</kbd>+<kbd>F2</kbd> to add and extract. Zip and tar archives can already be browsed,
viewed and copied out of.
- **Plugins** — a real plugin surface behind <kbd>F11</kbd>, so a panel can be backed by something
other than the file system.
- **Tree panel** and **quick view** (<kbd>Ctrl</kbd>+<kbd>Q</kbd>).
Expand Down
Loading
Loading