Emacs-Konfigurations-Code, der den Einzugmodus vor und nach dem Einfügen aus der Zwischenablage ändert

407
Pablo Marin-Garcia

Bei Emacs 24.4 (glaube ich) wurden cj und ret ausgetauscht, daher wird der Einzug jetzt nach ret aufgerufen. Diese Einrückungen im Textmodus beziehen sich auf den Einzug, dh, wenn Sie eingerückten Code einfügen, wird der Code diagonal eingefügt anstatt ausgerichtet:

# copied code line1 line2 line3  # pasted line1 line2 line3 

Ich kann diese Einstellung lösen electric-indent-mode(Flip / Flop-Befehl), aber ich mag das Einrückungs-relative Verhalten, während ich im Textmodus schreibe. Ich möchte es nur beim Einfügen von Text ausschalten.

Hat jemand Code, mit dem ich eine Verknüpfung zum Einfügen setzen kann, die den Modus für den elektrischen Einzug aufruft, aus der Zwischenablage einfügt und erneut den Modus für den elektrischen Einzug einstellt?

Ich würde mich über jede didaktische Erklärung des Codes freuen, damit ich mich an meinen vergessenen Elisp erinnern kann.

2

1 Antwort auf die Frage

1
Stefan

Dies sollte nur in einem Textterminal geschehen (dort, wo "Einfügen" einfach den Text char by char an Emacs sendet, als hätten Sie diese Zeichen eingegeben).

Seit Emacs-25 sollte dies kein Problem mehr sein, da es die Unterstützung für "eingeklammerte Einfügung" vom Text-Terminal verwendet (sodass das Terminal vor und nach dem eingefügten Text spezielle Escape-Sequenzen sendet).

Es ist auch nicht nötig, es zu konfigurieren: "Es funktioniert einfach".