diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..919548e
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,10 @@
+root=true
+
+[*]
+tab_width = 4
+
+[*.g4]
+end_of_line = lf
+trim_trailing_whitespace = true
+indent_style = space
+indent_size = 4
diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..4c0a70f
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,93 @@
+# Recipe from: https://help.github.com/articles/dealing-with-line-endings/#platform-all
+
+# Set the default behavior, in case people don't have core.autocrlf set.
+* text=auto
+
+# Explicitly declare text files you want to always be normalized and converted
+# to native line endings on checkout.
+*.abnf text
+*.agc text
+*.asn text
+*.b text
+*.bas text
+*.bnf text
+*.c text
+*.cl text
+*.cpp text
+*.cs text
+*.css text
+*.csv text
+*.dgs text
+*.dot text
+*.erl text
+*.errors text
+*.faa text
+*.ffn text
+*.fna text
+*.g text
+*.g4 text
+*.g42 text
+*.gff text
+*.gml text
+*.go text
+*.gradle text
+*.h text
+*.html text
+*.ics text
+*.idl text
+*.iri text
+*.java text
+*.js text
+*.json text
+*.kt text
+*.lua text
+*.m text
+*.map text
+*.md text
+*.mo text
+*.mps text
+*.ora text
+*.pas text
+*.pc text
+*.pgn text
+*.php text
+*.pkb text
+*.pks text
+*.properties text
+*.proto text
+*.py text
+*.rb text
+*.s text
+*.sh text
+*.smt2 text
+*.sno text
+*.sql text
+*.st text
+*.style text
+*.swift text
+*.tree text
+*.ttl text
+*.txt text
+*.upnp text
+*.vb text
+*.vhd text
+*.x text
+*.xml text
+*.yml text
+access_log text
+
+# Declare files that will always have LF line endings on checkout.
+# Unicode input files end with *.txt, but should not be converted on Windows
+/unicode/graphemes/examples/*.txt eol=lf
+
+# Declare files that will always have CRLF line endings on checkout.
+# Currently the /vb6/**/*.cls and *.frm file need this, otherwise the grammar fails.
+*.cls text eol=crlf
+*.frm text eol=crlf
+
+# Denote all files that are truly binary and should not be modified.
+*.pdf binary
+*.png binary
+
+
+**/examples/* linguist-vendored
diff --git a/assembly.xml b/assembly.xml
new file mode 100644
index 0000000..8532122
--- /dev/null
+++ b/assembly.xml
@@ -0,0 +1,14 @@
+
+ grammars
+
+ zip
+
+
+
+ ${project.basedir}
+
+ **/*.g4
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 14f4b6c..cd67071 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,39 +1,25 @@
-
+
+4.0.0
- com.antlr.grammarsv4
+ org.antlr.grammarsgrammarsv4pom1.0-SNAPSHOTANTLR4 grammars
-
-
- test
-
- false
-
-
- _grammar-test
-
-
-
-
- true
-
- grammarv4
-
- yarspg
-
-
-
-
- UTF-8
- 1.6
- 4.7.1
- 1.10
+ 1.7
+ 4.8-1
+ 1.14
+ 4.12
+
+ 3.1.0
+
+
+ https://github.com/lszeremeta/yarspg.git
+ HEAD
+ org.antlr
@@ -45,7 +31,7 @@
junitjunit
- 4.12
+ ${junit.version}
@@ -53,7 +39,7 @@
org.apache.maven.pluginsmaven-compiler-plugin
- 3.0
+ 3.8.0${target.jvm}
@@ -61,4 +47,115 @@
+
+
+
+ true
+
+ grammarv4
+
+ yarspg
+
+
+
+
+
+ deploy
+
+
+
+ maven-assembly-plugin
+ 3.1.0
+
+
+ ${maven.multiModuleProjectDirectory}/assembly.xml
+
+
+
+
+ make-assembly
+ package
+
+ single
+
+
+
+
+
+ org.sonatype.plugins
+ nexus-staging-maven-plugin
+ 1.6.8
+ true
+
+ ossrh
+ https://oss.sonatype.org/
+ true
+
+
+
+ org.apache.maven.plugins
+ maven-source-plugin
+ 3.0.1
+
+
+ attach-sources
+
+ jar-no-fork
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-javadoc-plugin
+ 3.0.1
+
+
+ attach-javadocs
+
+ jar
+
+
+
+
+ -Xdoclint:none
+
+
+
+ org.apache.maven.plugins
+ maven-gpg-plugin
+ 1.6
+
+
+ sign-artifacts
+ verify
+
+ sign
+
+
+
+
+
+
+
+
+ test
+
+ false
+
+
+ _grammar-test
+
+
+
+
+
+ ossrh
+ https://oss.sonatype.org/content/repositories/snapshots
+
+
+ ossrh
+ https://oss.sonatype.org/service/local/staging/deploy/maven2/
+
+
diff --git a/test.sh b/test.sh
new file mode 100644
index 0000000..71a5ccd
--- /dev/null
+++ b/test.sh
@@ -0,0 +1,2 @@
+command -v mvn >/dev/null 2>&1 || { echo >&2 "I require maven to test the grammars but it's not installed. Aborting."; exit 1; }
+mvn test $@
diff --git a/yarspg/pom.xml b/yarspg/pom.xml
index 81fefcd..f61a4b7 100644
--- a/yarspg/pom.xml
+++ b/yarspg/pom.xml
@@ -5,7 +5,7 @@
jarANTLR YARSpg grammar
- com.antlr.grammarsv4
+ org.antlr.grammarsgrammarsv41.0-SNAPSHOT../pom.xml
@@ -17,10 +17,10 @@
antlr4-maven-plugin${antlr.version}
- ${basedir}YARSpg.g4truetrue
+ ${basedir}