You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
TM4E provides a Java implementation of the [TextMate grammar](https://en.wikipedia.org/wiki/TextMate#Language_grammars) engine, based on the [microsoft/vscode-textmate](https://github.com/microsoft/vscode-textmate) project, that can be embedded in any Java application,
8
-
along with Eclipse IDE integration for syntax highlighting and VS Code-style [Language Configuration](https://code.visualstudio.com/api/references/contribution-points#contributes.languages) (brackets, auto-closing, on-enter behavior, and more).
9
7
10
-
TM4E is an [official Eclipse.org project](https://projects.eclipse.org/projects/technology.tm4e), and follows the usual Eclipse.org processes and IP requirements.
8
+
## Table of contents
9
+
10
+
-[About TM4E](#about-tm4e)
11
+
-[Key Features](#key-features)
12
+
-[Installation](#-installation)
13
+
-[Getting started as an end user](#-getting-started-as-an-end-user)
14
+
-[Who is using TM4E?](#-who-is-using-tm4e)
15
+
-[Architecture and modules](#-architecture-and-modules)
16
+
-[Integrating TM4E](#-integrating-tm4e)
17
+
-[Contributing](#-contributing)
18
+
-[License](#-license)
19
+
20
+
21
+
## About TM4E
11
22
12
-
**Example**: TypeScript editor using TM4E-based highlighting (from [Eclipse Wild Web Developer](https://github.com/eclipse/wildwebdeveloper)):
23
+
TM4E provides a Java implementation of the [TextMate grammar](https://en.wikipedia.org/wiki/TextMate#Language_grammars) engine, based on the [microsoft/vscode-textmate](https://github.com/microsoft/vscode-textmate) project.
24
+
It can be embedded in any Java application, along with Eclipse IDE integration for syntax highlighting and VS Code-style [Language Configuration](https://code.visualstudio.com/api/references/contribution-points#contributes.languages) (brackets, auto-closing, on-enter behavior, and more).
25
+
26
+
**Example**: TypeScript editor using TM4E-based highlighting (from [Eclipse Wild Web Developer](https://github.com/eclipse/wildwebdeveloper))
TM4E is an [official Eclipse.org project](https://projects.eclipse.org/projects/technology.tm4e), and follows the usual Eclipse.org processes and IP requirements.
31
+
32
+
16
33
## Key features
17
34
18
35
- TextMate-based syntax highlighting for Eclipse editors, including the Generic Editor and TM4E-powered custom editors.
19
36
- Language-configuration based editor features, such as auto-closing and matching brackets, on-enter indentation and comment continuation, toggle line and block comments, and folding when supported.
20
37
- Themable colorization through TextMate themes, with built-in Light/Dark themes and additional themes contributed by plugins.
21
38
- A TM4E secondary partitioner that understands embedded languages and exposes normalized grammar scopes that other tooling can consume.
22
39
23
-
## 📦 Installation
40
+
41
+
## 📥 Installation
24
42
25
43
### 1) In Eclipse IDE or RCP applications
26
44
@@ -42,7 +60,6 @@ TM4E version |Min. Eclipse version | Min. Java version
**Snapshot** binaries of `org.eclipse.tm4e.core` are available at https://repo.eclipse.org/content/repositories/tm4e-snapshots/org/eclipse/org.eclipse.tm4e.core/.
@@ -82,7 +99,16 @@ Then reference the dependency in your pom.xml as follows:
82
99
```
83
100
84
101
85
-
## 👥 Who is using TM4E?
102
+
## 🚀 Getting started as an end user
103
+
104
+
If you are using an Eclipse IDE or other tool that ships TM4E-powered editors, you usually do not install TM4E directly.
105
+
106
+
- For day-to-day usage, configuration, and troubleshooting of TM4E-powered editors, see the [User Guide](docs/user-guide.md).
107
+
- For usage questions and general help, use [GitHub discussions](https://github.com/eclipse-tm4e/tm4e/discussions).
108
+
- To report problems with TM4E-powered editors, file issues in [GitHub issues](https://github.com/eclipse-tm4e/tm4e/issues) and include details about your IDE, TM4E version, and steps to reproduce.
109
+
110
+
111
+
## 🙋 Who is using TM4E?
86
112
87
113
Here are some projects that use TM4E:
88
114
@@ -104,35 +130,26 @@ Here are some projects that use TM4E:
104
130
-[Phaser Editor 2D](https://github.com/PhaserEditor2D/PhaserEditor) - an IDE for the creation of HTML5 games.
105
131
106
132
107
-
## 📚 End users
108
-
109
-
If you are using an Eclipse IDE or other tool that ships TM4E-powered editors, you usually do not install TM4E directly.
110
-
111
-
- For day-to-day usage, configuration, and troubleshooting of TM4E-powered editors, see the [User Guide](docs/user-guide.md).
112
-
- For usage questions and general help, use [GitHub discussions](https://github.com/eclipse-tm4e/tm4e/discussions).
113
-
- To report problems with TM4E-powered editors, file issues in [GitHub issues](https://github.com/eclipse-tm4e/tm4e/issues) and include details about your IDE, TM4E version, and steps to reproduce.
114
-
115
-
116
133
## 🧩 Architecture and modules
117
134
118
135
TM4E is split into three main bundles plus an optional language pack feature:
119
136
120
137
-[org.eclipse.tm4e.core](https://github.com/eclipse-tm4e/tm4e/tree/main/org.eclipse.tm4e.core) - Java TextMate engine (a port of [vscode-textmate](https://github.com/Microsoft/vscode-textmate)), UI-agnostic and usable with any Java UI toolkit.
-[org.eclipse.tm4e.languageconfiguration](https://github.com/eclipse-tm4e/tm4e/tree/main/org.eclipse.tm4e.languageconfiguration) - VS Code-style `language-configuration.json` support for bracket handling, auto-close, on-enter behavior, and comment toggling.
123
-
-[org.eclipse.tm4e.language_pack](https://github.com/eclipse-tm4e/tm4e/tree/main/org.eclipse.tm4e.language_pack) - Optional language pack feature that bundles TextMate grammars and language configurations so many common languages work out of the box in the Eclipse IDE.
140
+
-[org.eclipse.tm4e.language_pack](https://github.com/eclipse-tm4e/tm4e/tree/main/org.eclipse.tm4e.language_pack) - Optional language pack feature that bundles 50+ TextMate grammars and language configurations so many common languages work out of the box in the Eclipse IDE.
124
141
125
142
126
143
## 🔌 Integrating TM4E
127
144
128
145
If you are an Eclipse plug-in developer or Java tool author and want to consume TM4E:
129
146
130
-
- Start with the [Plugin Developer Guide](docs/plugin-developer-guide.md) for how to depend on TM4E, register grammars and language configurations, and wire TM4E into editors.
147
+
- Start with the [Plugin Developer Guide](docs/plugin-developer-guide.md) for how to depend on TM4E, contribute grammars, themes, and language configurations, and wire TM4E into editors.
131
148
- For integration questions, best practices, and design discussions, use [GitHub discussions](https://github.com/eclipse-tm4e/tm4e/discussions).
132
149
- To report bugs or request new APIs or integration features, file issues in [GitHub issues](https://github.com/eclipse-tm4e/tm4e/issues).
0 commit comments