hexdoc-hexparse 1.3.3.1.0__tar.gz

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.
Files changed (22) hide show
  1. hexdoc_hexparse-1.3.3.1.0/.gitignore +191 -0
  2. hexdoc_hexparse-1.3.3.1.0/LICENSE.txt +21 -0
  3. hexdoc_hexparse-1.3.3.1.0/PKG-INFO +72 -0
  4. hexdoc_hexparse-1.3.3.1.0/doc/README.md +57 -0
  5. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/__gradle_version__.py +18 -0
  6. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/__init__.py +0 -0
  7. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/__version__.py +4 -0
  8. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/.gitignore +2 -0
  9. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/__init__.py +0 -0
  10. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/__init__.py +2 -0
  11. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/assets/hexcasting/patchouli_books/thehexbook/en_us/entries/hexparse.json +56 -0
  12. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/assets/hexparse/lang/en_us.flatten.json5 +1 -0
  13. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/assets/hexparse/lang/en_us.json +1 -0
  14. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/assets/hexparse/lang/zh_cn.json +1 -0
  15. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/data/hexcasting/tags/action/per_world_pattern.json +1 -0
  16. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/hexparse.hexdoc.json +1 -0
  17. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_export/generated/hexparse.patterns.hexdoc.json +1 -0
  18. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_hooks.py +57 -0
  19. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/_templates/__init__.py +0 -0
  20. hexdoc_hexparse-1.3.3.1.0/doc/src/hexdoc_hexparse/py.typed +0 -0
  21. hexdoc_hexparse-1.3.3.1.0/gradle.properties +19 -0
  22. hexdoc_hexparse-1.3.3.1.0/pyproject.toml +118 -0
