With javascript cursor in field of filename

Good hints. Thank you. The best was to replace tp.system.prompt() with tp.system.suggester().
The code doesn’t use the forward slash for renaming. It’s only to part two explications of the emojis.
The code only uses the first characters from the emoji to the hyphen to place them at the beginning of the file name.
I am now quite happy with the following code. Although I would like it, when the cursor would be placed finally on the very left in the file name field (in order to manually correct the file name where this code could not do it).

<%*
const kategorien = [
    "🖍no- Schnelle Notiz / Floating Note", 
    "🧠ar- Archivieren / Dauerhaft Merken",
    "🐙hi- Hilfe / Cheat",
    "🐝to- ToDos offen",
    "✅te- ToDos erledigt",
    "🔢li- Liste",
    "🗓mu- Mustervorlage",
    "🧑pe- Person",
    "☝️th- Thema",
    "📕️bm- Buch- / Medium-Exzerpt",    
    "📘bb- Buch- / Blauer-Band-Exzerpt", 
    "🔥br- Brainstorming",
    "🎈id- Idee(n)",
    "🌱ab- abstract / Keim",
    "🌻en- Entwurf/ Kraut",
    "🌺ko- Konzept / Malve",
    "🌳te- Text / Baum",
    "📒pd- PDF",
    "💾ba- Backup / Sicherungskopie"
];

// Erstellen Sie eine Liste der Kategorien mit Nummerierung
const kategorienListe = kategorien.map((kategorie, index) => `${index + 1}. ${kategorie.split('-')[0].trim()} ${kategorie.split('-')[1].trim()}`);
const kategorienNamen = kategorien.map(kategorie => kategorie.split('-')[0].trim() + " " + kategorie.split('-')[1].trim());

// Zeigen Sie die Eingabeaufforderung mit der nummerierten Liste an
const auswahl = await tp.system.suggester(kategorienListe, kategorienListe);

if (!auswahl) {
    // Abbrechen, wenn keine Auswahl getroffen wurde
    new Notice("Keine Auswahl getroffen. Vorgang abgebrochen.");
    return;
}

// Überprüfen Sie, ob die Auswahl eine Nummer ist
let kategorieIndex;
if (!isNaN(parseInt(auswahl[0]))) {
    // Wenn die Auswahl eine Nummer ist, extrahieren Sie die Nummer und suchen Sie die entsprechende Kategorie
    kategorieIndex = parseInt(auswahl.split('.')[0]) - 1;
} else {
    // Ansonsten, finden Sie die ausgewählte Kategorie basierend auf dem Namen
    kategorieIndex = kategorienListe.indexOf(auswahl);
}

if (isNaN(kategorieIndex) || kategorieIndex < 0 || kategorieIndex >= kategorien.length) {
    // Ungültige Auswahl, Abbrechen
    new Notice("Ungültige Auswahl. Bitte versuchen Sie es erneut.");
    return;
}

const kategorie = kategorien[kategorieIndex];

// Extrahieren Sie die ersten vier Zeichen (Emoji + 2 Zeichen + Bindestrich) aus der ausgewählten Kategorie
const prefix = kategorie.trim().slice(0, 5);

// Überprüfen Sie, ob die aktuelle Datei vorhanden ist
const datei = app.workspace.getActiveFile();
if (!datei) {
    new Notice("Keine aktive Datei gefunden. Vorgang abgebrochen.");
    return;
}

// Benennen Sie die aktuelle Datei um, indem Sie das Prefix vor den alten Dateinamen setzen
const neuerDateiname = `${prefix}${datei.basename}`;
const neuerDateipfad = datei.path.replace(/[^/]+$/, `${neuerDateiname}.md`);
await app.fileManager.renameFile(datei, neuerDateipfad);

// Warten Sie kurz, damit die Datei geöffnet werden kann
await new Promise(resolve => setTimeout(resolve, 100)); 

// Simulieren Sie das Fokussieren auf das Dateinamen-Eingabefeld und setzen Sie den Cursor an den Anfang
const titelEingabefeld = document.querySelector('.view-header-title input');
if (titelEingabefeld) {
    titelEingabefeld.focus();
    titelEingabefeld.setSelectionRange(0, 0);
}

// Ausgabe des neuen Dateinamens
new Notice(`Dateiname geändert zu: ${neuerDateiname}`);
%>