Commit graph

112 commits

Author SHA1 Message Date
Rémi Verschelde
76440fe1aa doc: Fix relative paths in make_rst.py generated comment
Follow-up to #63495.

(cherry picked from commit f66527ddc3)
2022-07-27 15:29:28 +02:00
Yuri Sizov
ff7554413b Improve the autogenerated note in RST docs for class reference
(cherry picked from commit f3561696da)
2022-07-27 15:29:27 +02:00
Andy Maloney
7c06b9b670 Add missing Python type hints in tools/make_rst.py
(cherry picked from commit 4b3d6f04a8)
2022-07-27 15:24:15 +02:00
SnailRhymer
c8b85c1b54 Indent bullet points in enum descriptions
When converting doc xml files to rst, add an indenation level to bullet points in the text description of enum values.
Also add check to avoid out of bounds error in rstize_text.

(cherry picked from commit 38cf07b768)
2022-05-16 17:14:43 +02:00
Rémi Verschelde
7a16bb2ee4
Fix typos with codespell
Using codespell 2.2-dev from current git.

Added `misc/scripts/codespell.sh` to make it easier to run it once in a
while and update the skip and ignore lists.

(cherry picked from commit 1bdb82c64e)
2022-02-11 09:50:59 +01:00
Max Hilbrunner
54de063890 [3.x] Fix make_rst.py on Windows 2022-01-24 10:28:22 +01:00
Rémi Verschelde
c62de9abec
i18n: Make more make_rst.py strings translatable
For now we leave out the strings which could break rst table formatting.

(cherry picked from commit fd1d0c28c2)
2022-01-07 13:30:21 +01:00
Rémi Verschelde
f2ddafd860
i18n: Add --lang option to make_rst.py to write translated headings
Add a few missing headings to the translation templates.

(cherry picked from commit b98785309f)
2021-12-21 14:40:13 +01:00
Haoyu Qiu
36642738e0 Update make_rst.py for non-latin texts 2021-12-21 16:36:53 +08:00
Yuri Sizov
1cf6d21f69 Make overridden properties link to parent definition
Co-authored-by: Josh DeGraw <joshmdegraw@gmail.com>
2021-12-03 17:48:49 +03:00
Rémi Verschelde
0cdcf1154f
Allow dehardcoding documentation branch and URL in docs links
This makes it possible to change the branch of the documentation that
URLs are pointing to without having to modify all class reference
files.

In the XML class reference, the `$DOCS_URL` placeholder should be used,
and will be replaced automatically in the editor and when generating
the RST class reference.

The documentation branch string is set in `version.py`.

Co-authored-by: Hugo Locurcio <hugo.locurcio@hugo.pro>
(cherry picked from commit 5341e6010e)
2021-11-15 17:22:47 +01:00
Aaron Franke
69e90daae3
Rename "makerst.py" to "make_rst.py"
(cherry picked from commits 8f05e26198
and cce7797a75)
2021-10-26 13:34:36 +02:00
Rémi Verschelde
322387b694
makerst: Make external links anonymous
Otherwise we get errors if we use the same title for different links in a given class.

(cherry picked from commit 1e36f5f524)
2021-10-06 09:29:32 +02:00
Yuri Sizov
fcbe5a3fde Add theme item descriptions to the online documentation 2021-08-06 18:20:51 +03:00
merumelu
ffec0799cb
makerst: use link titles for external tutorials
(cherry picked from commit b8752d91dc)
2021-08-03 10:20:19 +02:00
Hugo Locurcio
bcfa5beb8d
Make makerst.py create folders automatically, print a message when done
(cherry picked from commit f05aa9cc01)
2021-07-13 10:20:03 +02:00
Andrii Doroshenko (Xrayez)
d9b3e5ce84
makerst: Fix generation of overridden properties in child classes
This only affects `Object` classes, not `Variant`.

(cherry picked from commit 679d038043)
2021-04-14 13:29:59 +02:00
Andrii Doroshenko (Xrayez)
34eea26c67
makerst: Add an option to filter which XML classes to output
Usage:
```
# Output `VisualScript` classes only (found in `modules/visual_script`)
python doc/tools/makerst.py "doc/classes" "modules" --filter "visual_script"

# Output CSG classes only (found in `modules/csg`)
python doc/tools/makerst.py "doc/classes" "modules" --filter "csg"
```

