Skip to content

Commit 00e4243

Browse files
committed
Squashed commit of the following:
commit 046a216 Merge: 570e9db 198f593 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Sep 8 18:27:48 2025 +0200 Merge branch 'main' into gradle-runner commit 570e9db Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Jul 18 21:42:08 2025 +0200 Automatically download jdk commit 578c287 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Jul 18 10:43:33 2025 +0200 Build on save commit fdc43dc Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Jul 17 15:49:40 2025 +0200 Hot Reloading plugin commit 0c674ad Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Jul 17 12:13:56 2025 +0200 Initial Gradle Plugin configuration commit f916d27 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 16 11:26:37 2025 +0200 Adding a settings panel to the editor For upcoming plugin support we need a way to enable plugins based on each sketch commit 550200c Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 9 09:41:40 2025 +0200 Comments and planning commit c55e286 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 8 12:23:05 2025 +0200 Speed up gradle compilations commit b712390 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 8 11:59:28 2025 +0200 Fixed rename Windres task commit a36c8a3 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 8 10:31:12 2025 +0200 Plugin tests bugfixes commit 7379166 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 8 10:26:16 2025 +0200 Processing Plugin tests & Refactor commit b64505d Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jul 7 16:21:59 2025 +0200 Gradle Service refactor commit a11d2ff Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jul 7 15:22:21 2025 +0200 Logging sketches to separate stream & small refactor commit 5729e88 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jul 7 11:01:58 2025 +0200 Show error logs to the user commit b709fe3 Merge: cebc352 d7c6aeb Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Jul 4 07:36:32 2025 +0200 Merge branch 'gradle-runner' of https://github.com/Stefterv/processing4 into gradle-runner commit cebc352 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Jul 4 07:36:31 2025 +0200 Snap support commit d7c6aeb Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Jul 4 06:54:50 2025 +0200 Also copy Untitled sketches commit 24cb4f4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Jul 4 06:23:00 2025 +0200 Improved Error reporting commit e727dbf Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 21:33:12 2025 +0200 Support for readonly sketches commit b165d0a Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 21:25:52 2025 +0200 Add all library jars commit 772567c Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 20:34:37 2025 +0200 Build system indicators, Language keys and filtering SLF4J warnings commit efd03db Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 15:58:02 2025 +0200 Fixed gradle runner issues commit 5409912 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 13:42:41 2025 +0200 Improved Gradle Error logging commit 1762b74 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 11:56:34 2025 +0200 Simplified Gradle Service, improved sketch logging, fixed toolbar state commit e6474e1 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 10:29:20 2025 +0200 Small tweaks and wrote motivation for Gradle Build system commit 67de82f Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 09:53:14 2025 +0200 Removed error & out streams, has been piped directly into System commit bd5aba4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 09:50:39 2025 +0200 Allowing libraries folder to not exist, but log instead commit fcb554a Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Jul 2 09:42:19 2025 +0200 Rename gradle plugin and further planning commit 1c42961 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 1 17:35:32 2025 +0200 Gradle Task error printing commit 4cca647 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 1 17:02:03 2025 +0200 Updated error reporting commit 0d1fcc4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 1 14:40:30 2025 +0200 Added documentation and todo's commit 0299209 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 1 12:59:34 2025 +0200 Squashed commit of the following: commit 3a1aa8e Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 1 12:53:59 2025 +0200 Restore welcome & Cleanup commit 7d94b30 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Jul 1 12:20:17 2025 +0200 PR Cleanup commit 27764e9 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jun 23 13:33:50 2025 +0200 Update Toolbar.kt commit 97fc4c2 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jun 23 13:30:47 2025 +0200 Removed background job differentiation commit 85566c8 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jun 23 13:09:11 2025 +0200 CLI Compatibility commit 7f2f2b6 Merge: 1c8581e bf34ade Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Jun 23 11:14:57 2025 +0200 Merge branch 'main' into runner commit 1c8581e Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu May 15 13:39:21 2025 +0200 Move Gradle connection into GradleJob commit d742002 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu May 15 10:10:33 2025 +0200 Exclude jnilib from sources commit 2c9ee1c Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu May 15 09:51:08 2025 +0200 Linux Platform addition commit 49988e9 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu May 15 09:34:44 2025 +0200 Use forward slashes on Windows commit da5092e Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu May 15 09:10:11 2025 +0200 Add support for .java files & Cleanup commit ab7c216 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu May 15 08:15:11 2025 +0200 Preferences in the PDE will now be read from system before looking at files commit 7775d01 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 18:07:50 2025 +0200 Identified Bugs commit 80c48f2 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 17:59:07 2025 +0200 Windows Bugfix commit 5ad43e0 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 17:51:57 2025 +0200 Set a default tab size commit 2f99a69 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 16:14:59 2025 +0200 Bundle necessary plugins commit f9b94c5 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 15:17:55 2025 +0200 Only make parent dirs commit 982c111 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 15:11:54 2025 +0200 Show debug on gradle tests commit 917d0d3 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 15:08:47 2025 +0200 Listen for folder changes commit 12ce442 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 14:25:06 2025 +0200 Fix saved files using an old version commit 04ac9f2 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 13:47:21 2025 +0200 Plugin rework for caching heavy work commit e31d37d Merge: df1277e 540d299 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 10:43:43 2025 +0200 Merge branch 'main' into runner commit df1277e Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed May 14 10:39:22 2025 +0200 Disabled modern UI for now. Added preference instead commit c5c3b2f Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Apr 21 14:04:39 2025 +0200 Added todos commit 612126a Merge: 3e89bfe ecd219b Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Apr 17 12:37:06 2025 +0200 Merge branch 'main' into runner commit 3e89bfe Merge: efa77bb 7489870 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Apr 17 12:34:57 2025 +0200 Merge branch 'runner' of https://github.com/Stefterv/processing4 into runner commit efa77bb Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Apr 1 18:19:58 2025 +0200 Cleanup [skip ci] commit 7489870 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Apr 1 18:19:58 2025 +0200 Cleanup [skip ci] commit 97ec5e4 Merge: 221ee28 3d6a6ce Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Apr 1 17:54:41 2025 +0200 Merge branch 'gradle-welcome-screen' into runner commit 221ee28 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Apr 1 17:53:48 2025 +0200 Toolbar UI design start commit a870cd0 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Apr 1 10:14:22 2025 +0200 GradleJob Refactor commit 2269fd3 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Apr 1 09:15:47 2025 +0200 Gradle Runner, build script management commit 6758d68 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 31 18:40:19 2025 +0200 Richer console output and richer exception output commit 15114a1 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 31 15:00:12 2025 +0200 Retry vm debug connection commit 36ce0ab Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 31 12:05:58 2025 +0200 Runner: Fixing build errors commit 701f9f5 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Mar 30 23:58:36 2025 +0200 Gradle Runner PoC Refactor commit 947a90e Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Mar 30 14:51:48 2025 +0200 Toolbar functionality PoC commit 3d6a6ce Merge: f7f22c5 2222331 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Mar 30 08:52:37 2025 +0200 Merge branch 'processing:main' into gradle-welcome-screen commit 4602ef1 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 22:50:35 2025 +0100 Fixes for windows commit 0d3795f Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 22:31:47 2025 +0100 Gradle Runner, more variables commit ab38e5f Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 20:54:02 2025 +0100 Arguments refactor commit 17acb01 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 20:10:15 2025 +0100 Copy running JDK rather than download commit b534c26 Merge: d6cb3ee 2222331 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 18:17:20 2025 +0100 Merge branch 'main' into runner commit d6cb3ee Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 10:20:17 2025 +0100 Fix for signing release commit bf82d53 Merge: 73dfa0a dd823a7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 10:17:06 2025 +0100 Merge branch 'runner' of https://github.com/Stefterv/processing4 into runner commit 73dfa0a Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Mar 29 10:17:04 2025 +0100 Only sign with signing set up commit 41ef1cc Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 28 09:00:23 2025 +0100 Fix plugin name in tests commit dd823a7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 28 09:00:23 2025 +0100 Fix plugin name in tests commit 3a14ff4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 28 08:18:53 2025 +0100 Added Stubs commit 00f8afa Merge: 700599e 1ab2359 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 28 08:13:11 2025 +0100 Merge branch 'schema-threading' into runner commit 700599e Merge: 1fae461 499d200 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 28 08:13:06 2025 +0100 Merge branch 'main' into runner commit 1fae461 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 21:37:55 2025 +0100 UI Cleanup commit f762a3e Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 20:05:01 2025 +0100 Added debugging commit c2071a0 Merge: f453eca 8fb9ef5 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 18:23:23 2025 +0100 Merge branch 'hide-scrollbars' into runner commit f453eca Merge: 8f47d21 694eb0c Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 18:03:34 2025 +0100 Merge remote-tracking branch 'upstream/fix-jdk-requirement' into runner commit 8f47d21 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 18:00:15 2025 +0100 Scan libaries for dependencies commit 5d71244 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 14:58:11 2025 +0100 Plugin rework commit e164fe4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 13:01:33 2025 +0100 Gradle variables from Processing, Group resolution commit 672c2ac Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Mar 27 11:51:08 2025 +0100 Removed the need for settings.gradle.kts & Embedding maven repo commit cdec594 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Mar 26 18:39:04 2025 +0100 Added export support commit 3ad3654 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Mar 26 17:25:51 2025 +0100 Gradle Runner visual styling commit bc063e8 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Mar 26 14:17:25 2025 +0100 Gradle Runner PoC commit 47d3428 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Mar 23 18:18:54 2025 +0100 More todo's commit 29d76eb Merge: ba49656 9760a63 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Mar 23 17:58:39 2025 +0100 Merge branch 'processing:main' into gradle-plugin commit ba49656 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Mar 18 10:15:40 2025 +0100 Adding tests and direct linking commit e01d02a Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 15:31:25 2025 +0100 Update settings.gradle.kts commit b0b12dd Merge: 7e6c97a ad5c27e Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 15:14:35 2025 +0100 Merge branch 'gradle-preprocessor' into gradle-plugin commit ad5c27e Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 15:11:24 2025 +0100 Apply same parser & lexer fixes from before commit 743ea14 Merge: c28a267 8e8f7dc Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 13:53:40 2025 +0100 Merge branch 'main' into gradle-preprocessor commit 7e6c97a Merge: f126d4b 8e8f7dc Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 13:43:21 2025 +0100 Merge branch 'main' into gradle-plugin commit f7f22c5 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 10:40:37 2025 +0100 Create Directory as well commit d17ca0c Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 10:36:35 2025 +0100 Removed PlatformStart and create new file if doesn't exist commit b0e7f96 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Mar 17 10:28:12 2025 +0100 Added initial tests commit 0df4dc0 Merge: 6974811 8e8f7dc Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Mar 16 21:18:22 2025 +0100 Merge branch 'main' into gradle-welcome-screen commit 6974811 Merge: 7452d65 1455512 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Mar 11 20:42:46 2025 +0100 Merge branch 'test-schema' into gradle-welcome-screen commit 7452d65 Merge: babf54e fe152b7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 7 15:07:56 2025 +0100 Merge branch 'main' into gradle-welcome-screen commit c28a267 Merge: e188336 fe152b7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 7 15:06:27 2025 +0100 Merge branch 'processing:main' into gradle-preprocessor commit f126d4b Merge: da852b4 fe152b7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Mar 7 15:06:08 2025 +0100 Merge branch 'processing:main' into gradle-plugin commit babf54e Merge: 0e56f89 00c5760 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Feb 10 17:58:35 2025 +0100 Merge branch 'gradle-loggin' into gradle-welcome-screen commit 0e56f89 Merge: 54944af 29b557a Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Feb 9 21:15:36 2025 +0100 Merge branch 'main-gradle' into gradle-welcome-screen commit 54944af Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Feb 9 14:36:37 2025 +0100 Welcome Screen: JDK Module commit 8d8bd01 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Feb 9 13:54:07 2025 +0100 Welcome Screen: Close Functionality commit 3df4da9 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Feb 9 12:57:55 2025 +0100 Welcome Screen: Bugfixes commit cb184fb Author: Stef Tervelde <stef@steftervelde.nl> Date: Sun Feb 9 12:19:33 2025 +0100 Welcome Screen: Layout fixes commit 3d81b02 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Feb 8 22:47:28 2025 +0100 Welcome Screen: Language selection commit b0c61a4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Sat Feb 8 11:10:33 2025 +0100 Welcome Screen: Load & Display examples commit 2f12d13 Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Feb 7 21:53:49 2025 +0100 Saveable/Reactive Preferences commit 8ed2d1b Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Feb 7 16:34:23 2025 +0100 Welcome Screen: WIP commit 5c020dd Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Feb 7 15:49:25 2025 +0100 Welcome Screen: Initial Layout commit bd3a77e Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Feb 7 12:09:58 2025 +0100 Welcome Screen: Window Abstraction commit b1910de Author: Stef Tervelde <stef@steftervelde.nl> Date: Fri Feb 7 11:24:30 2025 +0100 Welcome Screen: Initial Frame commit da852b4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 20:54:32 2025 +0100 Fullscreen support commit 44ab816 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 20:38:27 2025 +0100 disable full screen from settings and fixed a few bugs commit e188336 Merge: df745bb 3f3e7d7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 13:03:51 2025 +0100 Merge branch 'main-gradle' into gradle/preprocessor commit 031d304 Merge: 25e147e 3f3e7d7 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 13:03:12 2025 +0100 Merge branch 'main-gradle' into gradle/plugin commit 25e147e Merge: 7f00d5b 3b9aea1 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 12:56:55 2025 +0100 Merge branch 'main-gradle' into gradle/plugin commit df745bb Merge: f016cc4 3b9aea1 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 12:56:38 2025 +0100 Merge branch 'main-gradle' into gradle/preprocessor commit 7f00d5b Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 12:36:18 2025 +0100 added example of plugin usage commit f4d7fbf Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 09:19:08 2025 +0100 Changed naming commit 1b8a8ed Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 09:10:42 2025 +0100 Gradle Plugin from PoC commit 5468da0 Author: Stef Tervelde <stef@steftervelde.nl> Date: Tue Feb 4 16:18:29 2025 +0100 Removed outdated ant backwards compatibility marks commit 23c8a46 Author: Stef Tervelde <stef@steftervelde.nl> Date: Mon Feb 3 12:07:01 2025 +0100 - Imports cleanup - Disable system look & feel on macOS for readability - Cleaned unnecessary space - Cleaned finished TODO commit f016cc4 Author: Stef Tervelde <stef@steftervelde.nl> Date: Wed Feb 5 12:01:47 2025 +0100 Removed core dependency from the pre-processor commit 971d98b Author: Stef Tervelde <stef@steftervelde.nl> Date: Thu Jan 30 22:59:16 2025 +0100 Preprocessor with antlr Plugin
1 parent e56e281 commit 00e4243

