docs - more restructuring

This commit is contained in:
Cody Glassman 2025-06-17 11:03:55 -07:00
parent 30b27c966f
commit 766b8f3145
20 changed files with 135 additions and 145 deletions

View File

@ -18,17 +18,15 @@
} }
@media (prefers-color-scheme: dark) { @media (prefers-color-scheme: dark) {
body:not([data-theme="light"]) #luadoc pre.example, #luadoc pre.example,
body:not([data-theme="light"]) #luadoc pre.example code { #luadoc pre.example code {
background-color: #2a3a49; background-color: hsl(var(--muted));
color: #ffffff; color: #ffffff;
} }
} }
body[data-theme="dark"] #luadoc pre.example, #luadoc > p:nth-child(1) {
body[data-theme="dark"] #luadoc pre.example code { margin: 12px 0 12px 0;
background-color: #2a3a49;
color: #ffffff;
} }
#luadoc a:not(:link) { #luadoc a:not(:link) {
@ -46,9 +44,15 @@ body[data-theme="dark"] #luadoc pre.example code {
.context-wrapper { .context-wrapper {
display: flex; display: flex;
margin-top: 14px;
gap: 4px; gap: 4px;
} }
#luadoc ul { list-style-type: disc; }
#luadoc ul { list-style-type: disc; }
#luadoc li {list-style: bullet;}
table.docutils { table.docutils {
width: 100%; width: 100%;
} }

View File

@ -8,6 +8,10 @@
} }
} }
code {
white-space: normal;
}
.md-sidebar--primary { .md-sidebar--primary {
width: 500px; /* default is 240px */ width: 500px; /* default is 240px */
} }

View File

@ -136,7 +136,7 @@ exclude_patterns = []
#show_authors = False #show_authors = False
# The name of the Pygments (syntax highlighting) style to use. # The name of the Pygments (syntax highlighting) style to use.
pygments_style = 'sphinx' pygments_style = 'github-dark'
# A list of ignored prefixes for module index sorting. # A list of ignored prefixes for module index sorting.
#modindex_common_prefix = [] #modindex_common_prefix = []
@ -158,7 +158,8 @@ html_theme = 'sphinxawesome_theme'
html_theme_options = asdict(ThemeOptions( html_theme_options = asdict(ThemeOptions(
show_breadcrumbs=False, show_breadcrumbs=False,
main_nav_links= { main_nav_links= {
"Lua API": "reference/lua-scripting/index", "Modding": "reference/modding/index",
"Lua API": "reference/lua-scripting/overview",
"Postprocessing": "reference/postprocessing/index", "Postprocessing": "reference/postprocessing/index",
} }
)) ))

View File

@ -2,8 +2,28 @@ Welcome to OpenMW's Documentation!
================================== ==================================
.. toctree:: .. toctree::
:caption: Table of Contents :caption: Reference
:maxdepth: 8 :hidden:
:maxdepth: 4
manuals/index reference/modding/index
reference/index reference/postprocessing/index
reference/documentationHowTo
.. toctree::
:caption: Lua
:hidden:
:maxdepth: 4
reference/lua-scripting/overview
reference/lua-scripting/api
reference/lua-scripting/teal
.. toctree::
:caption: Help
:hidden:
:maxdepth: 4
manuals/installation/index
manuals/openmw-cs/index
manuals/documentationHowTo

View File

@ -1,6 +1,6 @@
####################################### ###############
So you want to help with documentation? Help with docs?
####################################### ###############
Or a beginner's guide to writing docs without having to deal with more techie stuff than you have to. Or a beginner's guide to writing docs without having to deal with more techie stuff than you have to.
##################################################################################################### #####################################################################################################

View File

@ -1,8 +0,0 @@
User Manuals
============
.. toctree::
:maxdepth: 2
openmw-cs/index
installation/index

View File

@ -6,6 +6,7 @@ In order to use OpenMW, you must install both the engine and the game files for
.. toctree:: .. toctree::
:maxdepth: 2 :maxdepth: 2
:hidden:
install-openmw install-openmw
install-game-files install-game-files

View File

