mirror of
https://github.com/ShareX/ShareX.git
synced 2024-09-30 01:07:21 +13:00
Added random emoji support to file naming, example: %remoji{10}
This commit is contained in:
parent
5795e99a6c
commit
ec610f32e0
3 changed files with 15 additions and 2 deletions
|
@ -137,9 +137,9 @@ public static int RandomAdd(int num, int min, int max)
|
|||
return num + Random(min, max);
|
||||
}
|
||||
|
||||
public static T RandomPick<T>(params T[] nums)
|
||||
public static T RandomPick<T>(params T[] array)
|
||||
{
|
||||
return nums[Random(nums.Length - 1)];
|
||||
return array[Random(array.Length - 1)];
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -190,6 +190,11 @@ public static int CryptoRandom(int min, int max)
|
|||
}
|
||||
}
|
||||
|
||||
public static T CryptoRandomPick<T>(params T[] array)
|
||||
{
|
||||
return array[CryptoRandom(array.Length - 1)];
|
||||
}
|
||||
|
||||
public static float RadianToDegree(float radian)
|
||||
{
|
||||
return radian * RadianPI;
|
||||
|
|
|
@ -59,6 +59,8 @@ public class CodeMenuEntryFilename : CodeMenuEntry
|
|||
public static readonly CodeMenuEntryFilename guid = new CodeMenuEntryFilename("guid", Resources.ReplCodeMenuEntry_guid_Random_guid, Resources.ReplCodeMenuCategory_Random);
|
||||
public static readonly CodeMenuEntryFilename radjective = new CodeMenuEntryFilename("radjective", Resources.CodeMenuEntryFilename_RandomAdjective, Resources.ReplCodeMenuCategory_Random);
|
||||
public static readonly CodeMenuEntryFilename ranimal = new CodeMenuEntryFilename("ranimal", Resources.CodeMenuEntryFilename_RandomAnimal, Resources.ReplCodeMenuCategory_Random);
|
||||
// TODO: Translate
|
||||
public static readonly CodeMenuEntryFilename remoji = new CodeMenuEntryFilename("remoji", "Random emoji. Repeat using {n}", Resources.ReplCodeMenuCategory_Random);
|
||||
public static readonly CodeMenuEntryFilename rf = new CodeMenuEntryFilename("rf", Resources.ReplCodeMenuEntry_rf_Random_line_from_file, Resources.ReplCodeMenuCategory_Random);
|
||||
public static readonly CodeMenuEntryFilename width = new CodeMenuEntryFilename("width", Resources.ReplCodeMenuEntry_width_Gets_image_width, Resources.ReplCodeMenuCategory_Image);
|
||||
public static readonly CodeMenuEntryFilename height = new CodeMenuEntryFilename("height", Resources.ReplCodeMenuEntry_height_Gets_image_height, Resources.ReplCodeMenuCategory_Image);
|
||||
|
|
|
@ -290,6 +290,11 @@ public string Parse(string pattern)
|
|||
result = result.ReplaceAll(entry.Item1, () => Helpers.RepeatGenerator(entry.Item2, () => Helpers.GetRandomChar(Helpers.Hexadecimal.ToUpperInvariant()).ToString()));
|
||||
}
|
||||
|
||||
foreach (Tuple<string, int> entry in ListEntryWithValue(result, CodeMenuEntryFilename.remoji.ToPrefixString()))
|
||||
{
|
||||
result = result.ReplaceAll(entry.Item1, () => Helpers.RepeatGenerator(entry.Item2, () => MathHelpers.CryptoRandomPick(Emoji.Emojis)));
|
||||
}
|
||||
|
||||
result = result.ReplaceAll(CodeMenuEntryFilename.rna.ToPrefixString(), () => Helpers.GetRandomChar(Helpers.Base56).ToString());
|
||||
result = result.ReplaceAll(CodeMenuEntryFilename.rn.ToPrefixString(), () => Helpers.GetRandomChar(Helpers.Numbers).ToString());
|
||||
result = result.ReplaceAll(CodeMenuEntryFilename.ra.ToPrefixString(), () => Helpers.GetRandomChar(Helpers.Alphanumeric).ToString());
|
||||
|
@ -297,6 +302,7 @@ public string Parse(string pattern)
|
|||
result = result.ReplaceAll(CodeMenuEntryFilename.rx.ToPrefixString().Replace('x', 'X'), () => Helpers.GetRandomChar(Helpers.Hexadecimal.ToUpperInvariant()).ToString());
|
||||
result = result.ReplaceAll(CodeMenuEntryFilename.guid.ToPrefixString().ToLowerInvariant(), () => Guid.NewGuid().ToString().ToLowerInvariant());
|
||||
result = result.ReplaceAll(CodeMenuEntryFilename.guid.ToPrefixString().ToUpperInvariant(), () => Guid.NewGuid().ToString().ToUpperInvariant());
|
||||
result = result.ReplaceAll(CodeMenuEntryFilename.remoji.ToPrefixString(), () => MathHelpers.CryptoRandomPick(Emoji.Emojis));
|
||||
|
||||
if (Type == NameParserType.FolderPath)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue