Reorganize documentation for contributors

- Merge Community/Contributing and Engine Development into one top-level section, Contributing.
- Structure it in a way that gives equal priority to various ways to contribute, including documentation.
- Rename several articles to be more comprehensive and in line with the overall state of the documentation.
- Rewrite the guide for class reference contributions.
This commit is contained in:
Yuri Sizov
2022-12-26 19:58:43 +03:00
parent 42ff57a7bb
commit dbfe3b1d26
182 changed files with 332 additions and 253 deletions

View File

@@ -1,6 +1,22 @@
source,destination
/about/index.html,/index.html
/classes/_classes.html,/classes/
/community/contributing/best_practices_for_engine_contributors.html,/contributing/development/best_practices_for_engine_contributors.html
/community/contributing/bisecting_regressions.html,/contributing/workflow/bisecting_regressions.html
/community/contributing/bug_triage_guidelines.html,/contributing/workflow/bug_triage_guidelines.html
/community/contributing/building_the_manual.html,/contributing/documentation/building_the_manual.html
/community/contributing/class_reference_writing_guidelines.html,/contributing/documentation/class_reference_primer.html
/community/contributing/code_style_guidelines.html,/contributing/development/code_style_guidelines.html
/community/contributing/content_guidelines.html,/contributing/documentation/content_guidelines.html
/community/contributing/contributing_to_the_documentation.html,/contributing/documentation/contributing_to_the_documentation.html
/community/contributing/cpp_usage_guidelines.html,/contributing/development/cpp_usage_guidelines.html
/community/contributing/docs_writing_guidelines.html,/contributing/documentation/docs_writing_guidelines.html
/community/contributing/editor_and_docs_localization.html,/contributing/documentation/editor_and_docs_localization.html
/community/contributing/index.html,/contributing/ways_to_contribute.html
/community/contributing/pr_workflow.html,/contributing/workflow/pr_workflow.html
/community/contributing/testing_pull_requests.html,/contributing/workflow/testing_pull_requests.html
/community/contributing/updating_the_class_reference.html,/contributing/documentation/updating_the_class_reference.html
/community/contributing/ways_to_contribute.html,/contributing/ways_to_contribute.html
/community/tutorials/3d/mesh_generation_with_heightmap_and_shaders.html,/tutorials/3d/mesh_generation_with_heightmap_and_shaders.html
/community/tutorials/gdnative/gdnative-c-example.html,/tutorials/plugins/gdnative/gdnative-c-example.html
/community/tutorials/gdnative/index.html,/tutorials/plugins/gdnative/index.html
@@ -11,7 +27,54 @@ source,destination
/contributing/bug_triage_guidelines.html,/community/contributing/bug_triage_guidelines.html
/contributing/doc_and_l10n_guidelines.html,/community/contributing/doc_and_l10n_guidelines.html
/contributing/updating_the_class_reference.html,/community/contributing/updating_the_class_reference.html
/development/compiling/compiling_for_android.html,/contributing/development/compiling/compiling_for_android.html
/development/compiling/compiling_for_ios.html,/contributing/development/compiling/compiling_for_ios.html
/development/compiling/compiling_for_linuxbsd.html,/contributing/development/compiling/compiling_for_linuxbsd.html
/development/compiling/compiling_for_macos.html,/contributing/development/compiling/compiling_for_macos.html
/development/compiling/compiling_for_uwp.html,/contributing/development/compiling/compiling_for_uwp.html
/development/compiling/compiling_for_web.html,/contributing/development/compiling/compiling_for_web.html
/development/compiling/compiling_for_windows.html,/contributing/development/compiling/compiling_for_windows.html
/development/compiling/compiling_with_mono.html,/contributing/development/compiling/compiling_with_mono.html
/development/compiling/compiling_with_script_encryption_key.html,/contributing/development/compiling/compiling_with_script_encryption_key.html
/development/compiling/cross-compiling_for_ios_on_linux.html,/contributing/development/compiling/cross-compiling_for_ios_on_linux.html
/development/compiling/getting_source.html,/contributing/development/compiling/getting_source.html
/development/compiling/index.html,/contributing/development/compiling/index.html
/development/compiling/introduction_to_the_buildsystem.html,/contributing/development/compiling/introduction_to_the_buildsystem.html
/development/compiling/optimizing_for_size.html,/contributing/development/compiling/optimizing_for_size.html
/development/consoles/consoles.html,/tutorials/platform/consoles.html
/development/cpp/binding_to_external_libraries.html,/contributing/development/core_and_modules/binding_to_external_libraries.html
/development/cpp/common_engine_methods_and_macros.html,/contributing/development/core_and_modules/common_engine_methods_and_macros.html
/development/cpp/configuring_an_ide/android_studio.html,/contributing/development/configuring_an_ide/android_studio.html
/development/cpp/configuring_an_ide/clion.html,/contributing/development/configuring_an_ide/clion.html
/development/cpp/configuring_an_ide/code_blocks.html,/contributing/development/configuring_an_ide/code_blocks.html
/development/cpp/configuring_an_ide/index.html,/contributing/development/configuring_an_ide/index.html
/development/cpp/configuring_an_ide/kdevelop.html,/contributing/development/configuring_an_ide/kdevelop.html
/development/cpp/configuring_an_ide/qt_creator.html,/contributing/development/configuring_an_ide/qt_creator.html
/development/cpp/configuring_an_ide/visual_studio.html,/contributing/development/configuring_an_ide/visual_studio.html
/development/cpp/configuring_an_ide/visual_studio_code.html,/contributing/development/configuring_an_ide/visual_studio_code.html
/development/cpp/configuring_an_ide/xcode.html,/contributing/development/configuring_an_ide/xcode.html
/development/cpp/core_types.html,/contributing/development/core_and_modules/core_types.html
/development/cpp/custom_audiostreams.html,/contributing/development/core_and_modules/custom_audiostreams.html
/development/cpp/custom_godot_servers.html,/contributing/development/core_and_modules/custom_godot_servers.html
/development/cpp/custom_modules_in_cpp.html,/contributing/development/core_and_modules/custom_modules_in_cpp.html
/development/cpp/custom_resource_format_loaders.html,/contributing/development/core_and_modules/custom_resource_format_loaders.html
/development/cpp/index.html,/contributing/development/core_and_modules/index.html
/development/cpp/inheritance_class_tree.html,/contributing/development/core_and_modules/inheritance_class_tree.html
/development/cpp/introduction_to_godot_development.html,/contributing/development/core_and_modules/introduction_to_godot_development.html
/development/cpp/macos_debug.html,/contributing/development/debugging/macos_debug.html
/development/cpp/object_class.html,/contributing/development/core_and_modules/object_class.html
/development/cpp/unit_testing.html,/contributing/development/core_and_modules/unit_testing.html
/development/cpp/using_cpp_profilers.html,/contributing/development/debugging/using_cpp_profilers.html
/development/cpp/variant_class.html,/contributing/development/core_and_modules/variant_class.html
/development/cpp/vulkan/index.html,/contributing/development/debugging/vulkan/index.html
/development/cpp/vulkan/vulkan_validation_layers.html,/contributing/development/debugging/vulkan/vulkan_validation_layers.html
/development/editor/creating_icons.html,/contributing/development/editor/creating_icons.html
/development/editor/editor_style_guide.html,/contributing/development/editor/editor_style_guide.html
/development/editor/index.html,/contributing/development/editor/index.html
/development/editor/introduction_to_editor_development.html,/contributing/development/editor/introduction_to_editor_development.html
/development/file_formats/gdscript_grammar.html,/contributing/development/file_formats/gdscript_grammar.html
/development/file_formats/index.html,/contributing/development/file_formats/index.html
/development/file_formats/tscn.html,/contributing/development/file_formats/tscn.html
/development/plugins/import_plugins.html,/tutorials/plugins/editor/import_plugins.html
/development/plugins/index.html,/tutorials/plugins/editor/index.html
/development/plugins/making_plugins.html,/tutorials/plugins/editor/making_plugins.html
1 source destination
2 /about/index.html /index.html
3 /classes/_classes.html /classes/
4 /community/contributing/best_practices_for_engine_contributors.html /contributing/development/best_practices_for_engine_contributors.html
5 /community/contributing/bisecting_regressions.html /contributing/workflow/bisecting_regressions.html
6 /community/contributing/bug_triage_guidelines.html /contributing/workflow/bug_triage_guidelines.html
7 /community/contributing/building_the_manual.html /contributing/documentation/building_the_manual.html
8 /community/contributing/class_reference_writing_guidelines.html /contributing/documentation/class_reference_primer.html
9 /community/contributing/code_style_guidelines.html /contributing/development/code_style_guidelines.html
10 /community/contributing/content_guidelines.html /contributing/documentation/content_guidelines.html
11 /community/contributing/contributing_to_the_documentation.html /contributing/documentation/contributing_to_the_documentation.html
12 /community/contributing/cpp_usage_guidelines.html /contributing/development/cpp_usage_guidelines.html
13 /community/contributing/docs_writing_guidelines.html /contributing/documentation/docs_writing_guidelines.html
14 /community/contributing/editor_and_docs_localization.html /contributing/documentation/editor_and_docs_localization.html
15 /community/contributing/index.html /contributing/ways_to_contribute.html
16 /community/contributing/pr_workflow.html /contributing/workflow/pr_workflow.html
17 /community/contributing/testing_pull_requests.html /contributing/workflow/testing_pull_requests.html
18 /community/contributing/updating_the_class_reference.html /contributing/documentation/updating_the_class_reference.html
19 /community/contributing/ways_to_contribute.html /contributing/ways_to_contribute.html
20 /community/tutorials/3d/mesh_generation_with_heightmap_and_shaders.html /tutorials/3d/mesh_generation_with_heightmap_and_shaders.html
21 /community/tutorials/gdnative/gdnative-c-example.html /tutorials/plugins/gdnative/gdnative-c-example.html
22 /community/tutorials/gdnative/index.html /tutorials/plugins/gdnative/index.html
27 /contributing/bug_triage_guidelines.html /community/contributing/bug_triage_guidelines.html
28 /contributing/doc_and_l10n_guidelines.html /community/contributing/doc_and_l10n_guidelines.html
29 /contributing/updating_the_class_reference.html /community/contributing/updating_the_class_reference.html
30 /development/compiling/compiling_for_android.html /contributing/development/compiling/compiling_for_android.html
31 /development/compiling/compiling_for_ios.html /contributing/development/compiling/compiling_for_ios.html
32 /development/compiling/compiling_for_linuxbsd.html /contributing/development/compiling/compiling_for_linuxbsd.html
33 /development/compiling/compiling_for_macos.html /contributing/development/compiling/compiling_for_macos.html
34 /development/compiling/compiling_for_uwp.html /contributing/development/compiling/compiling_for_uwp.html
35 /development/compiling/compiling_for_web.html /contributing/development/compiling/compiling_for_web.html
36 /development/compiling/compiling_for_windows.html /contributing/development/compiling/compiling_for_windows.html
37 /development/compiling/compiling_with_mono.html /contributing/development/compiling/compiling_with_mono.html
38 /development/compiling/compiling_with_script_encryption_key.html /contributing/development/compiling/compiling_with_script_encryption_key.html
39 /development/compiling/cross-compiling_for_ios_on_linux.html /contributing/development/compiling/cross-compiling_for_ios_on_linux.html
40 /development/compiling/getting_source.html /contributing/development/compiling/getting_source.html
41 /development/compiling/index.html /contributing/development/compiling/index.html
42 /development/compiling/introduction_to_the_buildsystem.html /contributing/development/compiling/introduction_to_the_buildsystem.html
43 /development/compiling/optimizing_for_size.html /contributing/development/compiling/optimizing_for_size.html
44 /development/consoles/consoles.html /tutorials/platform/consoles.html
45 /development/cpp/binding_to_external_libraries.html /contributing/development/core_and_modules/binding_to_external_libraries.html
46 /development/cpp/common_engine_methods_and_macros.html /contributing/development/core_and_modules/common_engine_methods_and_macros.html
47 /development/cpp/configuring_an_ide/android_studio.html /contributing/development/configuring_an_ide/android_studio.html
48 /development/cpp/configuring_an_ide/clion.html /contributing/development/configuring_an_ide/clion.html
49 /development/cpp/configuring_an_ide/code_blocks.html /contributing/development/configuring_an_ide/code_blocks.html
50 /development/cpp/configuring_an_ide/index.html /contributing/development/configuring_an_ide/index.html
51 /development/cpp/configuring_an_ide/kdevelop.html /contributing/development/configuring_an_ide/kdevelop.html
52 /development/cpp/configuring_an_ide/qt_creator.html /contributing/development/configuring_an_ide/qt_creator.html
53 /development/cpp/configuring_an_ide/visual_studio.html /contributing/development/configuring_an_ide/visual_studio.html
54 /development/cpp/configuring_an_ide/visual_studio_code.html /contributing/development/configuring_an_ide/visual_studio_code.html
55 /development/cpp/configuring_an_ide/xcode.html /contributing/development/configuring_an_ide/xcode.html
56 /development/cpp/core_types.html /contributing/development/core_and_modules/core_types.html
57 /development/cpp/custom_audiostreams.html /contributing/development/core_and_modules/custom_audiostreams.html
58 /development/cpp/custom_godot_servers.html /contributing/development/core_and_modules/custom_godot_servers.html
59 /development/cpp/custom_modules_in_cpp.html /contributing/development/core_and_modules/custom_modules_in_cpp.html
60 /development/cpp/custom_resource_format_loaders.html /contributing/development/core_and_modules/custom_resource_format_loaders.html
61 /development/cpp/index.html /contributing/development/core_and_modules/index.html
62 /development/cpp/inheritance_class_tree.html /contributing/development/core_and_modules/inheritance_class_tree.html
63 /development/cpp/introduction_to_godot_development.html /contributing/development/core_and_modules/introduction_to_godot_development.html
64 /development/cpp/macos_debug.html /contributing/development/debugging/macos_debug.html
65 /development/cpp/object_class.html /contributing/development/core_and_modules/object_class.html
66 /development/cpp/unit_testing.html /contributing/development/core_and_modules/unit_testing.html
67 /development/cpp/using_cpp_profilers.html /contributing/development/debugging/using_cpp_profilers.html
68 /development/cpp/variant_class.html /contributing/development/core_and_modules/variant_class.html
69 /development/cpp/vulkan/index.html /contributing/development/debugging/vulkan/index.html
70 /development/cpp/vulkan/vulkan_validation_layers.html /contributing/development/debugging/vulkan/vulkan_validation_layers.html
71 /development/editor/creating_icons.html /contributing/development/editor/creating_icons.html
72 /development/editor/editor_style_guide.html /contributing/development/editor/editor_style_guide.html
73 /development/editor/index.html /contributing/development/editor/index.html
74 /development/editor/introduction_to_editor_development.html /contributing/development/editor/introduction_to_editor_development.html
75 /development/file_formats/gdscript_grammar.html /contributing/development/file_formats/gdscript_grammar.html
76 /development/file_formats/index.html /contributing/development/file_formats/index.html
77 /development/file_formats/tscn.html /contributing/development/file_formats/tscn.html
78 /development/plugins/import_plugins.html /tutorials/plugins/editor/import_plugins.html
79 /development/plugins/index.html /tutorials/plugins/editor/index.html
80 /development/plugins/making_plugins.html /tutorials/plugins/editor/making_plugins.html

