как удалить регион с помощью клавиши [delete] в emacs

Я использую Emacs 23.3 на Mac OS X Lion. Как удалить выделенную текстовую область простым нажатием клавиши, например delete или C-d? Это работает на окнах, не устанавливая ничего конкретного. Как я могу реализовать это в Mac OS X Lion?


person luozengbin    schedule 28.10.2011    source источник


Ответы (3)


Попробуйте M-xcua-mode. Это изменит многое в поведении Emacs, чтобы оно соответствовало поведению других приложений с графическим интерфейсом. Для получения дополнительной информации см. M-S-:(info "(emacs) CUA Bindings").

Вы можете постоянно включать его с помощью M-xcustomize-optionRETcua-mode.

person Michael Hoffman    schedule 28.10.2011

Вам нужно включить delete-selection-mode и тогда он будет работать ;-)

person Alex Ott    schedule 28.10.2011

Если вы имеете в виду «удалить между меткой и курсором», обычное сочетание клавиш для этого в Emacs — C-w (удерживая нажатой клавишу Control, нажмите w).

Чтобы установить метку, используйте C-SPC (зажмите управление и нажмите ПРОБЕЛ).

Выбор текстовой области и последующее ее удаление не очень распространены среди обычных пользователей Emacs. Чаще используют

  • C-k для удаления целых строк за раз (или до конца текущей строки)
  • M-z (нажмите Esc, затем z), чтобы «переключиться на символ», который удалит весь текст до следующего вхождения любого символа.
  • M-DEL (нажмите Esc, затем DEL), чтобы удалить по одному слову в обратном направлении.

и другие.

person Joel Spolsky    schedule 28.10.2011
comment
спасибо за ответ. но я хочу привязать клавишу [delete] к удалению символа или области уничтожения в автоматическом режиме. - person luozengbin; 28.10.2011
comment
я нашел способ реализовать эту функцию. ‹pre› (defun my-backward-delete-fun() назад удалить символ или удалить выбранную область автоматически (интерактивно) (if (и переходный-отметить-режим пометить-активно) (вызов-интерактивно 'убить-область) (вызов -interactively 'backward-delete-char-untabify)) ) (global-set-key [backspace] 'my-backward-delete-fun) ‹/pre› - person luozengbin; 28.10.2011
comment
ответьте на свой вопрос, чтобы вы могли помочь следующему человеку, который придет! - person Joel Spolsky; 28.10.2011