(cherry picked from commit 7fcdd15f0c)
2021-02-16 14:27:39 +01:00
Rémi Verschelde
3170ebc0e2
makerst: Add missing newline at EOF
(cherry picked from commit d435537f7e)
2020-09-15 19:26:44 +02:00
Hugo Locurcio
78a6a57884 makerst: Add descriptions to method qualifiers
This closes https://github.com/godotengine/godot-docs/issues/1753.

(cherry picked from commit c162a39c7b)
2020-07-30 22:46:16 +02:00
Rémi Verschelde
7bf9787921 SCons: Format buildsystem files with psf/black
Configured for a max line length of 120 characters.

psf/black is very opinionated and purposely doesn't leave much room for
configuration. The output is mostly OK so that should be fine for us,
but some things worth noting:

- Manually wrapped strings will be reflowed, so by using a line length
  of 120 for the sake of preserving readability for our long command
  calls, it also means that some manually wrapped strings are back on
  the same line and should be manually merged again.

- Code generators using string concatenation extensively look awful,
  since black puts each operand on a single line. We need to refactor
  these generators to use more pythonic string formatting, for which
  many options are available (`%`, `format` or f-strings).

- CI checks and a pre-commit hook will be added to ensure that future
  buildsystem changes are well-formatted.

(cherry picked from commit cd4e46ee65)
2020-06-10 15:30:52 +02:00
Hugo Locurcio
a3bd201cc7 makerst: Print status messages to make the CI output clearer
This also removes an unused method.

(cherry picked from commit 9065b7ed4e)
2020-06-04 12:09:39 +02:00
Yuri Sizov
22ebdd72d9 Add more verbosity for property overrides in RST documentation
(cherry picked from commit 38821dc6d7)
2020-04-16 11:57:50 +02:00
PouleyKetchoupp
d4c77e60c0 Fixed errors in makerst pre-commit hook
(cherry picked from commit 619354fb2c)
2020-04-06 18:16:11 +02:00
Hugo Locurcio
23e08b0fad Improve the doc_status.py console output
- Duplicate the header when the `-a` flag is enabled. Since lots of
  items are displayed in this case, this helps the user remember
  which column is which without having to scroll back to the top.
- Bolden the overall percentages for easier visual grepping.

(cherry picked from commit 7c3f6b2870)
2020-02-12 14:59:21 +01:00
Rémi Verschelde
2d20fc39aa doc: Drop unused 'category' property from header
We already removed it from the online docs with #35132.

Currently it can only be "Built-In Types" (Variant types) or "Core"
(everything else), which is of limited use.

We might also want to consider dropping it from `ClassDB` altogether
in Godot 4.0.
2020-01-26 16:02:39 +01:00
Tomasz Chabora
25ea912d96 Count theme items in doc_status.py 2020-01-24 14:23:58 +01:00
Rémi Verschelde
97cc2e53f6 makerst: Escape reST markup after enums
Fixes #35501.
2020-01-24 13:08:36 +01:00
Rémi Verschelde
c0595206dd makerst: Use code markup for default values/overrides
Fixes godotengine/godot-docs#3071.
2020-01-20 12:38:08 +01:00
Hugo Locurcio
3c8abbc4bf
doc: Move the class description to be just below the brief description
- Drop the "Brief description" header as it became redundant
  with this change.
- Fix a bug in the editor help where an extraneous newline was added
  after the header if the class isn't inherited by any others.
- Remove the Category line in the rST markup as it's not useful
  for API users.
