Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/alphatex/document-structure.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ title: Document Structure

import { AlphaTexSample } from '@site/src/components/AlphaTexSample';

An alphaTex file is simply a list of bars and every bar has metadata and contents. For organizational reasons we commend
An alphaTex file is simply a list of bars and every bar has metadata and contents. For organizational reasons we recommend
that metadata tags describing the general song information are added to the start of the file, and external media synchronization points are
added on the end of the file:

Expand Down
2 changes: 1 addition & 1 deletion docs/alphatex/importer.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -106,7 +106,7 @@ the severity, a technical code identifying the error and a textual error message
The importer also allows access to the abstract syntax tree of the parsed code. The AST might also be available
for only partially parsed code.

The following code should give an idea on how to access the AST by printing the whole hiearchy of nodes to the console:
The following code should give an idea on how to access the AST by printing the whole hierarchy of nodes to the console:

```js
import * as alphaTab from '@coderline/alphatab';
Expand Down
2 changes: 1 addition & 1 deletion docs/alphatex/lsp.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ the editor will show descriptions when hovering the elements. No need to exit yo

## Signature Help

When passing arguments to metadata tags and properties the language server will provide a signature help to provide addtional guidance on what parameters and values exist:
When passing arguments to metadata tags and properties the language server will provide a signature help to provide additional guidance on what parameters and values exist:

<img src="/img/alphatex/lsp/signature1.png" />
<img src="/img/alphatex/lsp/signature2.png" />
Expand Down
2 changes: 1 addition & 1 deletion docs/alphatex/monaco.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ At this point you should get an editor with syntax highlighting.

## Starting the language server

To get the remaining capabilites into Monaco, we first have to launch the alphaTex language server in a web worker.
To get the remaining capabilities into Monaco, we first have to launch the alphaTex language server in a web worker.

The NPM package provides a module which can be spawned as web worker:

Expand Down
2 changes: 1 addition & 1 deletion docs/formats/guitar-pro-7.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ In version 7, Guitar Pro changed to use a zip based file archive format. The zip
* `PartConfiguration` - A binary file holding information on what tracks and staves to show in single and multi-track views.
* `LayoutConfiguration` - A binary file holding information on what layout to use for displaying music sheets (e.g. zoom level)

The `score.gpif` is the same as in Guitar Pro 6 but evovling with new features since then.
The `score.gpif` is the same as in Guitar Pro 6 but evolving with new features since then.

**Compatibility Level:** Mature and well tested

Expand Down
12 changes: 6 additions & 6 deletions docs/formats/musicxml.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ notation elements to be described. This also makes it quite complex to handle as
Unfortunately MusicXML implies a lot of details on the visual arrangements of elements and expect applications like alphaTab to adhere to their layouting principles.
With alphaTab not having a strict print-page display (yet) respecting those arrangement aspects is not possible.

Additionally MusicXML differenciates between "displayed" music notation and the "sound" of elements which can be potentially inconsistent.
Additionally MusicXML differentiates between "displayed" music notation and the "sound" of elements which can be potentially inconsistent.

alphaTab does its best to load any semantic information contained in the files (both in visual and sound related elements).
Due to this alphaTab might visually indicate some elements which are not visually described in MusicXML. This can be a benefit in some cases.
Expand All @@ -33,10 +33,10 @@ Be sure to check the [MusicXML reference](https://www.w3.org/2021/06/musicxml40/

**How to read the table:**

* The feature table tries to describe the support matching [MusicXML 4.0 element eference](https://www.w3.org/2021/06/musicxml40/musicxml-reference/elements/).
* The feature table tries to describe the support matching [MusicXML 4.0 element reference](https://www.w3.org/2021/06/musicxml40/musicxml-reference/elements/).
* Every group is typically a MusicXML Element describing what attributes and sub-elements are supported.
* Elements are listed with their exact names, attributes are prefixed with `@`.
* If individual attribute values are not supported they might be listed in a format like `@attribute=value`. But for keeping this docs at a managable scale not all details might be listed.
* If individual attribute values are not supported they might be listed in a format like `@attribute=value`. But for keeping this docs at a manageable scale not all details might be listed.
* The sub-element support indicates whether generally the tag is considered. What parts are supported, are then listed in the dedicated group of the respective tag.
* Some common attributes are only listed once instead on each element. Some simple elements are listed as part of their parent element, while other element are listed as own feature section.
* Some attributes we considered not relevant at all are not even listed (e.g. `@id` of `credit`).
Expand Down Expand Up @@ -2812,13 +2812,13 @@ import { FileFormatFeatureTable, FileFormatFeatureGroup, FileFormatFeatureRow, F
render={[FeatureStatus.NotSupported]}
audio={[FeatureStatus.NotSupported]}
tex={[FeatureStatus.NotSupported]} />
<FileFormatFeatureRow feature="dashes (if preceeded by words LetRing)"
<FileFormatFeatureRow feature="dashes (if preceded by words LetRing)"
model={[FeatureStatus.Supported]}
reading={[FeatureStatus.Supported]}
render={[FeatureStatus.Supported]}
audio={[FeatureStatus.Supported]}
tex={[FeatureStatus.Supported]} />
<FileFormatFeatureRow feature="dashes (if preceeded by words P.M.)"
<FileFormatFeatureRow feature="dashes (if preceded by words P.M.)"
model={[FeatureStatus.Supported]}
reading={[FeatureStatus.Supported]}
render={[FeatureStatus.Supported]}
Expand Down Expand Up @@ -3430,7 +3430,7 @@ import { FileFormatFeatureTable, FileFormatFeatureGroup, FileFormatFeatureRow, F
render={[FeatureStatus.Supported]}
audio={[FeatureStatus.Supported]}
tex={[FeatureStatus.Supported]} />
<FileFormatFeatureRow feature="interchangable"
<FileFormatFeatureRow feature="interchangeable"
model={[FeatureStatus.NotSupported]}
reading={[FeatureStatus.NotSupported]}
render={[FeatureStatus.NotSupported]}
Expand Down
4 changes: 2 additions & 2 deletions docs/guides/handling-midi-events.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ From this starting point we will be adding the logic.
### Simple counter

First we will add the code to add the counter. For this we will listen to the `SystemExclusive2` event by adding it to the filter and subscribing
to the event. Without the filter, the event will not fire. For performance reasons alphaTab signales only events which have been registered, not all events
to the event. Without the filter, the event will not fire. For performance reasons alphaTab signals only events which have been registered, not all events
which are played.

```js
Expand Down Expand Up @@ -240,7 +240,7 @@ Nothing special right? Just hiding and showing some span at some given times.

