-
Notifications
You must be signed in to change notification settings - Fork 21
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Virtlink
committed
Mar 15, 2016
1 parent
84349a2
commit f94ff49
Showing
21 changed files
with
164 additions
and
99 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,63 @@ | ||
# Contributing to Spoofax | ||
Thank you for your interest in contributing to Spoofax! We appreciate | ||
any way in which you contribute. | ||
|
||
```eval_rst | ||
.. todo:: This part of the documentation has not been written yet. | ||
|
||
|
||
## Bug Reports | ||
|
||
> "If debugging is the process of removing bugs, | ||
> then programming must be the process of putting them in." | ||
> – Edsger W. Dijkstra | ||
Unfortunately all but the most trivial software contains bugs. We'll try to fix them, but first | ||
we need to know about them. Feel free to report bugs liberally, even if you're not sure if something | ||
is a bug or not. If you can, please [search existing issues][1], as someone else may already have | ||
reported the issue. However, we won't mind if you accidentally submit a duplicate bug report. | ||
|
||
[Please file your issue here][2]. | ||
|
||
For an issue of Spoofax in IntelliJ IDEA, if you can, please include the `idea.log` | ||
and `build-log/build.log` files. You can find them by clicking on menu _Help_ → _Show Log in Files_ | ||
menu, or by executing the _Show Log in Explorer_ action. | ||
|
||
|
||
|
||
## Feature Requests | ||
To request a feature for the Spoofax for IntelliJ IDEA plugin, you can also file an issue. | ||
|
||
[Please file your feature request here][2]. | ||
|
||
|
||
|
||
## Pull Requests | ||
You are welcome to implement a feature or fix a bug in Spoofax. We use | ||
the _fork, branch and pull_ model described in [GitHub's documentation][3] for pull requests. First | ||
you need to [fork][6] the relevant repository and clone it locally. Then create a new | ||
topic branch, for example: | ||
|
||
```bash | ||
git checkout -b fix-rtl-languages | ||
``` | ||
|
||
Now you work in this branch. Once you're done, you need to build and test your changes. See the | ||
chapter on [building][5] for more information. Once everything succeeds, file a pull request as | ||
described in the [GitHub documentation][3]. | ||
|
||
|
||
|
||
## Writing Documentation | ||
The documentation needs to be kept up-to-date, and any improvements are very welcome. The | ||
documentation you're reading now is generated from the documentation source files in our | ||
[documentation repository][7]. Documentation pull requests function in the same way as code | ||
pull requests. You can see your changes to the documentation in action by building it locally. | ||
Follow the instructions in the [documentation's Readme][8] for more information. | ||
|
||
|
||
[1]: http://yellowgrass.org/project/Spoofax | ||
[2]: http://yellowgrass.org/createIssue/Spoofax | ||
[3]: https://help.github.com/articles/using-pull-requests/ | ||
[5]: build.md | ||
[6]: https://help.github.com/articles/fork-a-repo/ | ||
[7]: https://github.com/metaborg/documentation | ||
[8]: https://github.com/metaborg/documentation/blob/master/README.md |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
28 changes: 25 additions & 3 deletions
28
source/langdev/manual/env/intellij/existing-language-spec.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,27 @@ | ||
# Importing an existing language specification | ||
Follow this quick start guide to import an existing Spoofax language | ||
specification into IntelliJ. | ||
|
||
```eval_rst | ||
.. todo:: This part of the documentation has not been written yet. | ||
``` | ||
1. Choose _Import Project_ from the welcome dialog, or the _File_ → _New_ → | ||
_Project from Existing Sources..._ menu item, to open the _Import Project_ | ||
dialog. | ||
|
||
2. Browse to the root folder of the project, and click _OK_. | ||
|
||
![Browsing to the project](import_langspec.png) | ||
|
||
3. Select _Create project from existing sources_ and click _Next_. | ||
|
||
![Browsing to the project](import_langspec_existingsources.png) | ||
|
||
4. Pick a project name, and ensure the location is correct. Click _Next_. | ||
|
||
5. Ensure both the _Java_ and _Spoofax module_ roots are checked. | ||
|
||
![Check the project roots](import_langspec_projectroots.png) | ||
|
||
6. Click _Finish_. | ||
|
||
The imported Spoofax language specification project has a `metaborg.yaml` | ||
file, which specifies the configuration and language dependencies of the | ||
specification. |
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+15.6 KB
source/langdev/manual/env/intellij/import_langspec_existingsources.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
19 changes: 19 additions & 0 deletions
19
source/langdev/manual/env/intellij/load-and-unload-languages.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
# Load and unload languages | ||
Spoofax for IntelliJ supports dynamic loading and unloading of languages. | ||
Follow this quick start guide to load or unload a language from the IDE. | ||
Note that alternatively you can edit the project's `metaborg.yaml` file to | ||
alter the dependencies, and reload the project. Languages loaded through the | ||
_Settings_ dialog are loaded for every instance of the application. | ||
|
||
1. Choose the _File_ → _Settings_ menu or press the | ||
<kbd>Ctrl</kbd>+<kbd>Alt</kbd>+<kbd>S</kbd> keyboard combination, to open | ||
the _Settings_ dialog. | ||
|
||
2. Go to the _Languages & Frameworks_ → _Metaborg Languages_ page. | ||
|
||
3. Use the ![Plus](button_plus.png) and ![Plus](button_minus.png) buttons | ||
to load or unload a language. | ||
|
||
![Changing the loaded languages](settings_metaborglanguages_add.png) | ||
|
||
4. Click _OK_ to apply the changes. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
.. note:: If the *Project SDK* displays *<None>* and you can't select the | ||
Metaborg SDK, then you need to add it first. | ||
|
||
1. Click the *New...* button next to the *Project SDK* field. | ||
|
||
.. image:: newproject_langspec_newsdk.png | ||
|
||
2. You may get a warning if you have no Java JDK configured. Click *OK* | ||
and configure the JDK's home location. The suggested home | ||
directory is usually correct. Click *OK*. | ||
|
||
3. Select a home directory for the Metaborg SDK. The default is the | ||
Spoofax plugin's ``lib/`` folder, which is sufficient as it contains | ||
all the core dependencies. | ||
|
||
4. Click *OK*. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,30 @@ | ||
# Creating a new language specification | ||
Follow this quick start guide to create a new Spoofax language specification | ||
project to define your own language. | ||
|
||
```eval_rst | ||
.. todo:: This part of the documentation has not been written yet. | ||
``` | ||
1. Choose _Create New Project_ from the welcome dialog, or the _File_ → _New_ → | ||
_Project..._ menu item, to open the _New Project_ dialog. | ||
|
||
2. Select the _Spoofax Language_ project type. | ||
|
||
3. Select the _Metaborg SDK_ as the project's SDK. | ||
|
||
![Select the "Metaborg SDK"](newprojectform_langspec_selectmetaborgsdk.png) | ||
|
||
```eval_rst | ||
.. include:: new-langspec-sdk.txt | ||
``` | ||
|
||
4. Change the fields to suit your needs. | ||
|
||
![Change the fields](newprojectform_langspec_inputfields.png) | ||
|
||
5. Click _Next_. | ||
|
||
6. Pick a project name and location, and click _Finish_. | ||
|
||
![Pick a project name](newprojectform_langspec_projectname.png) | ||
|
||
The created Spoofax language specification project will have a `metaborg.yaml` | ||
file, which specifies the configuration and language dependencies of the | ||
specification. |
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+23.4 KB
source/langdev/manual/env/intellij/newprojectform_langspec_inputfields.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+14 KB
source/langdev/manual/env/intellij/newprojectform_langspec_projectname.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+32.9 KB
source/langdev/manual/env/intellij/newprojectform_langspec_selectmetaborgsdk.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.