Вопрос

Есть ли функция EMACS для удаления (вперед или назад) до первого пробела? Например, у меня есть следующая линия, и курсор отмечен каретой:

someword ?(&)!* morewords
               ^

Я хочу удалить обратную последовательность не альфаноковарных символов, но не слово someword. Анкет С использованием backward-delete-word Будет также уничтожить слово. То же самое с курсором перед странными персонажами и kill-word.

Это было полезно?

Решение

Я не знаю никакой функции, но это достаточно легко сделать:

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

Другие советы

EMACS имеет функцию zap-to-char который удалит все до определенного персонажа. Таким образом, это не сработает для всех пробелов, но если ваша конкретная проблема - это все в зависимости от места, вы можете использовать эту функцию. Дайте функции отрицательный аргумент для задом наперед.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top