zsh - ^ W Verhalten mit oh-my-zsh

1

Ich habe vor kurzem begonnen, ZHS mit oh-my-zsh-Skriptpaket zu verwenden. Es leistet hervorragende Arbeit, abgesehen von seltsamem Verhalten bei Verknüpfungen.

Wenn ich zum Beispiel die folgende Befehlszeile habe und das Symbol ▮ die Cursorposition angibt.

$ ./command_name --option1 value --option2=value ▮

Wenn ich mehrmals nacheinander ^ W drücke, wird in den Eingabeaufforderungen folgender Inhalt angezeigt:

$ ./command_name --option1 value --option2=▮
$ ./command_name --option1 value --▮
$ ./command_name --option1 ▮
$ ./command_name --▮
$ ./command_▮
$ ./▮

Was mich stört ist, dass nach dem dritten Drücken der Cursor nicht nach dem Löschen stoppt --, isst aber auch value. Ich vermute, dass alle Symbole wie "_-" als Trennzeichen als Leerzeichen betrachtet werden und zsh weiterhin Symbole frisst, bis einige Zeichen ohne Trennzeichen gelöscht werden, aber ich habe keine Ahnung, wie ich dieses Verhalten ändern soll.

Nevkontakte
quelle
UPD: Ich habe Lösungen von hier aus versucht, hat nicht geholfen: stackoverflow.com/questions/444951/…
Nevkontakte
Was ist echo $WORDCHARS?
slhck

Antworten:

2

Um dieses (Standard-) Verhalten zu beheben, soll Zsh vi-style verwenden backward-kill-word.

Gib das in dein ~/.zshrc:

bindkey '^W' vi-backward-kill-word

Nun wird es an folgenden Positionen töten:

$ ./command_name --option1 value --option2=▮
$ ./command_name --option1 value --option2▮
$ ./command_name --option1 value --▮
$ ./command_name --option1 value ▮
$ ./command_name --option1 ▮
$ ./command_name --▮
$ ./command_name ▮
$ ./▮
$ ▮
slhck
quelle