Releases: xyproto/orbiton
Releases · xyproto/orbiton
Orbiton 2.60.1
- Also rename the release files after the project was renamed from O to Orbiton.
- Update dependencies.
Orbiton 2.60.0
- Project rename, from
o
toOrbiton
. The editor executables are still:o
- for the terminalog
- for the VTE GUI
- Add built-in support for formatting
/etc/fstab
files. - Stop the arrow keys from doing anything while code is being generated an inserted by ChatGPT.
- Support more environment variable names for the OpenAI key. Now these are supported:
CHATGPT_API_KEY
,OPENAI_API_KEY
orOPENAI_KEY
, in that order. - Update dependencies.
- Update documentation.
o 2.59.5
- Don't call
os.Getenv
several times. Callos.Environ
once and then cache the variables. This is handled automatically by thegithub.com/xyproto/env/v2
package. There is a tiny performance improvement foro
because of this. - Add a Makefile target for building with the
trace
build tag. - Set the default ChatGPT temperature to
0
, for generating code and to0.8
for generating other text. - In addition to
!
for filetypes other than Markdown, only useWrite
andwrite
as "trigger words" for starting to generate code or text with ChatGPT (and only if theCHATGPT_API_KEY
is set). - Update dependencies.
- Update documentation.
o 2.59.3
Fixes
- Fix a bug that happened when trying to run a program by pressing
ctrl-space
twice. - Stop the search function from saving duplicate entries in a row.
New features
- Add support for generating code with ChatGPT, if the API key is set and a line is prefixed with
!
or ie.// generate a function that ....
andreturn
is pressed. - Make it possible to view images on the terminal (
.png
,.jpg
,.jpeg
,.gif
,.ico
andbmp
are supported. IfCGO_ENABLED
is not set to 0 at compile time,.webp
is also supported). This is an experimental feature and how the images are scaled is not always optimal.
Minor improvements
- Read some environment variables only once.
- Remove use of
rand.Seed
that is deprecated by Go 1.20 (used by the little built-in game). - Compile the release binaries with Go 1.20.
- Also support Go 1.16 and 1.17 again.
- Update the documentation.
o 2.59.0
- Improve the syntax highlighting for Go, man pages, configuration files and Python.
- Update the
.desktop
file. - Initial support for Koka and Haxe.
- Skip
/tmp/tmp.*
files when writing the location history. - Fix the use of
ktlint
when formatting Kotlin. - Minor improvements to the Synthwave and BlueEdit themes.
- When pasting, try pasting from the primary clipboard as well.
- Make tests pass on macOS.
- Try to run more programs by default, when
ctrl-space
is pressed twice. - Make the status header in the game slightly more useful.
- Use
go4.org/bytereplacer
for better performance when replacing bytes. - Update documentation.
- Update dependencies.
o 2.58.0
o 2.58.0
Highlights
- Detect tabs/spaces when a file is opened.
- Add support for
pbcopy
andpbpaste
on macOS, and make theMakefile
more macOS-friendly. - Make
ctrl-space
also run programs when pressed a second time. The last lines of the output will be shown on screen. For now, this feature is only supported for simple Go, Kotlin and Rust applications.
Minor changes
- Recognize the
ctrl-_
hotkey. - Minor changes to the
chmod +x
behavior, for scripts. - Use a
g
suffix for all GUI-related executables and symlinks. - Minor changes to how
ctrl-c
behaves. - Improve the light theme for dark backgrounds.
- Update documentation.
- Update dependencies.
o 2.57.0
Highlights
- Make it possible to open, edit and save gzip-compressed files with a
.gz
ending. - Add the Synthwave theme (launch
o
with asw
symlink, launchko -s
or setTHEME=synthwave
). - Add initial support for GDScript (used by Godot).
Other changes
- Make the color of unmatched parentheses themeable.
- Handle ReStructuredText differently.
- Also save when copying text with
ctrl-c
, sincectrl-c
may interrupt the program in some terminal emulators. - Make it possible to build
*_test.go
files withctrl-space
. - Highlight
static
differently for C (and C++). - Minor improvements to the BlueEdit theme.
- Fix the
ctrl-~
hotkey for the Linux console. - Set up signal handlers in goroutines, for faster startups.
- Make it possible to trace with
fgtrace
if thetrace
build tag is used. - Improve the syntax highlighting of old Pascal programs.
- Let
ctrl-i
while in debug mode change the behavior ofctrl-space
andctrl-n
between "step into" and "step next". - Modify the
version.sh
script to only usesed
. - Update dependencies.
- Update documentation.
o 2.56.0
Programming
- Let
iferr
on a line by itself insert a context and type-awareif err != nil { return ... }
block in Go. - Improve syntax highlighting for C, C++, Garnet, Go, Java, OCaml, Python, Rust, shell scripts and Zig.
- Let Java, Kotlin and Scala output the same
.jar
filename when compiling. - Add initial support for Ivy and GLSL shaders.
- Use the
aosp
style when formatting Java code withctrl-w
. - Adjust the arguments passed to
cargo
when building withctrl-space
.
General
- Also let
ctrl-h
act as backspace when entering a search term. - Add an extra width check for the status bar.
- Add a handy shortcut for saving a file by pressing three arrow keys in a very rapid succession.
- Make it easier to toggle in and out lines in config files, like
pacman.conf
. - Don't
chmod +x
Python scripts, even if they start with a shebang. - Do
chmod -x
makefiles, Markdown files and PKGBUILD files when saving. - If globbing for files when opening
o
, choose to open non-binary files instead of binary files if there is a choice. - Improve the initial status message slightly.
- Reduce the size of the default undo buffer.
- Update documentation.
Themes
- Fix an issue with the light theme on a dark background.
- Select the light theme if the executable or symlink to the executable starts with
v
. - Improve the logic if the executable or symlink to the executable starts with
l
. - Highlight URLs in config files differently.
- Update the VS theme.
Modernization
- Require Go 1.18 or later.
- Remove use of the deprecated
ioutil
package. - Use
any
andstrings.ReplaceAll
instead ofinterface{}
andstrings.Replace(..., ..., -1)
. - Update dependencies.
o 2.55.1
Fixes
- Fix the detection for if data is piped in via
stdin
at start. - Fix the man page detection.
- Fix a race issue that was discovered with the
-race
flag in Go.
Rendering and performance
- Redraw after pressing Esc at the
ctrl-o
menu. - Align some struct fields for decreased memory use.
- Improve the performance of how quickly text is drawn to the screen.
New functionality
- Make it possible to quickly press any four arrow keys to get the quick prompt where commands can be typed.
wq
saves and quits.!sort
sorts the current block of text with the external programsort
(inspired by ViM). External commands will time out after 10 seconds. - When
o
is used for viewing man pages (withMANPAGER=o
), then just exit if Esc is pressed. - Make it possible to insert a timestamp (and not just the date) via the
ctrl-o
menu.
The GUI front-end
- Fix an issue where the editor did not register the correct terminal size at start.
- Use the default theme on OpenBSD as well.
Themes
- Improve the Blue Edit theme for dark backgrounds.
- Minor changes to the Red & Black theme.
Syntax highlighting
- Improve syntax highlighting for shell scripts.
- Highlight
self
when editing Python code. - Improve the CMake syntax highlighting.
- Improve the Markdown syntax highlighting for lists of links.
- Improve the syntax highlighting for Haskell, OCaml and Standard ML.
- Improve how multi-line comments are highlighted.
- Add initial support for syntax highlighting Elm code.
Templates and content detection
- Add templates for OCaml, Elm and for Go test files (
*_test.*
). - Improve the ViM script detection.
General
- Improve a couple of the error messages.
- Update dependencies.
- Update documentation.
o 2.55.0
- Fix an issue where echo was not disabled so browsing quickly up or down with the arrow keys or
ctrl-n
/ctrl-p
could make the text jump around. - Fix an issue where the GUI frontend
ko
would launcho
and it would detect the wrong terminal size. - Fix an issue where
ctrl-t
would not switch between the source and header files for C and C++. - Improve syntax highlighting for Assembly, Shell scripts, Make, C, C++ and
git send-email
E-mails. - Also recognize reStructuredText /
.rst
files. - Add initial support for the Garnet programming language (
.gt
file extension). - Color fatal error messages in red, unless
$NO_COLOR
is set. - Update dependencies.
- Minor performance improvements.