Releases: Rosemoe/sora-editor
0.24.4
Editor Core
- improve rendering speed when there are many highlighted text backgrounds
- add event for diagnostics update (#773, #781 by @dingyi222666)
- fix a problem that leads to selection can not be correctly placed when tab is in line (#786)
- fix wrong composing text state can be reported to IME (#782, #783)
- fix externally committed tab may remove active composing text (#784)
- fix multi-line indentation for tab-indented languages (#785)
- fix composing text underline becomes unexpectedly hidden when the composing text is partially invisible
- update snakeyaml-engine to v3
Editor LSP
- improve completion prefix computation (#763 by @dingyi222666)
- add language connection status change event (#778 by @KonerDev)
TreeSitter
- update android-tree-sitter to support 16KB page size for newer Android platform (thanks to @itsaky)
0.24.3
Editor Core
- add more line-break opportunities for better programming code reading
- select auto-completion item by Tab and Enter (#768)
- add border color customizations (#764)
- fix a potential problem in calculating horizontal scrolling range (#775)
- fix a problem in line width re-calculating when wordwrap is disabled
- fix wrong background for empty line in certain situation
- enhance the access range check in
Contentfor better problem tracking
Oniguruma Native
Demo App
- add more bracket pair captures for tree-sitter Java
0.24.2
Editor Core
- Improve display correctness and speed for long lines
- Fix text advance calculating in wordwrap mode and bring faster wordwrap speed
- Add support for AltGr in physical keyboard (#384)
- Fix a problem in meta-key state tracking that can leads meta-key to sticky state
- Fix slow regex searching speed on high API device
- Add border for highlight delimiters and is enabled by default as a replacement for previous underline (#764)
- Fix magnifier background when viewport capture is not available yet (#765)
- Fix the problem that editor may draw a selection at multiple positions
- Add basic support for displaying RTL lines with right alignment in wordwrap mode
- Fix some problems in selection handle for bidirectional text
Editor LSP
- Support Markdown escape character (#762)
0.24.1
This release brings minor bug fixes and improvements.
Editor Core
- Fix magnifier content when the editor is in dialogs
- Fix text action window not showing up on long press if the text is empty (#757)
- Fix line-break indicator may not be drawn for empty line if hardware-acceleration is not available
- Fix line-break and soft-wrap indicators for inlay hint only rows
- Add select all to context menu
TextMate
- Add missing proguard rules for optional
oniguruma-nativecomponents
Editor LSP
0.24.0
Thanks to all the contributors, we are finally able to release this major update of sora-editor.
Editor Core
Improvements
- Refactored row rendering system, bringing:
- Visual line based Home/End acttion
- Highlight matched items in completion window (#729)
- Show inserting direction for bidirectional lines
- Faster wordwrap analysis
- Show soft-wrap indicators
- Long-press and drag to select text (#738)
- Move selection to first completion item when phisical keyboard is connected (#746)
- Check thread on editor text changes (disabled by default)
- Add listener for layout init tasks (#742)
- Add lightweight span object to reduce memory usage
- Add shadow for sticky line region bottom
- Sticky lines can have a top offset to scroll with its end line
- Proper mouse pointer icon for sticky lines
- Support dead keys in physical keyboard
Bug Fixes
- Fix some editor windows not dismissed on editor release (#713)
- Fix layout reusing issues (#561, #562)
- Fix lag when editing in large text due to a long IPC length
- Fix dropped frame when scrolling in large text due to wrongly implementedly LRU cache
- Fix night color for line number panel text
- Fix underline visibility when hardware-accelerating is on
- Fix unexpected line background animation when editor is not editable
- Fix magnifier on low API devices and non-activity contexts
- Fix meta-key states when physical keyboard is connected
Removal of Feature
basicDisplayModeis permanently removed from editor core to better support bidirectional text and inline elements
Editor LSP
-
Supported connection using LocalSocket, fixed a bug in
textDocument/diagnosticlogic, and accelerated LSP server connection speed (#706) -
Optimized multiple null checks in the LSP module, improved thread safety, memory leak, security, and text synchronization #716 #718 #719 #726 #733 #739 by @KonerDev, @dingyi222666, @VincentLagerros
-
Supported calling
textDocument/renameandtextDocument/prepareRenamefromrequestManager(#721) -
When calling
EventType.applyEdits, multiple edits will now be merged into a single edit to improve undo efficiency (#721) -
#731 Provided several major feature updates for the LSP module, including:
- Improved and reimplemented signature help window.
- Supported hover window, which displays help documentation for a symbol when the cursor hovers over it.
- Supported codeAction window, which requires manual triggering by the caller.
- A more aesthetically pleasing
DiagnosticTooltipLayout, specially designed for LSP. - Fixed text matching issues in the completion window and supported highlighting of matching text.
- Supported some
workspace/commands for language servers. - LSP-specific windows all support text scaling with the editor size, and provide simple markdown rendering for signature help and
hover.
-
Provided
inlayHintsupport (experimental) for the LSP module. (#743) -
Provided better markdown rendering for PopupWindow in the LSP module, support syntax highlighting (#744)
-
Fixed text editing issues in the LSP module (#747)
-
Provided
documentColorsupport for the LSP module. When the connected LSP server supports it, this will display a color block left to the color code. (#749) -
Fixed multiple memory leak issues in the LSP module (#751)
TextMate
Improvements
- JSON parsing is now lenient
- Add oniguruma support to provider faster and memory-friendly tokenization (see
oniguruma-nativemodule below)
Bug Fixes
- Fix some concurrent issues (#736)
- Fix token colors after theme change
TreeSitter
Bug Fixes
- Allow querying changed node and synchronize the access to the backing tree
- Cache not update when spans are requested in full line
Oniguruma
oniguruma-native is added for matching regexps in native oniguruma implementation.
By including this module to your app, language-textmate will use it to match regexps faster and support more VSCode TextMate bundles.
In a production build, the highlight time is roughly 60% less than the older one.
0.23.7
Bugs Fixed
- empty text committed by IME is unexpectedly ignored
- missing some communication method implementations in input connection (fix GBoard undo/redo support)
- missing highlighted delimiter foreground color in some built-in color schemes
Notice
Since v0.23.7 (inclusive):
- the group namespace is migrated to
io.github.rosemoeinstead ofio.github.Rosemoe.sora-editor bommodule is renamed toeditor-bom
Due to the migration to Central Portal, the old namespace can not be used anymore.
This won't affect any previously published version.
0.23.6
Enhancements
- improve character deleting on Android P and above
- disable desugaring in textmate to let app developer choose whether desugaring is enabled (#641 by @MohammedKHC )
- LSP improvements (#635, #681 by @dingyi222666 )
- add monarch support for editor (#580 by @dingyi222666 )
- add regex back-reference in regex search-replace (#639)
- add default night colors for editor text action window (#644)
- do not stroke matching delimeters (#663 by @massivemadness )
- allow to control current line background overlapping behavior (#679 by @itsaky )
- allow to intercept
SideIconClickEvent(#680 by @itsaky ) - provide motion region and bounds info in
EditorMotionEvent(#682 by @itsaky )
Bugs Fixed
- clipboard content is sometimes pasted like
ClipData.Item {...} - text position error when tab width is not 4
- mess text display after font change
- fix unexpectedly thrown exception in Java tokenizer that leads to syntax-highlight crash
- conflict between symbol completion and search-replace (#638)
- possible concurrent modification to tree-sitter AST
- negative Y offset leads to crash if overscroll is enabled (#655)
editor.foregroundnot working for textmate color scheme (#656)- fix measure size when
wrap_contentis used on editor (#658 by @StarkZhidian ) - fix magnifier in sticky text selection mode (#659 by @massivemadness )
- current line is highlighted when it is supposed to be disabled (#662 by @massivemadness )
- rounded selection region not applied for empty line (#667 by @massivemadness )
0.23.5
Fixes and Enhancements
- fix some compatibility issues in textmate and
Languageinterface - fix crash in finding word boundary (#618)
- add Ctrl+DEL and Ctrl+Backspace keybindings (#625)
- fix a display issue between character TAB and
:.in some fonts - add workaround for unsupported regular expressions in textmate grammars
- fix some issues in symbol pairs (#602, #609, #610, #611, #612)
- fix possible crash during
setText(#561, #562) - fix selection handle can easily set wrong selection position when text size is small (#554)
- fix possible NPE in
SearchThread(#568) - show scrollbars when mouse inside
- add ripple background for action window buttons
- some memory usage enhancement
0.23.4
Fixes and Enhancements
- add logic for typing dead chars and avoid crashing for some keyboard (#547)
- cancel selection handle animation when mouse is connected
- fix view scrolling not being cancelled after mouse button is released
- fix input sometimes unexpectedly entering inactive mode
- fix inconsistent scroll position after scaling in wordwrap mode
- fix a compatibility issue in textmate after upstream sync (devices under API 34 are affected)
- update dependencies
Documentation Site
Previous pages in sora-editor main repository are removed and unpublished.
Introduction part of sora-editor is available at here, including a brief overview of editor and basic usage/knowledge for getting started.
0.23.3
Fixes
- add static APIs in
SpantoSpanFactoryto avoidNoSuchMethodErrorwhen app minSdk < 24
Migrate toSpanFactoryrecommended.
Documentation
We are adding documentation for sora-editor now!
Currently, you can visit here to explore the documentation, though it's incomplete.