Releases: curlpipe/ox
0.6.8
An update that adds a configuration assistant to help you take advantage of all the new features that Ox has
⚠️ This update changes how the status line is configured, so there may be errors in existing configuration files that need to be changed. Please refer to the documentation for the new format of the status line.
Added
- A configuration assistant which is triggered when no configuration file is present
- Shift + Tab to dedent a line in the autoindent plugin
- Pasting now creates a snapshot in the undo / redo system
- 3 new themes to the editor
Fixed
- Changed around render function to trim lines instead of rendering over
- Improved rust syntax highlighting
- Better word moving
- Better word deleting
- Fixed line moving cursor position issue
- Increased default scroll amount
- Rearranged status line format in configuration
- Git plug-in can actually be configured for icons
- Fixed issues with read-only files
- Fixed absent background colour on file path prompt
- Tabs now open to the right of the currently open tab instead of at the end
- Updated Python syntax highlighting to include keywords relating to match statements
- Fixed rendering issues with the help message and moved it up slightly to a better position
0.6.7
An update that adds more advanced functionality through some new built in plug-ins.
See all the new plug-ins you can install in the documentation here
Added ➕
- New typing speed plugin to track your typing speed
- Todo list plugin for
.todofiles - Discord RPC plug-in
- HTML live edit plug-in
- Emmet plug-in for HTML autocompletion
- Git plug-in to manage your git repository
- Added diff file syntax highlighting
- When you open files or change tabs, the editor will change it's working directory
- Tab lines can be interpolated
- Goto line command with Ctrl + G
- Adjustable scrolling speed
Fixed 🔧
- Fixed file types not able to be edited in plug-ins
- Fixed document.document_type reporting wrong value
- Fixed markdown syntax highlighting issues
- Fixed Lua syntax highlighting (~= operator and # operator and .. operator)
- Fixed pageup/pagedown behaviour being not very useful
- Fixed tab line length problems with double width characters
- Stopped flickering in help message
- Standardised moving over words back and forth
- Fixed filetype command not able to handle spaces
0.6.6
An update with some bug fixes and other quality-of-life features
| editor:set_file_type function in the editor API and the filetype command argument now use file type names instead of file type extensions e.g. Python instead of py.
Added ➕
- Prompts can now be cancelled by pressing the
esckey - File path prompts (on opening files inside ox) now allow scrolling through options using the
TabandShift + Tabkeys - Selecting words can be done with a double left click
- Selecting lines can be done with a single right click
- You can now better modify and change how file types are recognised and handled
Fixed 🔧
- Plug-in manager loading plug-ins twice and not reporting installed plug-ins correctly
- Autoindent dedenting lines inappropriately
- Cursor jumping out of bounds in certain circumstances
- Selection going out of bounds
- Syntax highlighting doesn't disappear past selection
0.6.5
An update that fixes a few bugs, and adds some small but useful features
Added ➕
- Magic modeline for file types
- File path recommendations and completion when opening files
Fixed 🔧
- Enabled networking utilities to be used in the configuration file
- Reduced flicker and artefacts when rendering
- The cursor is no longer incorrectly hidden when searching/replacing/in a prompt
- Better undo/redo committing
- Fix stdin crash
- Fix autoindent and pairs with undo/redo
- Forced normal intensity throughout (text may have been faint on macOS)
0.6.4
0.6.3
⚠️ This release contains a fatal bug, please update to 0.6.4 which has a fix
This a release that mainly focuses around the plug-in system, but has some other great additions/fixes too
Added ➕
- 256 bit colours for the TTY and other terminals that don't have 24-bit colours available
- New plug-in manager
- Much much better plug-in and configuration error reporting
- Networking and concurrency utilities for plug-ins
- Plug-ins can now force rerender parts of the editor
- Better handling of spaces and tabs, you can now state your preference in the configuration file
Fixed 🔧
- Improved autoindent plug-in
- Neater pairs plug-in inserts whitespace where appropriate and properly deletes pairs in all circumstances
- Big code cleanup (better for maintenance)
- More efficient paste with fewer side effects
- Fixed strange backspace behaviour
- Fixed problematic hex codes
- Pomodoro plug-in now updates itself in the status line every second
0.6.2
Quite a big release with a decent amount of useful changes. Like this one, updates will start to be more infrequent but bigger in future, particularly as all the minor tweaks and bugs are being sorted out and bigger features are almost ready to be implemented.
⚠️ Warning,editor:show_help_message()andeditor:hide_help_message()andeditor.help_visibleare now depreciated in favour of getting and setting the fieldhelp_message.enabled
Added ➕
- More advanced selection allowing you to cut and delete selected text
- Certain plug-ins are now default (so they are included automatically) these include pairs and autoindent
- More advanced autoindent plug-in which
- Will adjust your lines indent automatically when you move lines up and down
- Will automatically de-dent lines where appropriate
- Will handle pressing enter between pairs of brackets the proper way
- More advanced pairs plug-in which
- Deletes end pairs when deleting start pairs
- No longer adds pairs when the user pastes in text
- Skips end pairs when the user tries adding their own accidentally
- Plug-ins can render on the greeting message and help message
- More configuration areas to tweak including line number padding, tab_width and cursor behaviour
- Configurable help message format
- New undo / redo system
Fixed 🔧
- Moved key binding reference to dedicated help menu (clearer greeting message)
- Better handling of unknown file types (will now show "Unknown" instead of "")
- You can now bind space key bindings using
spaceinstead of just - Fixed selection errors when selecting tab characters and incorrect cursor position when deselecting
- File was incorrectly marked as unmodified when save to disk failed
- Changed copy/paste infrastructure to reduce depedencies and work over SSH
0.6.1 - More configuration and plug-in updates, bugfixes and tweaks
Added ➕
- Config file reload command whilst in the editor (run the command
reloadto apply changes while ox is running) - Extended status line and tab line options (file paths, file type icons, plug-in output)
- New Pomodoro timer plug-in (to help with productivity and taking breaks)
Fixed 🔧
- Oxrc files now have syntax highlighting
- Fully removed flickering issues from the application (mostly around tab line and status line)
- Fixed buggy cursor restoration when moving up and down in files with tabs or double width characters
- Panic-proofing to make unexpected panics highly unlikely, preventing loss of unsaved work
0.6.0 - Configuration update, bugfixes and CI/CD
An update with quite a few small changes that make Ox much more polished!
Big thanks to @HKalbasi for the assistance in setting up the CI
⚠️ Warning, you may need to update your configuration file, feel free to copy the default one stored inconfig/.oxrcwithin the repository
Added ➕
- Proper CI to the repository (so hopefully bugs should become less common going forward)
- Re-added cursor y position conservation when moving up and down (which was somehow removed)
- Re-added key bindings to change tabs using the keyboard
- New configuration options for documents, tab_line and line numbering
- Simpler configuration file example
Fixed 🔧
- Plug-ins that are not found now give a warning instead of a horrible panic message
- Ox will now give a warning if the user doesn't have a configuration file of their own
- Fixed issue with broken tab-as-spaces traversal
- Documentation (wiki and readme) is now up to date
- Different plug-ins can now bind to the same key binding without conflicting with each other
- You don't need to use
status_line:clear()anymore, as this is handled manually - Mouse clicks will now no longer push the cursor to the beginning of lines when moving up or down immediately after clicking
- Ox should now download much faster as huge test files have been removed
- Removed warnings when compiling
0.5.3 - Bug Fixes and Tweaks
Just your typical bug fix release with some handy tweaks
Added ➕
- Better moving by word (it now acknowledges punctuation)
Fixed 🔧
- Not being able to edit the last line of a file when there is no EOL
- Crashing when using replace all feature
- When the editor panics, it no longer spams the terminal
- Suppressed all the warnings
- Error when pressing the underscore key