diff --git a/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunction.cs b/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunction.cs
index 0af04ccdd..d37e6952e 100644
--- a/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunction.cs
+++ b/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunction.cs
@@ -29,6 +29,8 @@ internal abstract class CustomUploaderFunction
{
public abstract string Name { get; }
+ public virtual string[] Aliases { get; }
+
public virtual int MinParameterCount { get; } = 0;
public abstract string Call(ShareXCustomUploaderSyntaxParser parser, string[] parameters);
diff --git a/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionPrompt.cs b/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionInputBox.cs
similarity index 83%
rename from ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionPrompt.cs
rename to ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionInputBox.cs
index 937a567d1..4e3b6cd6c 100644
--- a/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionPrompt.cs
+++ b/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionInputBox.cs
@@ -28,16 +28,18 @@ You should have received a copy of the GNU General Public License
namespace ShareX.UploadersLib
{
- // Example: {prompt}
- // Example: {prompt:title}
- // Example: {prompt:title|default text}
- internal class CustomUploaderFunctionPrompt : CustomUploaderFunction
+ // Example: {inputbox}
+ // Example: {inputbox:title}
+ // Example: {inputbox:title|default text}
+ internal class CustomUploaderFunctionInputBox : CustomUploaderFunction
{
- public override string Name { get; } = "prompt";
+ public override string Name { get; } = "inputbox";
+
+ public override string[] Aliases { get; } = new string[] { "prompt" };
public override string Call(ShareXCustomUploaderSyntaxParser parser, string[] parameters)
{
- string title = "ShareX - Prompt";
+ string title = "Input";
string defaultText = "";
if (parameters.Length > 0)
diff --git a/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionOutput.cs b/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionOutputBox.cs
similarity index 75%
rename from ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionOutput.cs
rename to ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionOutputBox.cs
index c1df5996b..f2df8d456 100644
--- a/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionOutput.cs
+++ b/ShareX.UploadersLib/CustomUploader/Functions/CustomUploaderFunctionOutputBox.cs
@@ -27,30 +27,37 @@ You should have received a copy of the GNU General Public License
namespace ShareX.UploadersLib
{
- // Example: {output:text}
- // Example: {output:title|text}
- internal class CustomUploaderFunctionOutput : CustomUploaderFunction
+ // Example: {outputbox:text}
+ // Example: {outputbox:title|text}
+ internal class CustomUploaderFunctionOutputBox : CustomUploaderFunction
{
- public override string Name { get; } = "output";
+ public override string Name { get; } = "outputbox";
public override int MinParameterCount { get; } = 1;
public override string Call(ShareXCustomUploaderSyntaxParser parser, string[] parameters)
{
- string text, title;
+ string text, title = null;
if (parameters.Length > 1)
{
- text = parameters[1];
title = parameters[0];
+ text = parameters[1];
}
else
{
text = parameters[0];
- title = "ShareX - Output";
}
- OutputBox.Show(text, title);
+ if (!string.IsNullOrEmpty(text))
+ {
+ if (string.IsNullOrEmpty(title))
+ {
+ title = "Output";
+ }
+
+ OutputBox.Show(text, title);
+ }
return null;
}
diff --git a/ShareX.UploadersLib/CustomUploader/ShareXCustomUploaderSyntaxParser.cs b/ShareX.UploadersLib/CustomUploader/ShareXCustomUploaderSyntaxParser.cs
index 1669cec55..08f5db969 100644
--- a/ShareX.UploadersLib/CustomUploader/ShareXCustomUploaderSyntaxParser.cs
+++ b/ShareX.UploadersLib/CustomUploader/ShareXCustomUploaderSyntaxParser.cs
@@ -26,6 +26,7 @@ You should have received a copy of the GNU General Public License
using ShareX.HelpersLib;
using System;
using System.Collections.Generic;
+using System.Linq;
namespace ShareX.UploadersLib
{
@@ -72,7 +73,8 @@ protected override string CallFunction(string functionName, string[] parameters
foreach (CustomUploaderFunction function in Functions)
{
- if (function.Name.Equals(functionName, StringComparison.OrdinalIgnoreCase))
+ if (function.Name.Equals(functionName, StringComparison.OrdinalIgnoreCase) ||
+ (function.Aliases != null && function.Aliases.Any(x => x.Equals(functionName, StringComparison.OrdinalIgnoreCase))))
{
if (function.MinParameterCount > 0 && (parameters == null || parameters.Length < function.MinParameterCount))
{
diff --git a/ShareX.UploadersLib/ShareX.UploadersLib.csproj b/ShareX.UploadersLib/ShareX.UploadersLib.csproj
index a04a2e3fe..d32621736 100644
--- a/ShareX.UploadersLib/ShareX.UploadersLib.csproj
+++ b/ShareX.UploadersLib/ShareX.UploadersLib.csproj
@@ -133,10 +133,10 @@
-
+
-
+