Releases: xyproto/orbiton
Releases · xyproto/orbiton
Orbiton 2.68.6
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
- Add support for
odinfmt -w
, for Odin programs, when pressingctrl-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
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
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 thenmake
execmake
. - Look for a
makefile
,Makefile
orGNUmakefile
before executingmake
. - 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 withbat
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
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 withshift-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
Orbiton 2.68.0
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 thectrl-o
menu, but add aToggle 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
andctrl-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 aPKGBUILD
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
andbetteralign
. - Update test files.
Orbiton 2.67.1
- 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 whenctrl-w
is pressed in an empty file). - Remove support for using Guessica (archived) for
PKGBUILD
andAPKBUILD
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
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
andbackspace
also work in block edit mode.
Arch Linux
- Let
ctrl-space
when editingPKGBUILD
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
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 theMakefile
. - Remove
--sort-common
from the default Arch LinuxLDFLAGS
in theMakefile
.
Various changes
- Minor improvements, as suggested by
staticcheck
. - Update the URL to the web page.
- Update dependencies.
- Update documentation.
- Performance improvements.