{"id":13821794,"url":"https://github.com/bobbylight/RSyntaxTextArea","last_synced_at":"2025-05-16T15:30:57.798Z","repository":{"id":9948326,"uuid":"11966919","full_name":"bobbylight/RSyntaxTextArea","owner":"bobbylight","description":"A syntax highlighting, code folding text editor for Java Swing applications.","archived":false,"fork":false,"pushed_at":"2024-04-12T23:19:32.000Z","size":14536,"stargazers_count":1052,"open_issues_count":125,"forks_count":250,"subscribers_count":59,"default_branch":"master","last_synced_at":"2024-04-13T08:05:14.249Z","etag":null,"topics":["code-editor","java-swing-applications","syntax-highlighting"],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bobbylight.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2013-08-08T03:40:21.000Z","updated_at":"2024-04-14T22:36:09.690Z","dependencies_parsed_at":"2023-01-14T12:00:37.256Z","dependency_job_id":"a70ac4a4-1b0a-41c9-9350-12be5c12c50a","html_url":"https://github.com/bobbylight/RSyntaxTextArea","commit_stats":null,"previous_names":[],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbylight%2FRSyntaxTextArea","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbylight%2FRSyntaxTextArea/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbylight%2FRSyntaxTextArea/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bobbylight%2FRSyntaxTextArea/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bobbylight","download_url":"https://codeload.github.com/bobbylight/RSyntaxTextArea/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":213893315,"owners_count":15653524,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["code-editor","java-swing-applications","syntax-highlighting"],"created_at":"2024-08-04T08:01:28.542Z","updated_at":"2025-05-16T15:30:57.788Z","avatar_url":"https://github.com/bobbylight.png","language":"Java","readme":"# RSyntaxTextArea\n![Java Build](https://github.com/bobbylight/RSyntaxTextArea/actions/workflows/gradle.yml/badge.svg)\n![Java Build](https://github.com/bobbylight/RSyntaxTextArea/actions/workflows/codeql-analysis.yml/badge.svg)\n![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.fifesoft/rsyntaxtextarea/badge.svg)\n[![codecov](https://codecov.io/gh/bobbylight/RSyntaxTextArea/branch/master/graph/badge.svg?token=Hktq3vfINy)](https://codecov.io/gh/bobbylight/RSyntaxTextArea)\n\nRSyntaxTextArea is a customizable, syntax highlighting text component for Java Swing applications.  Out of\nthe box, it supports syntax highlighting for 50+ programming languages, code folding, search and replace,\nand has add-on libraries for code completion and spell checking.  Syntax highlighting for additional languages\n[can be added](https://github.com/bobbylight/RSyntaxTextArea/wiki) via tools such as [JFlex](http://jflex.de).\n\nRSyntaxTextArea is available under a [BSD 3-Clause license](https://raw.githubusercontent.com/bobbylight/RSyntaxTextArea/refs/heads/master/RSyntaxTextArea/src/main/resources/META-INF/LICENSE).\nFor more information, visit [http://bobbylight.github.io/RSyntaxTextArea/](http://bobbylight.github.io/RSyntaxTextArea/).\n\nAvailable in the [Maven Central repository](http://search.maven.org/#search%7Cga%7C1%7Crsyntaxtextarea%20jar) (`com.fifesoft:rsyntaxtextarea:XXX`).\nSNAPSHOT builds of the in-development, unreleased version are hosted on [Sonatype](https://oss.sonatype.org/content/repositories/snapshots/com/fifesoft/rsyntaxtextarea/).\n\nPlease see [the wiki](https://github.com/bobbylight/RSyntaxTextArea/wiki)\nfor an overview of features and a deep-dive into the code!\n\n# Building\n\nRSyntaxTextArea uses [Gradle](http://gradle.org/) to build.  To compile, run\nall unit tests, and create the jar, run:\n\n    ./gradlew build --warning-mode all\n\nRSTA 3.0 and newer requires Java 17 to compile, but runs on Java 8.\nIf you need Java 6 compatibility, you'll need to use a 2.6.x version.\n\n# Demos\n\nThere are several simple demo applications in the\n`RSyntaxTextAreaDemo` submodule.  To run the \"main\" one, which\nshows off syntax highlighting and code folding for several\nlanguages as well as several common configuration options,\nrun:\n\n```bash\n./gradlew RSyntaxTextAreaDemo:run\n```\n\n# Example Usage\n\nRSyntaxTextArea is simply a subclass of JTextComponent, so it can be dropped into any Swing application with ease.\n\n```java\nimport javax.swing.*;\nimport java.awt.BorderLayout;\n\nimport org.fife.ui.rtextarea.*;\nimport org.fife.ui.rsyntaxtextarea.*;\n\npublic class TextEditorDemo extends JFrame {\n\n    public TextEditorDemo() {\n\n        JPanel cp = new JPanel(new BorderLayout());\n\n        RSyntaxTextArea textArea = new RSyntaxTextArea(20, 60);\n        textArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_JAVA);\n        textArea.setCodeFoldingEnabled(true);\n        RTextScrollPane sp = new RTextScrollPane(textArea);\n        cp.add(sp);\n\n        setContentPane(cp);\n        setTitle(\"Text Editor Demo\");\n        setDefaultCloseOperation(EXIT_ON_CLOSE);\n        pack();\n        setLocationRelativeTo(null);\n\n    }\n\n    public static void main(String[] args) {\n        // Start all Swing applications on the EDT.\n        SwingUtilities.invokeLater(() -\u003e new TextEditorDemo().setVisible(true));\n    }\n\n}\n```\n# Sister Projects\n\nRSyntaxTextArea provides syntax highlighting, code folding, and many other features out-of-the-box, but when building a code editor you often want to go further.  Below is a list of small add-on libraries that add more complex functionality:\n\n* [AutoComplete](https://github.com/bobbylight/AutoComplete) - Adds code completion to RSyntaxTextArea (or any other JTextComponent).\n* [RSTALanguageSupport](https://github.com/bobbylight/RSTALanguageSupport) - Code completion for RSTA for the following languages: Java, JavaScript, HTML, PHP, JSP, Perl, C, Unix Shell.  Built on both RSTA and AutoComplete.\n* [SpellChecker](https://github.com/bobbylight/SpellChecker) - Adds squiggle-underline spell checking to RSyntaxTextArea.\n* [RSTAUI](https://github.com/bobbylight/RSTAUI) - Common dialogs needed by text editing applications: Find, Replace, Go to Line, File Properties.\n\n# Getting Help\n\n* Add an issue on GitHub\n* Peruse [the wiki](https://github.com/bobbylight/RSyntaxTextArea/wiki)\n* Check the project's [home page](http://bobbylight.github.io/RSyntaxTextArea/)\n","funding_links":[],"categories":["Java"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbobbylight%2FRSyntaxTextArea","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbobbylight%2FRSyntaxTextArea","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbobbylight%2FRSyntaxTextArea/lists"}