From 6c2e91b9f9ac277ca851def4cf1f84016ff28048 Mon Sep 17 00:00:00 2001 From: Kevin Boos Date: Mon, 1 Jul 2024 17:18:25 -0700 Subject: [PATCH] improve doc comment about `exec_arg` for `DebianConfig::desktop_template` --- bindings/packager/nodejs/schema.json | 2 +- crates/packager/schema.json | 2 +- crates/packager/src/config/mod.rs | 10 ++++++---- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/bindings/packager/nodejs/schema.json b/bindings/packager/nodejs/schema.json index a7692a50..ee823dfe 100644 --- a/bindings/packager/nodejs/schema.json +++ b/bindings/packager/nodejs/schema.json @@ -785,7 +785,7 @@ } }, "desktopTemplate": { - "description": "Path to a custom desktop file Handlebars template.\n\nAvailable variables: `categories`, `comment` (optional), `exec`, `icon` and `name`.\n\nDefault file contents: ```text [Desktop Entry] Categories={{categories}} {{#if comment}} Comment={{comment}} {{/if}} Exec={{exec}} Icon={{icon}} Name={{name}} Terminal=false Type=Application {{#if mime_type}} MimeType={{mime_type}} {{/if}} ```", + "description": "Path to a custom desktop file Handlebars template.\n\nAvailable variables: `categories`, `comment` (optional), `exec`, `icon` and `name`.\n\nDefault file contents: ```text [Desktop Entry] Categories={{categories}} {{#if comment}} Comment={{comment}} {{/if}} Exec={{exec}} {{exec_arg}} Icon={{icon}} Name={{name}} Terminal=false Type=Application {{#if mime_type}} MimeType={{mime_type}} {{/if}} ```\n\nThe `{{exec_arg}}` will be set to: * \"%F\", if at least one [Config::file_associations] was specified but no deep link protocols were given. * The \"%F\" arg means that your application can be invoked with multiple file paths. * \"%U\", if at least one [Config::deep_link_protocols] was specified. * The \"%U\" arg means that your application can be invoked with multiple URLs. * If both [Config::file_associations] and [Config::deep_link_protocols] were specified, the \"%U\" arg will be used, causing the file paths to be passed to your app as `file://` URLs. * An empty string \"\" (nothing) if neither are given. * This means that your application will never be invoked with any URLs or file paths.\n\nTo specify a custom `exec_arg`, just use plaintext directly instead of `{{exec_arg}}`: ```text Exec={{exec}} %u ```\n\nSee more here: .", "type": [ "string", "null" diff --git a/crates/packager/schema.json b/crates/packager/schema.json index a7692a50..ee823dfe 100644 --- a/crates/packager/schema.json +++ b/crates/packager/schema.json @@ -785,7 +785,7 @@ } }, "desktopTemplate": { - "description": "Path to a custom desktop file Handlebars template.\n\nAvailable variables: `categories`, `comment` (optional), `exec`, `icon` and `name`.\n\nDefault file contents: ```text [Desktop Entry] Categories={{categories}} {{#if comment}} Comment={{comment}} {{/if}} Exec={{exec}} Icon={{icon}} Name={{name}} Terminal=false Type=Application {{#if mime_type}} MimeType={{mime_type}} {{/if}} ```", + "description": "Path to a custom desktop file Handlebars template.\n\nAvailable variables: `categories`, `comment` (optional), `exec`, `icon` and `name`.\n\nDefault file contents: ```text [Desktop Entry] Categories={{categories}} {{#if comment}} Comment={{comment}} {{/if}} Exec={{exec}} {{exec_arg}} Icon={{icon}} Name={{name}} Terminal=false Type=Application {{#if mime_type}} MimeType={{mime_type}} {{/if}} ```\n\nThe `{{exec_arg}}` will be set to: * \"%F\", if at least one [Config::file_associations] was specified but no deep link protocols were given. * The \"%F\" arg means that your application can be invoked with multiple file paths. * \"%U\", if at least one [Config::deep_link_protocols] was specified. * The \"%U\" arg means that your application can be invoked with multiple URLs. * If both [Config::file_associations] and [Config::deep_link_protocols] were specified, the \"%U\" arg will be used, causing the file paths to be passed to your app as `file://` URLs. * An empty string \"\" (nothing) if neither are given. * This means that your application will never be invoked with any URLs or file paths.\n\nTo specify a custom `exec_arg`, just use plaintext directly instead of `{{exec_arg}}`: ```text Exec={{exec}} %u ```\n\nSee more here: .", "type": [ "string", "null" diff --git a/crates/packager/src/config/mod.rs b/crates/packager/src/config/mod.rs index cc778b46..65b44a8e 100644 --- a/crates/packager/src/config/mod.rs +++ b/crates/packager/src/config/mod.rs @@ -205,11 +205,13 @@ pub struct DebianConfig { /// ``` /// /// The `{{exec_arg}}` will be set to: + /// * "%F", if at least one [Config::file_associations] was specified but no deep link protocols were given. + /// * The "%F" arg means that your application can be invoked with multiple file paths. /// * "%U", if at least one [Config::deep_link_protocols] was specified. - /// * This means that your application can accommodate being invoked with multiple URLs. - /// * "%F", if at least one [Config::file_associations] was specified but no deep link protocols were given, or - /// * This means that your application can accommodate being invoked with multiple file paths. - /// * An empty string "" (nothing) otherwise. + /// * The "%U" arg means that your application can be invoked with multiple URLs. + /// * If both [Config::file_associations] and [Config::deep_link_protocols] were specified, + /// the "%U" arg will be used, causing the file paths to be passed to your app as `file://` URLs. + /// * An empty string "" (nothing) if neither are given. /// * This means that your application will never be invoked with any URLs or file paths. /// /// To specify a custom `exec_arg`, just use plaintext directly instead of `{{exec_arg}}`: