Skip to content

Releases: xyproto/orbiton

Orbiton 2.68.6

19 Dec 14:42
Compare
Choose a tag to compare

Fixes

  • Fix a one-letter typo in the --help output.
  • Fix an issue where a file lock could remain after quitting.
  • Make handling opening non-existing files that ends with . more robust.

Performance and size

  • Compile the release binaries with soon to be released Go 1.24 compiler.
  • Reduce the binary size slightly by compressing the embedded list of digraphs.

Programming related

  • Improve the function name detection for Odin.

New features

  • Add a -g/--digraphs flag for listing all possible digraphs.

General

  • Update documentation.
  • Update dependencies.

Orbiton 2.68.5

17 Dec 22:19
Compare
Choose a tag to compare
  • Add support for odinfmt -w, for Odin programs, when pressing ctrl-w to format a file.
  • Recognize inline C functions when highlighting function names.
  • Quit faster by running closing tasks concurrently (clear locks and save the cursor location in the current file).
  • Improve syntax highlighting for makefiles.
  • Set the terminal emulator title concurrently at start, for minor performance gains.
  • Display a shorter status message when loading files.
  • Add a --format flag for formatting a file and then quitting.
  • Add a --build flag for building a file/project and then quitting.
  • Add keybinding help to the little built-in game.
  • Some refactoring.
  • Update the man page and help text.
  • Update dependencies.

Orbiton 2.68.4

01 Dec 14:16
Compare
Choose a tag to compare

Fixes

  • Fix an issue with wide runes when typing in letters. The go-runewidth package is used to find the width of strings and runes.
  • Fix text rendering when viewing man pages.

Various

  • When displaying program output after compiling and running with ctrl-space, don't clear the output until a key is pressed.
  • Initial support for diff/patch files.
  • Update documentation.
  • Update dependencies.

Orbiton 2.68.3

22 Nov 14:56
Compare
Choose a tag to compare

Look and feel

  • Keep a separate search and replace history, so that arrow up/down works both for the search text and for the replacement text.
  • Fix a missing status message when pasting through portals.
  • Fix a missing bookmark-related status message.
  • Make adjustments to the highlight color for various color themes.

Programming

  • Check if Assembly looks like Go/Plan9 style when formatting (there is built-in support for formatting Go/Plan9 style Assembly).
  • Let ctrl-o,space and then make exec make.
  • Look for a makefile, Makefile or GNUmakefile before executing make.
  • Let ctrl-g not try to jump to definition for non-source code files.
  • Improve jumping to a matching parenthesis when ctrl-g is pressed.
  • Improve the Odin function name detection.
  • Fix "jump to error" for Odin.
  • Fix the Odin build command argument order, and running Odin programs with ctrl-space.
  • Add initial support for Starlark.
  • Improve syntax highlighting for CSS.

Flags

  • Add -b to list the file with bat after copying or pasting, in connection with -c or -p.
  • Add -t to list the file after copying or pasting, in connection with -c or -p.

General

  • Compress the embedded English word list with the excellent Zopfli utility, to save a couple of KiBs.
  • Some refactoring.
  • Update dependencies.
  • Update documentation.

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.