From 0ab8f7987047b7081de55d4dcfa474edeecaab9c Mon Sep 17 00:00:00 2001
From: BillyGalbreath <Blake.Galbreath@GMail.com>
Date: Mon, 31 Jul 2017 02:09:13 -0500
Subject: [PATCH] Make /plugins list alphabetical

---
 .../Make-plugins-list-alphabetical.patch      | 53 +++++++++++++++++++
 1 file changed, 53 insertions(+)
 create mode 100644 Spigot-API-Patches/Make-plugins-list-alphabetical.patch

diff --git a/Spigot-API-Patches/Make-plugins-list-alphabetical.patch b/Spigot-API-Patches/Make-plugins-list-alphabetical.patch
new file mode 100644
index 0000000000..80e80f0d82
--- /dev/null
+++ b/Spigot-API-Patches/Make-plugins-list-alphabetical.patch
@@ -0,0 +1,53 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: BillyGalbreath <Blake.Galbreath@GMail.com>
+Date: Mon, 31 Jul 2017 02:08:55 -0500
+Subject: [PATCH] Make /plugins list alphabetical
+
+
+diff --git a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
+index e21d1679..e2274fa2 100644
+--- a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
++++ b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
+@@ -0,0 +0,0 @@
+ package org.bukkit.command.defaults;
+ 
+ import java.util.Arrays;
++import java.util.Map;
++import java.util.TreeMap;
+ 
+ import org.bukkit.Bukkit;
+ import org.bukkit.ChatColor;
+@@ -0,0 +0,0 @@ public class PluginsCommand extends BukkitCommand {
+     }
+ 
+     private String getPluginList() {
+-        StringBuilder pluginList = new StringBuilder();
+-        Plugin[] plugins = Bukkit.getPluginManager().getPlugins();
++        // Paper start
++        TreeMap<String, ChatColor> plugins = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
++
++        for (Plugin plugin : Bukkit.getPluginManager().getPlugins()) {
++            plugins.put(plugin.getDescription().getName(), plugin.isEnabled() ? ChatColor.GREEN : ChatColor.RED);
++        }
+ 
+-        for (Plugin plugin : plugins) {
++        StringBuilder pluginList = new StringBuilder();
++        for (Map.Entry<String, ChatColor> entry : plugins.entrySet()) {
+             if (pluginList.length() > 0) {
+                 pluginList.append(ChatColor.WHITE);
+                 pluginList.append(", ");
+             }
+-
+-            pluginList.append(plugin.isEnabled() ? ChatColor.GREEN : ChatColor.RED);
+-            pluginList.append(plugin.getDescription().getName());
++            pluginList.append(entry.getValue());
++            pluginList.append(entry.getKey());
+         }
+ 
+-        return "(" + plugins.length + "): " + pluginList.toString();
++        return "(" + plugins.size() + "): " + pluginList.toString();
++        // Paper end
+     }
+ 
+     // Spigot Start
+--
\ No newline at end of file