sora-editor icon indicating copy to clipboard operation
sora-editor copied to clipboard

A multifunctional Android code editor library. (aka CodeEditor)

Banner

CI GitHub license Maven Central
Telegram QQ

sora-editor is a cool and optimized code editor on Android platform

Work In Progress This project is still developing slowly.
Download the newest sources from Releases instead of cloning this repository directly. Issues and pull requests are welcome.

Features

  • [x] Syntax highlighting
  • [x] Auto-completion
  • [x] Auto indent
  • [x] Code block lines
  • [x] Scale text
  • [x] Undo/redo
  • [x] Search and replace
  • [x] Auto wordwrap
  • [x] Show non-printable characters
  • [x] Error/Warning/Typo/Deprecated indicators
  • [x] Text magnifier
  • [x] Incremental highlight analysis
  • [x] Highlight bracket pairs
  • [x] Event System

Screenshots

GeneralAppearance ProblemIndicator

Get started

Add to your app's dependencies:

implementation 'io.github.Rosemoe.sora-editor:<moduleName>:<versionName>'

Available modules:

  • editor
    Widget library containing all basic things of the framework
  • editor-lsp
    A convenient library for creating languages by using Language Server Protocol (aka LSP)
  • language-java
    A simple implementation for Java highlighting and identifier auto-completion
  • language-textmate
    An advanced highlighter for the editor. You can find textmate language bundles and themes and load them by using this module. The internal implementation of textmate is from tm4e.

Check the newest version from the badge above or Releases.

Discuss

Contributors

License

sora-editor - the awesome code editor for Android
https://github.com/Rosemoe/sora-editor
Copyright (C) 2020-2022  Rosemoe

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301
USA

Please contact Rosemoe by email [email protected] if you need
additional information or have any questions

Acknowledgements

Thanks to JetBrains for allocating free open-source licences for IDEs such as IntelliJ IDEA.