ZSH: Dateinamenvervollständigung fehlt bei manchen Programmen

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
ALU
Beiträge: 29
Registriert: 19.11.2016 20:21:41

ZSH: Dateinamenvervollständigung fehlt bei manchen Programmen

Beitrag von ALU » 02.08.2018 00:27:31

Ich benutze öfters groff als Textveratbeitung und da stört es mich, dass die Vervollständigung des Dateinamens in ZSH nicht funktioniert. Beim drücken von TAB sollte der Dateinamen vervollständigt werden, den ich angefangen habe zu schreiben. Dieses Problem hatte ich auch schon im Zusammenhang mit manch anderen Programmen.

Ein Test in Bash ergab das Problem nicht.

Welche Schraube muss ich in ZSH drehen, damit die Dateinamenvervollständigung mit groff funktioniert?

ALU
Beiträge: 29
Registriert: 19.11.2016 20:21:41

Re: ZSH: Dateinamenvervollständigung fehlt bei manchen Programmen

Beitrag von ALU » 04.08.2018 09:16:21

Ich habe festgestellt, dass bei einem anderen User das Problem nicht reproduzierbar ist und habe deshalb eine neue .zshrc, wie sie beim ersten Ausführen empfohlen wird, erzeugt und habe meine .zshrc und .zshenv daran angepasst.

Jetzt gibt es eine Fehlermeldung, wenn ich nach mehreren Argumenten den Dateinamen anfange zu tippen und dann TAB drücke: "Completing no more arguments"

reox
Beiträge: 2459
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: ZSH: Dateinamenvervollständigung fehlt bei manchen Programmen

Beitrag von reox » 04.08.2018 13:32:10

ich vermute es gibt irgendwo eine compdef datei für groff und die ist einfach nicht korrekt.
Schau mal ob es eine _groff datei in einem der verzeichnisse aus $fpath gibt:

Code: Alles auswählen

find $fpath -name "_groff"
Bei mir gibt es da eine /usr/share/zsh/functions/Completion/Unix/_groff.

Bei mir funktioniert die vervollständigung out of the box, also evt gibt es bei dir eine weitere datei, welche vor der systemdatei geladen wird.

ALU
Beiträge: 29
Registriert: 19.11.2016 20:21:41

Re: ZSH: Dateinamenvervollständigung fehlt bei manchen Programmen

Beitrag von ALU » 04.08.2018 18:27:44

Ist an der richtigen Stelle:

Code: Alles auswählen

/usr/share/zsh/functions/Completion/Unix/_groff
Ich benutze Debian buster und habe an der Datei nichts verändert. Ich vermute schon einen Bug.

Ohne Argumente funktioniert die Vervollständigung des Dateinamens, aber nach einem Argument will er nur noch Argumente annehmen (die mit "-" anfangen).

wenn ich (mit s fängt ein Dateinamen an) eingebe:

Code: Alles auswählen

groff -k s
wird nach TAB

Code: Alles auswählen

groff -k -

reox
Beiträge: 2459
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: ZSH: Dateinamenvervollständigung fehlt bei manchen Programmen

Beitrag von reox » 05.08.2018 14:27:36

mhh ich glaube das file hat tatsächlich einen bug. Ich hab groff noch nie verwendet aber von der autocompletion her sollte -I ein file vervollständigen und das tut es auch. Also eingabe von groff -I <tab> zeigt tatsächlich die files an.
Laut der autocompletion ist die letzte Option auch ein file aber es ist schon ur lang her, dass ich für zsh eine autocompletion geschrieben habe...
Ich würde das mal reporten.

Antworten