В Emacs, как я могу исключить '-' из общих разделителей? - PullRequest
1 голос
/ 19 декабря 2011

При кодировании в elisp я обнаруживаю, что при переходе по словам останавливаюсь на дефисах и предпочитаю их игнорировать.

Какой самый простой способ сделать это?

Ответы [ 3 ]

9 голосов
/ 19 декабря 2011

M-x modify-syntax-entry RET - RET w RET должен это сделать. Или, если вы предпочитаете фрагмент кода elisp, который можно добавить в крючок, (modify-syntax-entry ?- "w")

Таблица синтаксиса для режима содержит информацию о том, что составляет различные синтаксические классы (например, слова, пробелы и т. Д.). Они используются для определения работы таких команд, как forward-word и т. Д. Изменение этого параметра приводит к изменению поведения этих команд.

7 голосов
/ 19 декабря 2011

Вместо того, чтобы изменять понятие слов в Emacs, может быть предпочтительнее перемещаться по s-выражениям (C-M-f, C-M-b), чтобы пропустить целые идентификаторы. Таким образом, вы сохраняете удобство навигации по частичным словам, если хотите изменить идентификатор.

0 голосов
/ 19 декабря 2011

Вы можете использовать интерактивный поиск регулярных выражений.Нажатие CMs SPACE должно найти любой пробел (вам может потребоваться настроить search-whitespace-regexp).

...