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

View File

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

View File

@ -136,7 +136,7 @@ exclude_patterns = []
#show_authors = False
# 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.
#modindex_common_prefix = []
@ -158,7 +158,8 @@ html_theme = 'sphinxawesome_theme'
html_theme_options = asdict(ThemeOptions(
show_breadcrumbs=False,
main_nav_links= {
"Lua API": "reference/lua-scripting/index",
"Modding": "reference/modding/index",
"Lua API": "reference/lua-scripting/overview",
"Postprocessing": "reference/postprocessing/index",
}
))

View File

@ -2,8 +2,28 @@ Welcome to OpenMW's Documentation!
==================================
.. toctree::
:caption: Table of Contents
:maxdepth: 8
:caption: Reference
:hidden:
:maxdepth: 4
manuals/index
reference/index
reference/modding/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.
#####################################################################################################

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::
:maxdepth: 2
:hidden:
install-openmw
install-game-files

View File

@ -2,8 +2,8 @@
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.
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.
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>`_
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.
Add it and install OpenMW::
@ -39,16 +39,16 @@ To install, simply run the following as root (or in sudo)::
# pacman -S openmw
The Void Linux Way
==================
Void Linux
==========
The binary package is available in the official Repository
To install simply run the following as root (or in sudo)::
# xbps-install openmw
The Debian Way
==============
Debian
======
OpenMW is available from the unstable (sid) repository of Debian contrib
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.
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.
::

View File

@ -15,6 +15,7 @@ few chapters to familiarise yourself with the new interface.
.. toctree::
:caption: Table of Contents
:hidden:
:maxdepth: 2
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

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

View File

@ -1,5 +1,5 @@
Overview of Lua scripting
#########################
Overview
########
.. include:: version.rst
@ -641,7 +641,7 @@ Using IDE for Lua scripting
Find the directory ``resources/lua_api`` in your installation of OpenMW.
It describes OpenMW LuaAPI in
`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),
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
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.
.. toctree::
:caption: Table of Contents
:hidden:
:maxdepth: 2
foreword

View File

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

View File

@ -2,11 +2,58 @@
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::
:caption: Table of Contents
:includehidden:
:hidden:
:maxdepth: 2
overview
omwfx
lua

View File

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

View File

@ -1,6 +1,6 @@
#########################
OMWFX Language Reference
#########################
##############
OMWFX Language
##############
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.