Merge branch 'currentword-select' of https://github.com/missionfloyd/ComfyUI

This commit is contained in:
comfyanonymous 2023-04-21 00:01:09 -04:00
commit 0be92710b4

View File

@ -89,24 +89,17 @@ app.registerExtension({
end = nearestEnclosure.end; end = nearestEnclosure.end;
selectedText = inputField.value.substring(start, end); selectedText = inputField.value.substring(start, end);
} else { } else {
// Select the current word, find the start and end of the word (first space before and after) // Select the current word, find the start and end of the word
const wordStart = inputField.value.substring(0, start).lastIndexOf(" ") + 1; const delimiters = " .,\\/!?%^*;:{}=-_`~()\r\n\t";
const wordEnd = inputField.value.substring(end).indexOf(" ");
// If there is no space after the word, select to the end of the string while (!delimiters.includes(inputField.value[start - 1]) && start > 0) {
if (wordEnd === -1) { start--;
end = inputField.value.length; }
} else {
end += wordEnd; while (!delimiters.includes(inputField.value[end]) && end < inputField.value.length) {
end++;
} }
start = wordStart;
// Remove all punctuation at the end and beginning of the word
while (inputField.value[start].match(/[.,\/#!$%\^&\*;:{}=\-_`~()]/)) {
start++;
}
while (inputField.value[end - 1].match(/[.,\/#!$%\^&\*;:{}=\-_`~()]/)) {
end--;
}
selectedText = inputField.value.substring(start, end); selectedText = inputField.value.substring(start, end);
if (!selectedText) return; if (!selectedText) return;
} }