Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mumble-voip/mumble.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Adam <dev@robert-adam.de>2021-04-16 21:51:23 +0300
committerGitHub <noreply@github.com>2021-04-16 21:51:23 +0300
commitd4a5fc1047837ce2018a6381e0e74a51f65b2a8f (patch)
treef45a8df3f53649df21f0e5094d7021bae6f238fa /src/mumble/mumble_bg.ts
parentae3cc1ea692b8377dacd85e8dab71cff8827a5b6 (diff)
parent5db2400af55776b5034775c36c1cae033a478091 (diff)
Merge PR #3743: FEAT(client): Plugin framework
This commit introduces a new plugin framework into the codebase of the Mumble client. Note that "plugin" here really refers to a (more or less) general purpose plugin and is therefore not to be confused with the previously available positional data plugins (only responsible for fetching positional data from a running game and passing that to Mumble). The plugin interface is written in C, removing the compiler-dependence the old "plugins" had. Instead plugins can now be written in an arbitrary language as long as that language is capable of being compiled into a shared library and also being capable of being C-compatible. As already indicated a plugin is essentially a shared library that provides certain functions that allow Mumble to interface with it. Inside Mumble the so-called PluginManager is responsible for managing the plugins and relaying events to the respective callbacks. Plugins themselves can also interact with Mumble on their own initiative by using the provided API functions. Fixes #2455 Fixes #2148 Fixes #1594 Fixes #2051 Fixes #3742 Fixes #4575 Fixes #4751
Diffstat (limited to 'src/mumble/mumble_bg.ts')
-rw-r--r--src/mumble/mumble_bg.ts193
1 files changed, 180 insertions, 13 deletions
diff --git a/src/mumble/mumble_bg.ts b/src/mumble/mumble_bg.ts
index 4f3c1690e..8ff93bd2e 100644
--- a/src/mumble/mumble_bg.ts
+++ b/src/mumble/mumble_bg.ts
@@ -3779,6 +3779,10 @@ This field describes the size of an LCD device. The size is given either in pixe
<source>User stopped listening to channel</source>
<translation type="unfinished"></translation>
</message>
+ <message>
+ <source>Plugin message</source>
+ <translation type="unfinished"></translation>
+ </message>
</context>
<context>
<name>LogConfig</name>
@@ -6122,12 +6126,13 @@ Valid actions are:
<translation type="unfinished"></translation>
</message>
<message>
- <source>Usage: mumble [options] [&lt;url&gt;]
+ <source>Usage: mumble [options] [&lt;url&gt; | &lt;plugin_list&gt;]
&lt;url&gt; specifies a URL to connect to after startup instead of showing
the connection window, and has the following form:
mumble://[&lt;username&gt;[:&lt;password&gt;]@]&lt;host&gt;[:&lt;port&gt;][/&lt;channel&gt;[/&lt;subchannel&gt;...]][?version=&lt;x.y.z&gt;]
+&lt;plugin_list&gt; is a list of plugin files that shall be installed
The version query parameter has to be set in order to invoke the
correct client version. It currently defaults to 1.2.0.
@@ -6447,10 +6452,6 @@ Valid options are:
<translation>Свързване към последния сървър при пускане на програмата</translation>
</message>
<message>
- <source>Download plugin and overlay updates on startup</source>
- <translation>Сваляне на обновления за слоя и приставките при пускане на програмата</translation>
- </message>
- <message>
<source>Privacy</source>
<translation>Поверителност</translation>
</message>
@@ -6475,6 +6476,14 @@ Prevents the client from sending potentially identifying information about the o
<source>Hide public server list</source>
<translation type="unfinished"></translation>
</message>
+ <message>
+ <source>Check for plugin updates on startup</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Automatically download and install plugin updates</source>
+ <translation type="unfinished"></translation>
+ </message>
</context>
<context>
<name>Overlay</name>
@@ -7025,30 +7034,188 @@ To upgrade these files to their latest versions, click the button below.</source
<translation>Име</translation>
</message>
<message>
- <source>Enabled</source>
- <translation>Включено</translation>
+ <source>Enable</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>PA</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>KeyEvents</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Install a plugin from a local file</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Install plugin...</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unload the currently selected plugin. This will remove it from the plugin list for the current session.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unload</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The plugin was installed successfully</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to deactivate all requested features for plugin &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to load plugin &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Whether the positional audio feature of this plugin should be enabled</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>This plugin does not provide support for positional audio</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Whether this plugin has the permission to be listening to all keyboard events that occur while Mumble has focus</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Whether this plugin should be enabled</source>
+ <translation type="unfinished"></translation>
</message>
</context>
<context>
- <name>Plugins</name>
+ <name>PluginInstaller</name>
+ <message>
+ <source>PluginInstaller</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>You are about to install the plugin listed below. Do you wish to proceed?</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Name:&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Version:&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Author(s):&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;span style=&quot; font-weight:600;&quot;&gt;Description:&lt;/span&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&amp;No</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>&amp;Yes</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The file &quot;%1&quot; is not a valid plugin file!</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Found more than one plugin library for the current OS in &quot;%1&quot; (&quot;%2&quot; and &quot;%3&quot;)!</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to find a plugin for the current OS in &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to load plugin &quot;%1&quot; - check the plugin interface!</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to delete old plugin at &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to copy plugin library from &quot;%1&quot; to &quot;%2&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Unable to move plugin library to &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PluginManager</name>
+ <message>
+ <source>%1 lost link</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>%1 linked</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Plugin &quot;%1&quot; encountered a permanent error in positional data gathering</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Non-plugin found in plugin directory: &quot;%1&quot;</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Failed at loading manual plugin: %1</source>
+ <translation type="unfinished"></translation>
+ </message>
+</context>
+<context>
+ <name>PluginUpdater</name>
+ <message>
+ <source>PluginUpdater</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>The following plugins can be updated.</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Select all</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Plugin</source>
+ <translation type="unfinished"></translation>
+ </message>
+ <message>
+ <source>Download-URL</source>
+ <translation type="unfinished"></translation>
+ </message>
<message>
- <source>Skipping plugin update in debug mode.</source>
+ <source>Do you want to update the selected plugins?</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Downloaded new or updated plugin to %1.</source>
+ <source>Unable to download plugin update for &quot;%1&quot; from &quot;%2&quot; (%3)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>Failed to install new plugin to %1.</source>
+ <source>Update for plugin &quot;%1&quot; failed due to too many redirects</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>%1 lost link.</source>
+ <source>Unable to download plugin update for &quot;%1&quot; from &quot;%2&quot; (HTTP status code %3)</source>
<translation type="unfinished"></translation>
</message>
<message>
- <source>%1 linked.</source>
+ <source>Successfully updated plugin &quot;%1&quot;</source>
<translation type="unfinished"></translation>
</message>
</context>