Commit Graph

113 Commits

Author SHA1 Message Date
Hugo Locurcio ed380cc0fa
Add a `[kbd]` tag for highlighting keyboard shortcuts in the editor help
This allows backporting documentation from the `master` branch more easily,
as it already features the `[kbd]` tag.

Co-authored-by: Yuri Sizov <11782833+YuriSizov@users.noreply.github.com>
2022-08-25 19:53:49 +02:00
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