File tree

9 files changed

+1289
-31
lines changed

9 files changed

+1289
-31
lines changed

gradle/libs.versions.toml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
kotlin = "2.0.20"
33
compose-plugin = "1.7.1"
44
jogl = "2.5.0"
5+
antlr = "4.13.2"
56
jupiter = "5.12.0"
67

78
[libraries]
@@ -25,6 +26,11 @@ netbeansSwing = { module = "org.netbeans.api:org-netbeans-swing-outline", versio
2526
ant = { module = "org.apache.ant:ant", version = "1.10.14" }
2627
lsp4j = { module = "org.eclipse.lsp4j:org.eclipse.lsp4j", version = "0.22.0" }
2728
jsoup = { module = "org.jsoup:jsoup", version = "1.17.2" }
29+
antlr4 = { module = "org.antlr:antlr4", version.ref = "antlr" }
30+
antlr4Runtime = { module = "org.antlr:antlr4-runtime", version.ref = "antlr" }
31+
composeGradlePlugin = { module = "org.jetbrains.compose:compose-gradle-plugin", version.ref = "compose-plugin" }
32+
kotlinGradlePlugin = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
33+
kotlinComposePlugin = { module = "org.jetbrains.kotlin.plugin.compose:org.jetbrains.kotlin.plugin.compose.gradle.plugin", version.ref = "kotlin" }
2834
markdown = { module = "com.mikepenz:multiplatform-markdown-renderer-m2", version = "0.31.0" }
2935
markdownJVM = { module = "com.mikepenz:multiplatform-markdown-renderer-jvm", version = "0.31.0" }
3036
clikt = { module = "com.github.ajalt.clikt:clikt", version = "5.0.2" }
@@ -36,4 +42,5 @@ kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref =
3642
compose-compiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
3743
serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" }
3844
download = { id = "de.undercouch.download", version = "5.6.0" }
39-
mavenPublish = { id = "com.vanniktech.maven.publish", version = "0.30.0" }
45+
mavenPublish = { id = "com.vanniktech.maven.publish", version = "0.30.0" }
46+
gradlePublish = { id = "com.gradle.plugin-publish", version = "1.2.1" }

java/preprocessor/build.gradle.kts

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
import com.vanniktech.maven.publish.SonatypeHost
22

33
plugins{
4-
id("java")
4+
java
5+
antlr
56
alias(libs.plugins.mavenPublish)
67
}
78

@@ -14,24 +15,44 @@ repositories{
1415
sourceSets{
1516
main{
1617
java{
17-
srcDirs("src/main/java", "../src/", "../generated/")
18+
srcDirs("src/main/java", "../src/")
1819
include("processing/mode/java/preproc/**/*", "processing/app/**/*")
1920
}
2021
}
21-
22+
}
23+
afterEvaluate{
24+
tasks.withType(Jar::class.java){
25+
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
26+
dependsOn(tasks.generateGrammarSource)
27+
}
2228
}
2329

2430
dependencies{
31+
implementation(project(":core"))
32+
implementation(project(":app:utils"))
33+
2534
implementation(libs.antlr)
2635
implementation(libs.eclipseJDT)
2736

28-
implementation(project(":core"))
29-
implementation(project(":app:utils"))
37+
antlr(libs.antlr4)
38+
implementation(libs.antlr4Runtime)
39+
}
40+
41+
publishing{
42+
repositories{
43+
maven {
44+
name = "App"
45+
url = uri(project(":app").layout.buildDirectory.dir("resources-bundled/common/repository").get().asFile.absolutePath)
46+
}
47+
}
3048
}
3149

3250
mavenPublishing{
3351
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL)
34-
signAllPublications()
52+
53+
// Only sign if signing is set up
54+
if(project.hasProperty("signing.keyId") || project.hasProperty("signing.signingInMemoryKey"))
55+
signAllPublications()
3556

3657
pom{
3758
name.set("Processing Pre-processor")
@@ -59,13 +80,4 @@ mavenPublishing{
5980
developerConnection.set("scm:git:ssh://git@github.com/processing/processing4.git")
6081
}
6182
}
62-
}
63-
tasks.withType<Jar> {
64-
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
65-
}
66-
tasks.compileJava{
67-
dependsOn("ant-preproc")
68-
}
69-
ant.importBuild("../build.xml"){ antTaskName ->
70-
"ant-$antTaskName"
7183
}
Lines changed: 235 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,235 @@
1+
/*
2+
[The "BSD licence"]
3+
Copyright (c) 2013 Terence Parr, Sam Harwell
4+
Copyright (c) 2017 Ivan Kochurkin (upgrade to Java 8)
5+
Copyright (c) 2021 Michał Lorek (upgrade to Java 11)
6+
Copyright (c) 2022 Michał Lorek (upgrade to Java 17)
7+
All rights reserved.
8+
9+
Redistribution and use in source and binary forms, with or without
10+
modification, are permitted provided that the following conditions
11+
are met:
12+
1. Redistributions of source code must retain the above copyright
13+
notice, this list of conditions and the following disclaimer.
14+
2. Redistributions in binary form must reproduce the above copyright
15+
notice, this list of conditions and the following disclaimer in the
16+
documentation and/or other materials provided with the distribution.
17+
3. The name of the author may not be used to endorse or promote products
18+
derived from this software without specific prior written permission.
19+
20+
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
21+
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
22+
OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23+
IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
24+
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25+
NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26+
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27+
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
29+
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30+
*/
31+
32+
// $antlr-format alignTrailingComments true, columnLimit 150, maxEmptyLinesToKeep 1, reflowComments false, useTab false
33+
// $antlr-format allowShortRulesOnASingleLine true, allowShortBlocksOnASingleLine true, minEmptyLines 0, alignSemicolons ownLine
34+
// $antlr-format alignColons trailing, singleLineOverrulesHangingColon true, alignLexerCommands true, alignLabels true, alignTrailers true
35+
36+
lexer grammar JavaLexer;
37+
38+
// Keywords
39+
40+
ABSTRACT : 'abstract';
41+
ASSERT : 'assert';
42+
BOOLEAN : 'boolean';
43+
BREAK : 'break';
44+
BYTE : 'byte';
45+
CASE : 'case';
46+
CATCH : 'catch';
47+
CHAR : 'char';
48+
CLASS : 'class';
49+
CONST : 'const';
50+
CONTINUE : 'continue';
51+
DEFAULT : 'default';
52+
DO : 'do';
53+
DOUBLE : 'double';
54+
ELSE : 'else';
55+
ENUM : 'enum';
56+
EXTENDS : 'extends';
57+
FINAL : 'final';
58+
FINALLY : 'finally';
59+
FLOAT : 'float';
60+
FOR : 'for';
61+
IF : 'if';
62+
GOTO : 'goto';
63+
IMPLEMENTS : 'implements';
64+
IMPORT : 'import';
65+
INSTANCEOF : 'instanceof';
66+
INT : 'int';
67+
INTERFACE : 'interface';
68+
LONG : 'long';
69+
NATIVE : 'native';
70+
NEW : 'new';
71+
PACKAGE : 'package';
72+
PRIVATE : 'private';
73+
PROTECTED : 'protected';
74+
PUBLIC : 'public';
75+
RETURN : 'return';
76+
SHORT : 'short';
77+
STATIC : 'static';
78+
STRICTFP : 'strictfp';
79+
SUPER : 'super';
80+
SWITCH : 'switch';
81+
SYNCHRONIZED : 'synchronized';
82+
THIS : 'this';
83+
THROW : 'throw';
84+
THROWS : 'throws';
85+
TRANSIENT : 'transient';
86+
TRY : 'try';
87+
VOID : 'void';
88+
VOLATILE : 'volatile';
89+
WHILE : 'while';
90+
91+
// Module related keywords
92+
MODULE : 'module';
93+
OPEN : 'open';
94+
REQUIRES : 'requires';
95+
EXPORTS : 'exports';
96+
OPENS : 'opens';
97+
TO : 'to';
98+
USES : 'uses';
99+
PROVIDES : 'provides';
100+
WITH : 'with';
101+
TRANSITIVE : 'transitive';
102+
103+
// Local Variable Type Inference
104+
VAR: 'var'; // reserved type name
105+
106+
// Switch Expressions
107+
YIELD: 'yield'; // reserved type name from Java 14
108+
109+
// Records
110+
RECORD: 'record';
111+
112+
// Sealed Classes
113+
SEALED : 'sealed';
114+
PERMITS : 'permits';
115+
NON_SEALED : 'non-sealed';
116+
117+
// Literals
118+
119+
DECIMAL_LITERAL : ('0' | [1-9] (Digits? | '_'+ Digits)) [lL]?;
120+
HEX_LITERAL : '0' [xX] [0-9a-fA-F] ([0-9a-fA-F_]* [0-9a-fA-F])? [lL]?;
121+
OCT_LITERAL : '0' '_'* [0-7] ([0-7_]* [0-7])? [lL]?;
122+
BINARY_LITERAL : '0' [bB] [01] ([01_]* [01])? [lL]?;
123+
124+
FLOAT_LITERAL:
125+
(Digits '.' Digits? | '.' Digits) ExponentPart? [fFdD]?
126+
| Digits (ExponentPart [fFdD]? | [fFdD])
127+
;
128+
129+
HEX_FLOAT_LITERAL: '0' [xX] (HexDigits '.'? | HexDigits? '.' HexDigits) [pP] [+-]? Digits [fFdD]?;
130+
131+
BOOL_LITERAL: 'true' | 'false';
132+
133+
CHAR_LITERAL: '\'' (~['\\\r\n] | EscapeSequence) '\'';
134+
135+
STRING_LITERAL: '"' (~["\\\r\n] | EscapeSequence)* '"';
136+
137+
MULTI_STRING_LIT: '"""' (~[\\] | EscapeSequence)*? '"""';
138+
139+
TEXT_BLOCK: '"""' [ \t]* [\r\n] (. | EscapeSequence)*? '"""';
140+
141+
NULL_LITERAL: 'null';
142+
143+
// Separators
144+
145+
LPAREN : '(';
146+
RPAREN : ')';
147+
LBRACE : '{';
148+
RBRACE : '}';
149+
LBRACK : '[';
150+
RBRACK : ']';
151+
SEMI : ';';
152+
COMMA : ',';
153+
DOT : '.';
154+
155+
// Operators
156+
157+
ASSIGN : '=';
158+
GT : '>';
159+
LT : '<';
160+
BANG : '!';
161+
TILDE : '~';
162+
QUESTION : '?';
163+
COLON : ':';
164+
EQUAL : '==';
165+
LE : '<=';
166+
GE : '>=';
167+
NOTEQUAL : '!=';
168+
AND : '&&';
169+
OR : '||';
170+
INC : '++';
171+
DEC : '--';
172+
ADD : '+';
173+
SUB : '-';
174+
MUL : '*';
175+
DIV : '/';
176+
BITAND : '&';
177+
BITOR : '|';
178+
CARET : '^';
179+
MOD : '%';
180+
181+
ADD_ASSIGN : '+=';
182+
SUB_ASSIGN : '-=';
183+
MUL_ASSIGN : '*=';
184+
DIV_ASSIGN : '/=';
185+
AND_ASSIGN : '&=';
186+
OR_ASSIGN : '|=';
187+
XOR_ASSIGN : '^=';
188+
MOD_ASSIGN : '%=';
189+
LSHIFT_ASSIGN : '<<=';
190+
RSHIFT_ASSIGN : '>>=';
191+
URSHIFT_ASSIGN : '>>>=';
192+
193+
// Java 8 tokens
194+
195+
ARROW : '->';
196+
COLONCOLON : '::';
197+
198+
// Additional symbols not defined in the lexical specification
199+
200+
AT : '@';
201+
ELLIPSIS : '...';
202+
203+
// Whitespace and comments
204+
205+
WS : [ \t\r\n\u000C]+ -> channel(HIDDEN);
206+
COMMENT : '/*' .*? '*/' -> channel(HIDDEN);
207+
LINE_COMMENT : '//' ~[\r\n]* -> channel(HIDDEN);
208+
209+
// Identifiers
210+
211+
IDENTIFIER: Letter LetterOrDigit*;
212+
213+
// Fragment rules
214+
215+
fragment ExponentPart: [eE] [+-]? Digits;
216+
217+
fragment EscapeSequence:
218+
'\\' 'u005c'? [btnfr"'\\]
219+
| '\\' 'u005c'? ([0-3]? [0-7])? [0-7]
220+
| '\\' 'u'+ HexDigit HexDigit HexDigit HexDigit
221+
;
222+
223+
fragment HexDigits: HexDigit ((HexDigit | '_')* HexDigit)?;
224+
225+
fragment HexDigit: [0-9a-fA-F];
226+
227+
fragment Digits: [0-9] ([0-9_]* [0-9])?;
228+
229+
fragment LetterOrDigit: Letter | [0-9];
230+
231+
fragment Letter:
232+
[a-zA-Z$_] // these are the "java letters" below 0x7F
233+
| ~[\u0000-\u007F\uD800-\uDBFF] // covers all characters above 0x7F which are not a surrogate
234+
| [\uD800-\uDBFF] [\uDC00-\uDFFF] // covers UTF-16 surrogate pairs encodings for U+10000 to U+10FFFF
235+
;

0 commit comments

Comments
 (0)