0.23.1
Pre-release
Pre-release
Hello, 2024! Here's the first major update of sora-editor in 2024.
Release Notes for 0.23.0
Fixes and Enhancements
Editor Core
- add more XML attributes
- optionally report cursor anchor position on screen to input method
- fix failure in fetching scroll factor (#532 by @dingyi222666 )
- fix completion window being cut (#420 by @dingyi222666 )
- fix fuzzyScore sort for completion items (#538 by @dingyi222666 )
- fix that text styles are still used after editor is released
- add
PlainTextAnalyzeManager
for plain text that requires completion - fix incorrect rendering order of sticky lines and pinned line numbers (#539 )
- fix stack overflow when cutting line on last editor line
- fix thread-safety issues in
Content
- add extended attributes objects for
Span
, and makeSpan
an interface - add span and span range in editor's motion events (click, double-click and long-click) (#540 )
- add more editor state events for implementing user-side features
- fix diagnostic tooltip is not dismissed on focus lost
- add
EditorSpanInteractionHandler
as base implementation for clickable spans - cut line forward or backward (#508)
- fix scroll position auto-adjust
- add
Ctrl+PgUp
,Ctrl+PgDn
,Ctrl+Shift+PgUp
,Ctrl+Shift+PgDn
shortcuts
Language Textmate
- merge TM4E update from upstream
- enable symbol pairs by default
Language LSP
- refactor LSP library by Kotlin (#457 by @dingyi222666 )
- add Java sample for language-lsp usage
Language Tree-sitter
- fix access violation to tree-sitter native objects and thread-safety issues (#497 )
Language Java
- add detection for links
Sample App
- open links in code editor by double-click on it
Breaking Changes and Migration
Editor Selection API
The legacy moveSelectionUp
, moveSelectionDown
and other methods for moving/extending selection are removed.
Now selection moving and extending are seperated.
moveSelection
method: de-select any text and move the cursor based on given movement typeextendSelection
method: update selected range, based on the movement type passed and anchor for current text selecting- selection anchor is updated as selection changes and text updates
For selection movement types, please see SelectionMovement
enum.
Span API (for custom languages)
Span
is now interface class. To migrate to new API, note:
- replace your field access with setters and getters
- do not use builder-like calls to set properties of
Span
- you can not directly get
underlineColor
because it is resolved when the span is rendered
Release Notes for 0.23.1
Apply a minor fix to selection anchor updating.