Skip to content

Releases: xyproto/orbiton

Orbiton 2.68.2

04 Nov 21:27
Compare
Choose a tag to compare

Fixes

  • When editing Nroff, let ctrl-space toggle the man page preview properly.
  • Let the bookmark functionality display status bar messages again, when ctrl-b is pressed.
  • Fix a bug in the vt100 dependency in connection with pasting in text with shift-insert.

New features

  • Add built-in support for formatting Go/Plan9 style Assembly by pressing ctrl-w by using the asmfmt and lookslikegoasm packages. (Thanks @klauspost!)
  • Add tab completion with Ollama/LLMs, if the -o or --ollama flag is given. This is an experimental feature!
  • Let ctrl-o,b trigger block editing.
  • Let ctrl-o,space open the command prompt.

Improvements

  • Improve how format commands are looked up, for various programming languages.
  • Improve the C function signature detection.
  • Improve the "go to definition" feature (activated by pressing ctrl-g over a symbol).
  • Show the progress indicator after jumping with ctrl-l.
  • Simplify the man page syntax highlighting code a bit.
  • Add usage help for the Pico/Nano mode flag (-e or --nano).

General

  • Confirm that Orbiton passes the "Moby Dick Workout", and document it in the README.md file.
  • Update documentation.
  • Update dependencies.
  • Some refactoring.

2.68.1

