excel2moodle 0.3.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- excel2moodle/__init__.py +113 -0
- excel2moodle/__main__.py +31 -0
- excel2moodle/core/__init__.py +13 -0
- excel2moodle/core/category.py +108 -0
- excel2moodle/core/dataStructure.py +140 -0
- excel2moodle/core/etHelpers.py +67 -0
- excel2moodle/core/exceptions.py +20 -0
- excel2moodle/core/globals.py +128 -0
- excel2moodle/core/numericMultiQ.py +76 -0
- excel2moodle/core/parser.py +322 -0
- excel2moodle/core/question.py +106 -0
- excel2moodle/core/questionValidator.py +124 -0
- excel2moodle/core/questionWriter.py +174 -0
- excel2moodle/core/stringHelpers.py +94 -0
- excel2moodle/extra/__init__.py +9 -0
- excel2moodle/extra/equationVerification.py +124 -0
- excel2moodle/ui/__init__.py +1 -0
- excel2moodle/ui/appUi.py +243 -0
- excel2moodle/ui/dialogs.py +80 -0
- excel2moodle/ui/questionPreviewDialog.py +115 -0
- excel2moodle/ui/settings.py +34 -0
- excel2moodle/ui/treewidget.py +65 -0
- excel2moodle/ui/variantDialog.py +132 -0
- excel2moodle/ui/windowDoc.py +35 -0
- excel2moodle/ui/windowEquationChecker.py +187 -0
- excel2moodle-0.3.1.dist-info/METADATA +63 -0
- excel2moodle-0.3.1.dist-info/RECORD +30 -0
- excel2moodle-0.3.1.dist-info/WHEEL +5 -0
- excel2moodle-0.3.1.dist-info/licenses/LICENSE +674 -0
- excel2moodle-0.3.1.dist-info/top_level.txt +1 -0
@@ -0,0 +1,63 @@
|
|
1
|
+
Metadata-Version: 2.4
|
2
|
+
Name: excel2moodle
|
3
|
+
Version: 0.3.1
|
4
|
+
Summary: A Package for Converting Questions input into a spreadsheet, to valid moodle-xml
|
5
|
+
Author: Jakob Bosse
|
6
|
+
License-Expression: GPL-3.0-or-later
|
7
|
+
Project-URL: Homepage, https://gitlab.com/jbosse3/excel2moodle
|
8
|
+
Project-URL: documentation, https://jbosse3.gitlab.io/excel2moodle
|
9
|
+
Keywords: moodle,XML,teaching,question,converter
|
10
|
+
Classifier: Programming Language :: Python :: 3
|
11
|
+
Classifier: Operating System :: OS Independent
|
12
|
+
Requires-Python: >=3.10
|
13
|
+
Description-Content-Type: text/markdown
|
14
|
+
License-File: LICENSE
|
15
|
+
Requires-Dist: pyside6>=6.8.0
|
16
|
+
Requires-Dist: pandas>=2.1.3
|
17
|
+
Requires-Dist: openpyxl>=3.1.5
|
18
|
+
Requires-Dist: asteval
|
19
|
+
Requires-Dist: odfpy
|
20
|
+
Dynamic: license-file
|
21
|
+
|
22
|
+
# excel 2 Moodle
|
23
|
+
[Deutsche README](https://gitlab.com/jbosse3/excel2moodle/-/blob/master/README.de.md)
|
24
|
+
|
25
|
+
{width=50%}
|
26
|
+
|
27
|
+
This Python program helps to create Moodle questions in less time.
|
28
|
+
The aim is to put alle the information for the questions into a spreadsheet file, and then parse it, to generate Moodle compliant XML-Files.
|
29
|
+
|
30
|
+
Furthermore this program lets you create a single XML-File with a selection of questions, that then can be imported to a Moodle-Test.
|
31
|
+
|
32
|
+
## Concept
|
33
|
+
The concept is, to store the different questions into categories of similar types and difficulties of questions, for each of which, a separated sheet in the Spreadsheet document should be created.
|
34
|
+
|
35
|
+
There Should be a sheet called "Kategorien", where an overview over the different categories is stored.
|
36
|
+
This sheet stores The names and descriptions, for all categories. The name have to be the same as the actual sheet names with the questions.
|
37
|
+
Furthermore the points used for grading, are set in the "Kategorien" sheet
|
38
|
+
|
39
|
+
|
40
|
+
## Development State
|
41
|
+
This program is still quite rough, with very litte robustness against faulty user input inside the Spreadsheet.
|
42
|
+
|
43
|
+
## Functionality
|
44
|
+
* Parse multiple Choice Questions, each into one XML file
|
45
|
+
* Parse Numeric Questions, each into one XML file
|
46
|
+
* create single XML File from a selection of questions
|
47
|
+
|
48
|
+
## Development Goals
|
49
|
+
* [X] creating an example spreadsheet
|
50
|
+
* [X] Export function, to create numerical Question version from a matrix of variables and corresponding correct Answers:
|
51
|
+
* similar to the calculated question Type, but with the benefit, of serving all students the same exact question
|
52
|
+
* [.] making it more robust:
|
53
|
+
* [X] Adding Error Messages when exporting
|
54
|
+
* [X] Creating logging
|
55
|
+
* [ ] Logging Errors to File
|
56
|
+
* [ ] making it Image File-Type agnostic
|
57
|
+
* [ ] Creating a Settings Menu
|
58
|
+
* [ ] Making keys in spreadsheet selectable in the Settings
|
59
|
+
* [ ] Setting image folder
|
60
|
+
|
61
|
+
## Licensing and authorship
|
62
|
+
excel2moodle is lincensed under the latest [GNU GPL license](https://gitlab.com/jbosse3/excel2moodle/-/blob/master/LICENSE)
|
63
|
+
Initial development was made by Richard Lorenz, and later taken over by Jakob Bosse
|
@@ -0,0 +1,30 @@
|
|
1
|
+
excel2moodle/__init__.py,sha256=nb37g9Zga4KqTA5r-GFei9_XCunoPESxww9BL8zzMBI,3841
|
2
|
+
excel2moodle/__main__.py,sha256=yLls1C3w070wtrrRl3_HXs5TNaO8l0yRDGtIAcHmeDk,695
|
3
|
+
excel2moodle/core/__init__.py,sha256=E7smxf7ESHlucvho4Gb5oaTHA7IsOv9J-UDIsoKwp84,399
|
4
|
+
excel2moodle/core/category.py,sha256=6U10HgQQVi0BYO28XrsLbYFqr0GbxEN9U2-fPDTM1Ng,4149
|
5
|
+
excel2moodle/core/dataStructure.py,sha256=KXXWHPxyfG_WGiwQZw23lFcbRlHIahNtvhw3s70JiZk,6176
|
6
|
+
excel2moodle/core/etHelpers.py,sha256=_fd-fGMVNWt1l8FY7xcA2uXOBahxtq8ggYxRYm4SwdA,2354
|
7
|
+
excel2moodle/core/exceptions.py,sha256=3OLVHMCBgETiOxSsirlsCPvlMN5UgEQcMkRDkCfrUs4,675
|
8
|
+
excel2moodle/core/globals.py,sha256=9V9-KBSsHMdsRZWg2wGrvjAd6dc3XZG4pNPnun0AHGE,3595
|
9
|
+
excel2moodle/core/numericMultiQ.py,sha256=InBrn-tsCCYwDb78sGR3FyFxVeN0GfIg63JGtr_tqg4,2751
|
10
|
+
excel2moodle/core/parser.py,sha256=b58EGMdfMAdZcP17p0Ez6Rg0lGc8Gmd3LePO9Tq8F0I,13454
|
11
|
+
excel2moodle/core/question.py,sha256=4mbzy6ZodvdM5QfBZltR950BmMdXqSBe9V7HBLZMewM,4198
|
12
|
+
excel2moodle/core/questionValidator.py,sha256=6leCAvMFOieiVJtQEYx4iihiaKuuSBlCpBkpqbzKa3M,4139
|
13
|
+
excel2moodle/core/questionWriter.py,sha256=kyUTrnjWrLEWdez5_7FPNJ0Cs_fF5d16oOQiVvHv3zA,10242
|
14
|
+
excel2moodle/core/stringHelpers.py,sha256=c92YYFluZ6-NIM7K1k0SzN_zB82hh3huNZMH0NnlDLg,3009
|
15
|
+
excel2moodle/extra/__init__.py,sha256=e70OmuW3j7N4ErIIHlK4vkmCKcpRbitJCdJvzjego8c,339
|
16
|
+
excel2moodle/extra/equationVerification.py,sha256=FOvVBQZ357fbA5nYkHjvvWWVP3pQpo4RK3H7vru9v3A,4278
|
17
|
+
excel2moodle/ui/__init__.py,sha256=4EdGtpzwH3rgw4xW9E5x9kdPQYwKbo9rehHRZTNxCrQ,44
|
18
|
+
excel2moodle/ui/appUi.py,sha256=LBC7rAReFPmNSKoNcwvNbjnfmWDfMm1-b1u6hU-zaS0,10085
|
19
|
+
excel2moodle/ui/dialogs.py,sha256=C58PzPLfkzglsRl-x8Y23TC08_JG03JgFCVFfEi_od8,2961
|
20
|
+
excel2moodle/ui/questionPreviewDialog.py,sha256=_rJvz1GM90aNnj3P6SugEezK7JW6m74ZALgkChohWLM,4980
|
21
|
+
excel2moodle/ui/settings.py,sha256=Zz4zxdGC55Ma6pB1HWdPdiAsN0fnqrPfgOFgSkVnKNA,1092
|
22
|
+
excel2moodle/ui/treewidget.py,sha256=xiYWhJeJ9o9Iubtr44HcyJas9v4m8aBsHNdokQAHi80,2357
|
23
|
+
excel2moodle/ui/variantDialog.py,sha256=snVaF3_YAc7NWjMRg7NzbjL_PzNbOpt4eiqElkE46io,5414
|
24
|
+
excel2moodle/ui/windowDoc.py,sha256=IciZpwrLnGzIQV1aCdKQBg6km3oufHGs8havTFzNJyU,1055
|
25
|
+
excel2moodle/ui/windowEquationChecker.py,sha256=fLyal3sbJwpthWCAxLB5vbSFOX23JoivoYksNp3mZVY,7925
|
26
|
+
excel2moodle-0.3.1.dist-info/licenses/LICENSE,sha256=ywQqe6Sitymkf2lV2NRcx_aGsaC-KbSl_EfEsRXmNRw,35135
|
27
|
+
excel2moodle-0.3.1.dist-info/METADATA,sha256=xTwkg5GqCqJ3sWdNs6ypLZHQJTw7jW73WGpsIyr3X7M,2904
|
28
|
+
excel2moodle-0.3.1.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
|
29
|
+
excel2moodle-0.3.1.dist-info/top_level.txt,sha256=5V1xRUQ9o7UmOCmNoWCZPAuy5nXp3Qbzyqch8fUGT_c,13
|
30
|
+
excel2moodle-0.3.1.dist-info/RECORD,,
|