Frage

Gibt es eine Emacs-Funktion (vorwärts oder rückwärts) bis zum ersten Leerzeichen löschen? Zum Beispiel habe ich die folgende Zeile ein, und der Cursor wird durch die caret markiert:

someword ?(&)!* morewords
               ^

Ich mag die rückwärts, um die Folge von nicht-alphanumerischen Zeichen zu löschen, aber nicht das Wort someword. Mit backward-delete-word wird auch das Wort auslöschen. Das gleiche ist mit dem Cursor vor den seltsamen Zeichen und kill-word.

War es hilfreich?

Lösung

Ich weiß nicht, von jeder Funktion, aber es ist einfach genug, um zu machen:

(defun my-delete-backward-to-ws ()
  (interactive)
  (delete-region (point) (save-excursion (skip-syntax-backward "^ ") (point))))

Andere Tipps

Emacs haben die Funktion zap-to-char, die alles bis zu einem bestimmten Zeichen gelöscht werden. So wird dies nicht für alle Leerzeichen funktionieren, aber wenn Ihr spezielles Problem alles bis zu einem Raum ist, können Sie diese Funktion verwenden. Geben Sie die Funktion ein negatives Argument zap zurück.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top