View File

@@ -89,19 +89,20 @@ relatively intuitive:
new users.
- The :ref:`sec-tutorials` section can be read as needed,
in any order. It contains feature-specific tutorials and documentation.
- The :ref:`sec-devel` section is intended for advanced users and contributors
- The :ref:`sec-contributing` section gives the information related to contributing to
the engine development, e.g. how to report bugs, help with the documentation, etc.
It also contains subsections intended for advanced users and contributors
to the engine development, with the information on compiling the engine,
contributing to the editor, or developing C++ modules.
- The :ref:`sec-community` section gives the information related to contributing to
the engine development and the life of its community, e.g. how to report bugs,
help with the documentation, etc. It also points to various community channels
like Godot Contributors Chat and Discord and contains a list of recommended
third-party tutorials outside of this documentation.
- The :ref:`sec-community` section is dedicated to the life of its community.
It points to various community channels like Godot Contributors Chat and
Discord and contains a list of recommended third-party tutorials outside
of this documentation.
- Finally, the :ref:`sec-class-ref` is the documentation of the Godot API,
which is also available directly within the engine's script editor. It is
generated automatically from a file in the main source repository, therefore
the generated files of the documentation are not meant to be modified. See
:ref:`doc_class_reference_writing_guidelines` for details.
:ref:`doc_updating_the_class_reference` for details.
In addition to this documentation, you may also want to take a look at the
various `Godot demo projects <https://github.com/godotengine/godot-demo-projects>`_.

