Initial work
This commit is contained in:
parent
e56db2e387
commit
87dbd2f641
11 changed files with 1363 additions and 195 deletions
8
CHANGES
Normal file
8
CHANGES
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
=======
|
||||||
|
Changes
|
||||||
|
=======
|
||||||
|
|
||||||
|
0.0.1 (*2021-01-11*)
|
||||||
|
====================
|
||||||
|
|
||||||
|
- Initial project
|
310
LICENSE
310
LICENSE
|
@ -1,110 +1,100 @@
|
||||||
European Union Public Licence v. 1.2
|
EUROPEAN UNION PUBLIC LICENCE v. 1.2
|
||||||
|
|
||||||
EUPL © the European Union 2007, 2016
|
EUPL © the European Union 2007, 2016
|
||||||
|
|
||||||
This European Union Public Licence (the 'EUPL') applies to the Work (as defined
|
This European Union Public Licence (the ‘EUPL’) applies to the Work (as defined
|
||||||
below) which is provided under the terms of this Licence. Any use of the Work,
|
below) which is provided under the terms of this Licence. Any use of the Work,
|
||||||
other than as authorised under this Licence is prohibited (to the extent such
|
other than as authorised under this Licence is prohibited (to the extent such
|
||||||
use is covered by a right of the copyright holder of the Work).
|
use is covered by a right of the copyright holder of the Work).
|
||||||
|
|
||||||
The Work is provided under the terms of this Licence when the Licensor (as
|
The Work is provided under the terms of this Licence when the Licensor (as
|
||||||
defined below) has placed the following notice immediately following the copyright
|
defined below) has placed the following notice immediately following the
|
||||||
notice for the Work:
|
copyright notice for the Work:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Licensed under the EUPL
|
Licensed under the EUPL
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
or has expressed by any other means his willingness to license under the EUPL.
|
or has expressed by any other means his willingness to license under the EUPL.
|
||||||
|
|
||||||
1. Definitions
|
1. Definitions
|
||||||
|
|
||||||
In this Licence, the following terms have the following meaning:
|
In this Licence, the following terms have the following meaning:
|
||||||
|
|
||||||
— 'The Licence': this Licence.
|
- ‘The Licence’: this Licence.
|
||||||
|
|
||||||
— 'The Original Work': the work or software distributed or communicated by
|
- ‘The Original Work’: the work or software distributed or communicated by the
|
||||||
the Licensor under this Licence, available as Source Code and also as Executable
|
Licensor under this Licence, available as Source Code and also as Executable
|
||||||
Code as the case may be.
|
Code as the case may be.
|
||||||
|
|
||||||
— 'Derivative Works': the works or software that could be created by the Licensee,
|
- ‘Derivative Works’: the works or software that could be created by the
|
||||||
based upon the Original Work or modifications thereof. This Licence does not
|
Licensee, based upon the Original Work or modifications thereof. This Licence
|
||||||
define the extent of modification or dependence on the Original Work required
|
does not define the extent of modification or dependence on the Original Work
|
||||||
in order to classify a work as a Derivative Work; this extent is determined
|
required in order to classify a work as a Derivative Work; this extent is
|
||||||
by copyright law applicable in the country mentioned in Article 15.
|
determined by copyright law applicable in the country mentioned in Article 15.
|
||||||
|
|
||||||
— 'The Work': the Original Work or its Derivative Works.
|
- ‘The Work’: the Original Work or its Derivative Works.
|
||||||
|
|
||||||
— 'The Source Code': the human-readable form of the Work which is the most
|
- ‘The Source Code’: the human-readable form of the Work which is the most
|
||||||
convenient for people to study and modify.
|
convenient for people to study and modify.
|
||||||
|
|
||||||
— 'The Executable Code': any code which has generally been compiled and which
|
- ‘The Executable Code’: any code which has generally been compiled and which is
|
||||||
is meant to be interpreted by a computer as a program.
|
meant to be interpreted by a computer as a program.
|
||||||
|
|
||||||
— 'The Licensor': the natural or legal person that distributes or communicates
|
- ‘The Licensor’: the natural or legal person that distributes or communicates
|
||||||
the Work under the Licence.
|
the Work under the Licence.
|
||||||
|
|
||||||
— 'Contributor(s)': any natural or legal person who modifies the Work under
|
- ‘Contributor(s)’: any natural or legal person who modifies the Work under the
|
||||||
the Licence, or otherwise contributes to the creation of a Derivative Work.
|
Licence, or otherwise contributes to the creation of a Derivative Work.
|
||||||
|
|
||||||
— 'The Licensee' or 'You': any natural or legal person who makes any usage
|
- ‘The Licensee’ or ‘You’: any natural or legal person who makes any usage of
|
||||||
of the Work under the terms of the Licence.
|
the Work under the terms of the Licence.
|
||||||
|
|
||||||
— 'Distribution' or 'Communication': any act of selling, giving, lending,
|
- ‘Distribution’ or ‘Communication’: any act of selling, giving, lending,
|
||||||
renting, distributing, communicating, transmitting, or otherwise making available,
|
renting, distributing, communicating, transmitting, or otherwise making
|
||||||
online or offline, copies of the Work or providing access to its essential
|
available, online or offline, copies of the Work or providing access to its
|
||||||
functionalities at the disposal of any other natural or legal person.
|
essential functionalities at the disposal of any other natural or legal
|
||||||
|
person.
|
||||||
|
|
||||||
2. Scope of the rights granted by the Licence
|
2. Scope of the rights granted by the Licence
|
||||||
|
|
||||||
The Licensor hereby grants You a worldwide, royalty-free, non-exclusive, sublicensable
|
The Licensor hereby grants You a worldwide, royalty-free, non-exclusive,
|
||||||
licence to do the following, for the duration of copyright vested in the Original
|
sublicensable licence to do the following, for the duration of copyright vested
|
||||||
Work:
|
in the Original Work:
|
||||||
|
|
||||||
— use the Work in any circumstance and for all usage,
|
- use the Work in any circumstance and for all usage,
|
||||||
|
- reproduce the Work,
|
||||||
|
- modify the Work, and make Derivative Works based upon the Work,
|
||||||
|
- communicate to the public, including the right to make available or display
|
||||||
|
the Work or copies thereof to the public and perform publicly, as the case may
|
||||||
|
be, the Work,
|
||||||
|
- distribute the Work or copies thereof,
|
||||||
|
- lend and rent the Work or copies thereof,
|
||||||
|
- sublicense rights in the Work or copies thereof.
|
||||||
|
|
||||||
— reproduce the Work,
|
Those rights can be exercised on any media, supports and formats, whether now
|
||||||
|
known or later invented, as far as the applicable law permits so.
|
||||||
— modify the Work, and make Derivative Works based upon the Work,
|
|
||||||
|
|
||||||
— communicate to the public, including the right to make available or display
|
|
||||||
the Work or copies thereof to the public and perform publicly, as the case
|
|
||||||
may be, the Work,
|
|
||||||
|
|
||||||
— distribute the Work or copies thereof,
|
|
||||||
|
|
||||||
— lend and rent the Work or copies thereof,
|
|
||||||
|
|
||||||
— sublicense rights in the Work or copies thereof.
|
|
||||||
|
|
||||||
Those rights can be exercised on any media, supports and formats, whether
|
|
||||||
now known or later invented, as far as the applicable law permits so.
|
|
||||||
|
|
||||||
In the countries where moral rights apply, the Licensor waives his right to
|
In the countries where moral rights apply, the Licensor waives his right to
|
||||||
exercise his moral right to the extent allowed by law in order to make effective
|
exercise his moral right to the extent allowed by law in order to make effective
|
||||||
the licence of the economic rights here above listed.
|
the licence of the economic rights here above listed.
|
||||||
|
|
||||||
The Licensor grants to the Licensee royalty-free, non-exclusive usage rights
|
The Licensor grants to the Licensee royalty-free, non-exclusive usage rights to
|
||||||
to any patents held by the Licensor, to the extent necessary to make use of
|
any patents held by the Licensor, to the extent necessary to make use of the
|
||||||
the rights granted on the Work under this Licence.
|
rights granted on the Work under this Licence.
|
||||||
|
|
||||||
3. Communication of the Source Code
|
3. Communication of the Source Code
|
||||||
|
|
||||||
The Licensor may provide the Work either in its Source Code form, or as Executable
|
The Licensor may provide the Work either in its Source Code form, or as
|
||||||
Code. If the Work is provided as Executable Code, the Licensor provides in
|
Executable Code. If the Work is provided as Executable Code, the Licensor
|
||||||
addition a machine-readable copy of the Source Code of the Work along with
|
provides in addition a machine-readable copy of the Source Code of the Work
|
||||||
each copy of the Work that the Licensor distributes or indicates, in a notice
|
along with each copy of the Work that the Licensor distributes or indicates, in
|
||||||
following the copyright notice attached to the Work, a repository where the
|
a notice following the copyright notice attached to the Work, a repository where
|
||||||
Source Code is easily and freely accessible for as long as the Licensor continues
|
the Source Code is easily and freely accessible for as long as the Licensor
|
||||||
to distribute or communicate the Work.
|
continues to distribute or communicate the Work.
|
||||||
|
|
||||||
4. Limitations on copyright
|
4. Limitations on copyright
|
||||||
|
|
||||||
Nothing in this Licence is intended to deprive the Licensee of the benefits
|
Nothing in this Licence is intended to deprive the Licensee of the benefits from
|
||||||
from any exception or limitation to the exclusive rights of the rights owners
|
any exception or limitation to the exclusive rights of the rights owners in the
|
||||||
in the Work, of the exhaustion of those rights or of other applicable limitations
|
Work, of the exhaustion of those rights or of other applicable limitations
|
||||||
thereto.
|
thereto.
|
||||||
|
|
||||||
5. Obligations of the Licensee
|
5. Obligations of the Licensee
|
||||||
|
@ -113,37 +103,37 @@ The grant of the rights mentioned above is subject to some restrictions and
|
||||||
obligations imposed on the Licensee. Those obligations are the following:
|
obligations imposed on the Licensee. Those obligations are the following:
|
||||||
|
|
||||||
Attribution right: The Licensee shall keep intact all copyright, patent or
|
Attribution right: The Licensee shall keep intact all copyright, patent or
|
||||||
trademarks notices and all notices that refer to the Licence and to the disclaimer
|
trademarks notices and all notices that refer to the Licence and to the
|
||||||
of warranties. The Licensee must include a copy of such notices and a copy
|
disclaimer of warranties. The Licensee must include a copy of such notices and a
|
||||||
of the Licence with every copy of the Work he/she distributes or communicates.
|
copy of the Licence with every copy of the Work he/she distributes or
|
||||||
The Licensee must cause any Derivative Work to carry prominent notices stating
|
communicates. The Licensee must cause any Derivative Work to carry prominent
|
||||||
that the Work has been modified and the date of modification.
|
notices stating that the Work has been modified and the date of modification.
|
||||||
|
|
||||||
Copyleft clause: If the Licensee distributes or communicates copies of the
|
Copyleft clause: If the Licensee distributes or communicates copies of the
|
||||||
Original Works or Derivative Works, this Distribution or Communication will
|
Original Works or Derivative Works, this Distribution or Communication will be
|
||||||
be done under the terms of this Licence or of a later version of this Licence
|
done under the terms of this Licence or of a later version of this Licence
|
||||||
unless the Original Work is expressly distributed only under this version
|
unless the Original Work is expressly distributed only under this version of the
|
||||||
of the Licence — for example by communicating 'EUPL v. 1.2 only'. The Licensee
|
Licence — for example by communicating ‘EUPL v. 1.2 only’. The Licensee
|
||||||
(becoming Licensor) cannot offer or impose any additional terms or conditions
|
(becoming Licensor) cannot offer or impose any additional terms or conditions on
|
||||||
on the Work or Derivative Work that alter or restrict the terms of the Licence.
|
the Work or Derivative Work that alter or restrict the terms of the Licence.
|
||||||
|
|
||||||
Compatibility clause: If the Licensee Distributes or Communicates Derivative
|
Compatibility clause: If the Licensee Distributes or Communicates Derivative
|
||||||
Works or copies thereof based upon both the Work and another work licensed
|
Works or copies thereof based upon both the Work and another work licensed under
|
||||||
under a Compatible Licence, this Distribution or Communication can be done
|
a Compatible Licence, this Distribution or Communication can be done under the
|
||||||
under the terms of this Compatible Licence. For the sake of this clause, 'Compatible
|
terms of this Compatible Licence. For the sake of this clause, ‘Compatible
|
||||||
Licence' refers to the licences listed in the appendix attached to this Licence.
|
Licence’ refers to the licences listed in the appendix attached to this Licence.
|
||||||
Should the Licensee's obligations under the Compatible Licence conflict with
|
Should the Licensee's obligations under the Compatible Licence conflict with
|
||||||
his/her obligations under this Licence, the obligations of the Compatible
|
his/her obligations under this Licence, the obligations of the Compatible
|
||||||
Licence shall prevail.
|
Licence shall prevail.
|
||||||
|
|
||||||
Provision of Source Code: When distributing or communicating copies of the
|
Provision of Source Code: When distributing or communicating copies of the Work,
|
||||||
Work, the Licensee will provide a machine-readable copy of the Source Code
|
the Licensee will provide a machine-readable copy of the Source Code or indicate
|
||||||
or indicate a repository where this Source will be easily and freely available
|
a repository where this Source will be easily and freely available for as long
|
||||||
for as long as the Licensee continues to distribute or communicate the Work.
|
as the Licensee continues to distribute or communicate the Work.
|
||||||
|
|
||||||
Legal Protection: This Licence does not grant permission to use the trade
|
Legal Protection: This Licence does not grant permission to use the trade names,
|
||||||
names, trademarks, service marks, or names of the Licensor, except as required
|
trademarks, service marks, or names of the Licensor, except as required for
|
||||||
for reasonable and customary use in describing the origin of the Work and
|
reasonable and customary use in describing the origin of the Work and
|
||||||
reproducing the content of the copyright notice.
|
reproducing the content of the copyright notice.
|
||||||
|
|
||||||
6. Chain of Authorship
|
6. Chain of Authorship
|
||||||
|
@ -153,24 +143,24 @@ hereunder is owned by him/her or licensed to him/her and that he/she has the
|
||||||
power and authority to grant the Licence.
|
power and authority to grant the Licence.
|
||||||
|
|
||||||
Each Contributor warrants that the copyright in the modifications he/she brings
|
Each Contributor warrants that the copyright in the modifications he/she brings
|
||||||
to the Work are owned by him/her or licensed to him/her and that he/she has
|
to the Work are owned by him/her or licensed to him/her and that he/she has the
|
||||||
the power and authority to grant the Licence.
|
power and authority to grant the Licence.
|
||||||
|
|
||||||
Each time You accept the Licence, the original Licensor and subsequent Contributors
|
Each time You accept the Licence, the original Licensor and subsequent
|
||||||
grant You a licence to their contributions to the Work, under the terms of
|
Contributors grant You a licence to their contributions to the Work, under the
|
||||||
this Licence.
|
terms of this Licence.
|
||||||
|
|
||||||
7. Disclaimer of Warranty
|
7. Disclaimer of Warranty
|
||||||
|
|
||||||
The Work is a work in progress, which is continuously improved by numerous
|
The Work is a work in progress, which is continuously improved by numerous
|
||||||
Contributors. It is not a finished work and may therefore contain defects
|
Contributors. It is not a finished work and may therefore contain defects or
|
||||||
or 'bugs' inherent to this type of development.
|
‘bugs’ inherent to this type of development.
|
||||||
|
|
||||||
For the above reason, the Work is provided under the Licence on an 'as is'
|
For the above reason, the Work is provided under the Licence on an ‘as is’ basis
|
||||||
basis and without warranties of any kind concerning the Work, including without
|
and without warranties of any kind concerning the Work, including without
|
||||||
limitation merchantability, fitness for a particular purpose, absence of defects
|
limitation merchantability, fitness for a particular purpose, absence of defects
|
||||||
or errors, accuracy, non-infringement of intellectual property rights other
|
or errors, accuracy, non-infringement of intellectual property rights other than
|
||||||
than copyright as stated in Article 6 of this Licence.
|
copyright as stated in Article 6 of this Licence.
|
||||||
|
|
||||||
This disclaimer of warranty is an essential part of the Licence and a condition
|
This disclaimer of warranty is an essential part of the Licence and a condition
|
||||||
for the grant of any rights to the Work.
|
for the grant of any rights to the Work.
|
||||||
|
@ -179,12 +169,12 @@ for the grant of any rights to the Work.
|
||||||
|
|
||||||
Except in the cases of wilful misconduct or damages directly caused to natural
|
Except in the cases of wilful misconduct or damages directly caused to natural
|
||||||
persons, the Licensor will in no event be liable for any direct or indirect,
|
persons, the Licensor will in no event be liable for any direct or indirect,
|
||||||
material or moral, damages of any kind, arising out of the Licence or of the
|
material or moral, damages of any kind, arising out of the Licence or of the use
|
||||||
use of the Work, including without limitation, damages for loss of goodwill,
|
of the Work, including without limitation, damages for loss of goodwill, work
|
||||||
work stoppage, computer failure or malfunction, loss of data or any commercial
|
stoppage, computer failure or malfunction, loss of data or any commercial
|
||||||
damage, even if the Licensor has been advised of the possibility of such damage.
|
damage, even if the Licensor has been advised of the possibility of such damage.
|
||||||
However, the Licensor will be liable under statutory product liability laws
|
However, the Licensor will be liable under statutory product liability laws as
|
||||||
as far such laws apply to the Work.
|
far such laws apply to the Work.
|
||||||
|
|
||||||
9. Additional agreements
|
9. Additional agreements
|
||||||
|
|
||||||
|
@ -193,39 +183,39 @@ defining obligations or services consistent with this Licence. However, if
|
||||||
accepting obligations, You may act only on your own behalf and on your sole
|
accepting obligations, You may act only on your own behalf and on your sole
|
||||||
responsibility, not on behalf of the original Licensor or any other Contributor,
|
responsibility, not on behalf of the original Licensor or any other Contributor,
|
||||||
and only if You agree to indemnify, defend, and hold each Contributor harmless
|
and only if You agree to indemnify, defend, and hold each Contributor harmless
|
||||||
for any liability incurred by, or claims asserted against such Contributor
|
for any liability incurred by, or claims asserted against such Contributor by
|
||||||
by the fact You have accepted any warranty or additional liability.
|
the fact You have accepted any warranty or additional liability.
|
||||||
|
|
||||||
10. Acceptance of the Licence
|
10. Acceptance of the Licence
|
||||||
|
|
||||||
The provisions of this Licence can be accepted by clicking on an icon 'I agree'
|
The provisions of this Licence can be accepted by clicking on an icon ‘I agree’
|
||||||
placed under the bottom of a window displaying the text of this Licence or
|
placed under the bottom of a window displaying the text of this Licence or by
|
||||||
by affirming consent in any other similar way, in accordance with the rules
|
affirming consent in any other similar way, in accordance with the rules of
|
||||||
of applicable law. Clicking on that icon indicates your clear and irrevocable
|
applicable law. Clicking on that icon indicates your clear and irrevocable
|
||||||
acceptance of this Licence and all of its terms and conditions.
|
acceptance of this Licence and all of its terms and conditions.
|
||||||
|
|
||||||
Similarly, you irrevocably accept this Licence and all of its terms and conditions
|
Similarly, you irrevocably accept this Licence and all of its terms and
|
||||||
by exercising any rights granted to You by Article 2 of this Licence, such
|
conditions by exercising any rights granted to You by Article 2 of this Licence,
|
||||||
as the use of the Work, the creation by You of a Derivative Work or the Distribution
|
such as the use of the Work, the creation by You of a Derivative Work or the
|
||||||
or Communication by You of the Work or copies thereof.
|
Distribution or Communication by You of the Work or copies thereof.
|
||||||
|
|
||||||
11. Information to the public
|
11. Information to the public
|
||||||
|
|
||||||
In case of any Distribution or Communication of the Work by means of electronic
|
In case of any Distribution or Communication of the Work by means of electronic
|
||||||
communication by You (for example, by offering to download the Work from a
|
communication by You (for example, by offering to download the Work from a
|
||||||
remote location) the distribution channel or media (for example, a website)
|
remote location) the distribution channel or media (for example, a website) must
|
||||||
must at least provide to the public the information requested by the applicable
|
at least provide to the public the information requested by the applicable law
|
||||||
law regarding the Licensor, the Licence and the way it may be accessible,
|
regarding the Licensor, the Licence and the way it may be accessible, concluded,
|
||||||
concluded, stored and reproduced by the Licensee.
|
stored and reproduced by the Licensee.
|
||||||
|
|
||||||
12. Termination of the Licence
|
12. Termination of the Licence
|
||||||
|
|
||||||
The Licence and the rights granted hereunder will terminate automatically
|
The Licence and the rights granted hereunder will terminate automatically upon
|
||||||
upon any breach by the Licensee of the terms of the Licence.
|
any breach by the Licensee of the terms of the Licence.
|
||||||
|
|
||||||
Such a termination will not terminate the licences of any person who has received
|
Such a termination will not terminate the licences of any person who has
|
||||||
the Work from the Licensee under the Licence, provided such persons remain
|
received the Work from the Licensee under the Licence, provided such persons
|
||||||
in full compliance with the Licence.
|
remain in full compliance with the Licence.
|
||||||
|
|
||||||
13. Miscellaneous
|
13. Miscellaneous
|
||||||
|
|
||||||
|
@ -233,73 +223,65 @@ Without prejudice of Article 9 above, the Licence represents the complete
|
||||||
agreement between the Parties as to the Work.
|
agreement between the Parties as to the Work.
|
||||||
|
|
||||||
If any provision of the Licence is invalid or unenforceable under applicable
|
If any provision of the Licence is invalid or unenforceable under applicable
|
||||||
law, this will not affect the validity or enforceability of the Licence as
|
law, this will not affect the validity or enforceability of the Licence as a
|
||||||
a whole. Such provision will be construed or reformed so as necessary to make
|
whole. Such provision will be construed or reformed so as necessary to make it
|
||||||
it valid and enforceable.
|
valid and enforceable.
|
||||||
|
|
||||||
The European Commission may publish other linguistic versions or new versions
|
The European Commission may publish other linguistic versions or new versions of
|
||||||
of this Licence or updated versions of the Appendix, so far this is required
|
this Licence or updated versions of the Appendix, so far this is required and
|
||||||
and reasonable, without reducing the scope of the rights granted by the Licence.
|
reasonable, without reducing the scope of the rights granted by the Licence. New
|
||||||
New versions of the Licence will be published with a unique version number.
|
versions of the Licence will be published with a unique version number.
|
||||||
|
|
||||||
All linguistic versions of this Licence, approved by the European Commission,
|
All linguistic versions of this Licence, approved by the European Commission,
|
||||||
have identical value. Parties can take advantage of the linguistic version
|
have identical value. Parties can take advantage of the linguistic version of
|
||||||
of their choice.
|
their choice.
|
||||||
|
|
||||||
14. Jurisdiction
|
14. Jurisdiction
|
||||||
|
|
||||||
Without prejudice to specific agreement between parties,
|
Without prejudice to specific agreement between parties,
|
||||||
|
|
||||||
— any litigation resulting from the interpretation of this License, arising
|
- any litigation resulting from the interpretation of this License, arising
|
||||||
between the European Union institutions, bodies, offices or agencies, as a
|
between the European Union institutions, bodies, offices or agencies, as a
|
||||||
Licensor, and any Licensee, will be subject to the jurisdiction of the Court
|
Licensor, and any Licensee, will be subject to the jurisdiction of the Court
|
||||||
of Justice of the European Union, as laid down in article 272 of the Treaty
|
of Justice of the European Union, as laid down in article 272 of the Treaty on
|
||||||
on the Functioning of the European Union,
|
the Functioning of the European Union,
|
||||||
|
|
||||||
— any litigation arising between other parties and resulting from the interpretation
|
- any litigation arising between other parties and resulting from the
|
||||||
of this License, will be subject to the exclusive jurisdiction of the competent
|
interpretation of this License, will be subject to the exclusive jurisdiction
|
||||||
court where the Licensor resides or conducts its primary business.
|
of the competent court where the Licensor resides or conducts its primary
|
||||||
|
business.
|
||||||
|
|
||||||
15. Applicable Law
|
15. Applicable Law
|
||||||
|
|
||||||
Without prejudice to specific agreement between parties,
|
Without prejudice to specific agreement between parties,
|
||||||
|
|
||||||
— this Licence shall be governed by the law of the European Union Member State
|
- this Licence shall be governed by the law of the European Union Member State
|
||||||
where the Licensor has his seat, resides or has his registered office,
|
where the Licensor has his seat, resides or has his registered office,
|
||||||
|
|
||||||
— this licence shall be governed by Belgian law if the Licensor has no seat,
|
- this licence shall be governed by Belgian law if the Licensor has no seat,
|
||||||
residence or registered office inside a European Union Member State.
|
residence or registered office inside a European Union Member State.
|
||||||
|
|
||||||
Appendix
|
Appendix
|
||||||
|
|
||||||
'Compatible Licences' according to Article 5 EUPL are:
|
‘Compatible Licences’ according to Article 5 EUPL are:
|
||||||
|
|
||||||
— GNU General Public License (GPL) v. 2, v. 3
|
- GNU General Public License (GPL) v. 2, v. 3
|
||||||
|
- GNU Affero General Public License (AGPL) v. 3
|
||||||
— GNU Affero General Public License (AGPL) v. 3
|
- Open Software License (OSL) v. 2.1, v. 3.0
|
||||||
|
- Eclipse Public License (EPL) v. 1.0
|
||||||
— Open Software License (OSL) v. 2.1, v. 3.0
|
- CeCILL v. 2.0, v. 2.1
|
||||||
|
- Mozilla Public Licence (MPL) v. 2
|
||||||
— Eclipse Public License (EPL) v. 1.0
|
- GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3
|
||||||
|
- Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) for
|
||||||
— CeCILL v. 2.0, v. 2.1
|
|
||||||
|
|
||||||
— Mozilla Public Licence (MPL) v. 2
|
|
||||||
|
|
||||||
— GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3
|
|
||||||
|
|
||||||
— Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) for
|
|
||||||
works other than software
|
works other than software
|
||||||
|
- European Union Public Licence (EUPL) v. 1.1, v. 1.2
|
||||||
|
- Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) or Strong
|
||||||
|
Reciprocity (LiLiQ-R+).
|
||||||
|
|
||||||
— European Union Public Licence (EUPL) v. 1.1, v. 1.2
|
The European Commission may update this Appendix to later versions of the above
|
||||||
|
licences without producing a new version of the EUPL, as long as they provide
|
||||||
|
the rights granted in Article 2 of this Licence and protect the covered Source
|
||||||
|
Code from exclusive appropriation.
|
||||||
|
|
||||||
— Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) or Strong Reciprocity
|
All other changes or additions to this Appendix require the production of a new
|
||||||
(LiLiQ-R+).
|
EUPL version.
|
||||||
|
|
||||||
The European Commission may update this Appendix to later versions of the
|
|
||||||
above licences without producing a new version of the EUPL, as long as they
|
|
||||||
provide the rights granted in Article 2 of this Licence and protect the covered
|
|
||||||
Source Code from exclusive appropriation.
|
|
||||||
|
|
||||||
All other changes or additions to this Appendix require the production of
|
|
||||||
a new EUPL version.
|
|
||||||
|
|
101
LICENSE-de
Normal file
101
LICENSE-de
Normal file
|
@ -0,0 +1,101 @@
|
||||||
|
OPEN-SOURCE-LIZENZ FÜR DIE EUROPÄISCHE UNION v. 1.2
|
||||||
|
EUPL © Europäische Union 2007, 2016
|
||||||
|
Diese Open-Source-Lizenz für die Europäische Union („EUPL“) gilt für Werke (im Sinne der nachfolgenden Begriffsbestimmung), die unter EUPL-Bedingungen zur Verfügung gestellt werden. Das Werk darf nur in der durch diese Lizenz gestatteten Form genutzt werden (insoweit eine solche Nutzung dem Urheber vorbehalten ist).
|
||||||
|
Das Werk wird unter den Bedingungen dieser Lizenz zur Verfügung gestellt, wenn der Lizenzgeber (im Sinne der nachfolgenden Begriffsbestimmung) den folgenden Hinweis unmittelbar hinter dem Urheberrechtshinweis dieses Werks anbringt:
|
||||||
|
Lizenziert unter der EUPL
|
||||||
|
oder in einer anderen Form zum Ausdruck bringt, dass er es unter der EUPL lizenzieren möchte.
|
||||||
|
|
||||||
|
1.Begriffsbestimmungen
|
||||||
|
Für diese Lizenz gelten folgende Begriffsbestimmungen:
|
||||||
|
— „Lizenz“:diese Lizenz.
|
||||||
|
— „Originalwerk“:das Werk oder die Software, die vom Lizenzgeber unter dieser Lizenz verbreitet oder zugänglich gemacht wird, und zwar als Quellcode und gegebenenfalls auch als ausführbarer Code.
|
||||||
|
— „Bearbeitungen“:die Werke oder Software, die der Lizenznehmer auf der Grundlage des Originalwerks oder seiner Bearbeitungen schaffen kann. In dieser Lizenz wird nicht festgelegt, wie umfangreich die Änderung oder wie stark die Abhängigkeit vom Originalwerk für eine Einstufung als Bearbeitung sein muss; dies bestimmt sich nach dem Urheberrecht, das in dem unter Artikel 15 aufgeführten Land anwendbar ist.
|
||||||
|
— „Werk“:das Originalwerk oder seine Bearbeitungen.
|
||||||
|
— „Quellcode“:diejenige Form des Werkes, die zur Auffassung durch den Menschen bestimmt ist und die am besten geeignet ist, um vom Menschen verstanden und verändert zu werden.
|
||||||
|
— „Ausführbarer Code“:die — üblicherweise — kompilierte Form des Werks, die von einem Computer als Programm ausgeführt werden soll.
|
||||||
|
— „Lizenzgeber“:die natürliche oder juristische Person, die das Werk unter der Lizenz verbreitet oder zugänglich macht.
|
||||||
|
— „Bearbeiter“:jede natürliche oder juristische Person, die das Werk unter der Lizenz verändert oder auf andere Weise zur Schaffung einer Bearbeitung beiträgt.
|
||||||
|
— „Lizenznehmer“ („Sie“):jede natürliche oder juristische Person, die das Werk unter den Lizenzbedingungen nutzt.
|
||||||
|
— „Verbreitung“ oder „Zugänglichmachung“:alle Formen von Verkauf, Überlassung, Verleih, Vermietung, Verbreitung, Weitergabe, Übermittlung oder anderweitiger Online- oder Offline-Bereitstellung von Vervielfältigungen des Werks oder Zugänglichmachung seiner wesentlichen Funktionen für dritte natürliche oder juristische Personen.
|
||||||
|
|
||||||
|
2.Umfang der Lizenzrechte
|
||||||
|
Der Lizenzgeber erteilt Ihnen hiermit für die Gültigkeitsdauer der am Originalwerk bestehenden Urheberrechte eine weltweite, unentgeltliche, nicht ausschließliche, unterlizenzierbare Lizenz, die Sie berechtigt:
|
||||||
|
— das Werk uneingeschränkt zu nutzen,
|
||||||
|
— das Werk zu vervielfältigen,
|
||||||
|
— das Werk zu verändern und Bearbeitungen auf der Grundlage des Werks zu schaffen,
|
||||||
|
— das Werk öffentlich zugänglich zu machen, was das Recht einschließt, das Werk oder Vervielfältigungsstücke davon öffentlich bereitzustellen oder wahrnehmbar zu machen oder das Werk, soweit möglich, öffentlich aufzuführen,
|
||||||
|
— das Werk oder Vervielfältigungen davon zu verbreiten,
|
||||||
|
— das Werk oder Vervielfältigungen davon zu vermieten oder zu verleihen,
|
||||||
|
— das Werk oder Vervielfältigungen davon weiter zu lizenzieren.
|
||||||
|
Für die Wahrnehmung dieser Rechte können beliebige, derzeit bekannte oder künftige Medien, Träger und Formate verwendet werden, soweit das geltende Recht dem nicht entgegensteht. Für die Länder, in denen Urheberpersönlichkeitsrechte an dem Werk bestehen, verzichtet der Lizenzgeber im gesetzlich zulässigen Umfang auf seine Urheberpersönlichkeitsrechte, um die Lizenzierung der oben aufgeführten Verwertungsrechte wirksam durchführen zu können. Der Lizenzgeber erteilt dem Lizenznehmer ein nicht ausschließliches, unentgeltliches Nutzungsrecht an seinen Patenten, sofern dies zur Ausübung der durch die Lizenz erteilten Nutzungsrechte am Werk notwendig ist.
|
||||||
|
|
||||||
|
3.Zugänglichmachung des Quellcodes
|
||||||
|
Der Lizenzgeber kann das Werk entweder als Quellcode oder als ausführbaren Code zur Verfügung stellen. Stellt er es als ausführbaren Code zur Verfügung, so stellt er darüber hinaus eine maschinenlesbare Kopie des Quellcodes für jedes von ihm verbreitete Vervielfältigungsstück des Werks zur Verfügung, oder er verweist in einem Vermerk im Anschluss an den dem Werk beigefügten Urheberrechtshinweis auf einen Speicherort, an dem problemlos und unentgeltlich auf den Quellcode zugegriffen werden kann, solange der Lizenzgeber das Werk verbreitet oder zugänglich macht.
|
||||||
|
|
||||||
|
4.Einschränkungen des Urheberrechts
|
||||||
|
Es ist nicht Zweck dieser Lizenz, Ausnahmen oder Schranken der ausschließlichen Rechte des Urhebers am Werk, die dem Lizenznehmer zugutekommen, einzuschränken. Auch die Erschöpfung dieser Rechte bleibt von dieser Lizenz unberührt.
|
||||||
|
|
||||||
|
5.Pflichten des Lizenznehmers
|
||||||
|
Die Einräumung der oben genannten Rechte ist an mehrere Beschränkungen und Pflichten für den Lizenznehmer gebunden:
|
||||||
|
|
||||||
|
Urheberrechtshinweis, Lizenztext, Nennung des Bearbeiters: Der Lizenznehmer muss alle Urheberrechts-, Patent- oder Markenrechtshinweise und alle Hinweise auf die Lizenz und den Haftungsausschluss unverändert lassen. Jedem von ihm verbreiteten oder zugänglich gemachten Vervielfältigungsstück des Werks muss der Lizenznehmer diese Hinweise sowie diese Lizenz beifügen. Der Lizenznehmer muss auf jedem abgeleiteten Werk deutlich darauf hinweisen, dass das Werk geändert wurde, und das Datum der Bearbeitung angeben.
|
||||||
|
|
||||||
|
„Copyleft“-Klausel: Der Lizenznehmer darf Vervielfältigungen des Originalwerks oder Bearbeitungen nur unter den Bedingungen dieser EUPL oder einer neueren Version dieser Lizenz verbreiten oder zugänglich machen, außer wenn das Originalwerk ausdrücklich nur unter dieser Lizenzversion — z. B. mit der Angabe „Nur EUPL V. 1.2“ — verbreitet werden darf. Der Lizenznehmer (der zum Lizenzgeber wird) darf für das Werk oder die Bearbeitung keine zusätzlichen Bedingungen anbieten oder vorschreiben, die die Bedingungen dieser Lizenz verändern oder einschränken.
|
||||||
|
|
||||||
|
Kompatibilitäts-Klausel: Wenn der Lizenznehmer Bearbeitungen, die auf dem Werk und einem anderen Werk, das unter einer kompatiblen Lizenz lizenziert wurde, basieren, oder die Kopien dieser Bearbeitungen verbreitet oder zugänglich macht, kann dies unter den Bedingungen dieser kompatiblen Lizenz erfolgen. Unter „kompatibler Lizenz“ ist eine im Anhang dieser Lizenz angeführte Lizenz zu verstehen. Sollten die Verpflichtungen des Lizenznehmers aus der kompatiblen Lizenz mit denjenigen aus der vorliegenden Lizenz (EUPL) in Konflikt stehen, werden die Verpflichtungen aus der kompatiblen Lizenz Vorrang haben.
|
||||||
|
|
||||||
|
Bereitstellung des Quellcodes: Wenn der Lizenznehmer Vervielfältigungsstücke des Werks verbreitet oder zugänglich macht, muss er eine maschinenlesbare Fassung des Quellcodes mitliefern oder einen Speicherort angeben, über den problemlos und unentgeltlich so lange auf diesen Quellcode zugegriffen werden kann, wie der Lizenznehmer das Werk verbreitet oder zugänglich macht.
|
||||||
|
|
||||||
|
Rechtsschutz: Diese Lizenz erlaubt nicht die Benutzung von Kennzeichen, Marken oder geschützten Namensrechten des Lizenzgebers, soweit dies nicht für die angemessene und übliche Beschreibung der Herkunft des Werks und der inhaltlichen Wiedergabe des Urheberrechtshinweises erforderlich ist.
|
||||||
|
|
||||||
|
6.Urheber und Bearbeiter
|
||||||
|
Der ursprüngliche Lizenzgeber gewährleistet, dass er das Urheberrecht am Originalwerk innehat oder dieses an ihn lizenziert wurde und dass er befugt ist, diese Lizenz zu erteilen.
|
||||||
|
Jeder Bearbeiter gewährleistet, dass er das Urheberrecht an den von ihm vorgenommenen Änderungen des Werks besitzt und befugt ist, diese Lizenz zu erteilen.
|
||||||
|
Jedes Mal, wenn Sie die Lizenz annehmen, erteilen Ihnen der ursprüngliche Lizenzgeber und alle folgenden Bearbeiter eine Befugnis zur Nutzung ihrer Beiträge zum Werk unter den Bedingungen dieser Lizenz.
|
||||||
|
|
||||||
|
7.Gewährleistungsausschluss
|
||||||
|
Die Arbeit an diesem Werk wird laufend fortgeführt; es wird durch unzählige Bearbeiter ständig verbessert. Das Werk ist nicht vollendet und kann daher Fehler („bugs“) enthalten, die dieser Art der Entwicklung inhärent sind.
|
||||||
|
Aus den genannten Gründen wird das Werk unter dieser Lizenz „so, wie es ist“ ohne jegliche Gewährleistung zur Verfügung gestellt. Dies gilt unter anderem — aber nicht ausschließlich — für Marktreife, Verwendbarkeit für einen bestimmten Zweck, Mängelfreiheit, Richtigkeit sowie Nichtverletzung von anderen Immaterialgüterrechten als dem Urheberrecht (vgl. dazu Artikel 6 dieser Lizenz).
|
||||||
|
Dieser Gewährleistungsausschluss ist wesentlicher Bestandteil der Lizenz und Bedingung für die Einräumung von Rechten an dem Werk.
|
||||||
|
|
||||||
|
8.Haftungsausschluss/Haftungsbeschränkung
|
||||||
|
Außer in Fällen von Vorsatz oder der Verursachung von Personenschäden haftet der Lizenzgeber nicht für direkte oder indirekte, materielle oder immaterielle Schäden irgendwelcher Art, die aus der Lizenz oder der Benutzung des Werks folgen; dies gilt unter anderem, aber nicht ausschließlich, für Firmenwertverluste, Produktionsausfall, Computerausfall oder Computerfehler, Datenverlust oder wirtschaftliche Schäden, und zwar auch dann, wenn der Lizenzgeber auf die Möglichkeit solcher Schäden hingewiesen wurde. Unabhängig davon haftet der Lizenzgeber im Rahmen der gesetzlichen Produkthaftung, soweit die entsprechenden Regelungen auf das Werk anwendbar sind.
|
||||||
|
|
||||||
|
9.Zusatzvereinbarungen
|
||||||
|
Wenn Sie das Werk verbreiten, können Sie Zusatzvereinbarungen schließen, in denen Verpflichtungen oder Dienstleistungen festgelegt werden, die mit dieser Lizenz vereinbar sind. Sie dürfen Verpflichtungen indessen nur in Ihrem eigenen Namen und auf Ihre eigene Verantwortung eingehen, nicht jedoch im Namen des ursprünglichen Lizenzgebers oder eines anderen Bearbeiters, und nur, wenn Sie sich gegenüber allen Bearbeitern verpflichten, sie zu entschädigen, zu verteidigen und von der Haftung freizustellen, falls aufgrund der von Ihnen eingegangenen Gewährleistungsverpflichtung oder Haftungsübernahme Forderungen gegen sie geltend gemacht werden oder eine Haftungsverpflichtung entsteht.
|
||||||
|
|
||||||
|
10.Annahme der Lizenz
|
||||||
|
Sie können den Bestimmungen dieser Lizenz zustimmen, indem Sie das Symbol „Lizenz annehmen“ unter dem Fenster mit dem Lizenztext anklicken oder indem Sie Ihre Zustimmung auf vergleichbare Weise in einer nach anwendbarem Recht zulässigen Form geben. Das Anklicken des Symbols gilt als Anzeichen Ihrer eindeutigen und unwiderruflichen Annahme der Lizenz und der darin enthaltenen Klauseln und Bedingungen. In gleicher Weise gilt als Zeichen der eindeutigen und unwiderruflichen Zustimmung die Ausübung eines Rechtes, das in Artikel 2 dieser Lizenz angeführt ist, wie das Erstellen einer Bearbeitung oder die Verbreitung oder Zugänglichmachung des Werks oder dessen Vervielfältigungen.
|
||||||
|
|
||||||
|
11.Informationspflichten
|
||||||
|
Wenn Sie das Werk verbreiten oder zugänglich machen (beispielsweise, indem Sie es zum Herunterladen von einer Website anbieten), müssen Sie über den Vertriebskanal oder das benutzte Verbreitungsmedium der Öffentlichkeit zumindest jene Informationen bereitstellen, die nach dem anwendbaren Recht bezüglich der Lizenzgeber, der Lizenz und ihrer Zugänglichkeit, des Abschlusses des Lizenzvertrags sowie darüber, wie die Lizenz durch den Lizenznehmer gespeichert und vervielfältigt werden kann, erforderlich sind.
|
||||||
|
|
||||||
|
12.Beendigung der Lizenz
|
||||||
|
Die Lizenz und die damit eingeräumten Rechte erlöschen automatisch, wenn der Lizenznehmer gegen die Lizenzbedingungen verstößt. Ein solches Erlöschen der Lizenz führt nicht zum Erlöschen der Lizenzen von Personen, denen das Werk vom Lizenznehmer unter dieser Lizenz zur Verfügung gestellt worden ist, solange diese Personen die Lizenzbedingungen erfüllen.
|
||||||
|
13.Sonstiges
|
||||||
|
Unbeschadet des Artikels 9 stellt die Lizenz die vollständige Vereinbarung der Parteien über das Werk dar. Sind einzelne Bestimmungen der Lizenz nach geltendem Recht nichtig oder unwirksam, so berührt dies nicht die Wirksamkeit oder Durchsetzbarkeit der Lizenz an sich. Solche Bestimmungen werden vielmehr so ausgelegt oder modifiziert, dass sie wirksam und durchsetzbar sind. Die Europäische Kommission kann weitere Sprachfassungen oder neue Versionen dieser Lizenz oder aktualisierte Fassungen des Anhangs veröffentlichen, soweit dies notwendig und angemessen ist, ohne den Umfang der Lizenzrechte zu verringern. Neue Versionen werden mit einer eindeutigen Versionsnummer veröffentlicht. Alle von der Europäischen Kommission anerkannten Sprachfassungen dieser Lizenz sind gleichwertig. Die Parteien können sich auf die Sprachfassung ihrer Wahl berufen.
|
||||||
|
|
||||||
|
14.Gerichtsstand
|
||||||
|
Unbeschadet besonderer Vereinbarungen zwischen den Parteien gilt Folgendes:
|
||||||
|
— Für alle Streitigkeiten über die Auslegung dieser Lizenz zwischen den Organen, Einrichtungen und sonstigen Stellen der Europäischen Union als Lizenzgeber und einem Lizenznehmer ist der Gerichtshof der Europäischen Union gemäß Artikel 272 des Vertrags über die Arbeitsweise der Europäischen Union zuständig;
|
||||||
|
— Gerichtsstand für Streitigkeiten zwischen anderen Parteien über die Auslegung dieser Lizenz ist allein der Ort, an dem der Lizenzgeber seinen Wohnsitz oder den wirtschaftlichen Mittelpunkt seiner Tätigkeit hat.
|
||||||
|
|
||||||
|
15.Anwendbares Recht
|
||||||
|
Unbeschadet besonderer Vereinbarungen zwischen den Parteien gilt Folgendes:
|
||||||
|
— Diese Lizenz unterliegt dem Recht des Mitgliedstaats der Europäischen Union, in dem der Lizenzgeber seinen Sitz, Wohnsitz oder eingetragenen Sitz hat;
|
||||||
|
— diese Lizenz unterliegt dem belgischen Recht, wenn der Lizenzgeber keinen Sitz, Wohnsitz oder eingetragenen Sitz in einem Mitgliedstaat der Europäischen Union hat.
|
||||||
|
|
||||||
|
Anlage
|
||||||
|
„Kompatible Lizenzen“ nach Artikel 5 der EUPL sind:
|
||||||
|
— GNU General Public License (GPL) v. 2, v. 3
|
||||||
|
— GNU Affero General Public License (AGPL) v. 3
|
||||||
|
— Open Software License (OSL) v. 2.1, v. 3.0
|
||||||
|
— Eclipse Public License (EPL) v. 1.0
|
||||||
|
— CeCILL v. 2.0, v. 2.1
|
||||||
|
— Mozilla Public Licence (MPL) v. 2
|
||||||
|
— GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3
|
||||||
|
— Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) für andere Werke als Software
|
||||||
|
— European Union Public Licence (EUPL) v. 1.1, v. 1.2
|
||||||
|
— Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) oder Strong Reciprocity (LiLiQ-R+)
|
||||||
|
Die Europäische Kommission kann diesen Anhang aktualisieren, um neuere Fassungen der obigen Lizenzen aufzunehmen, ohne hierfür eine neue Fassung der EUPL auszuarbeiten, solange diese Lizenzen die in Artikel 2 gewährten Rechte gewährleisten und den erfassten Quellcode vor ausschließlicher Aneignung schützen.
|
||||||
|
Alle sonstigen Änderungen oder Ergänzungen dieses Anhangs bedürfen der Ausarbeitung einer neuen Version der EUPL.
|
97
LICENSE-fr
Normal file
97
LICENSE-fr
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
LICENCE PUBLIQUE DE L'UNION EUROPÉENNE v. 1.2
|
||||||
|
EUPL © Union européenne 2007, 2016
|
||||||
|
|
||||||
|
La présente licence publique de l'Union européenne («EUPL») s'applique à toute œuvre (telle que définie ci-dessous) fournie aux conditions prévues par la présente licence. Toute utilisation de l'œuvre autre que ce qu'autorise la présente licence est interdite (dans la mesure où pareille utilisation est couverte par un droit du titulaire des droits d'auteur sur l'œuvre). L'œuvre est fournie aux conditions prévues par la présente licence quand le donneur de licence (tel que défini ci-dessous) a placé la mention suivante immédiatement après la déclaration relative au droit d'auteur sur l'œuvre:
|
||||||
|
Sous licence EUPL
|
||||||
|
ou a exprimé de toute autre manière sa volonté de fournir l'œuvre sous licence EUPL.
|
||||||
|
|
||||||
|
1.Définitions
|
||||||
|
Dans la présente licence, on entend par:
|
||||||
|
— «licence», la présente licence,
|
||||||
|
— «œuvre originale», l'œuvre ou le logiciel distribué ou communiqué par le donneur de licence en vertu de la présente licence, sous forme de code source ou de code objet, selon le cas,
|
||||||
|
— «œuvres dérivées», les œuvres ou logiciels qui pourraient être créés par le licencié sur la base de l'œuvre originale ou des modifications qui y auraient été appliquées. La présente licence ne définit pas le degré de modification ou de dépendance requis par rapport à l'œuvre originale pour qu'une œuvre soit qualifiée d'œuvre dérivée; cette question est réglée par la loi applicable en matière de droit d'auteur dans le pays visé à l'article 15,
|
||||||
|
— «œuvre», l'œuvre originale ou ses œuvres dérivées,
|
||||||
|
— «code source», la forme de l'œuvre, lisible par l'homme, la plus appropriée pour que des personnes puissent l'examiner et la modifier,
|
||||||
|
— «code objet», l'œuvre codée, généralement après compilation, destinée à être exécutée en tant que programme par un ordinateur, — «donneur de licence», la personne physique ou morale qui distribue ou communique l'œuvre sous licence,
|
||||||
|
— «contributeur», toute personne physique ou morale qui modifie l'œuvre sous licence, ou contribue de toute autre manière à en faire une œuvre dérivée,
|
||||||
|
— «licencié» ou «vous», toute personne physique ou morale qui utilise l'œuvre conformément à la licence,
|
||||||
|
— «distribution» ou «communication», tout acte de vente, don, prêt, location, distribution, communication, transmission ou mise à disposition, en ligne ou hors ligne, de copies de l'œuvre, et tout acte donnant accès à ses fonctions essentielles à toute autre personne physique ou morale.
|
||||||
|
|
||||||
|
2.Portée des droits accordés par la licence
|
||||||
|
Par la présente, le donneur de licence vous concède, pour la durée de la protection de son droit d'auteur sur l'œuvre originale, une licence mondiale, libre de redevances, non exclusive et pouvant faire l'objet de sous-licences, en vertu de laquelle vous pouvez:
|
||||||
|
— utiliser l'œuvre en toute circonstance et pour tout usage,
|
||||||
|
— reproduire l'œuvre,
|
||||||
|
— modifier l'œuvre et créer des œuvres dérivées sur la base de l'œuvre,
|
||||||
|
— communiquer l'œuvre au public, ce qui inclut le droit de mettre à disposition du public ou de lui présenter l'œuvre ou des copies de l'œuvre et d'en effectuer des représentations publiques, le cas échéant,
|
||||||
|
— distribuer l'œuvre ou des copies de celle-ci,
|
||||||
|
— prêter et louer l'œuvre ou des copies de celles-ci,
|
||||||
|
— accorder en sous-licence des droits sur l'œuvre ou sur des copies de celle-ci.
|
||||||
|
Ces droits peuvent être exercés sur tout support et format, connu ou encore à inventer, dans la mesure où le droit applicable le permet. Dans les pays où des droits moraux s'appliquent, le donneur de licence renonce à son droit d'exercer son droit moral dans la mesure permise par la loi afin que la licence sur les droits patrimoniaux susmentionnés produise ses effets. Le donneur de licence vous concède un droit d'usage libre de redevances et non exclusif sur tout brevet qu'il détient, dans la mesure nécessaire à l'exercice des droits qui vous sont concédés sur l'œuvre sous licence.
|
||||||
|
|
||||||
|
3.Communication du code source
|
||||||
|
Le donneur de licence fournit l'œuvre sous forme de code source ou de code objet. Si l'œuvre est fournie sous forme de code objet, le donneur de licence accompagne chacune des copies de l'œuvre qu'il distribue d'une copie lisible par machine du code source de l'œuvre ou indique, dans un avis qui suit la déclaration relative au droit d'auteur jointe à l'œuvre, l'endroit où le code source est aisément et gratuitement accessible aussi longtemps que le donneur de licence continue à distribuer ou communiquer l'œuvre.
|
||||||
|
|
||||||
|
4.Limitations du droit d'auteur
|
||||||
|
Rien dans la présente licence n'a pour but de priver le licencié des avantages résultant de toute exception ou limitation aux droits exclusifs des titulaires de droits sur l'œuvre, de l'épuisement de ces droits ou de toute autre limitation qui s'y applique.
|
||||||
|
|
||||||
|
5.Obligations du licencié
|
||||||
|
La concession des droits susmentionnés est soumise à des restrictions et à des obligations pour le licencié. Ces obligations sont les suivantes:
|
||||||
|
|
||||||
|
Droit d'attribution: le licencié laisse intactes toutes les déclarations concernant le droit d'auteur, le brevet ou les marques et toutes les déclarations concernant la licence et l'exclusion de garantie. Le licencié assortit chaque copie de l'œuvre qu'il distribue ou communique d'une copie de ces déclarations et d'une copie de la licence. Le licencié veille à ce que toute œuvre dérivée soit assortie d'un avis bien visible indiquant que l'œuvre a été modifiée et mentionnant la date de la modification.
|
||||||
|
|
||||||
|
Clause copyleft: si le licencié distribue ou communique des copies d'œuvres originales ou d'œuvres dérivées, cette distribution ou cette communication est effectuée dans les conditions prévues par la présente licence ou une version ultérieure de cette licence, sauf si l'œuvre originale est expressément distribuée en vertu de la présente version de la licence uniquement, par exemple au moyen de la mention «EUPL v. 1.2 seulement». Le licencié (qui devient donneur de licence) ne peut pas, en ce qui concerne l'œuvre ou les œuvres dérivées, offrir ou imposer des conditions supplémentaires qui restreignent ou modifient les conditions de la licence.
|
||||||
|
|
||||||
|
Clause de compatibilité: si le licencié distribue ou communique des œuvres dérivées ou des copies de telles œuvres basées à la fois sur l'œuvre et sur une autre œuvre concédée sous une licence compatible, la distribution ou la communication peut être faite aux conditions de cette licence compatible. Aux fins de la présente clause, une «licence compatible» est l'une des licences énumérées dans l'appendice de la présente licence. Dans le cas où les obligations du licencié au titre de la licence compatible entrent en conflit avec les obligations du licencié au titre de la présente licence, les premières prévalent.
|
||||||
|
|
||||||
|
Fourniture du code source: lorsqu'il distribue ou communique des copies de l'œuvre, le licencié fournit une copie lisible par machine du code source ou indique l'endroit où ce code source restera aisément et gratuitement accessible aussi longtemps que le donneur de licence continuera à distribuer ou communiquer l'œuvre.
|
||||||
|
|
||||||
|
Protection des droits: la présente licence ne donne pas le droit d'utiliser les noms commerciaux, les marques commerciales, les marques de service ou les noms du donneur de licence, sauf dans la mesure nécessaire, conformément à une utilisation raisonnable et aux pratiques habituelles, pour décrire l'origine de l'œuvre et reproduire la déclaration concernant le droit d'auteur.
|
||||||
|
|
||||||
|
6.Chaîne d'auteurs
|
||||||
|
Le donneur de licence initial garantit que les droits d'auteur sur l'œuvre originale concédés par la présente licence lui appartiennent ou lui ont été donnés sous licence, et qu'il a le pouvoir et la capacité de concéder la licence. Tout contributeur garantit que les droits d'auteur sur les modifications qu'il apporte à l'œuvre lui appartiennent ou lui ont été donnés sous licence, et qu'il a le pouvoir et la capacité de concéder la licence. Chaque fois que vous acceptez la licence, le donneur de licence initial et les contributeurs successifs vous concèdent une licence sur leurs contributions à l'œuvre selon les conditions de la présente licence.
|
||||||
|
|
||||||
|
7.Exclusion de garantie
|
||||||
|
L'œuvre est un travail en cours, amélioré de manière continue par de nombreux contributeurs. Elle constitue un travail inachevé et peut dès lors contenir des défauts ou bogues inhérents à ce type de développement. Pour cette raison, l'œuvre est fournie sous licence telle quelle, sans aucune garantie d'aucune sorte la concernant, y compris, sans que cette liste soit exhaustive, eu égard à sa qualité marchande, son aptitude à un usage particulier, l'absence de défauts ou d'erreurs, l'exactitude ou la non-violation de droits de propriété intellectuelle autres que le droit d'auteur comme prévu à l'article 6 de la présente licence. Cette exclusion de garantie est une partie essentielle de la licence et une condition de la concession de droits sur l'œuvre.
|
||||||
|
|
||||||
|
8.Exclusion de responsabilité
|
||||||
|
Sauf dans les cas de faute intentionnelle ou de dommages directement causés à des personnes physiques, le donneur de licence n'est en aucun cas responsable des dommages, quelle qu'en soit la nature, directs ou indirects, matériels ou moraux, résultant de la licence ou de l'utilisation de l'œuvre, y compris, sans que cette liste soit exhaustive, des dommages causés par les atteintes à la réputation, les interruptions de travail, les défaillances ou le mauvais fonctionnement de matériel informatique, les pertes de données ou tout autre dommage économique, même si le donneur de licence a été informé de la possibilité de tels dommages. Cependant, le donneur de licence est responsable en vertu des dispositions législatives et réglementaires relatives à la responsabilité du fait des produits, dans la mesure où celles-ci sont applicables à l'œuvre.
|
||||||
|
|
||||||
|
9.Accords additionnels
|
||||||
|
Lorsque vous distribuez l'œuvre, vous pouvez choisir de conclure un accord additionnel définissant des obligations ou des services compatibles avec la présente licence. Cependant, si vous acceptez des obligations, vous ne pouvez agir qu'en votre nom et sous votre seule responsabilité, et non au nom du donneur de licence initial ou de tout autre contributeur, et seulement si vous acceptez d'indemniser, de défendre et de mettre hors de cause tous les contributeurs s'ils encourent une responsabilité quelconque ou si des réclamations sont formulées à leur encontre du fait que vous avez accepté des garanties ou des responsabilités additionnelles.
|
||||||
|
|
||||||
|
10.Acceptation de la licence
|
||||||
|
Vous pouvez exprimer votre accord sur le contenu de la présente licence en cliquant sur l'icône «J'accepte» placée au bas d'une fenêtre faisant apparaître le texte de la présente licence, ou par toute autre manifestation de consentement similaire, conformément à la loi applicable. Le fait de cliquer sur cette icône indique votre acceptation claire et irrévocable de la présente licence et de toutes ses conditions. De même, vous acceptez irrévocablement la présente licence et toutes ses conditions dès lors que vous exercez un des droits qui vous sont concédés par l'article 2 de la présente licence, tels que l'utilisation de l'œuvre, la création d'une œuvre dérivée ou la distribution ou la communication de l'œuvre ou de copies de l'œuvre.
|
||||||
|
|
||||||
|
11.Information du public
|
||||||
|
En cas de distribution ou de communication électronique de l'œuvre (par exemple en permettant son téléchargement à distance), le canal de distribution ou le support (par exemple un site web) doit au minimum fournir au public les informations requises par le droit applicable en ce qui concerne le donneur de licence et la licence ainsi que la manière dont le licencié peut accéder à celle-ci, la conclure, la stocker et la reproduire.
|
||||||
|
|
||||||
|
12.Fin de la licence
|
||||||
|
La licence et les droits qu'elle concède prennent automatiquement fin dès que le licencié viole l'une de ses conditions. Un tel événement ne met pas fin aux licences des personnes ayant reçu l'œuvre sous licence de la part du licencié, pour autant que ces personnes respectent pleinement la licence.
|
||||||
|
|
||||||
|
13.Divers
|
||||||
|
Sous réserve de l'article 9, la licence représente l'entièreté de l'accord entre les parties quant à l'œuvre. Le fait qu'une clause quelconque de la licence soit invalide ou inapplicable en vertu du droit applicable n'affecte pas la validité ou l'applicabilité de la licence dans son ensemble. Une telle clause sera interprétée ou modifiée dans la mesure nécessaire pour la rendre valide ou applicable. La Commission européenne peut publier d'autres versions linguistiques ou de nouvelles versions de la présente licence ou des versions actualisées de son appendice, dans la mesure de ce qui est nécessaire et raisonnable, sans réduire la portée des droits accordés par la licence. Les nouvelles versions de la licence seront publiées avec un numéro de version unique. Toutes les versions linguistiques de la présente licence, approuvées par la Commission européenne, ont la même valeur. Les parties peuvent se prévaloir de la version linguistique de leur choix.
|
||||||
|
|
||||||
|
14.Juridiction compétente
|
||||||
|
Sans préjudice d'accords spécifiques entre les parties,
|
||||||
|
— tout litige résultant de l'interprétation de la présente licence survenant entre des institutions, organes, bureaux ou agences de l'Union européenne en tant que donneurs de licence et un licencié relève de la juridiction de la Cour de justice de l'Union européenne, conformément à l'article 272 du traité sur le fonctionnement de l'Union européenne,
|
||||||
|
— tout litige survenant entre d'autres parties et résultant de l'interprétation de la présente licence relève de la compétence exclusive de la juridiction compétente du lieu où le donneur de licence réside ou exerce son activité principale.
|
||||||
|
|
||||||
|
15.Droit applicable
|
||||||
|
Sans préjudice d'accords spécifiques entre les parties,
|
||||||
|
— la présente licence est régie par le droit de l'État membre de l'Union européenne où le donneur de licence réside ou a son siège social ou statutaire,
|
||||||
|
— la présente licence est régie par le droit belge si le donneur de licence ne réside pas et n'a pas son siège social ou statutaire dans un État membre de l'Union européenne.
|
||||||
|
|
||||||
|
Appendice
|
||||||
|
Aux fins de l'article 5 de l'EUPL, les licences compatibles sont les suivantes:
|
||||||
|
— GNU General Public License (GPL) v. 2, v. 3
|
||||||
|
— GNU Affero General Public License (AGPL) v. 3
|
||||||
|
— Open Software License (OSL) v. 2.1, v. 3.0
|
||||||
|
— Eclipse Public License (EPL) v. 1.0
|
||||||
|
— CeCILL v. 2.0, v. 2.1
|
||||||
|
— Mozilla Public licence (MPL) v. 2
|
||||||
|
— GNU Lesser General Public licence (LGPL) v. 2.1, v. 3
|
||||||
|
— Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) pour les œuvres autres que logicielles
|
||||||
|
— Licence publique de l'Union européenne (EUPL) v. 1.1, v. 1.2
|
||||||
|
— Licence libre du Québec — Réciprocité (LiLiQ-R) ou Réciprocité forte (LiLiQ-R+)
|
||||||
|
La Commission européenne pourra actualiser le présent appendice afin d'y inclure des versions ultérieures des licences ci-dessus sans produire de nouvelle version de l'EUPL, dès lors que ces versions prévoient la concession des droits visés à l'article 2 de la présente licence et empêchent l'appropriation exclusive du code source couvert.
|
||||||
|
Tout autre changement ou ajout au présent appendice requiert la production d'une nouvelle version de l'EUPL.
|
97
LICENSE-nl
Normal file
97
LICENSE-nl
Normal file
|
@ -0,0 +1,97 @@
|
||||||
|
OPENBARE LICENTIE VAN DE EUROPESE UNIE v. 1.2.
|
||||||
|
EUPL © Europese Unie 2007, 2016
|
||||||
|
Deze openbare licentie van de Europese Unie („EUPL”) is van toepassing op het werk (zoals hieronder gedefinieerd) dat onder de voorwaarden van deze licentie wordt verstrekt. Elk gebruik van het werk dat niet door deze licentie is toegestaan, is verboden (voor zover dit gebruik valt onder een recht van de houder van het auteursrecht op het werk). Het werk wordt verstrekt onder de voorwaarden van deze licentie wanneer de licentiegever (zoals hieronder gedefinieerd), direct volgend op de kennisgeving inzake het auteursrecht op het werk, de volgende kennisgeving opneemt:
|
||||||
|
In licentie gegeven krachtens de EUPL
|
||||||
|
of op een andere wijze zijn bereidheid te kennen heeft gegeven krachtens de EUPL in licentie te geven.
|
||||||
|
|
||||||
|
1.Definities
|
||||||
|
In deze licentie wordt verstaan onder:
|
||||||
|
— „de licentie”:de onderhavige licentie;
|
||||||
|
— „het oorspronkelijke werk”:het werk dat of de software die door de licentiegever krachtens deze licentie wordt verspreid of medegedeeld, en dat/die beschikbaar is als broncode en, in voorkomend geval, ook als uitvoerbare code;
|
||||||
|
— „bewerkingen”:de werken of software die de licentiehouder kan creëren op grond van het oorspronkelijke werk of wijzigingen ervan. In deze licentie wordt niet gedefinieerd welke mate van wijziging of afhankelijkheid van het oorspronkelijke werk vereist is om een werk als een bewerking te kunnen aanmerken; dat wordt bepaald conform het auteursrecht dat van toepassing is in de in artikel 15 bedoelde staat;
|
||||||
|
— „het werk”:het oorspronkelijke werk of de bewerkingen ervan;
|
||||||
|
— „de broncode”:de voor mensen leesbare vorm van het werk, die het gemakkelijkste door mensen kan worden bestudeerd en gewijzigd;
|
||||||
|
— „de uitvoerbare code”:elke code die over het algemeen is gecompileerd en is bedoeld om door een computer als een programma te worden uitgevoerd;
|
||||||
|
— „de licentiegever”:de natuurlijke of rechtspersoon die het werk krachtens de licentie verspreidt of mededeelt;
|
||||||
|
— „bewerker(s)”:elke natuurlijke of rechtspersoon die het werk krachtens de licentie wijzigt of op een andere wijze bijdraagt tot de totstandkoming van een bewerking;
|
||||||
|
— „de licentiehouder” of „u”:elke natuurlijke of rechtspersoon die het werk onder de voorwaarden van de licentie gebruikt; — „verspreiding” of „mededeling”:het verkopen, geven, uitlenen, verhuren, verspreiden, mededelen, doorgeven, of op een andere wijze online of offline beschikbaar stellen van kopieën van het werk of het verlenen van toegang tot de essentiële functies ervan ten behoeve van andere natuurlijke of rechtspersonen.
|
||||||
|
|
||||||
|
2.Draagwijdte van de uit hoofde van de licentie verleende rechten
|
||||||
|
De licentiegever verleent u hierbij een wereldwijde, royaltyvrije, niet-exclusieve, voor een sublicentie in aanmerking komende licentie, om voor de duur van het aan het oorspronkelijke werk verbonden auteursrecht, het volgende te doen:
|
||||||
|
— het werk in alle omstandigheden en voor ongeacht welk doel te gebruiken;
|
||||||
|
— het werk te verveelvoudigen;
|
||||||
|
— het werk te wijzigen en op grond van het werk bewerkingen te ontwikkelen;
|
||||||
|
— het werk aan het publiek mede te delen, waaronder het recht om het werk of kopieën ervan aan het publiek ter beschikking te stellen of te vertonen, en het werk, in voorkomend geval, in het openbaar uit te voeren;
|
||||||
|
— het werk of kopieën ervan te verspreiden;
|
||||||
|
— het werk of kopieën ervan uit te lenen en te verhuren;
|
||||||
|
— de rechten op het werk of op kopieën ervan in sublicentie te geven.
|
||||||
|
Deze rechten kunnen worden uitgeoefend met gebruikmaking van alle thans bekende of nog uit te vinden media, dragers en formaten, voor zover het toepasselijke recht dit toestaat. In de landen waar immateriële rechten van toepassing zijn, doet de licentiegever afstand van zijn recht op uitoefening van zijn immateriële rechten in de mate die door het toepasselijke recht wordt toegestaan teneinde een doeltreffende uitoefening van de bovenvermelde in licentie gegeven economische rechten mogelijk te maken. De licentiegever verleent de licentiehouder een royaltyvrij, niet-exclusief gebruiksrecht op alle octrooien van de licentiegever, voor zover dit noodzakelijk is om de uit hoofde van deze licentie verleende rechten op het werk te gebruiken.
|
||||||
|
|
||||||
|
3.Mededeling van de broncode
|
||||||
|
De licentiegever kan het werk verstrekken in zijn broncode of als uitvoerbare code. Indien het werk als uitvoerbare code wordt verstrekt, verstrekt de licentiegever bij elke door hem verspreide kopie van het werk tevens een machinaal leesbare kopie van de broncode van het werk of geeft hij in een mededeling, volgende op de bij het werk gevoegde auteursrechtelijke kennisgeving, de plaats aan waar de broncode gemakkelijk en vrij toegankelijk is, zolang de licentiegever het werk blijft verspreiden of mededelen.
|
||||||
|
|
||||||
|
4.Beperkingen van het auteursrecht
|
||||||
|
Geen enkele bepaling in deze licentie heeft ten doel de licentiehouder het recht te ontnemen een beroep te doen op een uitzondering op of een beperking van de exclusieve rechten van de rechthebbenden op het werk, of op de uitputting van die rechten of andere toepasselijke beperkingen daarvan.
|
||||||
|
|
||||||
|
5.Verplichtingen van de licentiehouder
|
||||||
|
De verlening van de bovenvermelde rechten is onderworpen aan een aantal aan de licentiehouder opgelegde beperkingen en verplichtingen. Het gaat om de onderstaande verplichtingen.
|
||||||
|
|
||||||
|
Attributierecht: de licentiehouder moet alle auteurs-, octrooi- of merkenrechtelijke kennisgevingen onverlet laten alsook alle kennisgevingen die naar de licentie en de afwijzing van garanties verwijzen. De licentiehouder moet een afschrift van deze kennisgevingen en een afschrift van de licentie bij elke kopie van het werk voegen die hij verspreidt of mededeelt. De licentiehouder moet in elke bewerking duidelijk aangeven dat het werk is gewijzigd, en eveneens de datum van wijziging vermelden.
|
||||||
|
|
||||||
|
Copyleftclausule: wanneer de licentiehouder kopieën van het oorspronkelijke werk of bewerkingen verspreidt of mededeelt, geschiedt die verspreiding of mededeling onder de voorwaarden van deze licentie of van een latere versie van deze licentie, tenzij het oorspronkelijke werk uitdrukkelijk alleen onder deze versie van de licentie wordt verspreid — bijvoorbeeld door de mededeling „alleen EUPL v. 1.2”. De licentiehouder (die licentiegever wordt) kan met betrekking tot het werk of de bewerkingen geen aanvullende bepalingen of voorwaarden opleggen of stellen die de voorwaarden van de licentie wijzigen of beperken.
|
||||||
|
|
||||||
|
Verenigbaarheidsclausule: wanneer de licentiehouder bewerkingen of kopieën ervan verspreidt of mededeelt die zijn gebaseerd op het werk en op een ander werk dat uit hoofde van een verenigbare licentie in licentie is gegeven, kan die verspreiding of mededeling geschieden onder de voorwaarden van deze verenigbare licentie. Voor de toepassing van deze clausule wordt onder „verenigbare licentie” verstaan, de licenties die in het aanhangsel bij deze licentie zijn opgesomd. Indien de verplichtingen van de licentiehouder uit hoofde van de verenigbare licentie in strijd zijn met diens verplichtingen uit hoofde van deze licentie, hebben de verplichtingen van de verenigbare licentie voorrang.
|
||||||
|
|
||||||
|
Verstrekking van de broncode: bij de verspreiding of mededeling van kopieën van het werk verstrekt de licentiehouder een machinaal leesbare kopie van de broncode of geeft hij aan waar deze broncode gemakkelijk en vrij toegankelijk is, zolang de licentiehouder het werk blijft verspreiden of mededelen.
|
||||||
|
|
||||||
|
Juridische bescherming: deze licentie verleent geen toestemming om handelsnamen, handelsmerken, dienstmerken of namen van de licentiegever te gebruiken, behalve wanneer dit op grond van een redelijk en normaal gebruik noodzakelijk is om de oorsprong van het werk te beschrijven en de inhoud van de auteursrechtelijke kennisgeving te herhalen.
|
||||||
|
|
||||||
|
6.Auteursketen
|
||||||
|
De oorspronkelijke licentiegever garandeert dat hij houder is van het hierbij verleende auteursrecht op het oorspronkelijke werk dan wel dat dit hem in licentie is gegeven en dat hij de bevoegdheid heeft de licentie te verlenen. Elke bewerker garandeert dat hij houder is van het auteursrecht op de door hem aan het werk aangebrachte wijzigingen dan wel dat dit hem in licentie is gegeven en dat hij de bevoegdheid heeft de licentie te verlenen. Telkens wanneer u de licentie aanvaardt, verlenen de oorspronkelijke licentiegever en de opeenvolgende bewerkers u een licentie op hun bijdragen aan het werk onder de voorwaarden van deze licentie.
|
||||||
|
|
||||||
|
7.Uitsluiting van garantie
|
||||||
|
Het werk is een werk in ontwikkeling, dat voortdurend door vele bewerkers wordt verbeterd. Het is een onvoltooid werk, dat bijgevolg nog tekortkomingen of programmeerfouten („bugs”) kan vertonen, die onlosmakelijk verbonden zijn met dit soort ontwikkeling. Om die reden wordt het werk op grond van de licentie verstrekt „zoals het is” en zonder enige garantie met betrekking tot het werk te geven, met inbegrip van, maar niet beperkt tot garanties met betrekking tot de verhandelbaarheid, de geschiktheid voor een specifiek doel, de afwezigheid van tekortkomingen of fouten, de nauwkeurigheid, de eerbiediging van andere intellectuele-eigendomsrechten dan het in artikel 6 van deze licentie bedoelde auteursrecht. Deze uitsluiting van garantie is een essentieel onderdeel van de licentie en een voorwaarde voor de verlening van rechten op het werk.
|
||||||
|
|
||||||
|
8.Uitsluiting van aansprakelijkheid
|
||||||
|
Behoudens in het geval van een opzettelijke fout of directe schade aan natuurlijke personen, is de licentiegever in geen enkel geval aansprakelijk voor ongeacht welke directe of indirecte, materiële of immateriële schade die voortvloeit uit de licentie of het gebruik van het werk, met inbegrip van, maar niet beperkt tot schade als gevolg van het verlies van goodwill, verloren werkuren, een computerdefect of computerfout, het verlies van gegevens, of enige andere commerciële schade, zelfs indien de licentiegever werd gewezen op de mogelijkheid van dergelijke schade. De licentiegever is echter aansprakelijk op grond van de wetgeving inzake productaansprakelijkheid, voor zover deze wetgeving op het werk van toepassing is.
|
||||||
|
|
||||||
|
9.Aanvullende overeenkomsten
|
||||||
|
Bij de verspreiding van het werk kunt u ervoor kiezen een aanvullende overeenkomst te sluiten, waarin de verplichtingen of diensten overeenkomstig deze licentie worden omschreven. Indien deze verplichtingen worden aanvaard, kunt u echter alleen in eigen naam en onder eigen verantwoordelijkheid handelen, en dus niet in naam van de oorspronkelijke licentiegever of een bewerker, en kunt u voorts alleen handelen indien u ermee instemt alle bewerkers schadeloos te stellen, te verdedigen of te vrijwaren met betrekking tot de aansprakelijkheid van of vorderingen tegen deze bewerkers op grond van het feit dat u een garantie of aanvullende aansprakelijkheid hebt aanvaard.
|
||||||
|
|
||||||
|
10.Aanvaarding van de licentie
|
||||||
|
De bepalingen van deze licentie kunnen worden aanvaard door te klikken op het pictogram „Ik ga akkoord”, dat zich bevindt onderaan het venster waarin de tekst van deze licentie is weergegeven, of door overeenkomstig de toepasselijke wetsbepalingen op een soortgelijke wijze met de licentie in te stemmen. Door op dat pictogram te klikken geeft u aan dat u deze licentie en alle voorwaarden ervan ondubbelzinnig en onherroepelijk aanvaardt. Evenzo aanvaardt u onherroepelijk deze licentie en alle voorwaarden ervan door uitoefening van de rechten die u in artikel 2 van deze licentie zijn verleend, zoals het gebruik van het werk, het creëren door u van een bewerking of de verspreiding of mededeling door u van het werk of kopieën ervan.
|
||||||
|
|
||||||
|
11.Voorlichting van het publiek
|
||||||
|
Indien u het werk verspreidt of mededeelt door middel van elektronische communicatiemiddelen (bijvoorbeeld door voor te stellen het werk op afstand te downloaden), moet het distributiekanaal of het medium (bijvoorbeeld een website) het publiek ten minste de gegevens verschaffen die door het toepasselijke recht zijn voorgeschreven met betrekking tot de licentiegever, de licentie en de wijze waarop deze kan worden geraadpleegd, gesloten, opgeslagen en gereproduceerd door de licentiehouder.
|
||||||
|
|
||||||
|
12.Einde van de licentie
|
||||||
|
De licentie en de uit hoofde daarvan verleende rechten eindigen automatisch bij elke inbreuk door de licentiehouder op de voorwaarden van de licentie. Dit einde beëindigt niet de licenties van personen die het werk van de licentiehouder krachtens de licentie hebben ontvangen, mits deze personen zich volledig aan de licentie houden.
|
||||||
|
|
||||||
|
13.Overige
|
||||||
|
Onverminderd artikel 9 vormt de licentie de gehele overeenkomst tussen de partijen met betrekking tot het werk. Indien een bepaling van de licentie volgens het toepasselijke recht ongeldig is of niet uitvoerbaar is, doet dit geen afbreuk aan de geldigheid of uitvoerbaarheid van de licentie in haar geheel. Deze bepaling dient zodanig te worden uitgelegd of gewijzigd dat zij geldig en uitvoerbaar wordt. De Europese Commissie kan, voor zover dit noodzakelijk en redelijk is, versies in andere talen of nieuwe versies van deze licentie of geactualiseerde versies van dit aanhangsel publiceren, zonder de draagwijdte van de uit hoofde van de licentie verleende rechten te beperken. Nieuwe versies van de licentie zullen worden gepubliceerd met een uniek versienummer. Alle door de Europese Commissie goedgekeurde taalversies van deze licentie hebben dezelfde waarde. De partijen kunnen zich beroepen op de taalversie van hun keuze.
|
||||||
|
|
||||||
|
14.Bevoegd gerecht
|
||||||
|
Onverminderd specifieke overeenkomsten tussen de partijen,
|
||||||
|
— vallen alle geschillen tussen de instellingen, organen en instanties van de Europese Unie, als licentiegeefster, en een licentiehouder in verband met de uitlegging van deze licentie onder de bevoegdheid van het Hof van Justitie van de Europese Unie, conform artikel 272 van het Verdrag betreffende de werking van de Europese Unie,
|
||||||
|
— vallen alle geschillen tussen andere partijen in verband met de uitlegging van deze licentie onder de uitsluitende bevoegdheid van het bevoegde gerecht van de plaats waar de licentiegever is gevestigd of zijn voornaamste activiteit uitoefent.
|
||||||
|
|
||||||
|
15.Toepasselijk recht
|
||||||
|
Onverminderd specifieke overeenkomsten tussen de partijen,
|
||||||
|
— wordt deze licentie beheerst door het recht van de lidstaat van de Europese Unie waar de licentiegever zijn statutaire zetel, verblijfplaats of hoofdkantoor heeft,
|
||||||
|
— wordt deze licentie beheerst door het Belgische recht indien de licentiegever geen statutaire zetel, verblijfplaats of hoofdkantoor heeft in een lidstaat van de Europese Unie.
|
||||||
|
|
||||||
|
|
||||||
|
Aanhangsel
|
||||||
|
„Verenigbare licenties” in de zin van artikel 5 EUPL zijn:
|
||||||
|
— GNU General Public License (GPL) v. 2, v. 3
|
||||||
|
— GNU Affero General Public License (AGPL) v. 3
|
||||||
|
— Open Software License (OSL) v. 2.1, v. 3.0
|
||||||
|
— Eclipse Public License (EPL) v. 1.0
|
||||||
|
— CeCILL v. 2.0, v. 2.1
|
||||||
|
— Mozilla Public Licence (MPL) v. 2
|
||||||
|
— GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3
|
||||||
|
— Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) voor andere werken dan software
|
||||||
|
— European Union Public Licence (EUPL) v. 1.1, v. 1.2
|
||||||
|
— Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) of Strong Reciprocity (LiLiQ-R+).
|
||||||
|
De Europese Commissie kan dit aanhangsel actualiseren in geval van latere versies van de bovengenoemde licenties zonder dat er een nieuwe EUPL-versie wordt ontwikkeld, zolang die versies de uit hoofde van artikel 2 van deze licentie verleende rechten verlenen en ze de betrokken broncode beschermen tegen exclusieve toe-eigening.
|
||||||
|
Voor alle andere wijzigingen van of aanvullingen op dit aanhangsel is de ontwikkeling van een nieuwe EUPL-versie vereist.
|
|
@ -1,3 +0,0 @@
|
||||||
# sphinx_gemini_builder
|
|
||||||
|
|
||||||
Build gemini blog from Sphinx.
|
|
7
README.rst
Normal file
7
README.rst
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
sphinx_gemini_builder
|
||||||
|
#####################
|
||||||
|
|
||||||
|
Build gemini blog from Sphinx.
|
||||||
|
|
||||||
|
Install with `python setup.py install` and do `make gemini` in
|
||||||
|
your project.
|
7
setup.cfg
Normal file
7
setup.cfg
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
[metadata]
|
||||||
|
description-file = README.rst
|
||||||
|
license-files =
|
||||||
|
LICENSE
|
||||||
|
LICENSE-de
|
||||||
|
LICENSE-fr
|
||||||
|
LICENSE-nl
|
78
setup.py
Normal file
78
setup.py
Normal file
|
@ -0,0 +1,78 @@
|
||||||
|
from setuptools import setup
|
||||||
|
import distutils
|
||||||
|
|
||||||
|
|
||||||
|
class TranslateCommand(distutils.cmd.Command):
|
||||||
|
description = "Translation"
|
||||||
|
|
||||||
|
user_options = []
|
||||||
|
sub_commands = [
|
||||||
|
('extract_messages', None),
|
||||||
|
('update_catalog', None),
|
||||||
|
('compile_catalog', None),
|
||||||
|
]
|
||||||
|
|
||||||
|
def initialize_options(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def finalize_options(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def run(self):
|
||||||
|
for cmd_name in self.get_sub_commands():
|
||||||
|
self.run_command(cmd_name)
|
||||||
|
|
||||||
|
|
||||||
|
with open("README.rst", "r") as fh:
|
||||||
|
long_description = fh.read()
|
||||||
|
|
||||||
|
setup(
|
||||||
|
name="sphinx_gemini_builder",
|
||||||
|
version="0.0.1",
|
||||||
|
url="https://procrastinator.nerv-project.eu/nerv-project/sphinx_gemini_builder",
|
||||||
|
license="EUPL 1.2",
|
||||||
|
author="Kujiu",
|
||||||
|
author_email="kujiu-pypi@kujiu.org",
|
||||||
|
description="Build gemini blog",
|
||||||
|
long_description=long_description,
|
||||||
|
long_description_content_type="text/x-rst",
|
||||||
|
packages=["sphinx_gemini_builder"],
|
||||||
|
cmdclass={
|
||||||
|
'translate': TranslateCommand,
|
||||||
|
},
|
||||||
|
package_data={
|
||||||
|
"sphinx_gemini_builder": [
|
||||||
|
"locale/*/LC_MESSAGES/*.po",
|
||||||
|
"locale/*/LC_MESSAGES/*.mo",
|
||||||
|
]
|
||||||
|
},
|
||||||
|
entry_points={
|
||||||
|
'sphinx.builders': [
|
||||||
|
'gemini = sphinx_gemini_builder',
|
||||||
|
]
|
||||||
|
},
|
||||||
|
install_requires=["sphinx>=2.0.0"],
|
||||||
|
classifiers=[
|
||||||
|
"Framework :: Sphinx",
|
||||||
|
"Framework :: Sphinx :: Extension",
|
||||||
|
"Development Status :: 5 - Production/Stable",
|
||||||
|
"Environment :: Console",
|
||||||
|
"Environment :: Web Environment",
|
||||||
|
"Intended Audience :: Developers",
|
||||||
|
"License :: OSI Approved :: European Union Public Licence 1.2 (EUPL 1.2)",
|
||||||
|
"Programming Language :: Python :: 3",
|
||||||
|
"Programming Language :: Python :: 3.5",
|
||||||
|
"Programming Language :: Python :: 3.6",
|
||||||
|
"Programming Language :: Python :: 3.7",
|
||||||
|
"Programming Language :: Python :: 3.8",
|
||||||
|
"Programming Language :: Python :: 3.9",
|
||||||
|
"Operating System :: OS Independent",
|
||||||
|
"Topic :: Documentation",
|
||||||
|
"Topic :: Software Development :: Documentation",
|
||||||
|
],
|
||||||
|
keywords="sphinx gemini gemlog",
|
||||||
|
project_urls={
|
||||||
|
"Source": "https://procrastinator.nerv-project.eu/nerv-project/sphinx_gemini_builder",
|
||||||
|
"Issues": "https://procrastinator.nerv-project.eu/nerv-project/sphinx_gemini_builder/issues",
|
||||||
|
},
|
||||||
|
)
|
49
sphinx_gemini_builder/__init__.py
Normal file
49
sphinx_gemini_builder/__init__.py
Normal file
|
@ -0,0 +1,49 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
"""
|
||||||
|
Build Gemini blog from Sphinx.
|
||||||
|
"""
|
||||||
|
|
||||||
|
__version_info__ = (0, 0, 1)
|
||||||
|
__version__ = '.'.join([str(val) for val in __version_info__])
|
||||||
|
|
||||||
|
|
||||||
|
from typing import Set, Dict, Any
|
||||||
|
|
||||||
|
from sphinx.builders.text import TextBuilder
|
||||||
|
from sphinx.util import logging
|
||||||
|
from sphinx.locale import __
|
||||||
|
from sphinx.application import Sphinx
|
||||||
|
|
||||||
|
from .writer import GeminiTranslator, GeminiWriter
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
class GeminiBuilder(TextBuilder):
|
||||||
|
"""
|
||||||
|
Gemini builder, based on native TextBuilder code from Sphinx
|
||||||
|
"""
|
||||||
|
name = 'gemini'
|
||||||
|
format = 'gemini'
|
||||||
|
epilog = __('The gemini files are in %(outdir)s.')
|
||||||
|
|
||||||
|
out_suffix = '.gmi'
|
||||||
|
allow_parallel = True
|
||||||
|
default_translator_class = GeminiTranslator
|
||||||
|
|
||||||
|
current_docname = None
|
||||||
|
|
||||||
|
def prepare_writing(self, docnames: Set[str]) -> None:
|
||||||
|
self.writer = GeminiWriter(self)
|
||||||
|
|
||||||
|
|
||||||
|
def setup(app: Sphinx) -> Dict[str, Any]:
|
||||||
|
app.add_builder(GeminiBuilder)
|
||||||
|
|
||||||
|
return {
|
||||||
|
'version': __version__,
|
||||||
|
'parallel_read_safe': True,
|
||||||
|
'parallel_write_safe': True
|
||||||
|
}
|
745
sphinx_gemini_builder/writer.py
Normal file
745
sphinx_gemini_builder/writer.py
Normal file
|
@ -0,0 +1,745 @@
|
||||||
|
#!/usr/bin/env python
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
"""
|
||||||
|
Writer for .gmi files
|
||||||
|
"""
|
||||||
|
|
||||||
|
from typing import cast, Iterable
|
||||||
|
|
||||||
|
from docutils import writers, nodes
|
||||||
|
from docutils.nodes import Element, Text, Node
|
||||||
|
from sphinx.util import logging
|
||||||
|
from sphinx.util.docutils import SphinxTranslator
|
||||||
|
from sphinx import addnodes
|
||||||
|
from sphinx.writers.text import Table, Cell
|
||||||
|
from sphinx.locale import __, admonitionlabels
|
||||||
|
|
||||||
|
logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
if False:
|
||||||
|
# For type annotation
|
||||||
|
from . import GeminiBuilder
|
||||||
|
|
||||||
|
MAXWIDTH = 70
|
||||||
|
|
||||||
|
|
||||||
|
class GeminiWriter(writers.Writer):
|
||||||
|
supported = ('gemini',)
|
||||||
|
settings_spec = ('No options', '', ())
|
||||||
|
settings_defaults = {}
|
||||||
|
|
||||||
|
def __init__(self, builder: "GeminiBuilder") -> None:
|
||||||
|
super().__init__()
|
||||||
|
self.builder = builder
|
||||||
|
|
||||||
|
def translate(self) -> None:
|
||||||
|
visitor = self.builder.create_translator(self.document, self.builder)
|
||||||
|
self.document.walkabout(visitor)
|
||||||
|
self.output = cast(GeminiTranslator, visitor).body
|
||||||
|
|
||||||
|
|
||||||
|
class GeminiTranslator(SphinxTranslator):
|
||||||
|
builder = None
|
||||||
|
|
||||||
|
def __init__(self, document: nodes.document, builder: "GeminiBuilder") -> None:
|
||||||
|
super().__init__(document, builder)
|
||||||
|
self.sectionlevel = 0
|
||||||
|
self.first_param = 0
|
||||||
|
self.list_counter = []
|
||||||
|
self.table = None
|
||||||
|
self.pre = False
|
||||||
|
self.body = ''
|
||||||
|
|
||||||
|
def add_text(self, text: str) -> None:
|
||||||
|
self.body += text
|
||||||
|
|
||||||
|
def add_link(self, url: str, label: str = '') -> None:
|
||||||
|
self.body += '=> %s %s' % (url, label)
|
||||||
|
|
||||||
|
def add_quote(self, quote: str) -> None:
|
||||||
|
self.body += '> %s' % quote
|
||||||
|
|
||||||
|
def add_item(self, item: str) -> None:
|
||||||
|
self.body += '* %s' % item
|
||||||
|
|
||||||
|
def add_title(self, title: str) -> None:
|
||||||
|
self.body += '#' * self.sectionlevel + ' ' + title
|
||||||
|
|
||||||
|
def end_block(self) -> None:
|
||||||
|
self.body += '\n'
|
||||||
|
|
||||||
|
def disable_pre(self) -> None:
|
||||||
|
if self.pre:
|
||||||
|
self.body += '```\n'
|
||||||
|
self.pre = True
|
||||||
|
|
||||||
|
def enable_pre(self) -> None:
|
||||||
|
if not self.pre:
|
||||||
|
self.body += '```\n'
|
||||||
|
self.pre = True
|
||||||
|
|
||||||
|
def visit_document(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_document(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_section(self, node: Element) -> None:
|
||||||
|
self.sectionlevel += 1
|
||||||
|
|
||||||
|
def depart_section(self, node: Element) -> None:
|
||||||
|
self.sectionlevel -= 1
|
||||||
|
|
||||||
|
def visit_topic(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_topic(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
visit_sidebar = visit_topic
|
||||||
|
depart_sidebar = depart_topic
|
||||||
|
|
||||||
|
def visit_rubric(self, node: Element) -> None:
|
||||||
|
self.add_text('-[ ')
|
||||||
|
|
||||||
|
def depart_rubric(self, node: Element) -> None:
|
||||||
|
self.add_text(' ]-')
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_compound(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_compound(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_glossary(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_glossary(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_title(self, node: Element) -> None:
|
||||||
|
if isinstance(node.parent, nodes.Admonition):
|
||||||
|
self.add_text(node.astext() + ' : ')
|
||||||
|
else:
|
||||||
|
self.add_title(node.astext())
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def depart_title(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_subtitle(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_subtitle(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_attribution(self, node: Element) -> None:
|
||||||
|
self.add_text('-- ')
|
||||||
|
|
||||||
|
def depart_attribution(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_desc(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_desc_signature(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc_signature(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_desc_signature_line(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc_signature_line(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_desc_name(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc_name(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_desc_addname(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc_addname(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_desc_type(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc_type(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_desc_returns(self, node: Element) -> None:
|
||||||
|
self.add_text(' -> ')
|
||||||
|
|
||||||
|
def depart_desc_returns(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_desc_parameterlist(self, node: Element) -> None:
|
||||||
|
self.add_text('(')
|
||||||
|
self.first_param = 1
|
||||||
|
|
||||||
|
def depart_desc_parameterlist(self, node: Element) -> None:
|
||||||
|
self.add_text(')')
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_desc_parameter(self, node: Element) -> None:
|
||||||
|
if not self.first_param:
|
||||||
|
self.add_text(', ')
|
||||||
|
else:
|
||||||
|
self.first_param = 0
|
||||||
|
self.add_text(node.astext())
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_desc_optional(self, node: Element) -> None:
|
||||||
|
self.add_text('[')
|
||||||
|
|
||||||
|
def depart_desc_optional(self, node: Element) -> None:
|
||||||
|
self.add_text(']')
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_desc_annotation(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_desc_annotation(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_desc_content(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def depart_desc_content(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_figure(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_figure(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_caption(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_caption(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_productionlist(self, node: Element) -> None:
|
||||||
|
names = []
|
||||||
|
productionlist = cast(Iterable[addnodes.production], node)
|
||||||
|
for production in productionlist:
|
||||||
|
names.append(production['tokenname'])
|
||||||
|
maxlen = max(len(name) for name in names)
|
||||||
|
lastname = None
|
||||||
|
for production in productionlist:
|
||||||
|
if production['tokenname']:
|
||||||
|
self.add_text(production['tokenname'].ljust(maxlen) + ' ::=')
|
||||||
|
lastname = production['tokenname']
|
||||||
|
elif lastname is not None:
|
||||||
|
self.add_text('%s ' % (' ' * len(lastname)))
|
||||||
|
self.add_text(production.astext())
|
||||||
|
self.end_block()
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_footnote(self, node: Element) -> None:
|
||||||
|
label = cast(nodes.label, node[0])
|
||||||
|
self._footnote = label.astext().strip()
|
||||||
|
|
||||||
|
def depart_footnote(self, node: Element) -> None:
|
||||||
|
self.add_text('[%s] ' % self._footnote)
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_citation(self, node: Element) -> None:
|
||||||
|
if len(node) and isinstance(node[0], nodes.label):
|
||||||
|
self.add_quote(node[0].astext())
|
||||||
|
else:
|
||||||
|
self.add_quote()
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def depart_citation(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_label(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_legend(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_legend(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_option_list(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_option_list(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_option_list_item(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_option_list_item(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_option_group(self, node: Element) -> None:
|
||||||
|
self._firstoption = True
|
||||||
|
|
||||||
|
def depart_option_group(self, node: Element) -> None:
|
||||||
|
self.add_text(' ')
|
||||||
|
|
||||||
|
def visit_option(self, node: Element) -> None:
|
||||||
|
if self._firstoption:
|
||||||
|
self._firstoption = False
|
||||||
|
else:
|
||||||
|
self.add_text(', ')
|
||||||
|
|
||||||
|
def depart_option(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_option_string(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_option_string(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_option_argument(self, node: Element) -> None:
|
||||||
|
self.add_text(node['delimiter'])
|
||||||
|
|
||||||
|
def depart_option_argument(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_description(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_description(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_tabular_col_spec(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_colspec(self, node: Element) -> None:
|
||||||
|
self.table.colwidth.append(node["colwidth"])
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_tgroup(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_tgroup(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_thead(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_thead(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_tbody(self, node: Element) -> None:
|
||||||
|
self.table.set_separator()
|
||||||
|
|
||||||
|
def depart_tbody(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_row(self, node: Element) -> None:
|
||||||
|
if self.table.lines:
|
||||||
|
self.table.add_row()
|
||||||
|
|
||||||
|
def depart_row(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_entry(self, node: Element) -> None:
|
||||||
|
self.entry = Cell(
|
||||||
|
rowspan=node.get("morerows", 0) + 1, colspan=node.get("morecols", 0) + 1
|
||||||
|
)
|
||||||
|
|
||||||
|
def depart_entry(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_table(self, node: Element) -> None:
|
||||||
|
if self.table:
|
||||||
|
raise NotImplementedError('Nested tables are not supported.')
|
||||||
|
self.enable_pre()
|
||||||
|
self.table = Table()
|
||||||
|
|
||||||
|
def depart_table(self, node: Element) -> None:
|
||||||
|
self.add_text(str(self.table))
|
||||||
|
self.disable_pre()
|
||||||
|
self.table = None
|
||||||
|
|
||||||
|
def visit_acks(self, node: Element) -> None:
|
||||||
|
bullet_list = cast(nodes.bullet_list, node[0])
|
||||||
|
list_items = cast(Iterable[nodes.list_item], bullet_list)
|
||||||
|
self.new_state(0)
|
||||||
|
self.add_text(', '.join(n.astext() for n in list_items) + '.')
|
||||||
|
self.end_block()
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_image(self, node: Element) -> None:
|
||||||
|
if 'alt' in node.attributes:
|
||||||
|
self.add_text(__('[image: %s]') % node['alt'])
|
||||||
|
self.add_text(__('[image]'))
|
||||||
|
self.end_block()
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_transition(self, node: Element) -> None:
|
||||||
|
self.add_text('=' * MAXWIDTH)
|
||||||
|
self.end_block()
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_bullet_list(self, node: Element) -> None:
|
||||||
|
self.list_counter.append(-1)
|
||||||
|
|
||||||
|
def depart_bullet_list(self, node: Element) -> None:
|
||||||
|
self.list_counter.pop()
|
||||||
|
|
||||||
|
def visit_enumerated_list(self, node: Element) -> None:
|
||||||
|
self.list_counter.append(node.get('start', 1) - 1)
|
||||||
|
|
||||||
|
def depart_enumerated_list(self, node: Element) -> None:
|
||||||
|
self.list_counter.pop()
|
||||||
|
|
||||||
|
def visit_definition_list(self, node: Element) -> None:
|
||||||
|
self.list_counter.append(-2)
|
||||||
|
|
||||||
|
def depart_definition_list(self, node: Element) -> None:
|
||||||
|
self.list_counter.pop()
|
||||||
|
|
||||||
|
def visit_list_item(self, node: Element) -> None:
|
||||||
|
if -2 != self.list_counter[-1] != -1:
|
||||||
|
# enumerated list
|
||||||
|
self.list_counter[-1] += 1
|
||||||
|
self.add_text('%s. ' % self.list_counter[-1])
|
||||||
|
else:
|
||||||
|
self.add_item('')
|
||||||
|
|
||||||
|
def depart_list_item(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_definition_list_item(self, node: Element) -> None:
|
||||||
|
self._classifier_count_in_li = len(node.traverse(nodes.classifier))
|
||||||
|
|
||||||
|
def depart_definition_list_item(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_term(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_term(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_classifier(self, node: Element) -> None:
|
||||||
|
self.add_text(' : ')
|
||||||
|
|
||||||
|
def depart_classifier(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_definition(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_definition(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_field_list(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_field_list(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_field(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_field(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_field_name(self, node: Element) -> None:
|
||||||
|
self.add_text(':')
|
||||||
|
|
||||||
|
def depart_field_name(self, node: Element) -> None:
|
||||||
|
self.add_text(': ')
|
||||||
|
|
||||||
|
def visit_field_body(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_field_body(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_centered(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_centered(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_hlist(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_hlist(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_hlistcol(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_hlistcol(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_admonition(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_admonition(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def _visit_admonition(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def _depart_admonition(self, node: Element) -> None:
|
||||||
|
self.add_text(admonitionlabels[node.tagname] + ' :')
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
visit_attention = _visit_admonition
|
||||||
|
depart_attention = _depart_admonition
|
||||||
|
visit_caution = _visit_admonition
|
||||||
|
depart_caution = _depart_admonition
|
||||||
|
visit_danger = _visit_admonition
|
||||||
|
depart_danger = _depart_admonition
|
||||||
|
visit_error = _visit_admonition
|
||||||
|
depart_error = _depart_admonition
|
||||||
|
visit_hint = _visit_admonition
|
||||||
|
depart_hint = _depart_admonition
|
||||||
|
visit_important = _visit_admonition
|
||||||
|
depart_important = _depart_admonition
|
||||||
|
visit_note = _visit_admonition
|
||||||
|
depart_note = _depart_admonition
|
||||||
|
visit_tip = _visit_admonition
|
||||||
|
depart_tip = _depart_admonition
|
||||||
|
visit_warning = _visit_admonition
|
||||||
|
depart_warning = _depart_admonition
|
||||||
|
visit_seealso = _visit_admonition
|
||||||
|
depart_seealso = _depart_admonition
|
||||||
|
|
||||||
|
def visit_versionmodified(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_versionmodified(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_literal_block(self, node: Element) -> None:
|
||||||
|
self.enable_pre()
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_literal_block(self, node: Element) -> None:
|
||||||
|
self.disable_pre()
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_doctest_block(self, node: Element) -> None:
|
||||||
|
self.enable_pre()
|
||||||
|
|
||||||
|
def depart_doctest_block(self, node: Element) -> None:
|
||||||
|
self.disable_pre()
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_line_block(self, node: Element) -> None:
|
||||||
|
self.enable_pre()
|
||||||
|
|
||||||
|
def depart_line_block(self, node: Element) -> None:
|
||||||
|
self.disable_pre()
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_line(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_line(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_block_quote(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_block_quote(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_compact_paragraph(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_compact_paragraph(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_paragraph(self, node: Element) -> None:
|
||||||
|
if not isinstance(node.parent, nodes.Admonition) or \
|
||||||
|
isinstance(node.parent, addnodes.seealso):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_paragraph(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def visit_target(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_index(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_toctree(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_substitution_definition(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_pending_xref(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_pending_xref(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_reference(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_reference(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_number_reference(self, node: Element) -> None:
|
||||||
|
text = nodes.Text(node.get('title', '#'))
|
||||||
|
self.visit_Text(text)
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_download_reference(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_download_reference(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_emphasis(self, node: Element) -> None:
|
||||||
|
self.add_text('*')
|
||||||
|
|
||||||
|
def depart_emphasis(self, node: Element) -> None:
|
||||||
|
self.add_text('*')
|
||||||
|
|
||||||
|
def visit_literal_emphasis(self, node: Element) -> None:
|
||||||
|
self.add_text('*')
|
||||||
|
|
||||||
|
def depart_literal_emphasis(self, node: Element) -> None:
|
||||||
|
self.add_text('*')
|
||||||
|
|
||||||
|
def visit_strong(self, node: Element) -> None:
|
||||||
|
self.add_text('**')
|
||||||
|
|
||||||
|
def depart_strong(self, node: Element) -> None:
|
||||||
|
self.add_text('**')
|
||||||
|
|
||||||
|
def visit_literal_strong(self, node: Element) -> None:
|
||||||
|
self.add_text('**')
|
||||||
|
|
||||||
|
def depart_literal_strong(self, node: Element) -> None:
|
||||||
|
self.add_text('**')
|
||||||
|
|
||||||
|
def visit_abbreviation(self, node: Element) -> None:
|
||||||
|
self.add_text('')
|
||||||
|
|
||||||
|
def depart_abbreviation(self, node: Element) -> None:
|
||||||
|
if node.hasattr('explanation'):
|
||||||
|
self.add_text(' (%s)' % node['explanation'])
|
||||||
|
|
||||||
|
def visit_manpage(self, node: Element) -> None:
|
||||||
|
return self.visit_literal_emphasis(node)
|
||||||
|
|
||||||
|
def depart_manpage(self, node: Element) -> None:
|
||||||
|
return self.depart_literal_emphasis(node)
|
||||||
|
|
||||||
|
def visit_title_reference(self, node: Element) -> None:
|
||||||
|
self.add_text('*')
|
||||||
|
|
||||||
|
def depart_title_reference(self, node: Element) -> None:
|
||||||
|
self.add_text('*')
|
||||||
|
|
||||||
|
def visit_literal(self, node: Element) -> None:
|
||||||
|
self.add_text('"')
|
||||||
|
|
||||||
|
def depart_literal(self, node: Element) -> None:
|
||||||
|
self.add_text('"')
|
||||||
|
|
||||||
|
def visit_subscript(self, node: Element) -> None:
|
||||||
|
self.add_text('_')
|
||||||
|
|
||||||
|
def depart_subscript(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_superscript(self, node: Element) -> None:
|
||||||
|
self.add_text('^')
|
||||||
|
|
||||||
|
def depart_superscript(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_footnote_reference(self, node: Element) -> None:
|
||||||
|
self.add_text('[%s]' % node.astext())
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_citation_reference(self, node: Element) -> None:
|
||||||
|
self.add_quote('[%s]' % node.astext())
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_Text(self, node: Text) -> None:
|
||||||
|
self.add_text(node.astext())
|
||||||
|
|
||||||
|
def depart_Text(self, node: Text) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_generated(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_generated(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_inline(self, node: Element) -> None:
|
||||||
|
if 'xref' in node['classes'] or 'term' in node['classes']:
|
||||||
|
self.end_block()
|
||||||
|
self.add_link(node['classes']['xref'], node.astext())
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def depart_inline(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_container(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_container(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_problematic(self, node: Element) -> None:
|
||||||
|
self.add_text('>>')
|
||||||
|
|
||||||
|
def depart_problematic(self, node: Element) -> None:
|
||||||
|
self.add_text('<<')
|
||||||
|
|
||||||
|
def visit_system_message(self, node: Element) -> None:
|
||||||
|
self.add_text('<SYSTEM MESSAGE: %s>' % node.astext())
|
||||||
|
self.end_block()
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_comment(self, node: Element) -> None:
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_meta(self, node: Element) -> None:
|
||||||
|
# only valid for HTML
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_raw(self, node: Element) -> None:
|
||||||
|
if 'text' in node.get('format', '').split():
|
||||||
|
self.enable_pre()
|
||||||
|
self.add_text(node.astext())
|
||||||
|
self.disable_pre()
|
||||||
|
raise nodes.SkipNode
|
||||||
|
|
||||||
|
def visit_math(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_math(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def visit_math_block(self, node: Element) -> None:
|
||||||
|
pass
|
||||||
|
|
||||||
|
def depart_math_block(self, node: Element) -> None:
|
||||||
|
self.end_block()
|
||||||
|
|
||||||
|
def unknown_visit(self, node: Node) -> None:
|
||||||
|
raise NotImplementedError('Unknown node: ' + node.__class__.__name__)
|
Loading…
Reference in a new issue