Now it is up to you to use this feature in any way you can make use of it. You can subscribe to midi events
and forward them to any further component you prefer. Keep in mind that subscribing to too many events might
also cause some performance degredation and as there is a bit audio latency involved, there might be some delays.
also cause some performance degradation and as there is a bit audio latency involved, there might be some delays.


## Final File
Expand Down
4 changes: 2 additions & 2 deletions docs/guides/lowlevel-apis.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ renderer.preRender.on(isResize => {
svgChunks = []; // clear on new rendering
});
// since 1.2.3 we need to request
// rendering of each chunk layed out.
// rendering of each chunk laid out.
// you can defer rendering based on your needs.
renderer.partialLayoutFinished.on(r => {
renderer.renderResult(r.id);
Expand Down Expand Up @@ -135,7 +135,7 @@ renderer.PreRender.On(isResize => {
svgChunks.Clear(); // clear on new rendering
});
// since 1.2.3 we need to request
// rendering of each chunk layed out.
// rendering of each chunk laid out.
// you can defer rendering based on your needs.
renderer.PartialLayoutFinished.On(r => {
renderer.RenderResult(r.Id);
Expand Down
6 changes: 3 additions & 3 deletions docs/guides/media-sync-editor.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ To activate or deactivate any sync point doubleclick it and it will be toggled.

Inactive markers are placed automatically according to the time axis and BPM of the song. They are having light blue arrow heads.

If there are repeats or jumps in the song the repeat counter is shown in parenthesis behind the bar number above the arrow head. For the first occurence no repeat number is shown.
If there are repeats or jumps in the song the repeat counter is shown in parenthesis behind the bar number above the arrow head. For the first occurrence no repeat number is shown.

</TabItem>
<TabItem value="9">
Expand Down Expand Up @@ -132,7 +132,7 @@ If the music notation and audio match, you typically do not need any more sync p

---

**Problem:** There are instruction parts where a teacher might explain something inbetween.
**Problem:** There are instruction parts where a teacher might explain something in between.

**Solution 1:** If you manually control the external media synchronization (via `IExternalMediaHandler`) you could adjust the time reported to alphaTab so that it quasi stops playing and moving the cursor.

Expand All @@ -148,7 +148,7 @@ If the music notation and audio match, you typically do not need any more sync p

---

Generally it is discouraged to add too many markers (e.g. for every bar). It's unlikely that the tempo changes constantly and needs adjustment. Rather pick a range where you expect the tempo to be roughtly equal,
Generally it is discouraged to add too many markers (e.g. for every bar). It's unlikely that the tempo changes constantly and needs adjustment. Rather pick a range where you expect the tempo to be roughly equal,
mark it with two sync points and place them accordingly.

The general recommendation to place markers correctly is:
Expand Down
2 changes: 1 addition & 1 deletion docs/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ the information about music sheets. alphaTab has importers for:
This engine is what makes the music sheet visible. alphaTab takes all the information stored in the data model
and does a visual layouting and rendering which is called music engraving.

For this, alphaTab builds up a visual tree represntation of all the symbols following the rules of music notation.
For this, alphaTab builds up a visual tree representation of all the symbols following the rules of music notation.
Using this model alphaTab can very efficiently provide dynamic resizing and relayouting.

The symbols alphaTab is using the [SMuFL](https://www.smufl.org/) music font [Bravura](https://github.com/steinbergmedia/bravura).
Expand Down
2 changes: 1 addition & 1 deletion docs/migration/breaking-changes-095-096.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ Please find all changes that were introduced below.
<td>
</td>
<td>
This API was removed. Simply change the settings and call `updateSettings` and `render` to achive the same behavior.
This API was removed. Simply change the settings and call `updateSettings` and `render` to achieve the same behavior.
</td>
</tr>
</tbody>
Expand Down
2 changes: 1 addition & 1 deletion docs/migration/breaking-changes-097-098.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ While this version comes with a lot of new benefits this guide only focuses on t

## Web

For the web version we tried to maintain compatiblity as good as possible while not sacrificing the changes we want to
For the web version we tried to maintain compatibility as good as possible while not sacrificing the changes we want to
introduce.

### Quick Migration
Expand Down
2 changes: 1 addition & 1 deletion docs/tutorial-android/viewport.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -241,7 +241,7 @@ class MainActivity : AppCompatActivity() {
## Result

With this code we can launch the app and open a test file. Test files can be added to the simulator via drag&drop onto the simulator screen.
When running debug versions of your app the opening can be quite slow, to experience the real performace deploy a release version and test it.
When running debug versions of your app the opening can be quite slow, to experience the real performance deploy a release version and test it.

<img src="/img/tutorial-android/viewport2-launched.png" width="300" />
<img src="/img/tutorial-android/select-file.png" width="300" />
Expand Down
2 changes: 1 addition & 1 deletion docs/tutorial-net/controls.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ public bool IsLooping
As alphaTab can change the scale in which the music sheet is rendered, we offer the user
a ComboBox to change this scale. As the default ComboBox style does not fit our application style,
we modify it a bit with a custom style and template. This style can be added to the resources where
already adjust the stlyes of the buttons. The combobox and icon we add after the looping button.
already adjust the styles of the buttons. The combobox and icon we add after the looping button.

<Tabs
defaultValue="xaml"
Expand Down
4 changes: 2 additions & 2 deletions docs/tutorial-net/introduction.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ As alphaTab is a **library** (or **SDK** if you like) for building apps/websites
want to show music sheets basic knowledge about software development is needed.

We will be using WPF as UI framework. For simplicity we will rather leave out aspects like following a clean MVVM pattern
which you would likely follow in a proper solution. Goal of this tutorial is to show you the usage and inteaction with alphaTab
which you would likely follow in a proper solution. Goal of this tutorial is to show you the usage and interaction with alphaTab
and not teach WPF development.

Most aspects of the tutorial can be directly mapped to the usage in WinForms as the provided components/controls are very similar.
The WinForms version suffers of some restrictions due to it's nature of mapping native OS controls to .net. WPF provides a lot of
nice features like hardware accelleration on the rendering and very flexible layouting mechanisms.
nice features like hardware acceleration on the rendering and very flexible layouting mechanisms.

We will target the .net 8.0 runtime in this tutorial.

Expand Down
2 changes: 1 addition & 1 deletion docs/tutorial-net/track-selector.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,7 @@ The ListBox we will bind to to some of our existing properties.
```

We bind to the `Score.Tracks` for the ItemsSource to show all tracks of the current score, the `SelectedItem` binding will make the ListBox
interactive to update the currently shown track upons user inteaction. Most of the code is just for styling.
interactive to update the currently shown track upons user interaction. Most of the code is just for styling.

<img src="/img/tutorial-net/track-selector.png" height="400" />

Expand Down
2 changes: 1 addition & 1 deletion docs/tutorial-net/viewport.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -363,7 +363,7 @@ to dynamically show/hide it.
<TabItem value="cs">

We add a new property `LoadingIndicatorVisibility` with change notification which we bind to from the XAML.
In the constructor we setup the data context and initialize the indiactor to be hidden to allow opening a file.
In the constructor we setup the data context and initialize the indicator to be hidden to allow opening a file.
In the `OnAlphaTabLoaded` we register to the required events to show/hide the indicator dynamically.

[`RenderStarted`](/docs/reference/api/renderstarted) will tell us when the rendering of the music sheet started.
Expand Down