diff --git a/src/SlashCommands.js b/src/SlashCommands.js index 3743fbb98c..211a68e7b0 100644 --- a/src/SlashCommands.js +++ b/src/SlashCommands.js @@ -27,14 +27,14 @@ import SettingsStore, {SettingLevel} from './settings/SettingsStore'; class Command { constructor({name, args='', description, runFn}) { - this.command = name; + this.command = '/' + name; this.args = args; this.description = description; this.runFn = runFn; } getCommand() { - return "/" + this.command; + return this.command; } getCommandWithArgs() { diff --git a/src/autocomplete/CommandProvider.js b/src/autocomplete/CommandProvider.js index ea271e02ff..891ef97d65 100644 --- a/src/autocomplete/CommandProvider.js +++ b/src/autocomplete/CommandProvider.js @@ -41,17 +41,14 @@ export default class CommandProvider extends AutocompleteProvider { const {command, range} = this.getCurrentCommand(query, selection); if (!command) return []; - let matches; + let matches = []; if (command[0] !== command[1]) { // The input looks like a command with arguments, perform exact match - const match = COMMANDS.find((o) => o.command === command[1]); - if (match) { - matches = [match]; + const name = command[1].substr(1); // strip leading `/` + if (CommandMap[name]) { + matches = [CommandMap[name]]; } - } - - // If we don't yet have matches - if (!matches) { + } else { if (query === '/') { // If they have just entered `/` show everything matches = COMMANDS;