View File

@@ -1,108 +0,0 @@
Contributing
============
Everyone is most welcome to contribute to Godot. Here are some ways in which you
can contribute to the project:
- Improving the engine by fixing bugs, coding new features, or refining existing ones.
- Writing or proofreading documentation. You can contribute both to this
reference manual or the code reference.
- Translating the editor or documentation from English to other languages.
- Reporting issues or `writing detailed proposals
<https://github.com/godotengine/godot-proposals/>`__.
Getting started
---------------
You would like to contribute but you don't know how or what to do? You can get
answers below.
.. toctree::
:maxdepth: 1
:name: toc-community-getting-started
ways_to_contribute
.. _doc_community_contributing_to_the_engine:
Contributing to the engine
--------------------------
The guides below explain how to contribute to the engine's core. You will learn
about the code style, the contribution workflow, and more.
.. toctree::
:maxdepth: 1
:name: toc-community-contributing-to-the-engine
best_practices_for_engine_contributors
pr_workflow
testing_pull_requests
bisecting_regressions
bug_triage_guidelines
code_style_guidelines
cpp_usage_guidelines
.. _doc_community_writing_documentation:
Writing documentation
---------------------
We always need help to improve the documentation, be it the class reference or
the manual. Below, you can find our content and writing guidelines and
concrete guides to make changes to the documentation.
Guidelines
~~~~~~~~~~
Here are the principles and guidelines we strive to follow to write accessible
documentation.
.. toctree::
:maxdepth: 1
:name: toc-community-writing-guidelines
content_guidelines
docs_writing_guidelines
Writing the manual
~~~~~~~~~~~~~~~~~~
.. toctree::
:maxdepth: 1
:name: toc-community-documentation
contributing_to_the_documentation
building_the_manual
Class reference guides
~~~~~~~~~~~~~~~~~~~~~~
The pages below focus on the class reference.
As the reference is included in the Godot editor, its source files are part of
the `godot repository <https://github.com/godotengine/godot>`_. We use XML files
to write it, so the process to contribute to the class reference differs from
writing the online manual.
.. toctree::
:maxdepth: 1
:name: toc-community-class-reference
updating_the_class_reference
class_reference_writing_guidelines
.. _doc_community_translating_the_documentation:
Translating the documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The community is always working hard on making Godot and its documentation
available to more people. Localizing the documentation is a colossal and ongoing
effort you can be part of.
.. toctree::
:maxdepth: 1
:name: toc-community-localization
editor_and_docs_localization