2020-01-15 00:05:34 +01:00
Hugo Locurcio
17add2dc86
Add a pre-commit hook to check the class reference syntax
This also makes documentation helper scripts executable.
2019-12-06 23:40:19 +01:00
Hugo Locurcio
bc4dbcf793
Travis CI: Run makerst.py to check for documentation errors 2019-12-04 08:51:32 +01:00
Rémi Verschelde
55676b16da makerst: Escape default values using reST markup
Otherwise the docs would complain about values like "godot_"
which reST tries to interpret as an identifier.
2019-11-29 14:25:37 +01:00
Hugo Locurcio
c2e5ef4cec
makerst: Separate signals/enums/properties/methods with a line 2019-10-24 19:06:09 +02:00
SamuelDeboni
35d22e414f Fixed AttributeError on doc_status.py 2019-10-08 11:29:59 -03:00
Yeongho Kim
d4a55fb639 Print errors when tab indent found in [codeblock] 2019-10-01 23:39:45 +09:00
Bojidar Marinov
6c4407bae4
Add overriden properties to the documentation
Fixes #31855
2019-09-04 15:21:40 +03:00
StraToN
d83b8881ae Adds a meta on top of every generated class to hide 'Edit on Github' link
Linked docs issue https://github.com/godotengine/godot-docs/pull/2656
2019-07-25 15:57:43 +02:00
Bojidar Marinov
0c4c36d823
Add default values to the editor help, docs, and generated RST
Also, make spacing of "=" in the editor help a bit more consistent.
Closes #16086
2019-06-27 18:29:35 +03:00
Rémi Verschelde
c7246d8e1e makerst: Fix format of [url] links in reST
Moved some logic to make_url in an attempt to reuse it in the parser,
but it proved too complex so I ended up not using it. I kept it as a
separate method nevertheless.
2019-06-11 10:51:10 +02:00
Stanislav
102f73b88a Add support for [url=] tag to makerst.py
Fixes #28904
2019-05-16 16:13:42 +03:00
Rémi Verschelde
6af69f851a doc: Drop unused <demos> tag 2019-04-19 11:03:46 +02:00
Hendrikto
49a81308c0 Remove unused imports 2019-04-06 18:05:05 +02:00
Ignacio Etcheverry
d80bc5cbba ClassRef: Replace [code]CurrentClass[/code] with [CurrentClass]
Modified makerst to generate code tags for these to avoid hyperlinks to the same class.
2019-03-29 23:47:35 +01:00
Ignacio Etcheverry
c8aa85189a EditorHelp, makerst: Improve enum ref resolving and constant ref support
Enum reference resolving will now search in the @GlobalScope if no class is specified and the enum cannot be resolved in the current class.
Added support for constant references in EditorHelp, e.g.: [constant KEY_ENTER] or [constant Control.FOCUS_CLICK]. It supports enum constants (the enum name must not be included).
2019-03-29 23:40:31 +01:00
Rémi Verschelde
61771ad39b doc: Fix style for vararg in makerst 2019-03-10 11:31:27 +01:00
merumelu
4d9b7b9803 makerst: make vararg methods look the same as in editor help 2019-03-05 20:42:09 +01:00
Pieter-Jan Briers
685dffb1d5 makerst.py refactor.
It's now smart and keeps track of every entity in the doc files. Now it can pick up on broken references and such inside the doc files.
Eventually we'll be able to run it on Travis and check for errors automatically.

General file cleanup.

References to elements of classes now have a prefix for their type. class_Control_minimum_size_changed becomes class_Control_method_minimum_size_changed, or signal_, because the reason I did this was to fix reference conflicts.

You can also reference constants now with BBCode.

Also made it use argparse, adding an --output and a --dry-run argument.

I did not fix all the errors it's reporting in the documentation files, there's about 150+ of them but that's outside of the scope of this commit.
2018-12-28 16:55:51 +01:00
Pieter-Jan Briers
15a3d16d08 Clean up & improve makerst.py
Man this file even had some semicolons in it.

I cleaned up the entire file, while it's still pretty ugly it's much better now.
I also added type checks so it passes mypy --strict.
make_type now throws a warning on unresolved type references, which there are a bunch of. I'm not responsible for fixing those though.
Also some more hardening against crashes. For example XML tags without content won't cause crashes now.
Functionality has not been modified as far as I can tell.

Update Makefile for Python 3

Fix ordering issues related to enums & constants
2018-12-27 13:57:08 +01:00
João Álvaro Ferreira
a720993cc8 Enabled rst files to escape for parentheses after brackets 2018-12-11 12:58:57 +00:00