@ -2,8 +2,8 @@
Install OpenMW Install OpenMW
============== ==============
The (easier) Binary Way Direct Download
======================= ===============
If you're not sure what any of the different methods mean, you should probably stick to this one. If you're not sure what any of the different methods mean, you should probably stick to this one.
Simply download the latest version for your operating system from Simply download the latest version for your operating system from
@ -15,14 +15,14 @@ and run the install package once downloaded. It's now installed!
as OpenMW automatically installs into a separate directory for each new version. as OpenMW automatically installs into a separate directory for each new version.
Your saves and configuration are compatible and accessible between versions. Your saves and configuration are compatible and accessible between versions.
The (bleeding edge) Source Way From Source
============================== ===========
Visit the `Development Environment Setup <https://wiki.openmw.org/index.php?title=Development_Environment_Setup>`_ Visit the `Development Environment Setup <https://wiki.openmw.org/index.php?title=Development_Environment_Setup>`_
section of the Wiki for detailed instructions on how to build the engine. section of the Wiki for detailed instructions on how to build the engine.
The Ubuntu Way Ubuntu
============== ======
A `Launchpad PPA <https://launchpad.net/~openmw/+archive/openmw>`_ is available. A `Launchpad PPA <https://launchpad.net/~openmw/+archive/openmw>`_ is available.
Add it and install OpenMW:: Add it and install OpenMW::
@ -39,16 +39,16 @@ To install, simply run the following as root (or in sudo)::
# pacman -S openmw # pacman -S openmw
The Void Linux Way Void Linux
================== ==========
The binary package is available in the official Repository The binary package is available in the official Repository
To install simply run the following as root (or in sudo):: To install simply run the following as root (or in sudo)::
# xbps-install openmw # xbps-install openmw
The Debian Way Debian
============== ======
OpenMW is available from the unstable (sid) repository of Debian contrib OpenMW is available from the unstable (sid) repository of Debian contrib
and can be easily installed if you are using testing or unstable. and can be easily installed if you are using testing or unstable.
@ -56,8 +56,8 @@ However, it depends on several packages which are not in stable,
so it is not possible to install OpenMW in Wheezy without creating a FrankenDebian. so it is not possible to install OpenMW in Wheezy without creating a FrankenDebian.
This is not recommended or supported. This is not recommended or supported.
The Flatpak Way Flatpak
=============== =======
OpenMW is available as a flatpak. With flatpak installed, run the command below. It should show up on your desktop. OpenMW is available as a flatpak. With flatpak installed, run the command below. It should show up on your desktop.
:: ::

View File

@ -15,6 +15,7 @@ few chapters to familiarise yourself with the new interface.
.. toctree:: .. toctree::
:caption: Table of Contents :caption: Table of Contents
:hidden:
:maxdepth: 2 :maxdepth: 2
foreword foreword

View File

@ -1,11 +0,0 @@
##################
Reference Material
##################
.. toctree::
:maxdepth: 2
modding/index
lua-scripting/index
postprocessing/index
documentationHowTo

View File

@ -1,6 +1,6 @@
################# #############
Lua API reference API Reference
################# #############
.. include:: version.rst .. include:: version.rst

View File

@ -1,18 +0,0 @@
#############
Lua scripting
#############
.. note::
OpenMW Lua is not compatible with MWSE.
.. include:: version.rst
.. toctree::
:caption: Table of Contents
:includehidden:
:maxdepth: 2
overview
api
teal

View File

@ -7,18 +7,18 @@ Interfaces
.. toctree:: .. toctree::
:hidden: :hidden:
activation <interface_activation> Activation <interface_activation>
ai <interface_ai> AI <interface_ai>
animation <interface_animation> Animation <interface_animation>
camera <interface_camera> Camera <interface_camera>
controls <interface_controls> Controls <interface_controls>
gamepadcontrols <interface_gamepadcontrols> GamepadControls <interface_gamepadcontrols>
item_usage <interface_item_usage> ItemUsage <interface_item_usage>
mwui <interface_mwui> MWUI <interface_mwui>
settings <interface_settings> Settings <interface_settings>
skill_progression <interface_skill_progression> Skill_progression <interface_skill_progression>
ui <interface_ui> UI <interface_ui>
crimes <interface_crimes> Crimes <interface_crimes>
**Interfaces of built-in scripts** **Interfaces of built-in scripts**

View File

@ -1,5 +1,5 @@
Overview of Lua scripting Overview
######################### ########
.. include:: version.rst .. include:: version.rst
@ -641,7 +641,7 @@ Using IDE for Lua scripting
Find the directory ``resources/lua_api`` in your installation of OpenMW. Find the directory ``resources/lua_api`` in your installation of OpenMW.
It describes OpenMW LuaAPI in It describes OpenMW LuaAPI in
`LDT Documentation Language <https://wiki.eclipse.org/LDT/User_Area/Documentation_Language>`__. `LDT Documentation Language <https://wiki.eclipse.org/LDT/User_Area/Documentation_Language>`__.
It is the source from which the :ref:`API reference <Lua API reference>` is generated. It is the source from which the :ref:`API reference <API Reference>` is generated.
If you write scripts using `Lua Development Tools <https://www.eclipse.org/ldt/>`__ (eclipse-based IDE), If you write scripts using `Lua Development Tools <https://www.eclipse.org/ldt/>`__ (eclipse-based IDE),
you can import these files to get code autocompletion and integrated OpenMW API reference. Here are the steps: you can import these files to get code autocompletion and integrated OpenMW API reference. Here are the steps:

