diff --git a/index.html b/index.html
index e8aac16..e5015b4 100644
--- a/index.html
+++ b/index.html
@@ -32,7 +32,7 @@
const CONFIG = {
commandPathDelimiter: '/',
commandSearchDelimiter: ' ',
- commandCaseSensitive: false,
+ commandCaseSensitive: true,
defaultSearchTemplate: 'https://duckduckgo.com/?q={}',
openLinksInNewTab: true,
suggestionLimit: 4,
@@ -355,7 +355,17 @@
}
static #getCommand(key) {
- return COMMANDS.get(this.#compareKey(key));
+ if (CONFIG.commandCaseSensitive) {
+ return COMMANDS.get(key);
+ } else {
+ const lowerKey = key.toLowerCase();
+ for (const [cmdKey, value] of COMMANDS) {
+ if (cmdKey.toLowerCase() === lowerKey) {
+ return value;
+ }
+ }
+ return undefined;
+ }
}
static #parseQuery = (raw) => {
@@ -367,20 +377,22 @@
return { query, url };
}
- if (COMMANDS.has(compareQuery)) {
- const { url } = this.#getCommand(query);
- return { key: query, query, url };
+ const command = this.#getCommand(query);
+ if (command) {
+ return { key: query, query, url: command.url };
}
const [commandPart, searchPart] = query.split(
new RegExp(`${CONFIG.commandSearchDelimiter}(.*)`)
);
- const compareCommandPart = this.#compareKey(commandPart);
- if (COMMANDS.has(compareCommandPart)) {
- const command = this.#getCommand(commandPart);
+ const commandPartCommand = this.#getCommand(commandPart);
+ if (commandPartCommand) {
const search = searchPart ? searchPart.trim() : '';
- const template = new URL(command.searchTemplate ?? '', command.url);
+ const template = new URL(
+ commandPartCommand.searchTemplate ?? '',
+ commandPartCommand.url
+ );
const url = this.#formatSearchUrl(decodeURI(template.href), search);
return { key: commandPart, query, search, url };
}
@@ -388,11 +400,10 @@
const [pathKey, path] = query.split(
new RegExp(`${CONFIG.commandPathDelimiter}(.*)`)
);
- const comparePathKey = this.#compareKey(pathKey);
- if (COMMANDS.has(comparePathKey)) {
- const command = this.#getCommand(pathKey);
- const url = `${new URL(command.url).origin}/${path || ''}`;
+ const pathKeyCommand = this.#getCommand(pathKey);
+ if (pathKeyCommand) {
+ const url = `${new URL(pathKeyCommand.url).origin}/${path || ''}`;
return { key: pathKey, path, query, url };
}