Wie kann das Zeitlimit für die Tab-Vervollständigung in zsh angegeben werden?

8

Die Vervollständigungsfunktion von Zsh ist bis auf diese großartig. Wenn ich versuche, in einem Ordner mit vielen Dateien / Netzwerkordnern fertig zu werden, dauert es einige Minuten und druckt diesen Fehler aus.

example.com:~$ ls /path/to/some/bigFolder/[TAB]
zsh: do you wish to see all 620 possibilities (124 lines)?

Gibt es stattdessen eine Möglichkeit, ein Zeitlimit anzugeben, nach dem zsh nicht versuchen sollte, automatisch zu vervollständigen? Ich kann die Suche auch nicht abbrechen.

balki
quelle
1
+1 Gute Frage. Ich wäre neugierig auf dasselbe in Bash.
Rozcietrzewiacz

Antworten:

2

Ctrl-Csollte den Abschluss abbrechen. Wenn dies nicht der Fall ist, besteht kaum eine Chance, dass etwas anderes dies tun würde.

Stéphane Chazelas
quelle
-1

Sie können einen benutzerdefinierten Vervollständiger schreiben, der einen Timer / eine Zeitüberschreitung implementiert, aus den zsh-FAQ, Abschnitt 4
4.5: Wie fange ich mit der programmierbaren Fertigstellung an?

Paraphrasierung der FAQ

Die Hauptressource ist die Handbuchseite von zshcompsys .
... oder kopieren Sie eine der vielen vorhandenen Funktionen.

bsd
quelle
sollte ich also das gesamte Abschlusssystem für eine Timeout-Funktion neu schreiben? Hat das schon jemand gemacht?
Balki
nicht umschreiben, anpassen. Und wenn Sie "eine der sehr vielen vorhandenen Funktionen" nicht finden können
bsd
Wie viele Dateien haben Sie in einem Verzeichnis? Rufen Sie compinit in Ihrer .zshrc-Datei auf?
BSD
Diese Antwort wäre hilfreich, wenn Sie zeigen würden, wie Sie das Abschlusssystem so anpassen, dass eine Zeitüberschreitung auftritt. Ich sehe keine relevante zstyleEinstellung in der zshcompsysManpage. Tatsächlich bezweifle ich, dass es möglich ist: Ich glaube nicht, dass Sie zsh unterbrechen können, während es einen Glob erweitert, was hier blockiert.
Gilles 'SO - hör auf böse zu sein'