feat(autocomplete): standardize path separators and expand embedding detection

- Change path separators from backslashes to forward slashes in embedding autocomplete
- Extend embedding detection to also trigger when searchType is 'embeddings'
- Improves cross-platform compatibility and makes embedding autocomplete more reliable
This commit is contained in:
Will Miao
2026-01-26 16:03:00 +08:00
parent 4b36d60e46
commit e14afde4b3

View File

@@ -185,7 +185,7 @@ const MODEL_BEHAVIORS = {
async getInsertText(_instance, relativePath) { async getInsertText(_instance, relativePath) {
const { directories, fileName } = splitRelativePath(relativePath); const { directories, fileName } = splitRelativePath(relativePath);
const trimmedName = removeGeneralExtension(fileName); const trimmedName = removeGeneralExtension(fileName);
const folder = directories.length ? `${directories.join('\\')}\\` : ''; const folder = directories.length ? `${directories.join('/')}/` : '';
return `embedding:${folder}${trimmedName}, `; return `embedding:${folder}${trimmedName}, `;
}, },
}, },
@@ -225,10 +225,10 @@ const MODEL_BEHAVIORS = {
const rawSearchTerm = instance.getSearchTerm(instance.inputElement.value); const rawSearchTerm = instance.getSearchTerm(instance.inputElement.value);
const match = rawSearchTerm.match(/^emb:(.*)$/i); const match = rawSearchTerm.match(/^emb:(.*)$/i);
if (match) { if (match || instance.searchType === 'embeddings') {
const { directories, fileName } = splitRelativePath(relativePath); const { directories, fileName } = splitRelativePath(relativePath);
const trimmedName = removeGeneralExtension(fileName); const trimmedName = removeGeneralExtension(fileName);
const folder = directories.length ? `${directories.join('\\')}\\` : ''; const folder = directories.length ? `${directories.join('/')}/` : '';
return `embedding:${folder}${trimmedName}, `; return `embedding:${folder}${trimmedName}, `;
} else { } else {
return `${relativePath}, `; return `${relativePath}, `;