plugbee / dslforge Goto Github PK
View Code? Open in Web Editor NEWA generator of domain-specific language (DSL) editors for web applications and cloud IDEs.
A generator of domain-specific language (DSL) editors for web applications and cloud IDEs.
Hi,
Started by running the example as shown in videos.
Upon executing the web editor in debug mode, started hitting problem that it was not able to create database in location D:/www/dslforge/workspace/.metadata
Figured out the fix from #15
Now I have a plugin contribution specifying workspace, and this problem is not there anymore.
I am still getting following stacktraces on console though.
Any pointers on this would be appreciated.
!ENTRY org.eclipse.rap.ui 4 0 2016-07-29 09:56:29.397
!MESSAGE An unexpected exception was thrown.
!STACK 0
java.lang.NullPointerException
at org.dslforge.workspace.ui.BasicWokspaceNavigator.serverPushSessionOff(BasicWokspaceNavigator.java:181)
at org.dslforge.workspace.ui.BasicWokspaceNavigator.dispose(BasicWokspaceNavigator.java:174)
at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:464)
at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:226)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:599)
at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:310)
at org.eclipse.ui.internal.ViewPane.setVisible(ViewPane.java:542)
at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:185)
at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:265)
at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:64)
at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:479)
at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1262)
at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1215)
at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1614)
at org.eclipse.ui.internal.PartStack.createControl(PartStack.java:659)
at org.eclipse.ui.internal.PartStack.createControl(PartStack.java:585)
at org.eclipse.ui.internal.PartSashContainer.createControl(PartSashContainer.java:573)
at org.eclipse.ui.internal.PerspectiveHelper.activate(PerspectiveHelper.java:269)
at org.eclipse.ui.internal.Perspective.onActivate(Perspective.java:980)
at org.eclipse.ui.internal.WorkbenchPage.onActivate(WorkbenchPage.java:2627)
at org.eclipse.ui.internal.WorkbenchWindow$26.run(WorkbenchWindow.java:3077)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
at org.eclipse.ui.internal.WorkbenchWindow.setActivePage(WorkbenchWindow.java:3058)
at org.eclipse.ui.internal.WorkbenchWindow.busyOpenPage(WorkbenchWindow.java:763)
at org.eclipse.ui.internal.Workbench$18.runWithException(Workbench.java:1266)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:32)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:246)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:1097)
at org.eclipse.ui.internal.StartupThreading.runWithWorkbenchExceptions(StartupThreading.java:55)
at org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:1262)
at org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:2061)
at org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1992)
at org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:188)
at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:790)
at org.eclipse.ui.internal.Workbench$27.runWithException(Workbench.java:1640)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:32)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:246)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:1097)
at org.eclipse.ui.internal.StartupThreading.runWithoutExceptions(StartupThreading.java:110)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1635)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2655)
at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
at org.dslforge.texteditor.demo.BasicWorkbench.createUI(BasicWorkbench.java:48)
at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
at java.lang.Thread.run(Thread.java:785)
at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
!ENTRY org.eclipse.ui.workbench 4 0 2016-07-29 09:56:29.400
!MESSAGE Unable to create view ID org.dslforge.navigator.view: An unexpected exception was thrown.
!STACK 0
java.lang.NullPointerException
at org.dslforge.workspace.internal.DatabaseService.lookupEntityManagerFactory(DatabaseService.java:77)
at org.dslforge.workspace.internal.DatabaseService.getEmf(DatabaseService.java:67)
at org.dslforge.workspace.WorkspaceManager.setupWorkspace(WorkspaceManager.java:58)
at org.dslforge.workspace.WorkspaceManager.(WorkspaceManager.java:54)
at org.dslforge.workspace.WorkspaceManager.(WorkspaceManager.java:50)
at org.dslforge.workspace.ui.BasicWokspaceNavigator.getWorkspaceRoot(BasicWokspaceNavigator.java:187)
at org.dslforge.workspace.ui.BasicWokspaceNavigator.getInitialInput(BasicWokspaceNavigator.java:115)
at org.eclipse.ui.navigator.CommonNavigator.createPartControl(CommonNavigator.java:212)
at org.dslforge.workspace.ui.BasicWokspaceNavigator.createPartControl(BasicWokspaceNavigator.java:89)
at org.eclipse.ui.internal.ViewReference.createPartHelper(ViewReference.java:375)
at org.eclipse.ui.internal.ViewReference.createPart(ViewReference.java:226)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:599)
at org.eclipse.ui.internal.PartPane.setVisible(PartPane.java:310)
at org.eclipse.ui.internal.ViewPane.setVisible(ViewPane.java:542)
at org.eclipse.ui.internal.presentations.PresentablePart.setVisible(PresentablePart.java:185)
at org.eclipse.ui.internal.presentations.util.PresentablePartFolder.select(PresentablePartFolder.java:265)
at org.eclipse.ui.internal.presentations.util.LeftToRightTabOrder.select(LeftToRightTabOrder.java:64)
at org.eclipse.ui.internal.presentations.util.TabbedStackPresentation.selectPart(TabbedStackPresentation.java:479)
at org.eclipse.ui.internal.PartStack.refreshPresentationSelection(PartStack.java:1262)
at org.eclipse.ui.internal.PartStack.setSelection(PartStack.java:1215)
at org.eclipse.ui.internal.PartStack.showPart(PartStack.java:1614)
at org.eclipse.ui.internal.PartStack.createControl(PartStack.java:659)
at org.eclipse.ui.internal.PartStack.createControl(PartStack.java:585)
at org.eclipse.ui.internal.PartSashContainer.createControl(PartSashContainer.java:573)
at org.eclipse.ui.internal.PerspectiveHelper.activate(PerspectiveHelper.java:269)
at org.eclipse.ui.internal.Perspective.onActivate(Perspective.java:980)
at org.eclipse.ui.internal.WorkbenchPage.onActivate(WorkbenchPage.java:2627)
at org.eclipse.ui.internal.WorkbenchWindow$26.run(WorkbenchWindow.java:3077)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:66)
at org.eclipse.ui.internal.WorkbenchWindow.setActivePage(WorkbenchWindow.java:3058)
at org.eclipse.ui.internal.WorkbenchWindow.busyOpenPage(WorkbenchWindow.java:763)
at org.eclipse.ui.internal.Workbench$18.runWithException(Workbench.java:1266)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:32)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:246)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:1097)
at org.eclipse.ui.internal.StartupThreading.runWithWorkbenchExceptions(StartupThreading.java:55)
at org.eclipse.ui.internal.Workbench.busyOpenWorkbenchWindow(Workbench.java:1262)
at org.eclipse.ui.internal.Workbench.doOpenFirstTimeWindow(Workbench.java:2061)
at org.eclipse.ui.internal.Workbench.openFirstTimeWindow(Workbench.java:1992)
at org.eclipse.ui.internal.WorkbenchConfigurer.openFirstTimeWindow(WorkbenchConfigurer.java:188)
at org.eclipse.ui.application.WorkbenchAdvisor.openWindows(WorkbenchAdvisor.java:790)
at org.eclipse.ui.internal.Workbench$27.runWithException(Workbench.java:1640)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:32)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:246)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:150)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:1097)
at org.eclipse.ui.internal.StartupThreading.runWithoutExceptions(StartupThreading.java:110)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1635)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2655)
at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
at org.dslforge.texteditor.demo.BasicWorkbench.createUI(BasicWorkbench.java:48)
at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
at java.lang.Thread.run(Thread.java:785)
at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
Hello DSL Forge team,
The Xtext team would like to update the Xtext community website listing all the cool projects people are building around Xtext/Xtend.
See also the corresponding GitHub issue and Bugzilla ticket
If you are interested that the DSL Forge project is listed there, please provide the following information as a comment to this issue:
<tr>
<td><a href="project_link">project_name</a></td>
<td>project_description_max_2_sentences</td>
<td>license</td>
<td>category</td>
<td>author(s)</td>
</tr>
We will then update the Xtext community website and get it online as soon as possible.
Thanks!
Tamás
Copy and paste using only the keyboard is correct
Copy and paste using the Edit menu or the Editor popup menu is correct
But when you try to copy paste using a combination of the two approaches, for example Copy (from keyboard) & Paste (from menu), it is not correct. You obtain the text that you previously copied using the selected paste approach.
I just installed DSL Forge Tools Feature 0.9.0.201608071811 and tried generating a web editor using the wizard. After choosing my *.xtext grammar file, all fields stay empty and it is impossible to continue the wizard with the next button.
Steps to reproduce:
jee eclipse with current xtext 2.10 /dslforge tools 9.1. Target (resolves) is dslforge which is pretty much the same as the otherwise running one.
0 [main] INFO lipse.emf.mwe.utils.StandaloneSetup - Registering platform uri '/Users/mike/Home/src/dsl4'
45 [main] INFO lipse.emf.mwe.utils.StandaloneSetup - Adding generated EPackage 'org.eclipse.xtext.xbase.XbasePackage'
113 [main] ERROR mf.mwe2.launch.runtime.Mwe2Launcher - Problems instantiating module org.eclipse.xtext.example.fowlerdsl.GenerateStatemachine: java.lang.reflect.InvocationTargetException
java.lang.RuntimeException: Problems instantiating module org.eclipse.xtext.example.fowlerdsl.GenerateStatemachine: java.lang.reflect.InvocationTargetException
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:95)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:62)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:52)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:78)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:36)
Caused by: org.eclipse.emf.common.util.WrappedException: java.lang.reflect.InvocationTargetException
at org.eclipse.emf.mwe2.language.factory.SettingProviderImpl$1$1.setValue(SettingProviderImpl.java:56)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.internalApplyAssignments(Mwe2ExecutionEngine.java:143)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.inCase(Mwe2ExecutionEngine.java:114)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.xtext.util.PolymorphicDispatcher.invoke(PolymorphicDispatcher.java:296)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.internalSwitch(Mwe2ExecutionEngine.java:66)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.internalApplyAssignments(Mwe2ExecutionEngine.java:142)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.inCase(Mwe2ExecutionEngine.java:114)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.xtext.util.PolymorphicDispatcher.invoke(PolymorphicDispatcher.java:296)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.internalSwitch(Mwe2ExecutionEngine.java:66)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.inCase(Mwe2ExecutionEngine.java:80)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.xtext.util.PolymorphicDispatcher.invoke(PolymorphicDispatcher.java:296)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.internalSwitch(Mwe2ExecutionEngine.java:66)
at org.eclipse.emf.mwe2.language.factory.Mwe2ExecutionEngine.create(Mwe2ExecutionEngine.java:62)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:93)
... 4 more
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.emf.mwe2.language.factory.SettingProviderImpl$1$1.setValue(SettingProviderImpl.java:54)
... 29 more
Caused by: java.lang.NoClassDefFoundError: org/eclipse/emf/codegen/jet/JETException
at org.eclipse.emf.codegen.ecore.genmodel.impl.GenModelFactoryImpl.createGenModel(GenModelFactoryImpl.java:162)
at org.eclipse.emf.codegen.ecore.genmodel.impl.GenModelFactoryImpl.create(GenModelFactoryImpl.java:77)
at org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl.createObject(XMLHelperImpl.java:885)
at org.eclipse.emf.ecore.xmi.impl.XMLHelperImpl.createObject(XMLHelperImpl.java:922)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createObjectFromFactory(XMLHandler.java:2222)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createObjectByType(XMLHandler.java:1366)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.createTopObject(XMLHandler.java:1504)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.processElement(XMLHandler.java:1026)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.processElement(XMIHandler.java:78)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.java:1008)
at org.eclipse.emf.ecore.xmi.impl.XMLHandler.startElement(XMLHandler.java:719)
at org.eclipse.emf.ecore.xmi.impl.XMIHandler.startElement(XMIHandler.java:190)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:745)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1359)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$ContentDriver.scanRootElementHook(XMLDocumentScannerImpl.java:1289)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:3132)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(XMLDocumentScannerImpl.java:852)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:841)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:770)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:327)
at org.eclipse.emf.ecore.xmi.impl.XMLLoadImpl.load(XMLLoadImpl.java:175)
at org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl.doLoad(XMLResourceImpl.java:261)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1518)
at org.eclipse.emf.ecore.resource.impl.ResourceImpl.load(ResourceImpl.java:1297)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoad(ResourceSetImpl.java:259)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandLoadHelper(ResourceSetImpl.java:274)
at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.getResource(ResourceSetImpl.java:406)
at org.eclipse.emf.mwe.utils.GenModelHelper.registerGenModel(GenModelHelper.java:35)
at org.eclipse.emf.mwe.utils.StandaloneSetup.addRegisterGenModelFile(StandaloneSetup.java:514)
... 34 more
Caused by: java.lang.ClassNotFoundException: org.eclipse.emf.codegen.jet.JETException
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 69 more
In the IDE, several Xtext editor files of the same DSL can reference each other's elements. In DSLForge this does not seem the case - any chance this could be supported? (issue n°7 in #32)
I tried to filter some files without success. I think that it is not working.
Changing the path of the workspace in org.dslforge.workspace/META-INF/persistence.xml is complex and error prone:
In the example grammar I modified ID to
ID : ('a'..'z' | 'A'..'Z' ) ('a'..'z' | 'A'..'Z' | '0'..'9')* ;
I skipped the underscore.
Nevertheless I can create the following text in the created editor:
Hello _Hans
Hello,
as mentioned in #45 it would be good either to have (a) programming way to specify workspace location or (b) support to use @user.home in specification of workspace location in extension point or (c) support to use workspace/derby purely in RAM of the current Java process.
The motivation behind this is that we would like to use dslforge-based editor in multi-user setup but strict rule needs to apply: NO data sharing between different application users. That means current dslforge does not obey this rule due to usage of shared workspace for Derby DB and we need to fix that in some possible way. Side-note: for different users of the application we are using different JDK processes and different home-dirs/workspaces to isolate users so far...
Thanks!
Karel
I faced a bug while creating a new folder inside a project. Instead of creating a new project inside the initial one on the file path "project_folder/new_folder", it creates a totally new folder called "project_folder\new_folder". Filepath error on mac.
Procedure :
Instead of creating a project inside example meaning example/test
it created a new project called example\test.
A Java method to automatically position the cursor would be great (issue n°6 reported in #32)
Hi!
I am trying to change the colour of specific parts of text in a line using your StyledText plugin, but I am only able change it`s background. Is it possible to use the StyledText plugin as a RAP alternative for the RCP StyledText widget or does it not have the functionality?
What I`m trying to do is colour code specific ranges of chars in specific lines of text on a widget that shows text, sort of like console output.
I modified/then deleted my org.dslforge.workspace.config.configuration extension point (and path contribution). Recreating an org.dslforge.workspace.config.configuration - where can I find the schema for the extension point; without a schema I get a java.sql.SQLException in terms of the workspace going to the default value. Which schema file could one apply to this config extension point?
Content assist for string shows "Valu" - STRING but when clicked doesn't enter "Valu" but ' "Valu" - STRING ' (issue n°3 reported in #32)
it will be nice to be able to open and see it, at least in pure textual mode (no java highlighting)
Due to the use of Gemini JPA, launching the text editor demo in debug mode requires some fined grained adjustments in the plugins startup levels, which is error prone. The problem has also been reported when deploying war on Unix servers. Moreover, Gemini JPA project seems definitely dead [1]
[1] https://dev.eclipse.org/mhonarc/lists/triquetrum-dev/msg00023.html
With 0.9.1 (and eclipse neon.3), index.html references ace/ace.js among other files but ace/ace.js not in the created project and so the deployment fails to load.
I have tried on macOs and Ubuntu.
I've followed the installation instructions: http://dslforge.org/getting-started-generate-ace-editor/
Am I missing something?
Changing the length of content assist needs a manual javascript workaround. Maybe provide a method to set it? (issue n°4 reported in #32)
getting 'org.eclipse.ui cannot be resolved' and related errors on various distributions (jee, Eclipse IDE for Java and DSL Developers and RCP and RAP Developers) all for MacOS. Didn't try to package in the sdk jars for it yet.
Thanks for your great tool! We are running the editor in a viewpart as a widget, but it was only possible with significant tricks and hacks. It would be great to have a way to simply instantiate the editor (with content assist and validation) as a widget in a viewpart.
Thanks
Ulrich
Open several files to see the file tabs with the different editors.
Activate "Link with editor"
Click in the different tabs
-> The file with the editor opened is not selected in the Project Explorer
Create empty statemachine model, open file and trigger content assist, the proposals are not shown.
For example, go to the workbench, open Python.g4, the parser expects keyword grammar while the grammar is already there; the annotation disappears when the file is modified.
Launch two instances of the online workbench demo, create a folder in one of the instances, then switch to the second instance: the created folder is not shown automatically, need to click on the viewer to make it happen.
Do you have plans to update/support Xtext 2.9 ?
Xtext 2.9 already ships a web based version for ACE editor and Orion.
Do you have plans to use some of that support?
Thanks.
When generating a web editor for a grammar depending on another grammar like this:
grammar tld.domain.my.dsl.MyExtendingDSL with tld.domain.my.dsl.MyBaseDSL
errors like the following are thrown during generation:
java.lang.IllegalStateException: Problem parsing 'platform:/resource/tld.domain.my.dsl/src/main/java/path/to/package/dsl/MyExtendingDSL.xtext': XtextLinkingDiagnostic: null:1 Couldn't resolve reference to Grammar 'tld.domain.my.dsl.MyBaseDSL'.
In the Live demo, the Generate button appears but it creates empty src-gen folders when no generator is assigned to this model type
After creating, opening and starting typing in a new model file inside the example project folder, the application terminates unexpectedly as illustrated on screenshot n°1.
On Eclipse side there are no exceptions as seen on screenshot n°2.
An error is displayed on the browser as seen in screenshot n°3.
There seems to be an issue with "!" in Xtext terminals, which manually need to be changed to ~ in ANTRL in .g (issue n°2 reported in #32)
Evaluate the JavaScript target of ANTLR v4.6 and provide support for such grammars in the static web app scenario (no Xtext in the backend).
I was trying to select some text and then drag and drop it to move it to another position in the same file. This will be a nice enhancement. However, now there is a bug. The editor freezes when you start trying to drag the text and you cannot continue editing the document. (workaround, close the editor and open it again).
If you create an statemachine model with this
events
Xxx yyy
end
and then you modify it with
eve***nts
Xxx yyy
end
no error is shown in the live demo.
If you do it in Eclipse with the statemachine project example, it will show you an error, the typical "missing EOF" at 'eve'.
Process :
It doesn't save the file at the right place. This means if I want to store the Model file in a project folder on the web using MacOS, the tool stores the folder at "workspace\sample.tes".... This is however not possible on macOS, since the right filepath is "workspace/sample.tes". Instead of storing at that path the following file is generated "workspace%5Csample.tes" of the workspace...
When generating a web editor from an xtext grammar, the following exception is thrown : stacktrace.txt
getting this error with run-as MWE2 workflow on various distributions (jee, Eclipse IDE for Java and DSL Developers and RCP and RAP Developers) all for MacOS. Tried quite a few things in addition already.
0 [main] ERROR mf.mwe2.launch.runtime.Mwe2Launcher - Couldn't find module GenerateStatemachine.mwe2.launch
java.lang.IllegalStateException: Couldn't find module GenerateStatemachine.mwe2.launch
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:77)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:71)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:80)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:36)
!ENTRY org.eclipse.rap.ui 4 0 2017-10-16 23:52:22.623
!MESSAGE Unhandled event loop exception
!STACK 0
java.lang.IllegalArgumentException: Argument not valid
at org.eclipse.swt.SWT.error(SWT.java:3694)
at org.eclipse.swt.SWT.error(SWT.java:3631)
at org.eclipse.swt.SWT.error(SWT.java:3602)
at org.dslforge.styledtext.DefaultContent.error(DefaultContent.java:652)
at org.dslforge.styledtext.DefaultContent.getOffsetAtLine(DefaultContent.java:622)
at org.dslforge.styledtext.BasicText.getOffsetAtPosition(BasicText.java:1252)
at org.dslforge.texteditor.BasicTextEditor$2.verifyKey(BasicTextEditor.java:155)
at org.dslforge.styledtext.BasicText$BasicTextListener.handleEvent(BasicText.java:128)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:109)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:687)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:594)
at org.eclipse.swt.widgets.Display.executeNextEvent(Display.java:1217)
at org.eclipse.swt.widgets.Display.runPendingMessages(Display.java:1198)
at org.eclipse.swt.widgets.Display.safeReadAndDispatch(Display.java:1181)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:1173)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2733)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2694)
at org.eclipse.ui.internal.Workbench.access$5(Workbench.java:2530)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:701)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:684)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:157)
at org.codingpark.piraterobot.demo.CodeGameWorkbench.createUI(CodeGameWorkbench.java:35)
at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle.createUI(RWTLifeCycle.java:177)
at org.eclipse.rap.rwt.internal.lifecycle.RWTLifeCycle$UIThreadController.run(RWTLifeCycle.java:290)
at java.lang.Thread.run(Thread.java:745)
at org.eclipse.rap.rwt.internal.lifecycle.UIThread.run(UIThread.java:107)
Support for typing custom characters, like CTRL+SHIFT+< and CTRL+SHIFT+> in a normal Xpand editor in the IDE (issue n°1 reported in #32)
In the workbench demo, open a dsl example, introduce an error then save, the error markers disappear.
If you create a folder inside a project, it is automatically shown. This is nice, BUT if you create a subfolder of the created folder, it does not appear automatically. The same happens for created files inside folders, or when you want to remove a folder that was contained in another folder.
When opening https://beeone.plugbee.com/workbench (linked from https://github.com/plugbee/dslforge#use-cases), an error page appears.
Can the PetriNet demo be brought back online?
Oliver Kopp [email protected], Daimler AG on behalf of MBition GmbH
Now, if you double click in a folder, an error message appears saying that there is no registered editor for this file. I expected the folder to be expanded.
The DSL Forge generator fails to generate the web plugin for grammars having dependencies to ecore metamodels. For example, having the following import statement and rule which references a type defined in mymetamodel.ecore:
import "http://www.example.org/mymetamodel"
MyType returns MyType:
{MyType}
'MyType' ...
The generator outputs the following exception:
2016-06-13 23:10:53 ERROR LanguageConfig:251 - [XtextLinkingDiagnostic: null:4 Couldn't resolve reference to EPackage 'http://www.example.org/mymetamodel'., XtextLinkingDiagnostic: null:6 Couldn't resolve reference to EClassifier 'MyType'.,
Consider the following grammar:
grammar com…. with org.eclipse.xtext.common.Terminals
import "http://www.eclipse.org/emf/2002/Ecore" as ecore
generate editor "http://www..."
Model:
{Model}
('item123s'
item123s+=Item123+
'end')?
('item456'
item123s+=Item456+
'end')?
('item789'
item123s+=Item789+
'end')?
('rl'
rl+=rl123+
'end')?
;
rl123:
(name=STRING
':')?
'keyword1'
at=[Item123|PHRASE]
('and' attri2=[Item123|PHRASE])?
('and' attri3=[Item123|PHRASE])?
ca=[Item456|PHRASE]
va=STRING
'keyword2'
dec=[Item789|PHRASE]
;
Item123:
name=PHRASE item123Id=STRING;
Item456:
name=PHRASE calcId=STRING;
Item789:
name=PHRASE Item789Id=STRING;
terminal PHRASE: '<' ('\' ('b' | 't' | 'n' | 'f' | 'r' | 'u' | '"' | "'" | '\' |'<'|'>') | !('\' | '>' | '\r' | '\n'))* '>';
In rl123 it should only show Item123 in the first position, and only Item456 in the second, and only Item789 in the third. It shows all of Item 123 + Item 456 + Item 789 as options in all 3 places
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.