Version, history and license.
- 2021-12-30 Hartmut Enhancement: Now it is possible to read an include script from an operation,
which is hence stored in the jar file. Syntay is: include
%<#?backlevel>:pkg.path.Class.operation()
.
The backlevel
is to built a reference current directory for further includes.
It should be relative in the same working tree, usual on the root of a working tree.
- 2021-09-15 Hartmut The path for Obj can contain now also path.to.Class$Subclass separated with $, Important!
- 2021-09-15 Hartmut <textExpr> some confusion with white spaces, should be carefully visited
- 2021-06-08 Hartmut:Featurefix: Now empty statementlist is possible.
The problem for that was that an empty statement list such as main() { }
has had an obscure error message. Secondly sometime an empty statement block may be
* Change simple, statementBlock::= { [ ] } with option braces.
- 2021-06-08 Hartmut: Now the <::> can be used for a text start without newline written with ident designation
* usage: subtext(args) <::>textexpr<.> possible and proposed
* intern: ZbnfItemAttribute ?.skipFirstnl= and ?.ident= used.
- 2021-06-08 Hartmut: Some simplifications for inhibit repeat same programming:
* JZtxtcmdSyntax: definition of text::=
- 2021-02-07 Hartmut new:
List ... [ @ <$?keyVariableName> ]
- 2017-07-12 Hartmut chg:
<textExpr?.indent=-3>
attribute ident to any textExpr,
hence it is possible to use it in any textDatapath too, for example
String myString = <:>StartContent
==================further Content in new line.<.>
It was done because searching of bug found in ZbnfParser, but it is yet usefully.
- 2017-07-12 Hartmut new: debugOp
- 2017-03-25 Hartmut renaming JZtxtcmd, attribute ?.indent=-3 for textExpr
- 2017-03-11 Hartmut <:indent:3=> for indentation of a generated text.
- 2017-03-11 Hartmut renaming JZtxtcmd instead jzcmd. It is Java z Text command
- 2017-01-07 Hartmut new In a
textExpr::=
now <{ }>
and <:\\>
can be written inside. It is documented in JZcmd description.
- 2017-01-07 Hartmut chg: Comment in
textExpr::=
is now <:---> comment <--->
instead <:--- comment ---> because it may confuse with XML text generation elsewhere.
- 2016-01-09 Hartmut chg: Syntax for List, new DefSubtext.
- 2015-12-28 Hartmut chg: instanceof operator in cmpOperationInText too, was missing.
- 2015-12-28 Hartmut chg:
<=
is not an end of an textExpr, because the possibility of <=variableDefinition is removed.
Especially <= is a typical text content for code generation (less or equal). It can be used without subscription now.
- 2015-08-30 Hartmut chg: textValue ends on a ':' too, important for 2015-08-30 Hartmut new: The simple syntax
text = newFile;
to change the <+>output<.+>
has a less semantic effect. Therefore it is replaced by <+:create>newFile<.+>
or <+:append>...
with the possibility of append to an existing file.
- 2014-12-06 Hartmut new: //JZcmd will be ignored, possibility to write a JZcmd script in the comment of a Java source file.
- 2014-12-06 Hartmut chg: The definition of a return type of a subroutine was never used in the execution. Other concept. removed.
- 2014-08-10 Hartmut chg: endlineComment with // only till <+ to support start of text output in an endline comment line.
- 2014-08-10 Hartmut chg: < :@ columnPos : minSpaces> uses : instead + as separator because + is a part of the columnpos expression.
- 2014-08-10 Hartmut new: !checkXmlFile = filename;
- 2014-07-27 Hartmut new: ## in text expression don't skip over newline. Write a <: > before to prevent newline.
- 2014-06-15 Hartmut new: zmake &filePath := ... output as Filepath instance
- 2014-06-15 Hartmut new: Obj name : type possible, not used yet, see
DataAccess.Variable.clazz
- 2014-06-07 Hartmut new: Class var = :loader: package.path.Class; with a loader.
- 2014-06-07 Hartmut new: new &datapath.Classvar:(args) and java &datapath.Classvar:method(args):
Using a Class variable instead constant package.path.Class possible.
- 2014-05-18 Hartmut chg: DefFilepath now uses a textValue and divides the path to its components
at runtime, doesn't use the prepFilePath in ZBNF. Reason: More flexibility. The path can be assmebled
on runtime.
- 2014-04-24 Hartmut some changes, especially datapath uses a regular expression for second identifiers,
not a ZBNF identifier (< $?>), therefore the JZcmd keywords are possible to use for internal data identifier.
There should not be restrictions.
- 2014-03-07 Hartmut new: currdir without definition, Filepath as type of a named argument.
- 2014-03-07 Hartmut new: All capabilities from Zmake are joined here. Only one concept!
- 2014-02-22 Hartmut new: Bool and Num as variable types.
- 2013-12-01 Hartmut new debug
- 2013-07-07 Hartmut improved: The older text generation view is now removed.
- include "file" instead <:include:file>
- subtext name(args) <:>...text...<.> instead <:subtext:name:args>...text...<.subtext>
- <:file>...<.file> removed, use main(){...}
- <=variabledef...> removed, use newer variabledef
- genContent::= with whitespaces removed, instead
genContentNowWhiteSpaces::=
now exists
as textExpr::=
and contains <:for...> and <:if...>
textExpr::=
in older version now textValue::=
with admissible
"text", <:>...<.>, new ..., java ...
.
info
as syntactical unit removed, available as method debug.info(...)
-
- 2013-07-07 Hartmut new: Now syntax as Java batch, invocation of command lines.
- 2013-06-20 Hartmut new: Syntax with extArg for textual Arguments in extra block
- 2013-06-29 Hartmut chg: Now <=var:expr.> should be terminated with .>
- 2013-03-10
<:include:path> and <:scriptclass:JavaPath>
is supported up to now.
- 2013-01-05 Hartmut new: A expression is a concatenation of strings or + or - of numerics. It is used for all value expressions.
In this kind an argument of <*path.method("text" + $$eNV_VAR + dataPath) is possible.
Also <*path + path2> is possible whereby its the same like <*$path><*$path2> in that case.
- 2012-12-26 Hartmut creation of this class: The syntax should be in a separate file, better for navigation.
- 2012-12-10 Hartmut chg: The syntax is now stored in a static String variable.
- 2012-10-00 Hartmut new TextGenerator-syntax in a text file.
- 2011-05-00 Hartmut creation of the syntax as Zmake syntax in a text file.
Copyright/Copyleft:
For this source the LGPL Lesser General Public License, published by the Free Software Foundation is valid.
It means:
- You can use this source without any restriction for any desired purpose.
- You can redistribute copies of this source to everybody.
- Every user of this source, also the user of redistribute copies
with or without payment, must accept this license for further using.
- But the LPGL is not appropriate for a whole software product,
if this source is only a part of them. It means, the user
must publish this part of source,
but don't need to publish the whole source of the own product.
- You can study and modify (improve) this source
for own using or for redistribution, but you have to license the
modified sources likewise under this LGPL Lesser General Public License.
You mustn't delete this Copyright/Copyleft inscription in this source file.
If you are intent to use this sources without publishing its usage, you can get
a second license subscribing a special contract with the author.