diff --git a/README.md b/README.md index e82954f54cc..42f931b3ff1 100644 --- a/README.md +++ b/README.md @@ -76,7 +76,7 @@ See also [Windows Troubleshooting Tips][windows-tips]. - Install the latest version of the [Android command-line tools](https://developer.android.com/studio#command-tools) to `$ANDROID_SDK_ROOT/cmdline-tools/latest`. -- Run the following command to install the necessary components and the path t +- Run the following command to install the necessary components: ```shell sudo $ANDROID_SDK_ROOT/cmdline-tools/latest/bin/sdkmanager --install "build-tools;33.0.2" \ diff --git a/docs/COMMAND_LINE_ARGS.md b/docs/COMMAND_LINE_ARGS.md index 70ef19bebd0..aee3d81fc8b 100644 --- a/docs/COMMAND_LINE_ARGS.md +++ b/docs/COMMAND_LINE_ARGS.md @@ -11,7 +11,7 @@ Only arguments that need more explanation will be documented here. # Run ## Enable Experimental Features -Use `--pref` to enable experimental features like experimental DOM API, JavaScript API and CSS properties. +Use `--pref` to enable experimental features like experimental DOM APIs, JavaScript APIs and CSS properties. e.g. To enable Web VR and Bluetooth features: ``` diff --git a/docs/STYLE_GUIDE.md b/docs/STYLE_GUIDE.md index 49f69e65855..04aa0b5900f 100644 --- a/docs/STYLE_GUIDE.md +++ b/docs/STYLE_GUIDE.md @@ -5,10 +5,10 @@ automated linters. This document has guidelines that are less easy to lint for. ## Shell scripts -Shell scripts are OK for small tasks or wrappers, but prefer to use Python for +Shell scripts are suitable for small tasks or wrappers, but it's preferable to use Python for anything with a hint of complexity or in general. -Shell scripts should be written against bash, starting with this shebang: +Shell scripts should be written using bash, starting with this shebang: ``` #!/usr/bin/env bash ``` @@ -23,7 +23,7 @@ set -o nounset set -o pipefail ``` -Quote all variables, using the full form: `"${SOME_VARIABLE}"`. +Rememeber to quote all variables, using the full form: `"${SOME_VARIABLE}"`. Use `"$(some-command)"` instead of backticks for command substitution. Note that these should be quoted as well. diff --git a/docs/components/style.md b/docs/components/style.md index d8d54124fab..12da45f8672 100644 --- a/docs/components/style.md +++ b/docs/components/style.md @@ -1,15 +1,15 @@ # Servo's style system overview -This needs to be filled more extensively. Meanwhile, you can also take a look at -the [style doc comments][style-doc], or the [Styling -Overview][wiki-styling-overview] in the wiki, a conversation between +This document provides an overview of Servo's style system. For more extensive details, +refer to the [style doc comments][style-doc], or the [Styling +Overview][wiki-styling-overview] in the wiki, which includes a conversation between Boris Zbarsky and Patrick Walton about how style sharing works. ## Selector Implementation -In order to be sharable and compatible with Stylo (a project that aims -to integrate Servo's style system into Gecko), the style must be consistent. +To ensure compatibility with Stylo (a project integrating Servo's style system into Gecko), +selectors must be consistent. The consistency is implemented in [selectors' SelectorImpl][selector-impl], containing the logic related to parsing pseudo-elements and other pseudo-classes diff --git a/docs/components/webxr.md b/docs/components/webxr.md index 9b614ba9d16..f366b069886 100644 --- a/docs/components/webxr.md +++ b/docs/components/webxr.md @@ -2,22 +2,22 @@ ## Terminology -There are three main components involved in Servo's WebXR implementation: -1. the script thread (runs all JS for a page) -2. the WebGL thread (maintains WebGL canvas data and invokes GL operations corresponding to [WebGL APIs](https://registry.khronos.org/webgl/specs/latest/1.0/)) -3. the compositor (AKA the main thread) +Servo's WebXR implementation involves three main components: +1. The script thread (runs all JS for a page) +2. The WebGL thread (maintains WebGL canvas data and invokes GL operations corresponding to [WebGL APIs](https://registry.khronos.org/webgl/specs/latest/1.0/)) +3. The compositor (AKA the main thread) Additionally, there are a number of WebXR-specific concepts: -* the [discovery object](https://doc.servo.org/webxr_api/trait.DiscoveryAPI.html) (ie. how Servo discovers if a device can provide a WebXR session) -* the [WebXR registry](https://doc.servo.org/webxr_api/struct.MainThreadRegistry.html) (the compositor's interface to WebXR) -* the [layer manager](https://doc.servo.org/webxr_api/layer/trait.LayerManagerAPI.html) (manages WebXR layers for a given session and frame operations on those layers) -* ths [layer grand manager](https://doc.servo.org/webxr_api/layer/trait.LayerGrandManagerAPI.html) (manages all layer managers for WebXR sessions) +* The [discovery object](https://doc.servo.org/webxr_api/trait.DiscoveryAPI.html) (ie. how Servo discovers if a device can provide a WebXR session) +* The [WebXR registry](https://doc.servo.org/webxr_api/struct.MainThreadRegistry.html) (the compositor's interface to WebXR) +* The [layer manager](https://doc.servo.org/webxr_api/layer/trait.LayerManagerAPI.html) (manages WebXR layers for a given session and frame operations on those layers) +* The [layer grand manager](https://doc.servo.org/webxr_api/layer/trait.LayerGrandManagerAPI.html) (manages all layer managers for WebXR sessions) Finally, there are graphics-specific concepts that are important for the low-level details of rendering with WebXR: * [surfman](https://github.com/servo/webxr/blob/main/webxr/glwindow/mod.rs#L448-L452) is a crate that abstracts away platform-specific details of OpenGL hardware-accelerated rendering -* a [surface](https://doc.servo.org/surfman/platform/unix/default/surface/type.Surface.html) is a hardware buffer that are tied to a specific OpenGL context -* a [surface texture](https://doc.servo.org/surfman/platform/unix/default/surface/type.SurfaceTexture.html) is an OpenGL texture that wraps a surface. Surface textures can be shared between OpenGL contexts. -* a [surfman context](https://doc.servo.org/surfman/platform/unix/default/context/type.Context.html) represents a particular OpenGL context, and is backed by platform-specific implementations (such as EGL on Unix-based platforms) +* [surface](https://doc.servo.org/surfman/platform/unix/default/surface/type.Surface.html) is a hardware buffer that are tied to a specific OpenGL context +* [surface texture](https://doc.servo.org/surfman/platform/unix/default/surface/type.SurfaceTexture.html) is an OpenGL texture that wraps a surface. Surface textures can be shared between OpenGL contexts. +* [surfman context](https://doc.servo.org/surfman/platform/unix/default/context/type.Context.html) represents a particular OpenGL context, and is backed by platform-specific implementations (such as EGL on Unix-based platforms) * [ANGLE](https://github.com/servo/mozangle/) is an OpenGL implementation on top of Direct3D which is used in Servo to provide a consistent OpenGL backend on Windows-based platforms ## How Servo's compositor starts