Changeset 438 for java/Framclipse/com.framsticks.framclipse/src/com/framsticks/framclipse/GenerateFramScript.mwe2
- Timestamp:
- 10/18/15 23:05:09 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
java/Framclipse/com.framsticks.framclipse/src/com/framsticks/framclipse/GenerateFramScript.mwe2
r437 r438 6 6 7 7 var grammarURI = "classpath:/com/framsticks/framclipse/FramScript.xtext" 8 var file .extensions = "neuro, expdef, style, show, script, inc"8 var fileExtensions = "neuro, expdef, style, show, script, inc" 9 9 var projectName = "com.framsticks.framclipse" 10 10 var runtimeProject = "../${projectName}" 11 //var generateXtendStub = true 12 var encoding = "UTF-8" 11 13 12 14 Workflow { 13 15 bean = StandaloneSetup { 16 scanClassPath = true 14 17 platformUri = "${runtimeProject}/.." 18 // The following two lines can be removed, if Xbase is not used. 19 // registerGeneratedEPackage = "org.eclipse.xtext.xbase.XbasePackage" 20 // registerGenModelFile = "platform:/resource/org.eclipse.xtext.xbase/model/Xbase.genmodel" 15 21 } 16 22 … … 20 26 21 27 component = DirectoryCleaner { 28 directory = "${runtimeProject}/model/generated" 29 } 30 31 component = DirectoryCleaner { 22 32 directory = "${runtimeProject}.ui/src-gen" 23 33 } 24 34 /* 35 component = DirectoryCleaner { 36 directory = "${runtimeProject}.tests/src-gen" 37 } 38 */ 25 39 component = Generator { 26 40 pathRtProject = runtimeProject 27 41 pathUiProject = "${runtimeProject}.ui" 42 // pathTestProject = "${runtimeProject}.tests" 28 43 projectNameRt = projectName 29 44 projectNameUi = "${projectName}.ui" 30 31 language = {45 encoding = encoding 46 language = auto-inject { 32 47 uri = grammarURI 33 fileExtensions = file.extensions34 48 35 49 // Java API to access grammar elements (required by several other fragments) 36 fragment = grammarAccess.GrammarAccessFragment {}50 fragment = grammarAccess.GrammarAccessFragment auto-inject {} 37 51 38 // generates Java API for the generated EPackages 39 fragment = ecore.EcoreGeneratorFragment { 52 // generates Java API for the generated EPackages 53 fragment = ecore.EMFGeneratorFragment auto-inject {} 54 /* fragment = ecore.EcoreGeneratorFragment { 40 55 // referencedGenModels = "uri to genmodel, uri to next genmodel" 41 56 } 57 */ 42 58 43 // the serialization component44 fragment = parseTreeConstructor.ParseTreeConstructorFragment {}59 // the old serialization component 60 // fragment = parseTreeConstructor.ParseTreeConstructorFragment auto-inject {} 45 61 46 // a custom ResourceFactory for use with EMF 47 fragment = resourceFactory.ResourceFactoryFragment { 48 fileExtensions = file.extensions 49 } 50 51 // the following fragment tries to use the Antlr Generator fragment which can be installed via update manager from http://download.itemis.com/updates/ 52 fragment = AntlrDelegatingFragment {} 53 54 // java-based API for validation 55 fragment = validation.JavaValidatorFragment { 56 composedCheck = "org.eclipse.xtext.validation.ImportUriValidator" 57 composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator" 58 // registerForImportedPackages = true 59 } 60 61 // scoping and exporting API 62 /* 63 fragment = scoping.ImportURIScopingFragment {} 64 fragment = exporting.SimpleNamesFragment {} 65 */ 66 67 // scoping and exporting API 68 fragment = scoping.ImportURIScopingFragment {} 69 fragment = exporting.QualifiedNamesFragment {} 70 71 // formatter API 72 fragment = formatting.FormatterFragment {} 73 74 // labeling API 75 fragment = labeling.LabelProviderFragment {} 76 77 // outline API 78 fragment = outline.TransformerFragment {} 79 fragment = outline.OutlineNodeAdapterFactoryFragment {} 80 fragment = outline.QuickOutlineFragment {} 81 82 // java-based API for content assistance 83 fragment = contentAssist.JavaBasedContentAssistFragment {} 84 85 // the following fragment tries to use the Antlr based content assist 86 // fragment which can be downloaded from http://www.itemis.com 87 // and will be ignored if it's not available. 88 fragment = DelegatingGeneratorFragment { 89 delegate = "de.itemis.xtext.antlr.XtextAntlrUiGeneratorFragment" 90 message="You are generating without ANTLR. It is highly recommended to download and use the plugin \'de.itemis.xtext.antlr\' \n\t using the update site http:\//download.itemis.com/updates/." 62 // serializer 2.0 63 fragment = serializer.SerializerFragment auto-inject { 64 generateStub = false 91 65 } 92 66 93 fragment = builder.BuilderIntegrationFragment {} 67 // a custom ResourceFactory for use with EMF 68 fragment = resourceFactory.ResourceFactoryFragment auto-inject {} 69 70 // The antlr parser generator fragment. 71 fragment = parser.antlr.XtextAntlrGeneratorFragment auto-inject { 72 // options = { 73 // backtrack = true 74 // } 75 } 76 /* 77 // Xtend-based API for validation 78 fragment = validation.ValidatorFragment auto-inject { 79 */ 80 // Java-based API for validation 81 fragment = validation.JavaValidatorFragment auto-inject { 82 // composedCheck = "org.eclipse.xtext.validation.ImportUriValidator" 83 // composedCheck = "org.eclipse.xtext.validation.NamesAreUniqueValidator" 84 } 94 85 95 // project wizard (optional) 96 /* 97 fragment = projectWizard.SimpleProjectWizardFragment { 98 generatorProjectName = "${projectName}.generator" 99 modelFileExtension = file.extensions 100 } 101 */ 86 // old scoping and exporting API 87 fragment = scoping.ImportURIScopingFragment auto-inject {} 88 fragment = exporting.SimpleNamesFragment auto-inject {} 89 90 // scoping and exporting API 91 // fragment = scoping.ImportNamespacesScopingFragment auto-inject {} 92 // fragment = exporting.QualifiedNamesFragment auto-inject {} 93 // fragment = builder.BuilderIntegrationFragment auto-inject {} 94 95 // generator API 96 // fragment = generator.GeneratorFragment auto-inject {} 102 97 103 // quickfix API 104 fragment = quickfix.QuickfixProviderFragment {} 98 // formatter API 99 fragment = formatting.FormatterFragment auto-inject {} 100 101 // labeling API 102 fragment = labeling.LabelProviderFragment auto-inject {} 103 104 // outline API 105 // fragment = outline.TransformerFragment {} 106 // fragment = outline.OutlineNodeAdapterFactoryFragment {} 107 fragment = outline.OutlineTreeProviderFragment auto-inject {} 108 fragment = outline.QuickOutlineFragment auto-inject {} 109 110 // java-based API for content assistance 111 fragment = contentAssist.JavaBasedContentAssistFragment {} 112 /* 113 // content assist API 114 fragment = contentAssist.ContentAssistFragment auto-inject {} 115 */ 116 // generates a more lightweight Antlr parser and lexer tailored for content assist 117 fragment = parser.antlr.XtextAntlrUiGeneratorFragment auto-inject {} 118 /* 119 // generates junit test support classes into Generator#pathTestProject 120 fragment = junit.Junit4Fragment auto-inject {} 121 122 // rename refactoring 123 fragment = refactoring.RefactorElementNameFragment auto-inject {} 124 125 // provides the necessary bindings for java types integration 126 fragment = types.TypesGeneratorFragment auto-inject {} 127 128 // generates the required bindings only if the grammar inherits from Xbase 129 fragment = xbase.XbaseGeneratorFragment auto-inject {} 130 131 // generates the required bindings only if the grammar inherits from Xtype 132 fragment = xbase.XtypeGeneratorFragment auto-inject {} 133 134 // provides a preference page for template proposals 135 fragment = templates.CodetemplatesGeneratorFragment auto-inject {} 136 137 // provides a compare view 138 fragment = compare.CompareFragment auto-inject {} 139 */ 140 // quickfix API 141 fragment = quickfix.QuickfixProviderFragment auto-inject {} 105 142 } 106 143 }
Note: See TracChangeset
for help on using the changeset viewer.