ajaxorg/ace · warning

This is an obsolete command. Please use `openCommandPalette`

Error message

This is an obsolete command. Please use `openCommandPalette` instead.

What it means

This is not a thrown error but a console.warn emitted by the legacy 'openCommandPallete' command (note the misspelling). The command was kept as an alias when 'openCommandPalette' was introduced, and invoking the old name prints this deprecation notice before forwarding to editor.prompt.

Source

Thrown at src/commands/default_commands.js:859

    },
    multiSelectAction: "forEach",
    scrollIntoView: "cursor"
}, {
    name: "addLineBefore",
    description: "Add new line before the current line",
    exec: function(editor) {
        editor.selection.clearSelection();
        var cursor = editor.getCursorPosition();
        editor.selection.moveTo(cursor.row - 1, Number.MAX_VALUE);
        editor.insert("\n");
        if (cursor.row === 0) editor.navigateUp();
    },
    multiSelectAction: "forEach",
    scrollIntoView: "cursor"
}, {
    name: "openCommandPallete",
    exec: function(editor) {
        console.warn("This is an obsolete command. Please use `openCommandPalette` instead.");
        editor.prompt({ $type: "commands" });
    },
    readOnly: true
}, {
    name: "openCommandPalette",
    description: "Open command palette",
    bindKey: bindKey("F1", "F1"),
    exec: function(editor) {
        editor.prompt({ $type: "commands" });
    },
    readOnly: true
}, {
    name: "modeSelect",
    description: "Change language mode...",
    bindKey: bindKey(null, null),
    exec: function(editor) {
        editor.prompt({ $type: "modes" });
    },

View on GitHub (pinned to 2c1eddc392)

Solutions

  1. Replace all uses of 'openCommandPallete' with 'openCommandPalette'
  2. Update custom keybindings to bind the new command name
  3. Treat editor.prompt({ $type: 'commands' }) as the underlying implementation if you need direct access
  4. Silence is optional — the warning is harmless and will disappear once the new name is used

Example fix

// before
editor.commands.exec('openCommandPallete', editor);
// after
editor.commands.exec('openCommandPalette', editor);
Defensive patterns

Strategy: validation

Validate before calling

var cmd = editor.commands.commands['openCommandPalette'];
if (!cmd) throw new Error('openCommandPalette not available in this ace version');

Try / catch

try {
  editor.commands.exec('openCommandPalette', editor);
} catch (e) {
  console.error('command palette failed', e);
}

Prevention

When it happens

Trigger: Calling editor.commands.exec('openCommandPallete') (misspelled name) or invoking the command palette through a keybinding/plugin that still references the old misspelled command name.

Common situations: Upgrading Ace and seeing the warning in logs; older keybindings, extensions, or user code that hardcoded the misspelled 'openCommandPallete'.

Related errors


AI-assisted analysis of ajaxorg/ace@2c1eddc392 (2026-08-30). Data as JSON: /api/errors/5fe4910efae19c3a. Report an issue: GitHub.