Skip to content

Releases: curlpipe/ox

0.4.2 - Increased Configurability

22 Jul 09:24
a195ab5
Compare
Choose a tag to compare

This is quite a big update that generally involves more powerful configuration ability.

Added ➕

  • Commands are now exclusively defined in the config file (no more hard-coded ones)
  • Custom syntax highlighting, so you can extend it to support file types that aren't supported by default
  • Expanded editor API that now allows for getting text from the document, more advanced cursor moving and more fields to check the state of the document and editor

Fixed 🔧

  • Updated README format
  • Fixed error when inserting quotes into the editor
  • Fixed issues with editor API where trying to query or edit lines that haven't been loaded yet (due to file buffering) crash the editor.

0.4.1 - Light fixes to syntax highlighting

21 Jul 19:43
28bcdaa
Compare
Choose a tag to compare

Just some fixes here and there, also check out the updated documentation on plugins in the wiki here

Added ➕

  • Latex syntax highlighting support

Fixed 🔧

  • Nushell syntax highlighting issues
  • Markdown syntax highlighting issues
  • Error that came up whenever backspace was pressed

0.4.0 - Plug-ins, custom commands and increased configurability

20 Jul 23:14
ade5867
Compare
Choose a tag to compare

The main thing in this update is the ability to write macros, customise key bindings and write your own commands.

⚠️ You may need to update your configuration file if you've copied it to ~/.oxrc, this is due to a change in how the configuration file is used. The syntax and documentation are still valid, so your configuration file will likely not require a huge rewrite when updating.

Added ➕

  • Key bindings can now be modified from the configuration file to your preference
  • You can now build macros (or plug-ins) within the config file and have them run when a command or key binding is pressed

Fixed 🔧

  • Cleaned up the code a bit (errors are now better handled)

0.3.4 - Updated syntax highlighting

17 Jul 17:07
9fe309a
Compare
Choose a tag to compare

Also, note the new documentation in the wiki

Added ➕

  • New version of synoptic, which now includes syntax highlighting for nushell

Fixed 🔧

  • Fixed help message being slightly incorrectly formatted

0.3.3

16 Jul 20:36
c178c8c
Compare
Choose a tag to compare

Just a little feature before going on to a larger update (plugins)

Added: ➕

  • Stdin option to read in data from a pipe or redirect from the terminal (e.g. for viewing the output of a command)

0.3.2

16 Jul 14:07
98a9357
Compare
Choose a tag to compare

Update to add a few handy features and a command line with a help message

Added: ➕

  • Readonly flag to set files to read only (see help on CLI for more info on how to use it)
  • Filetype flag to set file's filetype (see help on CLI for more info on how to use it)
  • A command line to run certain commands while the editor is open
  • A toggleable help message to help new users

Fixed: 🔧

  • Incorrect naming on CLI help message

0.3.1 - Bug fixes and handy features

16 Jul 11:06
4d4a649
Compare
Choose a tag to compare

Just a quick update to fix a few bugs and add a few core features

Added: ➕

  • If you try to open files that don't exist, Ox will create them as a new file that will write to disk when you save
  • You can now delete text with the delete key

Fixed: 🔧

  • Fixed resizing issues causing cursor to go out of bounds
  • Fixed editor crashing when opening markdown files

0.3.0 - Rewrite that has been 4 years in the making

15 Jul 20:40
598322e
Compare
Choose a tag to compare

It's been a long time since I touched this repository, but I was working in the background when I had free time trying to build a stronger, more reliable and robust backend.

Now I would like to present Ox 0.3.0, which has seen a complete rework from 0.2.7 which has a reputation for being extremely glitchy.

There may still be some issues, but the backend is much better tested and won't have bugs that are as extreme as previous versions (I hope).

It uses Kaolinite for its backend and Synoptic for syntax highlighting.

It includes the following benefits over the previous:

  • Huge efficiency boost - it now uses a rope data structure, which is very efficient and integrates file buffering to avoid long loading times
  • Lua configuration - more well established than RON and my own proprietary configuration language, and puts it on par with neovim (almost)
  • Well-tested backend and modular design - a lot of the functionality I originally tried to cram into a single codebase has instead been spread over various crates, each with their own test suites that have a strong reputation of passing

The rest of it is largely the same, but I have some plans to extend it in the future (time permitting)

0.2.7

22 Nov 17:54
086f665
Compare
Choose a tag to compare

0.2.7

Comments

This is an update that focussed on very small elements of existing features to make them less annoying. Nothing new was really added, but the existing features have been greatly improved. From huge improvements in efficiency to better language highlighting and support. It took a long time but it was hopefully worth it.

Next Update

Next update will focus on adding mouse support. One of the major burdens of the editor is that it is a pain to copy and cut text from it. Also navigating files for those who aren't used to keyboard navigation is a pain. It will also add extra language support for several popular programming languages.

Changelog

  • Fixed serious origin deletion error
  • Added log file for better debugging
  • Properly handled panics
  • Optimized syntax highlighter to only re-tokenise on edit instead of every time it comes into view, greatly speeding up code navigation and writing.
  • Rewritten in Crossterm
  • Added native Windows support
  • Now uses signals to handle terminal resizes.
  • Undoing now affects the dirty file indicator if in last save state
  • Allowed jumping to lines via arguments e.g: ox test.txt:100 will take you to the 100th line and ox test.txt:200:39 will take you to the 39th character in line 200.
  • Improved language syntax highlighting.
  • Fixed tab and space indentation issues
  • Added 16 bit colour fallback
  • Fixed problem with resizing the welcome message
  • Fixed serious unicode bug
  • Added support for dos line endings
  • Allowed for customisation of the warning, error and info message colours in the command line
  • Fixed resize panic
  • Added support for a transparent editor background
  • Added support for line number background colours
  • Fixed dodgy search and replace features
  • Added highlighting to search and replace features
  • Code clean up
  • Added command to allow reloading of configuration file
  • Added delete word command
  • Added file overwrite prevention
  • Removed hardcoded key binding values
  • Made the goto command change the offset only if required
  • Added configuration option for cursor line wrapping
  • Improved file reading and saving errors
  • Added read only mode
  • Added ability to execute shell commands
  • Added macro to allow saving as root in case of permission error
  • Added a ton of extra key bindings including function keys and arrow keys too
  • Changed default configuration to use more intuitive key bindings

0.2.6

07 Nov 20:58
6248bdd
Compare
Choose a tag to compare

0.2.6

Comments

This is a huge update with many improvements and additions. More control over the editor as well as an entirely new scripting language have been added, allowing actions and commands that speed up editing and finally add extensibility to the editor.

Next update

Next update I'll work on refactoring to speed up Ox, because I am very aware that Ox is highly inefficient. I'll be writing a selective re-tokeniser which will only recolour lines that have been edited, over the old method of just re-tokenizing everything in view. I'll also be working to tweak certain features to improve them and bring them up to scratch with many modern text editors and work on ditching the termion library in favour of the much more active and comprehensive crossterm library. This will allow native Windows support and will allow some optimisations to be made.

Changelog

  • Added new simple scripting language to allow for extensibility.
  • Added wiki to extensively document the editor.
  • Fixed weird deletion behaviour at the origin of the document.
  • Rewrote undo and redo to feed through the same event execution as Oxa.
  • Added more functionality like force quit, jumping to lines.
  • Added support for multiple colour schemes in one config file with a command to switch between them.
  • Allowed for customisation of the contents of the status line and tab bar.
  • Added rpm package.
  • Added deb package.
  • Added to homebrew.
  • Updated dependencies.