Unentdeckter Befehlszeileninhalt in der Fischmuschel

349
blackwing

Gibt es eine Möglichkeit, den unausgeformten Inhalt der Befehlszeile in Fisch zu erhalten? Ich meine, wenn die Befehlszeile so ist ...

$ ls 'foo' "bar" 

... die gewünschte Ausgabe wäre ls 'foo' "bar".

Der commandlineFischbefehl gibt die Befehlszeile zurück, entgeht jedoch automatisch dem Inhalt. dh ls foo bar.

Im Handbuch habe ich keine Schalter gefunden, um dieses Verhalten zu unterdrücken.

Kontext: Ich versuche, bash zu emulieren ctrl-x ctrl-e, wodurch der Inhalt der Befehlszeile in einem Editor bearbeitet werden kann. Dafür brauche ich den nicht umrissenen Inhalt der Kommandozeile.

Jede Hilfe wäre dankbar.

0

2 Antworten auf die Frage

1
blackwing

Fällt Fisch 2.3 aus, behebt das Druckverhalten und lässt die Befehlszeile nicht ab. In Fisch 2.3 wird commandline -bdie Befehlszeile nicht ausgegeben.

0
glenn jackman

Ich denke, das beantwortet Ihre Frage nicht, aber ich habe sie irgendwo online gefunden

function bind_edit_commandline set -l tmp (mktemp /tmp/fish-fc.XXXXXX) commandline > $tmp eval $EDITOR $tmp commandline -r "" cat $tmp | while read -l cmd; commandline -a "$cmd" ""; end  rm $tmp end 

Und ich mag es Altvso

bind \ev bind_edit_commandline 
Vielen Dank, aber wie Sie erwähnt haben, löst dies das Fluchtproblem nicht. blackwing vor 7 Jahren 0
Ich habe mir den Quellcode nicht angesehen, würde mich aber nicht wundern, wenn dies ein Problem ist, das nicht so gelöst werden kann, wie Sie es wünschen. glenn jackman vor 7 Jahren 0