View File

@@ -1,76 +0,0 @@
.. _doc_updating_the_class_reference:
Contributing to the class reference
===================================
.. highlight:: shell
The class reference is available online in the :ref:`classes <doc_class_reference>`
section of the documentation and in the Godot editor, from the help menu.
In the class reference, some methods, variables, and signals lack descriptions.
Others changed with recent releases and need updates. The developers can't write
the entire reference on their own. Godot needs you, and all of us, to
contribute.
**Important:** If you plan to make large changes, you should create an issue on
the `godot-docs repository <https://github.com/godotengine/godot-docs/>`_
or comment on an existing issue. Doing so lets others know you're already
taking care of a given class.
.. seealso::
You can find the writing guidelines for the class reference :ref:`here <doc_class_reference_writing_guidelines>`.
For details on Git usage and the pull request workflow, please
refer to the :ref:`doc_pr_workflow` page.
If you want to translate the class reference from English to another
language, see :ref:`doc_editor_and_docs_localization`.
This guide is also available as a `video tutorial on YouTube
<https://www.youtube.com/watch?v=5jeHXxeX-JY>`_.
.. seealso::
Not sure which class to contribute to? Take a look at the class reference's
completion status `here <https://godotengine.github.io/doc-status/>`_.
You can find the source files for the class reference in Godot's GitHub
repository: `doc/classes/
<https://github.com/godotengine/godot/tree/master/doc/classes>`_.
.. note:: For some modules in the engine's source code, you'll find the XML
files in the ``modules/<module_name>/doc_classes/`` directory instead.
.. warning:: Always edit the API reference through these source XML files. Do
not edit the generated ``.rst`` files :ref:`in the online documentation
<doc_class_reference>`, hosted in the `godot-docs
<https://github.com/godotengine/godot-docs>`_ repository.
.. warning::
Unless you make minor changes, like fixing a typo, we do not recommend using the GitHub web editor to edit the class reference's XML.
It lacks features to edit XML well, like keeping indentations consistent, and it does not allow amending commits based on reviews.
Also, it doesn't allow you to test your changes in the engine or with validation
scripts as described in
:ref:`doc_class_reference_writing_guidelines_editing_xml`.
Updating the documentation template
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
When you create a new class or modify the engine's API, you need to re-generate the XML files in ``doc/classes/``.
To do so, you first need to compile Godot. See the
:ref:`doc_introduction_to_the_buildsystem` page to learn how. Then, execute the
compiled Godot binary from the Godot root directory with the ``--doctool`` option.
For example, if you're on 64-bit Linux, the command is::
./bin/godot.linuxbsd.tools.64 --doctool
The XML files in doc/classes should then be up-to-date with current Godot Engine
features. You can then check what changed using the ``git diff`` command. Please
only include changes that are relevant to your work on the API in your commits.
You can discard changes in other XML files using ``git checkout``.

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

View File

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -1,5 +1,5 @@
Compiling
=========
Building from source
====================
.. toctree::
:maxdepth: 1

View File

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

View File

Before

Width:  |  Height:  |  Size: 301 KiB

After

Width:  |  Height:  |  Size: 301 KiB

View File

Before

Width:  |  Height:  |  Size: 582 KiB

After

Width:  |  Height:  |  Size: 582 KiB

View File

Before

Width:  |  Height:  |  Size: 611 KiB

After

Width:  |  Height:  |  Size: 611 KiB

View File

Before

Width:  |  Height:  |  Size: 605 KiB

After

Width:  |  Height:  |  Size: 605 KiB

View File

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

Before

Width:  |  Height:  |  Size: 39 KiB

After

Width:  |  Height:  |  Size: 39 KiB

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 93 KiB

After

Width:  |  Height:  |  Size: 93 KiB

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 8.8 KiB

View File

Before

Width:  |  Height:  |  Size: 77 KiB

After

Width:  |  Height:  |  Size: 77 KiB

View File

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 5.0 KiB

Some files were not shown because too many files have changed in this diff Show More