LINUX.ORG.RU

Нде, там совсем не сложно:

(defun ipdb ()
  (interactive)
  (previous-line)
  (newline)
  (insert "import ipdb; ipdb.set_trace()")
  (indent-for-tab-command)
  (next-line))
можно ещё, конечно, добавить хрень вроде сохранения позиции курсора, но это не особо нужно

Joe_Bishop
() автор топика
Ответ на: комментарий от Joe_Bishop
(defun ipdb ()
  (setq position-in-line (current-column))
  (interactive)
  (previous-line)
  (newline)
  (insert "import ipdb; ipdb.set_trace()")
  (indent-for-tab-command)
  (next-line)
  (move-to-column position-in-line))

ну это тоже легко

Joe_Bishop
() автор топика
Ответ на: комментарий от Joe_Bishop

чтобы сохранять позицию и т.п., надо просто обернуть в save-excursion

а вообще, такие вещи удобней делать сниппетами, их много для емакса - я пользуюсь yasnippet, хотя можно посмотреть на skeleton, etc.

ott ★★★★★
()
Ответ на: комментарий от Joe_Bishop

еще замечание - setq на необъявленную переменную - плохой тон. для локальных переменных лучше использовать let

(let ((position-in-line (current-column))) ... (move-to-column position-in-line))

ott ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.