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

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

`post-command-hook` is the only thing I've found, but it sounds like it's overkill. Is there anything more appropriate?

Я думаю, что  `post-command-hook`  - это то, что вы хотите использовать.

Он запускается каждый раз, когда выполняется команда . И команда - это в основном любые интерактивные действия, такие как щелчок мышью, ввод буквы (которая запускает  `self-insert-command` ) или запускает команду, используя  `M-x` .

Возможно, вы захотите убедиться, что ваш крючок не запущен во время ввода минибуфера. Я думаю, что обертывание тела в  `(за исключением (window-minibuffer-p) ...)`  позаботится об этом для вас.

И, возможно, вы хотите, чтобы ваш крючок был активным только при редактировании определенных файлов. В этом случае вы можете использовать локальный буфер  `post-command-hook` : Использование

```
(add-hook 'post-command-hook #'your-hook nil :local)

```

позаботится об этом для вас. ( **Отредактировано** , чтобы добавить эту последнюю точку.)