вторник, 7 июля 2009 г.

eLisp: слово под курсором

До этого момента думал что elisp это сложно и не для гуманоидов. Но...

В емаксе часто встречаются функции требующие ввода от руки разного рода регекспов, имен, и п.х. Мне это всегда не нравилось и поскольку быстрого решения обнаруженно не было, родился вот такой видимо велосипед.

(defun my-occur ()
(interactive)
(backward-word 1)
(setq 1 start (point))
(forward-word 1)
(setq end (point))
(occur (buffer-substring start end)))
Здесь для функции occur создана обертка вычленяющая слово на котором стоит курсор.

Логика такова:
Откатываемся в начало слова и получаем текущюю позицию потом уходим в конец и опять получаем позицию. Передаем в occur слово вырезанное из буфера.

Остается прицепить новорожденую на удобный хоткей и наслаждаться жизнью.

З.Ы. Получилось сие творение после диагонального штудирования этой доки

Комментариев нет:

Отправить комментарий