View File

@ -1,5 +1,5 @@
Modding Reference Modding
################# #######
The following document is the complete reference guide to modifying, or The following document is the complete reference guide to modifying, or
modding, your OpenMW setup. It does not cover content creation itself, modding, your OpenMW setup. It does not cover content creation itself,
@ -14,7 +14,7 @@ about creating new content for OpenMW, please refer to
not errors in the manual. not errors in the manual.
.. toctree:: .. toctree::
:caption: Table of Contents :hidden:
:maxdepth: 2 :maxdepth: 2
foreword foreword

View File

@ -47,6 +47,7 @@ The ranges included with each setting are the physically possible ranges, not re
.. toctree:: .. toctree::
:caption: Table of Contents :caption: Table of Contents
:hidden:
:maxdepth: 2 :maxdepth: 2
camera camera

View File

@ -2,11 +2,58 @@
Post Processing Post Processing
############### ###############
OpenMW supports a moddable post process framework for creating and
controlling screenspace effects. This is integrated into OpenMW's Lua API, see
`reference <../lua-scripting/openmw_postprocessing.html>`_ for details.
Basic concepts
==============
Pass
Describes a single shader invocation pass. Currently only pixel (also known
as fragment) shaders are supported.
Technique/Shader
An ordered list of passes, techniques will encompass a single effect like
bloom or SSAO. Technique is interchangeable with shader.
Installing and Activating
=========================
Shaders are managed through the virtual file system, simply install the associated
archive or folder as described in :ref:`mod-install<install>`. Shaders must be
in the `Shaders` directory to be discoverable. A shader can be activated in one
of two ways:
1. Adding the shaders filename (without its extension) to the end of the
:ref:`chain` list in ``settings.cfg``.
2. Using the in game post processor HUD, which can be activated with the ``F2``
key by default. This is the recommended method as manual editing can be error
prone.
Localization
============
Output text (e.g. shader description) can use the ``#{ContextName:Key}`` tags.
In this case OpenMW replaces it for value of ``Key`` key from the
``Data Files\L10n\ContextName\used_language.yaml`` file.
Hot Reloading
=============
It is possible to modify a shader without restarting OpenMW, hot reloading
can be enabled by using the lua command `debug.setShaderHotReloadEnabled(true)`.
Whenever a file is modified and saved, the shader will automatically reload in game.
This allows shaders to be written in a text editor you are comfortable with.
The only restriction is that the VFS is not aware of new files or changes in non-shader files,
so new shaders and localization strings can not be used.
.. toctree:: .. toctree::
:caption: Table of Contents :caption: Table of Contents
:includehidden: :includehidden:
:hidden:
:maxdepth: 2 :maxdepth: 2
overview
omwfx omwfx
lua lua

View File

@ -1,6 +1,6 @@
#################### ###############
Connecting With Lua Lua Integration
#################### ###############
Overview Overview
######## ########

View File

@ -1,6 +1,6 @@
######################### ##############
OMWFX Language Reference OMWFX Language
######################### ##############
Overview Overview
######## ########

View File

@ -1,52 +0,0 @@
#####################################
Overview of Post Processing Framework
#####################################
Overview
========
OpenMW supports a moddable post process framework for creating and
controlling screenspace effects. This is integrated into OpenMW's Lua API, see
`reference <../lua-scripting/openmw_postprocessing.html>`_ for details.
Basic concepts
==============
Pass
Describes a single shader invocation pass. Currently only pixel (also known
as fragment) shaders are supported.
Technique/Shader
An ordered list of passes, techniques will encompass a single effect like
bloom or SSAO. Technique is interchangeable with shader.
Installing and Activating
=========================
Shaders are managed through the virtual file system, simply install the associated
archive or folder as described in :ref:`mod-install<install>`. Shaders must be
in the `Shaders` directory to be discoverable. A shader can be activated in one
of two ways:
1. Adding the shaders filename (without its extension) to the end of the
:ref:`chain` list in ``settings.cfg``.
2. Using the in game post processor HUD, which can be activated with the ``F2``
key by default. This is the recommended method as manual editing can be error
prone.
Localization
============
Output text (e.g. shader description) can use the ``#{ContextName:Key}`` tags.
In this case OpenMW replaces it for value of ``Key`` key from the
``Data Files\L10n\ContextName\used_language.yaml`` file.
Hot Reloading
=============
It is possible to modify a shader without restarting OpenMW, hot reloading
can be enabled by using the lua command `debug.setShaderHotReloadEnabled(true)`.
Whenever a file is modified and saved, the shader will automatically reload in game.
This allows shaders to be written in a text editor you are comfortable with.
The only restriction is that the VFS is not aware of new files or changes in non-shader files,
so new shaders and localization strings can not be used.