@@ -0,0 +1,191 @@
1
+ # hexdoc
2
+ _site/
3
+ _checkout/
4
+ __gradle_version__.py
5
+ .hexdoc*/
6
+
7
+ # eclipse
8
+ bin
9
+ *.launch
10
+ .settings
11
+ .metadata
12
+ .classpath
13
+ .project
14
+
15
+ # idea
16
+ out
17
+ *.ipr
18
+ *.iws
19
+ *.iml
20
+ .idea
21
+
22
+ # gradle
23
+ build
24
+ .gradle
25
+
26
+ # other
27
+ eclipse
28
+ run
29
+ **/libs
30
+
31
+ # Files from Forge MDK
32
+ forge*changelog.txt
33
+
34
+ Session.vim
35
+ plot/
36
+
37
+ # Python
38
+
39
+ # Byte-compiled / optimized / DLL files
40
+ __pycache__/
41
+ *.py[cod]
42
+ *$py.class
43
+
44
+ # C extensions
45
+ *.so
46
+
47
+ # Distribution / packaging
48
+ .Python
49
+ build/
50
+ develop-eggs/
51
+ dist/
52
+ downloads/
53
+ eggs/
54
+ .eggs/
55
+ lib/
56
+ lib64/
57
+ parts/
58
+ sdist/
59
+ var/
60
+ wheels/
61
+ share/python-wheels/
62
+ *.egg-info/
63
+ .installed.cfg
64
+ *.egg
65
+ MANIFEST
66
+
67
+ # PyInstaller
68
+ # Usually these files are written by a python script from a template
69
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
70
+ *.manifest
71
+ *.spec
72
+
73
+ # Installer logs
74
+ pip-log.txt
75
+ pip-delete-this-directory.txt
76
+
77
+ # Unit test / coverage reports
78
+ htmlcov/
79
+ .tox/
80
+ .nox/
81
+ .coverage
82
+ .coverage.*
83
+ .cache
84
+ nosetests.xml
85
+ coverage.xml
86
+ *.cover
87
+ *.py,cover
88
+ .hypothesis/
89
+ .pytest_cache/
90
+ cover/
91
+
92
+ # Translations
93
+ *.mo
94
+ *.pot
95
+
96
+ # Django stuff:
97
+ *.log
98
+ local_settings.py
99
+ db.sqlite3
100
+ db.sqlite3-journal
101
+
102
+ # Flask stuff:
103
+ instance/
104
+ .webassets-cache
105
+
106
+ # Scrapy stuff:
107
+ .scrapy
108
+
109
+ # Sphinx documentation
110
+ docs/_build/
111
+
112
+ # PyBuilder
113
+ .pybuilder/
114
+ target/
115
+
116
+ # Jupyter Notebook
117
+ .ipynb_checkpoints
118
+
119
+ # IPython
120
+ profile_default/
121
+ ipython_config.py
122
+
123
+ # pyenv
124
+ # For a library or package, you might want to ignore these files since the code is
125
+ # intended to run in multiple environments; otherwise, check them in:
126
+ # .python-version
127
+
128
+ # pipenv
129
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
130
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
131
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
132
+ # install all needed dependencies.
133
+ #Pipfile.lock
134
+
135
+ # poetry
136
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
137
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
138
+ # commonly ignored for libraries.
139
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
140
+ #poetry.lock
141
+
142
+ # pdm
143
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
144
+ #pdm.lock
145
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
146
+ # in version control.
147
+ # https://pdm.fming.dev/#use-with-ide
148
+ .pdm.toml
149
+
150
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
151
+ __pypackages__/
152
+
153
+ # Celery stuff
154
+ celerybeat-schedule
155
+ celerybeat.pid
156
+
157
+ # SageMath parsed files
158
+ *.sage.py
159
+
160
+ # Environments
161
+ .env
162
+ .venv
163
+ env/
164
+ venv/
165
+ ENV/
166
+ env.bak/
167
+ venv.bak/
168
+
169
+ # Spyder project settings
170
+ .spyderproject
171
+ .spyproject
172
+
173
+ # Rope project settings
174
+ .ropeproject
175
+
176
+ # mkdocs documentation
177
+ /site
178
+
179
+ # mypy
180
+ .mypy_cache/
181
+ .dmypy.json
182
+ dmypy.json
183
+
184
+ # Pyre type checker
185
+ .pyre/
186
+
187
+ # pytype static type analyzer
188
+ .pytype/
189
+
190
+ # Cython debug symbols
191
+ cython_debug/
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2024 YukkuriC
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in
13
+ all copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ THE SOFTWARE.
@@ -0,0 +1,72 @@
1
+ Metadata-Version: 2.4
2
+ Name: hexdoc-hexparse
3
+ Version: 1.3.3.1.0
4
+ Summary: Python web book docgen and hexdoc plugin for HexParse.
5
+ Project-URL: Homepage, https://yukkuric.github.io/HexParseMod/
6
+ Project-URL: Source, https://github.com/YukkuriC/HexParseMod
7
+ Author: YukkuriC
8
+ License-File: LICENSE.txt
9
+ Keywords: hexdoc
10
+ Requires-Python: >=3.11
11
+ Requires-Dist: hexdoc-hexcasting~=0.11.2.1.0
12
+ Provides-Extra: dev
13
+ Requires-Dist: ruff~=0.11.2; extra == 'dev'
14
+ Description-Content-Type: text/markdown
15
+
16
+ # hexdoc-hexparse
17
+
18
+ Python web book docgen and [hexdoc](https://pypi.org/project/hexdoc) plugin for HexParse.
19
+
20
+ ## Version scheme
21
+
22
+ We use [hatch-gradle-version](https://pypi.org/project/hatch-gradle-version) to generate the version number based on whichever mod version the docgen was built with.
23
+
24
+ The version is in this format: `mod-version.python-version.mod-pre.python-dev.python-post`
25
+
26
+ For example:
27
+ * Mod version: `0.11.1-7`
28
+ * Python package version: `1.0.dev0`
29
+ * Full version: `0.11.1.1.0rc7.dev0`
30
+
31
+ ## Setup
32
+
33
+ Install Python 3.12.
34
+
35
+ ```sh
36
+ python3.12 -m venv venv
37
+
38
+ .\venv\Scripts\activate # Windows
39
+ . venv/bin/activate.fish # fish
40
+ source venv/bin/activate # everything else
41
+
42
+ # run from the repo root, not doc/
43
+ pip install -e .[dev]
44
+ ```
45
+
46
+ ## Usage
47
+
48
+ For local testing, create a file called `.env` in the repo root following this template:
49
+ ```sh
50
+ GITHUB_REPOSITORY=YukkuriC/HexParseMod
51
+ GITHUB_SHA=main
52
+ GITHUB_PAGES_URL=https://yukkuric.github.io/HexParseMod/
53
+ ```
54
+
55
+ Useful commands:
56
+ ```sh
57
+ # show help
58
+ hexdoc -h
59
+
60
+ # build, merge, and serve the web book in watch mode
61
+ nodemon --config doc/nodemon.json
62
+
63
+ # build, merge, and serve the web book
64
+ hexdoc serve
65
+
66
+ # manually build and merge the web book
67
+ hexdoc build
68
+ hexdoc merge
69
+
70
+ # start the Python interpreter with some extra local variables
71
+ hexdoc repl
72
+ ```
@@ -0,0 +1,57 @@
1
+ # hexdoc-hexparse
2
+
3
+ Python web book docgen and [hexdoc](https://pypi.org/project/hexdoc) plugin for HexParse.
4
+
5
+ ## Version scheme
6
+
7
+ We use [hatch-gradle-version](https://pypi.org/project/hatch-gradle-version) to generate the version number based on whichever mod version the docgen was built with.
8
+
9
+ The version is in this format: `mod-version.python-version.mod-pre.python-dev.python-post`
10
+
11
+ For example:
12
+ * Mod version: `0.11.1-7`
13
+ * Python package version: `1.0.dev0`
14
+ * Full version: `0.11.1.1.0rc7.dev0`
15
+
16
+ ## Setup
17
+
18
+ Install Python 3.12.
19
+
20
+ ```sh
21
+ python3.12 -m venv venv
22
+
23
+ .\venv\Scripts\activate # Windows
24
+ . venv/bin/activate.fish # fish
25
+ source venv/bin/activate # everything else
26
+
27
+ # run from the repo root, not doc/
28
+ pip install -e .[dev]
29
+ ```
30
+
31
+ ## Usage
32
+
33
+ For local testing, create a file called `.env` in the repo root following this template:
34
+ ```sh
35
+ GITHUB_REPOSITORY=YukkuriC/HexParseMod
36
+ GITHUB_SHA=main
37
+ GITHUB_PAGES_URL=https://yukkuric.github.io/HexParseMod/
38
+ ```
39
+
40
+ Useful commands:
41
+ ```sh
42
+ # show help
43
+ hexdoc -h
44
+
45
+ # build, merge, and serve the web book in watch mode
46
+ nodemon --config doc/nodemon.json
47
+
48
+ # build, merge, and serve the web book
49
+ hexdoc serve
50
+
51
+ # manually build and merge the web book
52
+ hexdoc build
53
+ hexdoc merge
54
+
55
+ # start the Python interpreter with some extra local variables
56
+ hexdoc repl
57
+ ```
@@ -0,0 +1,18 @@
1
+ # This file is auto-generated by hatch-gradle-version. Do not edit.
2
+
3
+ GRADLE_VERSION = "1.3.3"
4
+ FULL_VERSION = "1.3.3.1.0"
5
+
6
+ ARCHIVES_NAME = "hexParse"
7
+ ENABLED_PLATFORMS = "fabric,forge"
8
+ FABRIC_API_VERSION = "0.85.0+1.20.1"
9
+ FABRIC_LOADER_VERSION = "0.14.21"
10
+ FORGE_VERSION = "1.20.1-47.2.0"
11
+ HEXCASTING_VERSION = "0.11.2-pre-702"
12
+ MAVEN_GROUP = "io.yukkuric"
13
+ MINECRAFT_VERSION = "1.20.1"
14
+ MOD_VERSION = "DYNAMIC"
15
+ MOD_VERSION_BASE = "1.3.3"
16
+ ORG_GRADLE_JVMARGS = "-Xmx2G"
17
+ ORG_GRADLE_PARALLEL = "true"
18
+ PATCHOULI_VERSION = "80"
@@ -0,0 +1,4 @@
1
+ # This file is auto-generated by hatch-gradle-version.
2
+ # Only the value of PY_VERSION is editable. Do not edit other values.
3
+
4
+ PY_VERSION = "1.0"
@@ -0,0 +1,2 @@
1
+ generated/*
2
+ !generated/__init__.py
@@ -0,0 +1,2 @@
1
+ # This directory is auto-generated by hexdoc.
2
+ # Do not edit or commit these files.
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "hexparse.book.entry",
3
+ "category": "hexcasting:patterns",
4
+ "icon": "minecraft:command_block",
5
+ "advancement": "hexcasting:root",
6
+ "pages": [
7
+ {
8
+ "type": "hexcasting:pattern",
9
+ "op_id": "hexparse:focus2code",
10
+ "anchor": "hexparse:focus2code",
11
+ "input": "",
12
+ "output": "",
13
+ "text": "book.descrip.hexparse:focus2code"
14
+ },
15
+ {
16
+ "type": "hexcasting:pattern",
17
+ "op_id": "hexparse:code2focus",
18
+ "anchor": "hexparse:code2focus",
19
+ "input": "",
20
+ "output": "",
21
+ "text": "book.descrip.hexparse:code2focus"
22
+ },
23
+ {
24
+ "type": "hexcasting:pattern",
25
+ "op_id": "hexparse:learn_patterns",
26
+ "anchor": "hexparse:learn_patterns",
27
+ "input": "",
28
+ "output": "list",
29
+ "text": "book.descrip.hexparse:learn_patterns"
30
+ },
31
+ {
32
+ "type": "hexcasting:pattern",
33
+ "op_id": "hexparse:remove_comments",
34
+ "anchor": "hexparse:remove_comments",
35
+ "input": "list",
36
+ "output": "list",
37
+ "text": "book.descrip.hexparse:remove_comments"
38
+ },
39
+ {
40
+ "type": "hexcasting:pattern",
41
+ "op_id": "hexparse:create_linebreak",
42
+ "anchor": "hexparse:create_linebreak",
43
+ "input": "num",
44
+ "output": "comment",
45
+ "text": "book.descrip.hexparse:create_linebreak"
46
+ },
47
+ {
48
+ "type": "hexcasting:pattern",
49
+ "op_id": "hexparse:compile",
50
+ "anchor": "hexparse:compile",
51
+ "input": "str",
52
+ "output": "list",
53
+ "text": "book.descrip.hexparse:compile"
54
+ }
55
+ ]
56
+ }
@@ -0,0 +1 @@
1
+ {"hexdoc.hexparse.title": "HexParse Book", "hexdoc.hexparse.description": "The HexParse Book, all in one place."}
@@ -0,0 +1 @@
1
+ {"hexparse.cmd.unlocker.unlock.all": "Unlocked %s great patterns", "hexparse.cmd.unlocker.lock.all": "Locked %s great patterns", "hexparse.cmd.unlocker.unlock.one": "Unlocked %s", "hexparse.cmd.unlocker.lock.one": "Locked %s", "hexparse.cmd.read.display": "Result: %s", "hexparse.cmd.read.share": "%s shares: %s (%s)", "hexparse.cmd.macro.list.title": "%s %s(s) in total:", "hexparse.cmd.macro.list.title.macro": "macro", "hexparse.cmd.macro.list.title.dialect": "dialect", "hexparse.cmd.macro.list.kv": "%s = %s", "hexparse.cmd.macro.define": "Defined %s = %s.", "hexparse.cmd.macro.remove": "Removed %s.", "hexparse.cmd.conflict.list_all.title": "All pattern names with conflicts:", "hexparse.cmd.conflict.list_all.entry": "- \"%s\" (%d patterns)", "hexparse.cmd.conflict.list.title": "All conflicts under name \"%s\" (currently set to %s):", "hexparse.cmd.conflict.list.entry": "- \"%s\" (%s)", "hexparse.cmd.conflict.edited": "Set short name \"%s\" to pattern \"%s\" (%s).", "hexparse.cmd.conflict.error": "Error when setting short name \"%s\": %s", "hexparse.cmd.conflict.error.name": "Invalid short name", "hexparse.cmd.conflict.error.id": "Invalid pattern ID: %s", "hexparse.msg.parse_error": "Error when parsing: %s", "hexparse.msg.parse_error_node": "Error when parsing %s: %s", "hexparse.msg.error.bracket.closed": "too many closed bracket", "hexparse.msg.error.bracket.open": "too many open bracket", "hexparse.msg.error.unknown_symbol": "Unknown symbol: %s", "hexparse.msg.error.invalid_iota": "invalid iota: %s", "hexparse.msg.error.matrix.size": "invalid matrix size: %s", "hexparse.msg.error.matrix.value": "invalid matrix value: %s", "hexparse.msg.error.matrix.data_amount": "invalid matrix data size (%s < %s)", "hexparse.msg.error.illegal_pattern_angle": "illegal char '%s' in sequence \"%s\"", "hexparse.msg.error.code_too_long": "CODE TOO LONG (%s)", "hexparse.msg.error.used_macro": "Macro %s already used", "hexparse.msg.error.invalid_dialect_key": "Dialects can't start with '#' (%s)", "hexparse.msg.error.macro.too_many": "Macro/dialect count exceeded max; trimmed %s entries", "hexparse.msg.error.macro.too_many.single": "Macro/dialect count exceeded max; add failed", "hexparse.msg.error.macro.too_long": "Single macro too long; trimmed last %s characters", "hexparse.msg.error.macro.too_long.key": "Macro/dialect key too long; add failed", "hexcasting.action.hexparse:focus2code": "Encoding Gambit", "hexcasting.action.hexparse:code2focus": "Decoding Gambit", "hexcasting.action.hexparse:learn_patterns": "Learn Great Patterns", "hexcasting.action.hexparse:remove_comments": "No-Comment Purification", "hexcasting.action.hexparse:create_linebreak": "Line-Break Prfn.", "hexcasting.action.hexparse:compile": "Compile", "hexparse.book.entry": "HexParse Patterns", "book.descrip.hexparse:focus2code": "Reads data from the focus I'm holding, and prints parsed code into chat menu.$(br)Can only be casted by staff.", "book.descrip.hexparse:code2focus": "Reads code from my local clipboard, then parse it into the focus I'm holding.$(br)Can only be casted by staff.", "book.descrip.hexparse:learn_patterns": "Extract great patterns from handheld items (ancient scrolls, focuses, compiled casting items, etc.), and returns a list of newly learned ones by the parser.", "book.descrip.hexparse:remove_comments": "Clears all comment iotas in a list, returns processed list.", "book.descrip.hexparse:create_linebreak": "Adds a line-break comment iota with space-indents of given number to the stack.", "book.descrip.hexparse:compile": "Compiles accepted string iota into an iota list; has no effect if $(bold)$(thing)MoreIotas/$ not installed.", "text.autoconfig.hexparse.option.common.parseGreatSpells": "Parse Great Spells", "text.autoconfig.hexparse.option.common.commentParsingMode": "Comment parsing mode", "text.autoconfig.hexparse.option.common.indentParsingMode": "Indent parsing mode", "text.autoconfig.hexparse.option.common.parserBaseCost": "Base cost of parsing a pattern", "text.autoconfig.hexparse.option.common.showColorfulNested": "Colorful nested introspections", "text.autoconfig.hexparse.option.common.showUnknownNBT": "Display content of unsupported iotas"}
@@ -0,0 +1 @@
1
+ {"hexparse.cmd.unlocker.unlock.all": "\u89e3\u9501\u4e86%s\u79cd\u5353\u8d8a\u56fe\u6848", "hexparse.cmd.unlocker.lock.all": "\u9501\u5b9a\u4e86%s\u79cd\u5353\u8d8a\u56fe\u6848", "hexparse.cmd.unlocker.unlock.one": "\u89e3\u9501\u4e86%s", "hexparse.cmd.unlocker.lock.one": "\u9501\u5b9a\u4e86%s", "hexparse.cmd.read.display": "\u7ed3\u679c\uff1a%s", "hexparse.cmd.read.share": "%s\u5206\u4eab\u4e86\uff1a%s \uff08%s\uff09", "hexparse.cmd.macro.list.title": "\u5171%s\u4e2a%s\uff1a", "hexparse.cmd.macro.list.title.macro": "\u5b8f", "hexparse.cmd.macro.list.title.dialect": "\u522b\u540d", "hexparse.cmd.macro.list.kv": "%s = %s", "hexparse.cmd.macro.define": "\u5b9a\u4e49 %s = %s.", "hexparse.cmd.macro.remove": "\u79fb\u9664\u4e86 %s \u7684\u5b9a\u4e49\u3002", "hexparse.cmd.conflict.list_all.title": "\u6240\u6709\u542b\u51b2\u7a81\u56fe\u6848\u540d\u79f0\uff1a", "hexparse.cmd.conflict.list_all.entry": "- \"%s\" \uff08\u5171 %d \u4e2a\u56fe\u6848\uff09", "hexparse.cmd.conflict.list.title": "\u540d\u79f0 \"%s\" \u4e0b\u7684\u6240\u6709\u51b2\u7a81\u56fe\u6848\uff08\u5f53\u524d\u6307\u5411 %s\uff09\uff1a", "hexparse.cmd.conflict.edited": "\u77ed\u540d\u79f0 \"%s\" \u5df2\u8bbe\u7f6e\u4e3a\u56fe\u6848 \"%s\" (%s)\u3002", "hexparse.cmd.conflict.error": "\u8bbe\u7f6e\u77ed\u540d\u79f0 \"%s\" \u65f6\u51fa\u9519\uff1a%s", "hexparse.cmd.conflict.error.name": "\u65e0\u6548\u540d\u79f0", "hexparse.cmd.conflict.error.id": "\u65e0\u6548\u56fe\u6848ID\uff1a%s", "hexparse.msg.parse_error": "\u5728\u89e3\u6790\u65f6\u51fa\u9519\uff1a%s", "hexparse.msg.parse_error_node": "\u5728\u89e3\u6790%s\u65f6\u51fa\u9519\uff1a%s", "hexparse.msg.error.bracket.closed": "\u53f3\u62ec\u53f7\u8fc7\u591a", "hexparse.msg.error.bracket.open": "\u5de6\u62ec\u53f7\u8fc7\u591a", "hexparse.msg.error.unknown_symbol": "\u672a\u77e5\u7b26\u53f7\uff1a%s", "hexparse.msg.error.invalid_iota": "\u975e\u6cd5iota\uff1a%s", "hexparse.msg.error.matrix.size": "\u975e\u6cd5\u77e9\u9635\u5c3a\u5bf8\uff1a%s", "hexparse.msg.error.matrix.value": "\u975e\u6cd5\u77e9\u9635\u53d6\u503c\uff1a%s", "hexparse.msg.error.matrix.data_amount": "\u975e\u6cd5\u77e9\u9635\u6570\u636e\u91cf\uff08%s < %s\uff09", "hexparse.msg.error.illegal_pattern_angle": "\u5728\u5e8f\u5217\"%2$s\"\u4e2d\u5305\u542b\u975e\u6cd5\u5b57\u7b26'%1$s'", "hexparse.msg.error.code_too_long": "\u4ee3\u7801\u8fc7\u957f\uff08%s\uff09", "hexparse.msg.error.used_macro": "\u5b8f%s\u5df2\u4f7f\u7528", "hexparse.msg.error.invalid_dialect_key": "\u522b\u540d\u4e0d\u53ef\u4ee5'#'\u5f00\u5934\uff08%s\uff09", "hexparse.msg.error.macro.too_many": "\u5b8f/\u522b\u540d\u6570\u91cf\u8d85\u8fc7\u9650\u5236\uff0c\u79fb\u9664\u4e86%s\u6761\u8bb0\u5f55", "hexparse.msg.error.macro.too_many.single": "\u5b8f/\u522b\u540d\u6570\u91cf\u8d85\u8fc7\u9650\u5236\uff0c\u6dfb\u52a0\u5931\u8d25", "hexparse.msg.error.macro.too_long": "\u5b8f\u8fc7\u957f\uff1b\u79fb\u9664\u4e86\u672b\u5c3e\u7684%s\u4e2a\u5b57\u7b26", "hexparse.msg.error.macro.too_long.key": "\u5b8f/\u522b\u540d\u53d6\u540d\u8fc7\u957f\uff0c\u6dfb\u52a0\u5931\u8d25", "hexcasting.action.hexparse:focus2code": "\u7f16\u7801\u4e4b\u7b56\u7565", "hexcasting.action.hexparse:code2focus": "\u89e3\u7801\u4e4b\u7b56\u7565", "hexcasting.action.hexparse:learn_patterns": "\u5185\u5316\u5353\u8d8a\u6cd5\u672f", "hexcasting.action.hexparse:remove_comments": "\u538b\u7f29\u6ce8\u91ca\u4e4b\u7eaf\u5316", "hexcasting.action.hexparse:create_linebreak": "\u6362\u884c\u4e4b\u7eaf\u5316", "hexcasting.action.hexparse:compile": "\u7f16\u8bd1\u672f", "hexparse.book.entry": "HexParse\u65b0\u589e\u56fe\u6848", "book.descrip.hexparse:focus2code": "\u8bfb\u53d6\u6211\u624b\u4e2d\u7684\u6838\u5fc3\uff0c\u5c06\u5176\u5185\u5bb9\u89e3\u6790\u4e3a\u4ee3\u7801\u8f93\u51fa\u81f3\u804a\u5929\u7a97\u53e3\u3002$(br)\u53ea\u80fd\u5728\u6cd5\u6756\u5185\u65bd\u653e\u3002", "book.descrip.hexparse:code2focus": "\u4ece\u526a\u8d34\u677f\u8bfb\u53d6\u4ee3\u7801\uff0c\u5e76\u5c06\u5176\u89e3\u6790\u81f3\u6211\u624b\u6301\u7684\u6838\u5fc3\u3002$(br)\u53ea\u80fd\u5728\u6cd5\u6756\u5185\u65bd\u653e\u3002", "book.descrip.hexparse:learn_patterns": "\u4ece\u624b\u6301\u7269\u54c1\uff08\u8fdc\u53e4\u5377\u8f74\u3001\u6838\u5fc3\u3001\u5236\u6210\u7684\u65bd\u6cd5\u9053\u5177\u7b49\uff09\u5185\u63d0\u53d6\u5353\u8d8a\u6cd5\u672f\u56fe\u6848\uff0c\u8fd4\u56de\u88c5\u6709\u89e3\u7801\u5668\u672c\u6b21\u5b66\u4e60\u5185\u5bb9\u7684\u5217\u8868\u3002", "book.descrip.hexparse:remove_comments": "\u6e05\u9664\u5217\u8868\u5185\u6240\u6709\u6ce8\u91caiota\uff0c\u8fd4\u56de\u5904\u7406\u540e\u7684\u5217\u8868\u3002", "book.descrip.hexparse:create_linebreak": "\u5728\u6808\u5185\u6dfb\u52a0\u4e00\u4e2a\u5177\u6709\u7ed9\u5b9a\u6570\u76ee\u7a7a\u683c\u7f29\u8fdb\u7684\u6362\u884c\u6ce8\u91caiota\u3002", "book.descrip.hexparse:compile": "\u5c06\u8f93\u5165\u5b57\u7b26\u4e32iota\u7f16\u8bd1\u4e3aiota\u5217\u8868\uff1b\u82e5\u672a\u5b89\u88c5$(bold)$(thing)MoreIotas/$\u5219\u65e0\u6548\u679c\u3002"}
@@ -0,0 +1 @@
1
+ {"book_url":"https://yukkuric.github.io/HexParseMod/v/1.3.3/1.0/en_us","asset_url":"https://raw.githubusercontent.com/YukkuriC/HexParseMod/568b6d062ebfbf10a3b796b837a8b8176362b821","textures":{}}
@@ -0,0 +1 @@
1
+ {"patterns":[{"startdir":"EAST","signature":"aqqqqqeawqwqwqwqwqwweeeeed","id":"hexparse:code2focus"},{"startdir":"EAST","signature":"aqqqqqwwewewewewewdqeeeeed","id":"hexparse:focus2code"},{"startdir":"NORTH_EAST","signature":"dadadedadadwqaeaqeww","id":"hexparse:remove_comments"},{"startdir":"EAST","signature":"aqqqqqeawqwqwqwqwqwwqqeqqeqqeqqeqqeqqdqeeeeed","id":"hexparse:learn_patterns"},{"startdir":"NORTH_EAST","signature":"dadadedadaddwwwa","id":"hexparse:create_linebreak"},{"startdir":"EAST","signature":"aqqqqqeawqwqwqwqwqwdeweweqeweweqewewe","is_per_world":true,"id":"hexparse:compile"}]}
@@ -0,0 +1,57 @@
1
+ from importlib.resources import Package
2
+ from typing_extensions import override
3
+
4
+ from hexdoc.plugin import (
5
+ HookReturn,
6
+ ModPlugin,
7
+ ModPluginImpl,
8
+ ModPluginWithBook,
9
+ hookimpl,
10
+ )
11
+
12
+ import hexdoc_hexparse
13
+
14
+ from .__gradle_version__ import FULL_VERSION, GRADLE_VERSION
15
+ from .__version__ import PY_VERSION
16
+
17
+
18
+ class HexParsePlugin(ModPluginImpl):
19
+ @staticmethod
20
+ @hookimpl
21
+ def hexdoc_mod_plugin(branch: str) -> ModPlugin:
22
+ return HexParseModPlugin(branch=branch)
23
+
24
+
25
+ class HexParseModPlugin(ModPluginWithBook):
26
+ @property
27
+ @override
28
+ def modid(self) -> str:
29
+ return "hexparse"
30
+
31
+ @property
32
+ @override
33
+ def full_version(self) -> str:
34
+ return FULL_VERSION
35
+
36
+ @property
37
+ @override
38
+ def mod_version(self) -> str:
39
+ return GRADLE_VERSION
40
+
41
+ @property
42
+ @override
43
+ def plugin_version(self) -> str:
44
+ return PY_VERSION
45
+
46
+ @override
47
+ def resource_dirs(self) -> HookReturn[Package]:
48
+ # lazy import because generated may not exist when this file is loaded
49
+ # eg. when generating the contents of generated
50
+ # so we only want to import it if we actually need it
51
+ from ._export import generated
52
+
53
+ return generated
54
+
55
+ @override
56
+ def jinja_template_root(self) -> tuple[Package, str]:
57
+ return hexdoc_hexparse, "_templates"
@@ -0,0 +1,19 @@
1
+ # Done to increase the memory available to Gradle.
2
+ org.gradle.jvmargs=-Xmx2G
3
+ org.gradle.parallel=true
4
+ # Mod properties
5
+ mod_version_base=1.3.3
6
+ mod_version=DYNAMIC
7
+ maven_group=io.yukkuric
8
+ archives_name=hexParse
9
+ enabled_platforms=fabric,forge
10
+ # Minecraft properties
11
+ minecraft_version=1.20.1
12
+ # Dependencies
13
+ fabric_loader_version=0.14.21
14
+ fabric_api_version=0.85.0+1.20.1
15
+ forge_version=1.20.1-47.2.0
16
+ patchouliVersion=80
17
+
18
+ # hex
19
+ hexcastingVersion=0.11.2-pre-702
@@ -0,0 +1,118 @@
1
+ [build-system]
2
+ requires = [
3
+ "hatchling",
4
+ "hatch-gradle-version>=0.8.0",
5
+ ]
6
+ build-backend = "hatchling.build"
7
+
8
+ # project metadata
9
+
10
+ [project]
11
+ name = "hexdoc-hexparse"
12
+ description = "Python web book docgen and hexdoc plugin for HexParse."
13
+ readme = "doc/README.md"
14
+ authors = [
15
+ { name="YukkuriC" },
16
+ ]
17
+ keywords = ["hexdoc"]
18
+ requires-python = ">=3.11"
19
+ dynamic = ["version", "dependencies", "optional-dependencies"]
20
+
21
+ [project.urls]
22
+ Homepage = "https://yukkuric.github.io/HexParseMod/"
23
+ Source = "https://github.com/YukkuriC/HexParseMod"
24
+
25
+ # Gradle version/deps
26
+
27
+ [tool.hatch.version]
28
+ scheme = "gradle"
29
+ source = "gradle-properties"
30
+ py-path = "doc/src/hexdoc_hexparse/__version__.py"
31
+ key = "mod_version_base"
32
+
33
+ [tool.hatch.metadata.hooks.gradle-properties]
34
+ dependencies = [
35
+ { package="hexdoc-hexcasting", op="~=", py-version="1.0", key="hexcastingVersion" },
36
+ ]
37
+
38
+ [tool.hatch.metadata.hooks.gradle-properties.optional-dependencies]
39
+ dev = [
40
+ "ruff~=0.11.2",
41
+ ]
42
+
43
+ # directory inclusion
44
+
45
+ [tool.hatch.build]
46
+ only-include = [
47
+ "doc/src/hexdoc_hexparse",
48
+ "gradle.properties",
49
+ ]
50
+ artifacts = [
51
+ "/doc/src/hexdoc_hexparse/_export/generated",
52
+ "/doc/src/hexdoc_hexparse/__gradle_version__.py",
53
+ ]
54
+
55
+ [tool.hatch.build.targets.wheel]
56
+ sources = ["doc/src"]
57
+
58
+ # hexdoc entry points
59
+
60
+ [project.entry-points.hexdoc]
61
+ hexparse = "hexdoc_hexparse._hooks:HexParsePlugin"
62
+
63
+ # linting
64
+
65
+ [tool.pyright]
66
+ pythonVersion = "3.11"
67
+ pythonPlatform = "All"
68
+
69
+ include = ["doc/src"]
70
+ extraPaths = ["doc/src"]
71
+
72
+ typeCheckingMode = "standard"
73
+
74
+ strictDictionaryInference = true
75
+ strictListInference = true
76
+ strictSetInference = true
77
+
78
+ reportAssertAlwaysTrue = "error"
79
+ reportConstantRedefinition = "error"
80
+ reportDeprecated = "error"
81
+ reportDuplicateImport = "error"
82
+ reportFunctionMemberAccess = "error"
83
+ reportIncompatibleMethodOverride = "error"
84
+ reportIncompatibleVariableOverride = "error"
85
+ reportIncompleteStub = "error"
86
+ reportInconsistentConstructor = "error"
87
+ reportInvalidStringEscapeSequence = "error"
88
+ reportInvalidStubStatement = "error"
89
+ reportInvalidTypeVarUse = "error"
90
+ reportMatchNotExhaustive = "error"
91
+ reportMissingParameterType = "error"
92
+ reportMissingTypeStubs = "error"
93
+ reportOverlappingOverload = "error"
94
+ reportSelfClsParameterName = "error"
95
+ reportTypeCommentUsage = "error"
96
+ reportUnknownParameterType = "error"
97
+ reportUnnecessaryCast = "error"
98
+ reportUnnecessaryContains = "error"
99
+ reportUnsupportedDunderAll = "error"
100
+ reportUntypedBaseClass = "error"
101
+ reportUntypedClassDecorator = "error"
102
+ reportUntypedFunctionDecorator = "error"
103
+ reportUntypedNamedTuple = "error"
104
+ reportWildcardImportFromLibrary = "error"
105
+
106
+ reportMissingTypeArgument = "warning"
107
+ reportPrivateUsage = "warning"
108
+ reportUnknownArgumentType = "warning"
109
+ reportUnknownLambdaType = "warning"
110
+ reportUnknownMemberType = "warning"
111
+ reportUnknownVariableType = "warning"
112
+ reportUnnecessaryComparison = "warning"
113
+ reportUnnecessaryIsInstance = "warning"
114
+ reportUnusedClass = "warning"
115
+ reportUnusedExpression = "warning"
116
+ reportUnusedFunction = "warning"
117
+ reportUnusedImport = "warning"
118
+ reportUnusedVariable = "warning"