Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Excel] (keyboard shortcuts) Document support in the unified app manifest #4678

Open
wants to merge 13 commits into
base: main
Choose a base branch
from
Open
4 changes: 4 additions & 0 deletions .openpublishing.redirection.json
Original file line number Diff line number Diff line change
Expand Up @@ -1260,6 +1260,10 @@
{
"source_path": "docs/outlook/use-regular-expressions-to-show-an-outlook-add-in.md",
"redirect_url": "/office/dev/add-ins/outlook/contextual-outlook-add-ins"
},
{
"source_path": "docs/develop/extended-overrides.md",
"redirect_url": "/javascript/api/manifest/extendedoverrides"
}
]
}
495 changes: 317 additions & 178 deletions docs/design/keyboard-shortcuts.md

Large diffs are not rendered by default.

74 changes: 0 additions & 74 deletions docs/develop/extended-overrides.md

This file was deleted.

13 changes: 7 additions & 6 deletions docs/develop/json-manifest-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Compare the XML manifest with the unified manifest for Microsoft 365
description: Get a comparison of the XML manifest with the unified manifest for Microsoft 365.
ms.topic: overview
ms.date: 04/12/2024
ms.date: 07/18/2024
ms.localizationpriority: high
---

Expand All @@ -19,7 +19,7 @@ There is just one schema for the [unified manifest](https://raw.githubuserconten

## Conceptual mapping of the unified and current XML manifests

This section describes the unified manifest for readers who are familiar with the current XML manifest. Some points to keep in mind:
This section describes the unified manifest for readers who are familiar with the current XML manifest. Some points to keep in mind:

- The unified manifest is JSON-formatted.
- JSON doesn't distinguish between attribute and element value like XML does. Typically, the JSON that maps to an XML element makes both the element value and each of the attributes a child property. The following example shows some XML markup and its JSON equivalent.
Expand Down Expand Up @@ -50,9 +50,9 @@ This section describes the unified manifest for readers who are familiar with th

### Top-level structure

The root level of the unified manifest, which roughly corresponds to the **\<OfficeApp\>** element in the current XML manifest, is an anonymous object.
The root level of the unified manifest, which roughly corresponds to the **\<OfficeApp\>** element in the current XML manifest, is an anonymous object.

The children of **\<OfficeApp\>** are commonly divided into two notional categories. The **\<VersionOverrides\>** element is one category. The other consists of all the other children of **\<OfficeApp\>**, which are collectively referred to as the base manifest. So too, the unified manifest has a similar division. There is a top-level "extensions" property that roughly corresponds in its purposes and child properties to the **\<VersionOverrides\>** element. The unified manifest also has over 10 other top-level properties that collectively serve the same purposes as the base manifest of the XML manifest. These other properties can be thought of collectively as the base manifest of the unified manifest.
The children of **\<OfficeApp\>** are commonly divided into two notional categories. The **\<VersionOverrides\>** element is one category. The other consists of all the other children of **\<OfficeApp\>**, which are collectively referred to as the base manifest. So too, the unified manifest has a similar division. There is a top-level "extensions" property that roughly corresponds in its purposes and child properties to the **\<VersionOverrides\>** element. The unified manifest also has over 10 other top-level properties that collectively serve the same purposes as the base manifest of the XML manifest. These other properties can be thought of collectively as the base manifest of the unified manifest.

### Base manifest

Expand Down Expand Up @@ -89,8 +89,9 @@ The following table shows a mapping of some high level child properties of the "
| "requirements.scopes" | Identifies the Office applications in which the add-in can be installed. | **\<Hosts\>** |*None* |
| "ribbons" | The ribbons that the add-in customizes. | **\<Hosts\>**, **ExtensionPoints**, and various **\*FormFactor** elements | The "ribbons" property is an array of anonymous objects that each merge the purposes of the these three elements. See ["ribbons" table](#ribbons-table).|
| "alternatives" | Specifies backwards compatibility with an equivalent COM add-in, XLL, or both. | **\<EquivalentAddins\>** | See the [EquivalentAddins - See also](/javascript/api/manifest/equivalentaddins#see-also) for background information. |
| "runtimes" | Configures the [embedded runtimes](../testing/runtimes.md) that the add-in uses, including various kinds of add-ins that have little or no UI, such as custom function-only add-ins and [function commands](../design/add-in-commands.md#types-of-add-in-commands). | **\<Runtimes\>**. **\<FunctionFile\>**, and **\<ExtensionPoint\>** (of type CustomFunctions) |*None* |
| "autoRunEvents" | Configures an event handler for a specified event. | **\<ExtensionPoint\>** (of type LaunchEvent) |*None* |
| "runtimes" | Configures the [embedded runtimes](../testing/runtimes.md) that the add-in uses, including various kinds of add-ins that have little or no UI, such as custom function-only add-ins and [function commands](../design/add-in-commands.md#types-of-add-in-commands). | **\<Runtimes\>**. **\<FunctionFile\>**, and **\<ExtensionPoint\>** (of type CustomFunctions) |*None.* |
| "autoRunEvents" | Configures an event handler for a specified event. | **\<ExtensionPoint\>** (of type LaunchEvent) |*None.* |
| "keyboardShortcuts" (developer preview) | Defines custom keyboard shortcuts or key combinations to run specific actions. | **\<ExtendedOverrides\>** | *None.* |

#### "ribbons" table

Expand Down
Loading