27 Oct 18:28
Compare
Choose a tag to compare
  • Fix an issue with using Orbiton as a man page viewer (ref #22, thanks @razielanarki).
  • Improve the function signature detection (for the status text in the upper right corner).
  • After going to a definition with ctrl-g, add a way to clear the back history.

Orbiton 2.68.0

25 Oct 14:51
Compare
Choose a tag to compare

Performance improvements

  • Improve the performance when scrolling.
  • Disable/enable the cursor less often when redrawing the text of the editor.
  • Just check once if the parent process is man when needed, not at every editor start.
  • Seldom allocate memory when rendering and highlighting text.

Fixes

  • Use atomic bools to fix a race condition.
  • Improve how signal handlers are cleared and set up.
  • Adjust the logic for when the undo buffer is full.
  • Fix the file monitoring mode (the -m flag).

Look and feel

  • Highlight the current line when moving up and down with the arrow keys.
  • Improve a status message for the Nano/Pico compatibility mode.
  • Remove Toggle status bar from the ctrl-o menu, but add a Toggle block editing option.
  • Stop ctrl-g from toggling multiline/block editing.
  • Let ctrl-g toggle the status bar if no definition is found (like it was before).
  • Let ctrl-space toggle between Nroff and Man page mode (experimental feature).
  • Also support home, end, pgup, pgdown and ctrl-insert (as an "undocumented feature").
  • Let ctrl-g also try to jump to a matching parenthesis or bracket (only for characters currently on screen, for now).
  • Make the pacman spinner just a bit nicer.

Syntax highlighting

  • Initial support for Nmap scripts.
  • Improve single line comment syntax highlighting in Elm.
  • Improve syntax highlighting for configuration files.
  • Improve syntax highlighting for C.

Programming related

  • Let the name of the function the cursor currently is in appear in the upper right corner for ~2 seconds (very handy when navigating lengthy functions).
  • Adjust the package building command for when ctrl-space is pressed in a PKGBUILD file.

Themes

  • Do not try to set a theme if NO_COLOR=1 is specified.
  • Add a new theme named Orb.
  • Add a new theme named Pinetree.
  • Improve themes so that they work better on light backgrounds (such as default xterm).
  • Adjust the synthwave theme.
  • Adjust the blueedit theme.

General

  • Update documentation.
  • Update dependencies.
  • Refactor.
  • Remove unused functions.
  • Follow the advice of go vet, staticcheck and betteralign.
  • Update test files.

Orbiton 2.67.1

12 Sep 15:31
Compare
Choose a tag to compare
  • Recuce the executable size by around 20%.
  • Let Esc also cancel block edit mode.
  • Make it possible to build Makefiles with ctrl-space.
  • Disable the initial tutorial screen when on Android, to make it easier to operate in Termux.
  • Add a template for .gitignore and .ignore files (for when ctrl-w is pressed in an empty file).
  • Remove support for using Guessica (archived) for PKGBUILD and APKBUILD files (for finding the latest release version). Arch now has a different system for tracking new releases, and LLMs are also becoming more capable for this purpose.
  • Update documentation.
  • Update the tutorial.
  • Update dependencies.

Orbiton 2.67.0

04 Sep 14:05
Compare
Choose a tag to compare

Performance

  • Let platform checks be defined as constants at compile time.
  • Cache checks for if executables exists in PATH.
  • Update the default.pgo file (used for profile guided optimization).

Programming and Markdown

  • Remove a check for if Go code is valid while typing.
  • Improve syntax highlighting for Scheme.
  • Also support the default indentation of go.mod files.
  • Improve the detection of JSON content for files without a .json extension.
  • Fix an issue where formatting Markdown documents with ctrl-w would misinterpret ----style headlines as tables.
  • Add a template for the C3 programming language.

Block editing

  • Show an informative status bar when toggling block edit mode with ctrl-g.
  • Let ctrl-d and backspace also work in block edit mode.

Arch Linux

  • Let ctrl-space when editing PKGBUILD files not launch a terminal emulator but simply start building and replace the current process with an exec syscall.
  • Do not chmod +x shell scripts with the .install extension.

Look and feel

  • Adjust the color of the max column indicator.
  • Improve the wording and ordering in the ctrl-o menu.
  • Add a menu option for the max column indicator.
  • Improve two error messages.
  • Update the spinner animation.

General

  • Compile the release files with Go 1.23.0, which is the latest version.
  • Showcase one of the light themes in the README.md file by adding a screenshot.
  • Update the built-in tutorial.
  • Update CI configuration.
  • Update dependencies.

Orbiton 2.66.0

21 Aug 15:29
Compare
Choose a tag to compare

UX

  • When the status line is enabled AND a maximum column width is specified, the column limit is indicated with | characters, behind the text.
  • ctrl-g can now toggle "block mode" where multiple lines can be edited at once (this is an experimental feature).
  • Replace the "Insert time" menu choice with a "Toggle status line" menu choice.

AI

  • Remove support for "fix as you type" and inserting generated text with OpenAI / GPT3. Initial support for Gemini is in the gemini branch, but the whole interaction with AI /LLMs was not as useful as I thought. Perhaps a future menu option for fixing bugs would be more useful.

Performance and size improvements

  • Noticeably faster rendering, due to improvements in the github.com/xyproto/vt100 package.
  • Much smaller executable (12 MiB vs 24 MiB) due to the temporary removal of AI-support.
  • Update the default profile guided optimization file.
  • Let some string variables be constants.
  • Detect the current platform at build-time rather than at run-time.

Editing Markdown

  • Let ctrl-w in a Markdown file attempt to sort all tables in the document, when the cursor is not over a specific table.

Programming language and file support

  • Better handling of tabs and spaces when saving Makefiles.
  • Recognize more GLSL shader types.
  • When pressing ctrl-w in an empty Python file named __init__.py, leave it empty and don't insert a Python template.

Building and testing

  • Make it possible to run tests when ctrl-space is pressed in a Go file with a _test.go suffix.
  • Add initial support for the C3 programming language, including "jump to error" when ctrl-space is pressed.
  • Make it possible to compile some GLSL shaders to SPIR-V by pressing ctrl-space.

Man page related

  • Let the space key scroll down when viewing man pages.
  • Also make it possible to quit with q when viewing man pages.

Syntax highlighting

  • Add initial syntax highlighting for the C3 programming language.
  • Improve syntax highlighting for Python.
  • Improve syntax highlighting for Hare.

Build-related

  • Revert a .PHONY-related change to the Makefile.
  • Remove --sort-common from the default Arch Linux LDFLAGS in the Makefile.

Various changes

  • Minor improvements, as suggested by staticcheck.
  • Update the URL to the web page.
  • Update dependencies.
  • Update documentation.
  • Performance improvements.

Orbiton 2.65.12

17 Jun 12:26
Compare
Choose a tag to compare

New features

  • Copy to the clipboard if the executable starts with c. For example, if /usr/local/bin/copyfile is a symlink to /usr/local/bin/o, then copyfile somefile.txt will copy that file into the clipboard.
  • Paste the clipboard into a file if the executable starts with p. For example, if /usr/local/bin/pastefile is a symlink to /usr/local/bin/o, then pastefile somefile.txt will paste the contents of the clipboard into that file. pastefile -f can be used if the file already exists and should be overwritten.

Fixes

  • Fix an issue that could happen if the terminal was resized, while signals were sent, and while the user was hammering the Esc button.

Improvements

  • Adjust the placement of a menu item in the ctrl-o menu, when editing HTML or XML.
  • Move the cursor to the start of the first line when sorting a block of lines.
  • Do not try to expand XML and HTML tags by default. This can be enabled in the ctrl-o menu.
  • Skip the status message if SIGTERM is received.
  • Better syntax highlighting when editing Dockerfiles.
  • Temporarily remove the HTML formatting feature since it could not handle JS within HTML and was annoying.
  • Modify how ctrl-a and ctrl-e behaves if a macro is being replayed.

Various

  • Build the release binaries with Go 1.22.4.
  • Minor changes to the Makefile.
  • Minor changes to the GTK-3 front-end.
  • Update documentation.
  • Update dependencies.

Orbiton 2.65.11

29 Feb 17:16
Compare
Choose a tag to compare
  • Fix an issue with a mutex when redrawing, in connection with signals and ctrl-c.
  • Make ctrl-k a bit faster, when removing lines or deleting to the end of the current line.
  • Add initial support for CSS.
  • Update dependencies.
  • Update documentation.

Orbiton 2.65.10

22 Feb 16:08
Compare
Choose a tag to compare
  • Add a file that was missing from the vendored dependencies.

Orbiton 2.65.9

22 Feb 15:25
Compare
Choose a tag to compare

Improvements

  • Disregard copy/paste portals that are older than 25 minutes when starting o.
  • Improve the status message when copying lines to the clipboard.
  • Improve the text/binary detection to also support UTF-16.
  • Improve how signals are handled.

Language support

  • Respect # as the single line comment marker for R and Ruby.
  • Add initial support for Objective-C.
  • Switch from autopep8 to black as the tool used to format Python code when ctrl-w is pressed.
  • Adjust the ktlint parameters (for formatting Kotlin).

Syntax highlighting

  • Minor improvements to the JavaScript syntax highlighting.
  • Minor improvements to the C syntax highlighting.

Various

  • Improve the OpenBSD, FreeBSD and NetBSD support.
  • Update documentation.
  • Update dependencies.