Ich habe einen Hervorhebungsmodus (vergiss, wie es heißt), der mir durch Markieren des Textes zeigt, welche Region ich zwischen Marke und Punkt ausgewählt habe. Das ist sehr praktisch, wenn man Regionen zerstört. Manchmal, auch wenn kein Text sichtbar hervorgehoben ist, aber ich versehentlich C-w drücke, tötet er immer noch gelegentlich Text. Meine Frage ist, wie kann ich dieses Verhalten stoppen? Ich möchte nur, dass es Text tötet, wenn ich es hervorgehoben habe.Wie vermeidet man versehentlich Text in Emacs zu töten?
Antwort
Ihre eigene Funktion definieren und den Schlüssel-Bindung außer Kraft setzen:
(defun my-kill-region()
(interactive)
(if (region-active-p)
(call-interactively 'kill-region)
(message "Region not active, didn't kill")))
(global-set-key (kbd "C-w") 'my-kill-region)
Drücken Sie C-Space (set-mark-command) kurz vor C-w, um die Markierung an der Cursorposition zu setzen, sodass zwischen der Markierung und der Cursorposition kein Text zum Löschen vorhanden ist.
Bevor also versehentlich C-w gedrückt wird, sollte man versehentlich C-Space drücken? – Beta
M-x transient-mark-mode
wird die Region hält markiert auch nach der Eingabe beginnen, und wenn Sie C-Raumzeichen setzen verwenden. Dann wirst du sehen, was C-w töten wird.
Setzen Sie die Variable mark-even-if-inactive
-nil
. Auf diese Weise können Sie nur Text löschen, wenn dieser markiert ist.
- 1. Wie vermeidet man versehentlich 'hg push' statt 'hg qpush'?
- 2. Emacs - Wie man Rückwärtsbewegungen des Cursors beim Navigieren vermeidet
- 3. Wie zu töten Port
- 4. Emacs - Töten den Puffer mit Terminal-Emulator
- 5. Wie vermeidet man Gleitkommafehler?
- 6. Wie vermeidet man Mehrfachvererbung?
- 7. Wie vermeidet man zu viel Übereinstimmung?
- 8. Wie vermeidet man, ständig doppelt zu klicken?
- 9. Wie vermeidet man mehrere Definitionsfehler?
- 10. Wie vermeidet man Textüberlauf in Twitter Bootstrap?
- 11. Wie vermeidet man Autobahn mit Entfernungsmatrix?
- 12. Wie vermeidet man die Heapfragmentierung?
- 13. Wie Zombie-Prozess zu töten
- 14. XSL wie man NaN vermeidet
- 15. Wie vermeidet man geschützte Klassenmitglieder?
- 16. Wie vermeidet man unnötige Berechnungen?
- 17. Laravel: Wie vermeidet man Zeitüberlappungen?
- 18. Wie vermeidet man eine System.Runtime.InteropServices.COMException?
- 19. Text-in-Sprache in Emacs
- 20. Wie vermeidet man eine Umleitung?
- 21. Wie vermeidet man doppelte Anfrage?
- 22. Wie vermeidet man doppelte Abonnements?
- 23. Wie vermeidet man GeneratedSerializationConstructorAccessor Probleme?
- 24. Wie vermeidet man Pop-up von * Async Shell Command * Puffer in Emacs?
- 25. Wie um Aufgaben in Android zu töten?
- 26. Wie kidprocess in Nodejs zu töten?
- 27. Wie alle Hintergrundprozesse in Zsh zu töten?
- 28. Wie vermeidet man SSH-Verbindungskosten in scp?
- 29. Wie vermeidet man Doppelarbeit in GROUP_CONCAT?
- 30. Wie vermeidet man Namenskonflikte in CMake-Unterprojekten?
InRe schließen Stimmen: da die Antwort scheint in elisp zu sein, denke ich, dass SuperUser wahrscheinlich * nicht * der beste Ort dafür ist. Es sollte hier bleiben. – dmckee